.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#e8f1f8,#f5f7fa 45%,#eef2f6);padding:24px}.login-card{width:100%;max-width:400px;padding:40px 36px 32px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0061a814}.login-title{margin:0 0 8px;font-size:24px;font-weight:600;color:#1a1a1a;text-align:center}.login-subtitle{margin:0 0 28px;font-size:14px;color:#8c8c8c;text-align:center}.login-card .ant-form-item:last-child{margin-bottom:0}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,PingFang SC,Microsoft YaHei,sans-serif;background:#f5f7fa;color:#000000e0}.app-layout{min-height:100vh}.app-sider{background:#fff!important;border-right:1px solid #f0f0f0;box-shadow:none}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column}.app-logo{display:flex;align-items:center;gap:12px;height:64px;padding:0 20px;border-bottom:1px solid #f0f0f0}.app-logo-mark{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;background:#0061a8;color:#fff;font-weight:700;font-size:14px;letter-spacing:.5px}.app-logo-title{color:#000000e0;font-size:16px;font-weight:600;white-space:nowrap}.app-menu.ant-menu-light{background:#fff;border-inline-end:none!important;padding:8px 0;color:#000000e0}.app-menu.ant-menu-light .ant-menu-item,.app-menu.ant-menu-light .ant-menu-submenu-title{margin:2px 8px;width:calc(100% - 16px);border-radius:6px;color:#000000e0}.app-menu.ant-menu-light .ant-menu-item .ant-menu-item-icon,.app-menu.ant-menu-light .ant-menu-submenu-title .ant-menu-item-icon,.app-menu.ant-menu-light .ant-menu-submenu-title .anticon{color:#000000a6}.app-menu.ant-menu-light .ant-menu-item:not(.ant-menu-item-selected):hover,.app-menu.ant-menu-light .ant-menu-submenu-title:hover{background-color:#0000000a!important;color:#000000e0}.app-menu.ant-menu-light>.ant-menu-item-selected{background-color:#0061a8!important;color:#fff!important}.app-menu.ant-menu-light>.ant-menu-item-selected .ant-menu-item-icon,.app-menu.ant-menu-light>.ant-menu-item-selected .anticon{color:#fff!important}.app-menu.ant-menu-light>.ant-menu-submenu-selected>.ant-menu-submenu-title{background-color:#0061a8!important;color:#fff!important}.app-menu.ant-menu-light>.ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-item-icon,.app-menu.ant-menu-light>.ant-menu-submenu-selected>.ant-menu-submenu-title .anticon,.app-menu.ant-menu-light>.ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-submenu-arrow{color:#fff!important}.app-menu .ant-menu-sub .ant-menu-item{margin:2px 8px;width:calc(100% - 16px);padding-left:40px!important;border-radius:6px;color:#000000a6}.app-menu .ant-menu-sub .ant-menu-item:not(.ant-menu-item-selected):hover{background-color:#0000000a!important;color:#000000e0}.app-menu .ant-menu-sub .ant-menu-item-selected{background-color:#e8f2f9!important;color:#0061a8!important}.app-menu .ant-menu-sub.ant-menu-inline{padding-inline:0!important;background:#fff!important}.app-header{display:flex;align-items:center;justify-content:flex-end;padding:0 24px;background:#fff;border-bottom:1px solid #f0f0f0;box-shadow:0 1px 2px #00000008}.app-content{margin:16px;padding:24px;background:#fff;border-radius:12px;min-height:calc(100vh - 96px);box-shadow:0 1px 2px #0f1c2e0a}.page-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 20px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.page-tab{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 8px 0 12px;border-radius:6px;border:1px solid #d9d9d9;background:#fff;color:#333;font-size:14px;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s,border-color .2s,color .2s}.page-tab:hover:not(.page-tab--active){border-color:#0061a8;color:#0061a8}.page-tab--active{background:#0061a8;border-color:#0061a8;color:#fff}.page-tab-label{white-space:nowrap}.page-tab-close{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;color:inherit;font-size:10px;line-height:1;cursor:pointer;opacity:.7;border-radius:2px}.page-tab-close:hover{opacity:1}.page-tab--active .page-tab-close:hover{background:#ffffff26}.page-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.page-title{margin:0;font-size:20px;font-weight:600;color:#000000e0}.personnel-module-layout{display:grid;grid-template-columns:160px 1fr;gap:16px;min-height:520px;margin:-8px}.personnel-sub-menu{border:1px solid #f0f0f0;border-radius:8px;background:#fafafa;padding:8px 0}.personnel-sub-menu .ant-menu-item{margin:2px 8px;width:calc(100% - 16px);border-radius:6px}.personnel-module-content{min-width:0}.personnel-page-layout{display:grid;grid-template-columns:260px 1fr;gap:0;min-height:560px;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.personnel-main-panel{flex:1;min-width:0;background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:auto;display:flex;flex-direction:column}.personnel-management-layout{display:flex;gap:16px;min-height:calc(100vh - 180px);background:#f8fafc;padding:4px;border-radius:8px}.personnel-org-panel{width:320px;flex-shrink:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.personnel-org-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #f1f5f9}.personnel-org-panel-header h2{margin:0;font-size:16px;font-weight:600;color:#000000e0}.personnel-main-panel{flex:1;min-width:0;background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.personnel-empty-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#00000073}.personnel-empty-icon{width:64px;height:64px;border-radius:50%;background:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:24px;color:#cbd5e1;margin-bottom:16px}.personnel-node-config{display:flex;flex-direction:column;height:100%}.personnel-node-config-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.personnel-node-config-header h2{margin:0;font-size:16px;font-weight:600}.personnel-node-config-actions{display:flex;gap:8px}.personnel-node-config-body{padding:24px;flex:1;overflow-y:auto}.personnel-node-field{margin-bottom:24px}.personnel-node-field label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:#000000e0}.personnel-node-field .required{color:#ff4d4f}.personnel-node-type-display{padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#000000a6}.personnel-table-role-header{padding:16px 20px;border-bottom:1px solid #f1f5f9}.personnel-table-role-header h2{margin:0;font-size:16px;font-weight:600}.personnel-primary-btn{background:#0061a8!important;border-color:#0061a8!important}.personnel-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.personnel-link-btn{padding:0!important;color:#0061a8!important}.personnel-table-search{max-width:360px;background:#f8fafc!important}.personnel-status-toggle{position:relative;display:inline-flex;height:20px;width:36px;border:none;border-radius:999px;background:#cbd5e1;cursor:pointer;padding:0;transition:background .2s}.personnel-status-toggle--on{background:#0061a8}.personnel-status-toggle-thumb{display:inline-block;height:16px;width:16px;border-radius:50%;background:#fff;transform:translate(2px);transition:transform .2s;box-shadow:0 1px 2px #00000026}.personnel-status-toggle--on .personnel-status-toggle-thumb{transform:translate(18px)}.org-tree-panel--embedded{border:none;border-radius:0;height:auto;flex:1}.org-tree-panel--embedded .org-tree-body{padding:8px 4px}.org-tree-node-row.selected{background:#0061a814;color:#0061a8}.org-tree-empty{padding:24px;text-align:center;color:#00000073;font-size:13px}.org-node-icon.company{color:#3b82f6}.org-node-icon.department{color:#f59e0b}.org-node-icon.role{color:#10b981}.perm-modal-tip{margin-bottom:16px;padding:12px;background:#e6f4ff;border:1px solid #91caff;border-radius:6px;color:#000000e0;font-size:14px}.org-tree-panel{display:flex;flex-direction:column;height:100%;border-right:1px solid #f0f0f0;background:#fff}.org-tree-search{padding:16px;border-bottom:1px solid #f0f0f0}.org-tree-body{flex:1;overflow-y:auto;padding:8px}.org-tree-node-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:6px;cursor:pointer;position:relative}.org-tree-node-row:hover{background:#f5f5f5}.org-tree-node-row.selected{background:#e6f4ff;color:#1677ff}.org-tree-toggle{width:16px;display:inline-flex;align-items:center;justify-content:center;color:#00000073}.org-tree-dot{display:inline-block;width:6px;height:6px}.org-tree-name{flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-tree-perm-btn{display:none;border:none;background:transparent;color:#00000073;cursor:pointer;padding:2px 4px;border-radius:4px}.org-tree-node-row:hover .org-tree-perm-btn{display:inline-flex}.org-tree-perm-btn:hover{color:#1677ff;background:#fff}.org-node-icon{font-size:14px}.org-node-icon.company{color:#1677ff}.org-node-icon.department{color:#fa8c16}.org-node-icon.role{color:#52c41a}.personnel-table-wrap{display:flex;flex-direction:column;min-width:0;flex:1;background:#fff;padding:16px;overflow:hidden}.personnel-table-scroll{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden}.personnel-table-scroll .ant-table-wrapper{min-width:max-content}.personnel-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.personnel-table-actions{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.personnel-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;row-gap:0}.personnel-form-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.personnel-form-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.personnel-form-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b}.personnel-form-modal .ant-modal-close{top:16px;inset-inline-end:20px;color:#94a3b8}.personnel-form-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.personnel-form-modal .ant-modal-body{padding:0}.personnel-form-body{padding:24px;max-height:calc(90vh - 140px);overflow-y:auto}.personnel-form .ant-form-item{margin-bottom:16px}.personnel-form .ant-form-item-label{padding-bottom:6px}.personnel-form .ant-form-item-label>label{height:auto;font-size:14px;font-weight:500;color:#334155}.personnel-form .ant-form-item-required:before{display:none!important}.personnel-form-label{font-size:14px;font-weight:500;color:#334155}.personnel-form-required{margin-left:2px;color:#ef4444}.personnel-form .ant-input,.personnel-form .ant-select-selector,.personnel-form .ant-picker{min-height:38px!important;border-radius:6px!important;border-color:#cbd5e1!important;font-size:14px!important}.personnel-form .ant-input:hover,.personnel-form .ant-select:not(.ant-select-disabled):hover .ant-select-selector,.personnel-form .ant-picker:hover{border-color:#0061a8!important}.personnel-form .ant-input:focus,.personnel-form .ant-select-focused .ant-select-selector,.personnel-form .ant-picker-focused{border-color:#0061a8!important;box-shadow:0 0 0 1px #0061a8!important}.personnel-form-readonly{min-height:38px;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#334155;line-height:22px}.personnel-form-date.ant-picker{width:100%}.personnel-form-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc;border-radius:0 0 8px 8px}.personnel-form-btn{min-width:88px;height:36px;font-size:14px;border-radius:6px}.personnel-form-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.personnel-form-btn--secondary:hover{color:#0061a8!important;border-color:#0061a8!important;background:#fff!important}.personnel-form-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.personnel-form-btn--primary:hover{background:#00518f!important;border-color:#00518f!important}.perm-checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.perm-checkbox-item{padding:12px;border:1px solid #f0f0f0;border-radius:8px;margin:0!important}.perm-modal-subtitle{margin:0 0 12px;font-size:14px;font-weight:500}.organization-management-layout{min-height:calc(100vh - 180px)}.role-perm-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.role-perm-modal .ant-modal-body{padding:0}.role-perm-modal-inner{display:flex;flex-direction:column;max-height:80vh}.role-perm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #f1f5f9;background:#f8fafccc}.role-perm-modal-header h3{margin:0;font-size:18px;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:8px}.role-perm-modal-icon{color:#0061a8}.role-perm-modal-close{border:none;background:transparent;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:16px}.role-perm-modal-close:hover{color:#475569;background:#f1f5f9}.role-perm-modal-body{padding:24px;overflow-y:auto;flex:1}.role-perm-checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.role-perm-checkbox-card{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:border-color .2s,background .2s;margin:0}.role-perm-checkbox-card:hover{border-color:#cbd5e1}.role-perm-checkbox-card--checked{border-color:#0061a8;background:#0061a80f}.role-perm-checkbox-card--checked span{color:#0061a8;font-weight:500}.role-perm-checkbox-card span{font-size:14px;color:#475569}.role-perm-modal-footer{display:flex;justify-content:flex-end;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafccc}.role-perm-footer-btn{min-width:72px;height:36px;padding:0 16px;font-size:14px;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer}.role-perm-footer-btn:hover{color:#1e293b;border-color:#cbd5e1}.placeholder-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#00000073}.placeholder-page .anticon{font-size:48px;margin-bottom:16px;color:#1677ff}.system-layout{display:grid;grid-template-columns:200px 1fr;gap:16px;min-height:520px;margin:-8px}.system-sub-menu{border:1px solid #f0f0f0;border-radius:8px;background:#fafafa;padding:8px 0}.system-sub-menu .ant-menu-item{margin:2px 8px;width:calc(100% - 16px);border-radius:6px}.system-content{min-width:0}.filter-bar{margin-bottom:16px}.page-desc{margin:-12px 0 16px;color:#00000073;font-size:14px}.page-toolbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.config-panel{border:1px solid #f0f0f0;border-radius:8px;padding:16px;background:#fafafa}.hierarchy-tree{display:flex;flex-direction:column;gap:4px}.hierarchy-node-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px}.hierarchy-node-row:hover{background:#f5f5f5}.hierarchy-node-row.level-1 .hierarchy-node-name{font-weight:600}.hierarchy-node-row.level-2 .hierarchy-node-name{font-weight:500}.hierarchy-node-toggle{width:16px;display:inline-flex;align-items:center;justify-content:center;color:#00000073;cursor:pointer}.hierarchy-node-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d9d9d9}.hierarchy-node-name{flex:1}.hierarchy-node-actions{opacity:0;transition:opacity .2s}.hierarchy-node-row:hover .hierarchy-node-actions{opacity:1}.hierarchy-node-children{margin-left:20px;padding-left:12px;border-left:1px dashed #e8e8e8}.hierarchy-level-icon{font-size:14px;flex-shrink:0}.hierarchy-level-icon--1{color:#0061a8}.hierarchy-level-icon--2{color:#0061a8;opacity:.8}.hierarchy-level-icon--3{display:inline-block;width:6px;height:6px;border-radius:50%;background:#bfbfbf}.hierarchy-tree-empty{padding:48px 0;text-align:center;color:#00000073;font-size:14px}.profession-toolbar{flex-wrap:wrap;gap:12px}.profession-primary-btn{background:#0061a8!important;border-color:#0061a8!important}.profession-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.profession-panel{flex:1;display:flex;flex-direction:column;min-height:520px;background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.profession-panel-header{padding:16px 24px;border-bottom:1px solid #f0f0f0;background:#fafafacc}.profession-panel-header p{margin:0;font-size:14px;color:#00000073}.profession-panel-body{flex:1;overflow:auto;padding:24px}.profession-tree-wrap{max-width:720px}.space-device-toolbar{flex-wrap:wrap;gap:12px}.space-device-toolbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.space-device-company-label{color:#000000a6;font-size:14px}.space-device-primary-btn{background:#0061a8!important;border-color:#0061a8!important}.space-device-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.space-device-panel{flex:1;display:flex;flex-direction:column;min-height:520px;background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.space-device-tabs{display:flex;border-bottom:1px solid #f0f0f0;background:#fafafacc;padding:0 16px}.space-device-tab{display:inline-flex;align-items:center;gap:8px;padding:14px 20px;border:none;border-bottom:2px solid transparent;background:transparent;color:#000000a6;font-size:14px;font-weight:500;cursor:pointer;transition:color .2s,border-color .2s}.space-device-tab:hover{color:#000000e0}.space-device-tab--active{color:#0061a8;border-bottom-color:#0061a8}.space-device-panel-header{padding:16px 24px;border-bottom:1px solid #f0f0f0}.space-device-panel-header p{margin:0;font-size:14px;color:#00000073}.space-device-panel-body{flex:1;overflow:auto;padding:24px}.space-device-tree-wrap{max-width:720px}.repair-category-layout{display:flex;gap:0;min-height:520px;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 1px 2px #0f1c2e0a}.repair-category-tree-panel{flex:1;min-width:0;padding:16px;border-right:1px solid #f0f0f0;display:flex;flex-direction:column}.repair-category-tree-actions{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #f5f5f5}.repair-category-tree{flex:1;overflow:auto}.repair-category-tree .ant-tree-node-content-wrapper{border-radius:4px}.repair-category-tree .ant-tree-node-selected .ant-tree-node-content-wrapper{background:#e8f2f9!important}.repair-category-empty{margin-top:48px}.repair-category-detail-panel{width:450px;flex-shrink:0;padding:20px 24px;background:#fff;display:flex;flex-direction:column;box-shadow:-4px 0 15px -3px #0f1c2e0f}.repair-category-detail-placeholder{width:450px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#fafafa;border-left:1px solid #f0f0f0}.detail-panel-title{margin:0 0 20px;font-size:16px;font-weight:600;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.detail-panel-title-name{color:#0061a8;font-weight:500}.repair-category-modal-hint{margin:0 0 12px;font-size:12px;color:#00000073}.detail-form{flex:1;overflow-y:auto}.equipment-page-layout{display:grid;grid-template-columns:260px 1fr;gap:16px;min-height:560px;margin:-8px}.equipment-system-tree{border:1px solid #f0f0f0;border-radius:8px;background:#fff;display:flex;flex-direction:column;overflow:hidden}.equipment-system-title{margin:0;padding:16px 16px 12px;font-size:15px;font-weight:600}.equipment-system-search{margin:0 16px 12px}.equipment-system-body{flex:1;overflow-y:auto;padding:0 8px 12px}.equipment-system-root{display:flex;align-items:center;gap:4px;padding:8px;border-radius:6px;cursor:pointer}.equipment-system-root:hover,.equipment-system-floor:hover{background:#f5f5f5}.equipment-system-root.selected,.equipment-system-floor.selected{background:#1677ff1a;color:#1677ff;font-weight:500}.equipment-system-toggle{display:inline-flex;padding:2px;color:#00000073}.equipment-system-root-name{flex:1;font-size:14px}.equipment-system-settings{color:#1677ff;opacity:.6;cursor:pointer;flex-shrink:0}.equipment-system-settings:hover{opacity:1}.equipment-system-floors{padding-left:24px}.equipment-system-floor{padding:6px 12px;font-size:13px;color:#000000a6;border-radius:6px;cursor:pointer}.equipment-main-panel{border:1px solid #f0f0f0;border-radius:8px;background:#fff;padding:16px;min-width:0;display:flex;flex-direction:column}.equipment-toolbar{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.equipment-detail-modal .ant-modal-body{max-height:75vh;overflow-y:auto}.equipment-detail-body{display:flex;gap:24px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.equipment-detail-main{flex:1;min-width:0}.equipment-detail-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.equipment-detail-section-header h3{margin:0;font-size:15px;font-weight:600}.equipment-detail-qrcode{width:140px;flex-shrink:0;border-left:1px solid #f0f0f0;padding-left:24px;display:flex;align-items:center;justify-content:center}.equipment-qrcode-box{width:96px;height:96px;border:1px solid #f0f0f0;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#fafafa}.equipment-detail-bottom{display:grid;grid-template-columns:1fr 320px;gap:16px;min-height:200px}.equipment-detail-tabs{border:1px solid #f0f0f0;border-radius:8px;padding:0 8px}.equipment-change-log{border:1px solid #f0f0f0;border-radius:8px;display:flex;flex-direction:column}.equipment-change-log h3{margin:0;padding:16px;font-size:15px;font-weight:600;border-bottom:1px solid #f0f0f0}.equipment-detail-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#00000073;min-height:120px;padding:24px}.inspection-page-header{margin-top:-8px;margin-bottom:20px}.inspection-page-header .page-desc{margin:4px 0 0}.inspection-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.inspection-filter-form .inspection-filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px}.inspection-detail-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.inspection-detail-id{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:13px;color:#00000073}.inspection-card-title-icon{color:#0061a8}.inspection-detail-grid{display:grid;grid-template-columns:360px 1fr;gap:16px;align-items:start}@media (max-width: 1200px){.inspection-detail-grid{grid-template-columns:1fr}}.inspection-base-card .ant-list-item{padding:10px 0;border:none}.inspection-base-item{display:flex;justify-content:space-between;gap:12px}.inspection-base-label{color:#00000073;flex-shrink:0}.inspection-base-value{text-align:right;word-break:break-all}.inspection-base-value.highlight{color:#fa8c16;font-weight:500}.inspection-check-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;min-height:420px}@media (max-width: 992px){.inspection-check-layout{grid-template-columns:1fr}}.inspection-check-tree{border:1px solid #f0f0f0;border-radius:8px;padding:12px;max-height:520px;overflow:auto}.inspection-check-tree-title{font-size:13px;font-weight:600;margin-bottom:12px;color:#000000a6}.inspection-space-tree .inspection-tree-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;line-height:22px}.inspection-space-tree .inspection-tree-row:hover{background:#f5f5f5}.inspection-space-tree .inspection-tree-row.selected{background:#e6f4ff;color:#1677ff}.inspection-tree-toggle{width:14px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:#00000073}.inspection-tree-dot{display:inline-block;width:6px}.inspection-tree-icon.building{color:#1677ff}.inspection-tree-icon.floor{color:#52c41a}.inspection-tree-icon.equipment{color:#fa8c16}.inspection-tree-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspection-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.inspection-status-dot.normal{background:#52c41a}.inspection-status-dot.abnormal{background:#ff4d4f}.inspection-check-detail{min-width:0}.inspection-equipment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.inspection-equipment-header h3{margin:0;font-size:16px;font-weight:600}.inspection-equipment-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px;padding:12px 16px;background:#fafafa;border-radius:8px}.inspection-equipment-meta .meta-label{font-size:12px;color:#00000073;margin-bottom:4px}.inspection-sop-title{margin:0 0 12px;font-size:14px;font-weight:600}.inspection-sop-list{display:flex;flex-direction:column;gap:10px}.inspection-sop-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #f0f0f0;border-radius:8px}.inspection-sop-step{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;font-size:13px}.inspection-sop-index{width:22px;height:22px;border-radius:50%;background:#f0f0f0;display:inline-flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.inspection-equipment-header--completed{align-items:flex-start;flex-direction:column;gap:8px}.inspection-check-status{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500}.inspection-check-status--normal{color:#52c41a}.inspection-check-status--abnormal{color:#ff4d4f}.inspection-check-status-pulse{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 currentColor;animation:inspection-status-pulse 1.8s ease-out infinite}@keyframes inspection-status-pulse{0%{box-shadow:0 0 color-mix(in srgb,currentColor 45%,transparent)}70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}.inspection-equipment-info-row{display:grid;grid-template-columns:180px 1fr;gap:16px;margin-bottom:20px}@media (max-width: 768px){.inspection-equipment-info-row{grid-template-columns:1fr}}.inspection-photo-card,.inspection-executor-card{padding:12px 16px;background:#fafafa;border-radius:8px;border:1px solid #f0f0f0}.inspection-photo-card .meta-label,.inspection-executor-card .meta-label{font-size:12px;color:#00000073;margin-bottom:8px}.inspection-photo-thumb{border-radius:6px;object-fit:cover}.inspection-executor-card{display:flex;flex-direction:column;justify-content:center;gap:16px}.inspection-sop-title--completed{display:flex;align-items:center;gap:8px;color:#0061a8}.inspection-sop-title--completed .anticon{font-size:15px}.inspection-sop-item--completed{background:#fff}.inspection-sop-index--completed{background:#e6f4ff;color:#0061a8;font-weight:600}.inspection-sop-toggle{display:inline-flex;flex-shrink:0;border-radius:6px;overflow:hidden;border:1px solid #d9d9d9}.inspection-sop-toggle-btn{min-width:52px;padding:4px 14px;font-size:12px;line-height:20px;text-align:center;color:#00000073;background:#fff;border-right:1px solid #d9d9d9}.inspection-sop-toggle-btn:last-child{border-right:none}.inspection-sop-toggle-btn.is-active.is-normal{color:#52c41a;background:#f6ffed;font-weight:500}.inspection-sop-toggle-btn.is-active.is-abnormal{color:#ff4d4f;background:#fff2f0;font-weight:500}.inspection-timeline{padding-left:8px}.inspection-timeline-item{position:relative;padding-left:20px;padding-bottom:20px;border-left:2px solid #f0f0f0;margin-left:6px}.inspection-timeline-item:last-child{border-left-color:transparent;padding-bottom:0}.inspection-timeline-dot{position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#1677ff;border:2px solid #fff;box-shadow:0 0 0 1px #1677ff}.inspection-timeline-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:13px}.inspection-timeline-head span{color:#00000073;flex-shrink:0}.inspection-timeline-operator{font-size:12px;color:#000000a6}.inspection-timeline-note{margin-top:8px;padding:8px 12px;background:#f5f5f5;border-radius:6px;font-size:12px;color:#000000a6}.repair-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:-8px;margin-bottom:20px}.repair-page-header .page-desc{margin:4px 0 0}.repair-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.repair-export-btn{display:inline-flex;align-items:center;gap:4px}.repair-export-btn-arrow{margin-left:2px;font-size:10px;color:#00000073}.repair-export-menu .ant-dropdown-menu{padding:4px;border-radius:8px;box-shadow:0 6px 16px #0f172a1f}.repair-export-menu .ant-dropdown-menu-item{min-width:128px;border-radius:6px}.repair-status-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.repair-status-tab{border:1px solid #f0f0f0;background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;color:#000000a6;cursor:pointer;white-space:nowrap;transition:all .2s}.repair-status-tab:hover{border-color:#1677ff;color:#1677ff}.repair-status-tab.active{background:#1677ff;border-color:#1677ff;color:#fff;box-shadow:0 2px 4px #1677ff33}.repair-status-tab-count{margin-left:4px;opacity:.85}.repair-filter-form .repair-filter-grid{display:grid;grid-template-columns:repeat(3,1fr);column-gap:20px}.repair-filter-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.repair-filter-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.repair-filter-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b}.repair-filter-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.repair-filter-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.repair-filter-modal .ant-modal-body{padding:24px}.repair-filter-form .ant-form-item{margin-bottom:16px}.repair-filter-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#334155}.repair-filter-form .ant-input,.repair-filter-form .ant-select-selector{min-height:38px!important;border-radius:6px!important;border-color:#cbd5e1!important}.repair-filter-form .ant-input:focus,.repair-filter-form .ant-select-focused .ant-select-selector{border-color:#0061a8!important;box-shadow:0 0 0 1px #0061a8!important}.repair-filter-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:8px;border-top:1px solid #f1f5f9;margin-top:8px}.repair-filter-btn{min-width:88px;height:36px;border-radius:6px}.repair-filter-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.repair-filter-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.repair-transfer-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.repair-transfer-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.repair-transfer-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b}.repair-transfer-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.repair-transfer-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.repair-transfer-modal .ant-modal-body{padding:20px 24px 24px}.repair-transfer-form .ant-form-item{margin-bottom:8px}.repair-transfer-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#64748b}.repair-transfer-form .ant-select-selector{min-height:42px!important;border-radius:8px!important;border-color:#0061a8!important;box-shadow:none!important}.repair-transfer-form .ant-select .ant-select-selection-item,.repair-transfer-form .ant-select .ant-select-selection-placeholder{line-height:40px!important}.repair-transfer-form .ant-select-focused .ant-select-selector{border-color:#0061a8!important;box-shadow:0 0 0 2px #0061a81f!important}.repair-transfer-hint{margin:16px 0 0;font-size:13px;line-height:1.6;color:#94a3b8}.repair-batch-transfer-summary{margin:0 0 16px;font-size:14px;color:#64748b;line-height:1.5}.repair-transfer-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:20px}.repair-transfer-btn{min-width:88px;height:36px;border-radius:6px}.repair-transfer-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.repair-transfer-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.repair-transfer-success-modal{top:280px!important;padding-bottom:0}.repair-transfer-success-modal .ant-modal-content{padding:20px 24px;border-radius:12px;box-shadow:0 8px 28px #0f172a2e}.repair-transfer-success-modal .ant-modal-body{padding:0}.repair-transfer-success-message{margin:0 0 20px;font-size:15px;line-height:1.6;color:#1e293b}.repair-transfer-success-footer{display:flex;justify-content:flex-end}.repair-transfer-success-btn{min-width:72px;height:36px;padding-inline:20px;border-radius:18px;background:#0061a8!important;border-color:#0061a8!important}@media (max-width: 768px){.repair-filter-form .repair-filter-grid{grid-template-columns:1fr}}.repair-create-card{border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px #0f1c2e0a}.repair-create-card .ant-card-body{padding:24px}.repair-create-header{display:flex;align-items:flex-start;gap:4px;margin-bottom:20px}.repair-create-back{flex-shrink:0;height:28px;margin-top:2px;padding-inline:4px;color:#475569;box-shadow:none}.repair-create-back:hover,.repair-create-back:focus{color:#0061a8;background:transparent}.repair-create-header-text{min-width:0}.repair-create-header-text .page-title{margin:0;font-size:20px;line-height:28px}.repair-create-header-text .page-desc{margin:2px 0 0;font-size:14px;line-height:1.5;color:#94a3b8}.repair-create-form .ant-form-item{margin-bottom:16px}.repair-create-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#334155}.repair-create-form .ant-form-item-required .ant-form-item-label>label:before{color:#ef4444!important}.repair-create-form .ant-input,.repair-create-form .ant-select-selector,.repair-create-form .ant-picker{min-height:38px!important;border-radius:6px!important;border-color:#cbd5e1!important}.repair-create-form .ant-input:focus,.repair-create-form .ant-select-focused .ant-select-selector,.repair-create-form .ant-picker-focused{border-color:#0061a8!important;box-shadow:0 0 0 1px #0061a8!important}.repair-create-radio .ant-radio-wrapper{margin-inline-end:24px;color:#334155}.repair-create-span-full{grid-column:1 / -1}.repair-create-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:24px}.repair-create-search-icon{color:#94a3b8}.repair-equipment-tree-wrap{position:relative}.repair-equipment-tree-search-icon{position:absolute;left:11px;top:50%;z-index:1;transform:translateY(-50%);pointer-events:none}.repair-equipment-tree-select{width:100%}.repair-equipment-tree-select .ant-select-selector{padding-left:32px!important}.repair-equipment-tree-dropdown .ant-select-tree-title{font-size:13px}.repair-equipment-tree-dropdown .ant-select-tree-switcher{display:flex;align-items:center;justify-content:center}.repair-equipment-tree-dropdown .ant-select-tree-treenode-disabled .ant-select-tree-title{color:#000000a6;font-weight:500}.repair-create-device-code{font-size:12px;color:#94a3b8}.repair-create-upload.ant-upload-wrapper .ant-upload-drag{border:1px dashed #0061a8;border-radius:8px;background:#f8fbff;padding:28px 16px}.repair-create-upload.ant-upload-wrapper .ant-upload-drag:hover{border-color:#0061a8;background:#f0f7ff}.repair-create-upload--muted.ant-upload-wrapper .ant-upload-drag{border-color:#d9d9d9;background:#fafafa}.repair-create-upload--muted.ant-upload-wrapper .ant-upload-drag:hover{border-color:#0061a8;background:#f8fbff}.repair-create-upload--muted .repair-create-upload-icon{background:#f0f0f0;color:#64748b}.repair-create-upload--muted .repair-create-upload-link{color:#0061a8}.repair-create-upload-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#e8f2f9;color:#0061a8;font-size:22px}.repair-create-upload-text{margin:0 0 8px;font-size:14px;color:#64748b}.repair-create-upload-link{color:#0061a8;font-weight:500}.repair-create-upload-hint{margin:0;font-size:12px;color:#94a3b8}.repair-create-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #f1f5f9;margin-top:8px}.repair-create-btn{min-width:88px;height:36px;border-radius:6px}.repair-create-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.repair-create-btn--primary{background:#0061a8!important;border-color:#0061a8!important}@media (max-width: 768px){.repair-create-grid{grid-template-columns:1fr}}.repair-detail-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.repair-detail-back{padding-inline:0;color:#000000a6}.repair-detail-back:hover{color:#0061a8!important}.repair-detail-card-title-icon{color:#0061a8;font-size:16px}.repair-desc-image{object-fit:cover;border-radius:8px}.repair-detail-layout{display:grid;grid-template-columns:1fr 400px;gap:16px;align-items:start}@media (max-width: 1200px){.repair-detail-layout{grid-template-columns:1fr}}.repair-detail-main{display:flex;flex-direction:column;gap:16px}.repair-detail-card{min-width:0}.repair-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 24px}@media (max-width: 992px){.repair-info-grid{grid-template-columns:repeat(2,1fr)}}.repair-info-item{display:flex;flex-direction:column;gap:4px}.repair-info-label{font-size:13px;color:#00000073}.repair-info-value{font-size:14px;font-weight:500;word-break:break-all}.repair-info-value.highlight{color:#fa8c16}.repair-desc-block{margin-bottom:16px}.repair-desc-block:last-child{margin-bottom:0}.repair-desc-label{display:block;font-size:13px;color:#00000073;margin-bottom:8px}.repair-desc-text{margin:0;padding:12px 16px;background:#fafafa;border-radius:8px;font-size:14px;line-height:1.6}.repair-desc-text.success{background:#f6ffed;color:#389e0d}.repair-timeline-card{position:sticky;top:16px}.repair-duration-row{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid #f0f0f0;font-size:14px}.repair-duration-row strong{color:#1677ff;font-size:15px}.repair-status-timeline{position:relative;display:flex;flex-direction:column;padding:4px 0}.repair-status-timeline:before{content:"";position:absolute;left:50%;top:12px;bottom:12px;width:2px;margin-left:-1px;background:#e8e8e8;z-index:0}.repair-status-timeline-item{position:relative;z-index:1;display:grid;grid-template-columns:1fr 28px 1fr;gap:12px;align-items:start;min-height:48px}.repair-status-timeline-item:has(.repair-status-milestone){min-height:72px}.repair-status-timeline-side{min-width:0;padding-bottom:24px}.repair-status-timeline-side--left{display:flex;flex-direction:column;align-items:flex-end}.repair-status-timeline-side--right{display:flex;flex-direction:column;align-items:flex-start}.repair-status-timeline-axis{display:flex;justify-content:center;width:28px;flex-shrink:0;padding-top:4px}.repair-status-timeline-dot{position:relative;z-index:1;width:8px;height:8px;border-radius:50%;flex-shrink:0}.repair-status-timeline-dot--green{background:#52c41a;box-shadow:0 0 0 4px #52c41a2e}.repair-status-timeline-dot--red{background:#ff4d4f;box-shadow:0 0 0 4px #ff4d4f29}.repair-status-timeline-dot--orange{background:#fa8c16;box-shadow:0 0 0 4px #fa8c1629}.repair-status-timeline-dot--blue{background:#1677ff;box-shadow:0 0 0 4px #1677ff24}.repair-status-timeline-dot--gray{background:#bfbfbf;box-shadow:0 0 0 4px #bfbfbf33}.repair-status-timeline-dot--hollow{width:10px;height:10px;background:#fff;border:2px solid currentColor;box-shadow:0 0 0 4px #1677ff1a}.repair-status-timeline-dot--blue.repair-status-timeline-dot--hollow{color:#1677ff}.repair-status-timeline-dot--gray.repair-status-timeline-dot--hollow{color:#bfbfbf;box-shadow:0 0 0 4px #bfbfbf33}.repair-status-timeline-check-wrap{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#52c41a;box-shadow:0 0 0 4px #52c41a2e}.repair-status-timeline-check{color:#fff;font-size:11px}.repair-status-time-block{max-width:100%}.repair-status-time-label{font-size:12px;color:#00000073;line-height:1.6}.repair-status-time-value{font-size:14px;font-weight:600;color:#000000e0;line-height:1.6}.repair-status-time-value--success{color:#52c41a}.repair-status-milestone{max-width:100%;text-align:left}.repair-status-milestone-time{font-size:12px;color:#00000073;line-height:1.6}.repair-status-milestone-title{margin-top:2px;font-size:14px;font-weight:600;color:#000000e0;line-height:1.5}.repair-status-milestone-detail{margin-top:8px;padding:10px 12px;background:#f5f5f5;border-radius:8px;font-size:12px;color:#000000a6;line-height:1.7}.repair-status-milestone-detail>div+div{margin-top:4px}.repair-rating-stars{color:#f59e0b;font-size:13px;letter-spacing:1px}.repair-rating-empty{color:#94a3b8}.repair-row-actions .ant-btn-link{font-size:13px}.repair-column-settings{width:200px;padding:16px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;box-shadow:0 6px 16px #00000014}.repair-column-settings-title{margin:0 0 12px;font-size:14px;font-weight:600;color:#1e293b;line-height:1.4}.repair-column-settings-actions{display:flex;gap:8px;margin-bottom:12px}.repair-column-settings-actions .ant-btn{flex:1;height:32px;border-radius:6px;border-color:#d9d9d9;color:#333;background:#fff;box-shadow:none}.repair-column-settings-actions .ant-btn:hover{color:#0061a8;border-color:#0061a8}.repair-column-settings-list{display:flex;flex-direction:column;gap:10px;max-height:360px;overflow-y:auto}.repair-column-settings-list .ant-checkbox-wrapper{margin-inline-start:0;color:#333;font-size:14px;line-height:1.5}.repair-column-settings-list .ant-checkbox-checked .ant-checkbox-inner{background-color:#141414;border-color:#141414}.repair-column-settings-list .ant-checkbox-checked:hover .ant-checkbox-inner,.repair-column-settings-list .ant-checkbox-wrapper:hover .ant-checkbox-checked .ant-checkbox-inner{background-color:#141414!important;border-color:#141414!important}.repair-terminate-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.repair-terminate-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.repair-terminate-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b}.repair-terminate-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.repair-terminate-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.repair-terminate-modal .ant-modal-body{padding:24px}.repair-terminate-form .ant-form-item{margin-bottom:20px}.repair-terminate-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#64748b}.repair-terminate-form .ant-input,.repair-terminate-form textarea.ant-input{border-radius:8px!important;border-color:#0061a8!important;min-height:100px}.repair-terminate-form .ant-input:focus,.repair-terminate-form textarea.ant-input:focus{border-color:#0061a8!important;box-shadow:0 0 0 2px #0061a81f!important}.repair-terminate-warning{display:flex;align-items:flex-start;gap:12px;margin-top:4px;padding:12px 16px;background:#fff1f0;border-radius:8px}.repair-terminate-warning-icon{flex-shrink:0;margin-top:2px;color:#ff4d4f;font-size:20px}.repair-terminate-warning-title{margin:0 0 4px;font-size:14px;font-weight:500;color:#cf1322;line-height:1.5}.repair-terminate-warning-desc{margin:0;font-size:13px;color:#ff4d4f;line-height:1.5}.repair-terminate-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #f1f5f9;margin-top:8px}.repair-terminate-btn{min-width:88px;height:36px;border-radius:6px}.repair-terminate-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.repair-terminate-btn--danger{background:#ff4d4f!important;border-color:#ff4d4f!important}.spare-part-form-modal .ant-modal-body{padding:0;overflow:hidden}.spare-part-form-shell{display:flex;flex-direction:column;max-height:min(640px,calc(100vh - 200px))}.spare-part-form-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.spare-part-form .ant-form-item{margin-bottom:16px}.spare-part-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#334155}.spare-part-form .ant-form-item-required .ant-form-item-label>label:before{color:#ef4444!important}.spare-part-form .ant-input,.spare-part-form .ant-select-selector{min-height:38px!important;border-radius:6px!important;border-color:#cbd5e1!important}.spare-part-form .ant-input:focus,.spare-part-form .ant-select-focused .ant-select-selector{border-color:#0061a8!important;box-shadow:0 0 0 1px #0061a8!important}.spare-part-form-readonly.ant-input-disabled,.spare-part-form-readonly.ant-input[disabled]{color:#6b7280!important;background:#f5f5f5!important;border-color:#e5e7eb!important;cursor:not-allowed}.spare-part-form-price .ant-input-suffix{color:#64748b}.spare-part-form-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc;position:sticky;bottom:0;z-index:2}.inbound-action-buttons{display:flex;align-items:center;gap:12px}.inbound-import-btn{color:#374151!important;border-color:#d1d5db!important;border-radius:6px!important;background:#fff!important}.inbound-import-btn:hover{color:#0061a8!important;border-color:#0061a8!important}.inbound-form-modal .ant-modal-body{padding:0;overflow:hidden}.inbound-form-shell{display:flex;flex-direction:column;max-height:min(720px,calc(100vh - 200px))}.inbound-form-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.inbound-form .ant-form-item-required .ant-form-item-label>label:before{color:#ef4444!important}.inbound-form-readonly.ant-input-disabled,.inbound-form-readonly.ant-input[disabled]{color:#6b7280!important;background:#f5f5f5!important;border-color:#e5e7eb!important;cursor:not-allowed}.inbound-form-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc;position:sticky;bottom:0;z-index:2}.outbound-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#374151}.outbound-form .ant-form-item-required .ant-form-item-label>label:before{color:#ef4444!important}.outbound-form-readonly.ant-input-disabled,.outbound-form-readonly.ant-input[disabled]{color:#6b7280!important;background:#f5f5f5!important;border-color:#e5e7eb!important;cursor:not-allowed}.outbound-form .ant-select-selector,.outbound-form .ant-input{border-radius:6px!important}.spare-list-filter-control .ant-select-selector,.spare-list-filter-control.ant-input,.spare-list-filter-control.ant-picker{border-radius:4px!important;font-size:14px!important}.spare-list-filter-control--type{width:160px!important}.spare-list-filter-control--date{width:144px!important}.spare-list-search-btn{padding:6px 24px!important;height:32px!important}.ledger-page{height:100%;min-height:calc(100vh - 140px)}.ledger-page-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 2px #0000000d;overflow:hidden}.ledger-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid #e5e7eb}.ledger-toolbar-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.ledger-filter-select{width:150px}.ledger-search-input{width:256px}.ledger-search-icon{color:#9ca3af}.ledger-toolbar-actions{display:flex;flex-wrap:wrap;gap:12px}.ledger-primary-btn{background:#0061a8!important;border-color:#0061a8!important;border-radius:8px!important}.ledger-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.ledger-secondary-btn{border-radius:8px!important;color:#374151!important;border-color:#d1d5db!important}.ledger-secondary-btn:hover{color:#0061a8!important;border-color:#0061a8!important}.ledger-table-wrap{flex:1;overflow:auto;padding:0}.ledger-table .ant-table-thead>tr>th{background:#f9fafbcc!important;color:#4b5563;font-weight:500;padding:14px 16px!important}.ledger-table .ant-table-tbody>tr>td{padding:12px 16px!important}.ledger-table .ant-table-tbody>tr:hover>td{background:#0061a80a!important}.ledger-id-cell{color:#0061a8;font-weight:500}.ledger-name-cell{font-weight:500;color:#1f2937}.ledger-type-tag{margin:0;background:#f3f4f6!important;color:#4b5563!important;border:none!important;font-size:12px}.ledger-stock-low{color:#ef4444;font-weight:600}.ledger-stock-normal{color:#1f2937;font-weight:600}.ledger-time-col{color:#6b7280;font-size:12px}.ledger-actions-col{background:#fff}.ledger-table .ant-table-tbody>tr:hover .ledger-actions-col{background:#f8fbff!important}.ledger-actions{display:flex;align-items:center;justify-content:center;gap:8px}.ledger-action-edit{color:#0061a8!important}.ledger-action-edit:hover{color:#004a80!important;background:transparent!important}.ledger-action-delete{color:#ef4444!important}.ledger-action-delete:hover{color:#dc2626!important;background:transparent!important}.ledger-table .ant-pagination{padding:16px 20px!important;margin:0!important;border-top:1px solid #e5e7eb}.spare-part-form-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.spare-part-form-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.spare-part-form-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b;line-height:1.4}.spare-part-form-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.spare-part-form-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.spare-part-form-modal .ant-modal-body{padding:0}.spare-part-form{padding:24px}.spare-part-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.spare-part-form-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc}.spare-part-form-btn{min-width:88px;height:36px;border-radius:6px}.spare-part-form-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.spare-part-form-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.inbound-page{height:100%;min-height:calc(100vh - 140px)}.inbound-page-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 2px #0000000d;overflow:hidden}.inbound-filter-section{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:16px}.inbound-filter-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:center}.inbound-filter-row--second{grid-template-columns:1fr 1fr 2fr}@media (max-width: 1200px){.inbound-filter-row{grid-template-columns:repeat(2,1fr)}.inbound-filter-row--second{grid-template-columns:1fr}}.inbound-filter-field{display:flex;align-items:center;gap:12px;min-width:0}.inbound-filter-label{flex-shrink:0;width:64px;text-align:right;font-size:14px;color:#4b5563}.inbound-filter-control{flex:1;min-width:0}.inbound-filter-actions{grid-column:span 2;display:flex;align-items:center;gap:12px;padding-left:16px}@media (max-width: 1200px){.inbound-filter-actions{grid-column:span 2}}.inbound-action-bar{padding:12px 20px;border-bottom:1px solid #e5e7eb}.inbound-primary-btn{background:#0061a8!important;border-color:#0061a8!important;border-radius:6px!important}.inbound-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.inbound-secondary-btn{border-radius:6px!important;color:#374151!important;border-color:#d1d5db!important}.inbound-table-wrap{flex:1;overflow:auto}.inbound-table .ant-table-thead>tr>th{background:#f9fafbcc!important;color:#4b5563;font-weight:500}.inbound-table .ant-table-tbody>tr:hover>td{background:#0061a80a!important}.inbound-order-no{color:#0061a8;font-weight:500}.inbound-qty{font-weight:600;color:#1f2937}.inbound-table .ant-pagination{padding:16px 20px!important;margin:0!important;border-top:1px solid #e5e7eb}.inbound-form-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.inbound-form-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9;background:#fff}.inbound-form-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b;line-height:1.4}.inbound-form-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.inbound-form-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.inbound-form-modal .ant-modal-body{padding:0}.inbound-form{padding:24px}.inbound-form .ant-form-item{margin-bottom:16px}.inbound-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#334155}.inbound-form .ant-input,.inbound-form .ant-select-selector,.inbound-form .ant-picker,.inbound-form .ant-input-number{min-height:38px!important;border-radius:6px!important;border-color:#cbd5e1!important}.inbound-form .ant-input:focus,.inbound-form .ant-select-focused .ant-select-selector,.inbound-form .ant-picker-focused,.inbound-form .ant-input-number-focused{border-color:#0061a8!important;box-shadow:0 0 0 1px #0061a8!important}.inbound-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.inbound-form-remark{grid-column:1 / -1}.inbound-form-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc}.inbound-form-btn{min-width:88px;height:36px;border-radius:6px}.inbound-form-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.inbound-form-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.inbound-import-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.inbound-import-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.inbound-import-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b}.inbound-import-modal .ant-modal-close{top:16px;inset-inline-end:20px;color:#94a3b8;border-radius:4px}.inbound-import-modal .ant-modal-body{padding:0}.inbound-import-body{padding:24px}.inbound-import-toolbar{margin-bottom:16px}.inbound-import-upload{border-radius:8px!important}.inbound-import-upload .ant-upload-drag-icon .anticon{color:#0061a8!important;font-size:40px}.inbound-import-preview{margin-top:16px}.inbound-import-summary{margin-bottom:8px;font-size:14px;color:#475569}.inbound-import-summary--warn{color:#dc2626}.inbound-import-error-text{color:#dc2626;font-size:13px}.inbound-import-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc}.outbound-page{height:100%;min-height:calc(100vh - 140px)}.outbound-page-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 2px #0000000d;overflow:hidden}.outbound-filter-section{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:16px}.outbound-filter-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:center}.outbound-filter-row--second{grid-template-columns:1fr 3fr}@media (max-width: 1200px){.outbound-filter-row{grid-template-columns:repeat(2,1fr)}.outbound-filter-row--second{grid-template-columns:1fr}}.outbound-filter-field{display:flex;align-items:center;gap:12px;min-width:0}.outbound-filter-label{flex-shrink:0;width:64px;text-align:right;font-size:14px;color:#4b5563}.outbound-filter-control{flex:1;min-width:0}.outbound-filter-actions{display:flex;align-items:center;gap:12px;padding-left:16px}.outbound-action-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid #e5e7eb}.outbound-toolbar{display:flex;align-items:center;gap:8px}.outbound-toolbar-btn{width:32px!important;height:32px!important;border:1px solid #e5e7eb!important;border-radius:50%!important;color:#6b7280!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.outbound-toolbar-btn:hover{color:#0061a8!important;border-color:#0061a8!important;background:#eff6ff!important}.outbound-primary-btn{background:#0061a8!important;border-color:#0061a8!important;border-radius:6px!important}.outbound-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.outbound-secondary-btn{border-radius:6px!important;color:#374151!important;border-color:#d1d5db!important}.outbound-table-wrap{flex:1;overflow:auto;padding:0 20px}.outbound-table-border{border:1px solid #e5e7eb;overflow:hidden}.outbound-table .ant-table-thead>tr>th{background:#f9fafbcc!important;color:#4b5563;font-weight:500}.outbound-table .ant-table-tbody>tr:hover>td{background:#0061a80a!important}.outbound-order-no{color:#374151;font-weight:500}.outbound-qty{font-weight:600;color:#1f2937}.outbound-time-col,.outbound-remark-col,.outbound-list-col{color:#6b7280}.outbound-pagination{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-top:1px solid #e5e7eb;background:#fff;font-size:14px;color:#6b7280}.outbound-pagination-nav{display:flex;align-items:center;gap:4px}.outbound-page-btn{min-width:32px;height:32px;padding:0 12px;font-size:14px;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.outbound-page-btn:hover:not(:disabled){background:#f9fafb}.outbound-page-btn:disabled{opacity:.5;cursor:not-allowed}.outbound-page-btn.is-active{color:#fff;background:#0061a8;border-color:#0061a8}.outbound-form-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.outbound-form-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9;background:#fff}.outbound-form-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b;line-height:1.4}.outbound-form-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.outbound-form-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.outbound-form-modal .ant-modal-body{padding:0;overflow:hidden}.outbound-form-shell{display:flex;flex-direction:column;max-height:min(720px,calc(100vh - 200px))}.outbound-form-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.outbound-form{padding:24px}.outbound-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.outbound-form-remark{grid-column:1 / -1}.outbound-form-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc;position:sticky;bottom:0;z-index:2}.outbound-form-btn{min-width:88px;height:36px;border-radius:6px}.outbound-form-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.outbound-form-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.spare-list-page{height:100%;min-height:calc(100vh - 140px)}.spare-list-page-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 2px #0000000d;overflow:hidden}.spare-list-filter-section{padding:16px;border-bottom:1px solid #e5e7eb}.spare-list-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}.spare-list-filter-item{display:flex;align-items:center;gap:8px}.spare-list-filter-label{font-size:14px;color:#374151;white-space:nowrap}.spare-list-filter-control--sm{width:128px!important}.spare-list-filter-control--md{width:192px!important}.spare-list-filter-search{margin-left:auto}.spare-list-action-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb}.spare-list-primary-btn{background:#0061a8!important;border-color:#0061a8!important;border-radius:4px!important}.spare-list-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.spare-list-import-btn{color:#0061a8!important;border-color:#0061a8!important;border-radius:4px!important;background:#fff!important}.spare-list-import-btn:hover{color:#00518f!important;border-color:#00518f!important;background:#eff6ff!important}.spare-list-import-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.spare-list-import-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9}.spare-list-import-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b}.spare-list-import-modal .ant-modal-close{top:16px;inset-inline-end:20px;color:#94a3b8;border-radius:4px}.spare-list-import-modal .ant-modal-body{padding:0}.spare-list-import-body{padding:24px}.spare-list-import-toolbar{margin-bottom:16px}.spare-list-import-upload{border-radius:8px!important}.spare-list-import-upload .ant-upload-drag-icon .anticon{color:#0061a8!important;font-size:40px}.spare-list-import-preview{margin-top:16px}.spare-list-import-summary{margin-bottom:8px;font-size:14px;color:#475569}.spare-list-import-summary--warn{color:#dc2626}.spare-list-import-error-text{color:#dc2626;font-size:13px}.spare-list-import-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc}.spare-list-table-wrap{flex:1;overflow:auto;padding:0 16px}.spare-list-table-border{border:1px solid #e5e7eb;border-radius:0;overflow:hidden}.spare-list-table .ant-table-thead>tr>th{background:#f9fafbcc!important;color:#4b5563;font-weight:500}.spare-list-table .ant-table-tbody>tr:hover>td{background:#0061a80a!important}.spare-list-index{color:#6b7280}.spare-list-name,.spare-list-price{color:#1f2937}.spare-list-time-col{color:#6b7280}.spare-list-actions{display:flex;align-items:center;justify-content:center;gap:12px}.spare-list-action-link{padding:0;border:none;background:none;font-size:14px;color:#0061a8;cursor:pointer}.spare-list-action-link:hover{text-decoration:underline}.spare-list-action-link--danger{color:#ef4444}.spare-list-action-link--danger:hover{color:#dc2626}.spare-list-pagination{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:16px;border-top:1px solid #e5e7eb;background:#fff;font-size:14px;color:#6b7280}.spare-list-pagination-nav{display:flex;align-items:center;gap:4px}.spare-list-page-btn{min-width:32px;height:32px;padding:0 8px;font-size:14px;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.spare-list-page-btn:hover:not(:disabled){background:#f9fafb}.spare-list-page-btn:disabled{opacity:.5;cursor:not-allowed}.spare-list-page-btn.is-active{color:#fff;background:#0061a8;border-color:#0061a8}.spare-list-form-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.spare-list-form-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f1f5f9;background:#fff}.spare-list-form-modal .ant-modal-title{font-size:18px;font-weight:600;color:#1e293b;line-height:1.4}.spare-list-form-modal .ant-modal-close{top:16px;inset-inline-end:20px;width:32px;height:32px;color:#94a3b8;border-radius:4px}.spare-list-form-modal .ant-modal-close:hover{color:#475569;background:#f1f5f9}.spare-list-form-modal .ant-modal-body{padding:0}.spare-list-form{padding:24px}.spare-list-form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;row-gap:0}.spare-list-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#374151}.spare-list-form .ant-form-item-required .ant-form-item-label>label:before{color:#ef4444!important}.spare-list-form-readonly.ant-input-disabled,.spare-list-form-readonly.ant-input[disabled]{color:#6b7280!important;background:#f5f5f5!important;border-color:#e5e7eb!important;cursor:not-allowed}.spare-list-form-price .ant-input-suffix{color:#6b7280;font-size:14px}.spare-list-form-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#f8fafc}.spare-list-form-btn{min-width:88px;height:36px;border-radius:6px}.spare-list-form-btn--secondary{color:#475569;border-color:#cbd5e1;background:#fff}.spare-list-form-btn--primary{background:#0061a8!important;border-color:#0061a8!important}.inventory-layout{display:grid;grid-template-columns:200px 1fr;gap:16px;min-height:520px;margin:-8px}.inventory-sub-menu{border:1px solid #f0f0f0;border-radius:8px;background:#fafafa;padding:8px 0}.inventory-sub-menu .ant-menu-item{margin:2px 8px;width:calc(100% - 16px);border-radius:6px}.inventory-content{min-width:0}.inventory-page-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.inventory-table-card{border-radius:8px}.inventory-filter-card{margin-bottom:16px}.inventory-filter-card.compact .ant-card-body{padding:16px}.inventory-filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:end}@media (max-width: 1200px){.inventory-filter-grid{grid-template-columns:repeat(2,1fr)}}.inventory-filter-item{display:flex;flex-direction:column;gap:6px}.inventory-filter-label{font-size:13px;color:#000000a6;text-align:right}.inventory-filter-actions{display:flex;gap:8px;align-items:center;padding-bottom:2px}.inventory-action-bar{margin-bottom:16px;display:flex;gap:12px}.inventory-inline-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.inventory-inline-filter{display:flex;align-items:center;gap:8px;font-size:13px;color:#000000a6}.inventory-column-settings{padding:12px 16px;margin-bottom:16px;background:#fafafa;border-radius:8px;border:1px solid #f0f0f0}.inventory-column-settings-title{margin:0 0 12px;font-size:13px;font-weight:600}.inventory-column-settings-list{display:flex;flex-wrap:wrap;gap:12px 20px}.inv-config-page{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000a;overflow:hidden}.inv-config-tabs{display:flex;gap:32px;padding:8px 24px 0;border-bottom:1px solid #e5e7eb}.inv-config-tab-btn{padding:16px 0;font-size:14px;font-weight:500;color:#6b7280;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .2s,border-color .2s}.inv-config-tab-btn:hover{color:#1f2937}.inv-config-tab-btn.is-active{color:#0061a8;border-bottom-color:#0061a8}.inv-config-body{flex:1;overflow:auto;padding:24px;background:#f9fafb}.inv-config-tab-content{display:flex;flex-direction:column;gap:24px}.inv-config-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;box-shadow:0 1px 2px #0000000a}.inv-config-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f9fafb}.inv-config-card-title{margin:0;font-size:16px;font-weight:500;color:#1f2937;display:flex;align-items:center;gap:8px}.inv-config-card-accent{width:4px;height:16px;border-radius:2px;background:#0061a8}.inv-config-primary-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:14px;color:#fff;background:#0061a8;border:none;border-radius:8px;cursor:pointer;box-shadow:0 1px 2px #0000000f;transition:background .2s}.inv-config-primary-btn:hover{background:#00518f}.inv-config-link-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:14px;color:#0061a8;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s}.inv-config-link-btn:hover{background:#f0f7ff;border-color:#bfe0ff}.inv-config-table-wrap{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.inv-config-table-wrap--narrow{max-width:768px}.inv-config-table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}.inv-config-table thead{background:#f9fafbcc;color:#4b5563;border-bottom:1px solid #e5e7eb}.inv-config-table th{padding:12px 20px;font-weight:500}.inv-config-table td{padding:12px 20px;color:#4b5563;border-top:1px solid #f3f4f6}.inv-config-table tbody tr:hover{background:#eff6ff80}.inv-config-table .cell-strong{font-weight:500;color:#1f2937}.inv-config-table .cell-notes{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6b7280}.inv-config-table .col-actions{text-align:right;width:120px}.inv-link-btn{background:none;border:none;padding:0;margin-right:16px;font-size:14px;font-weight:500;color:#0061a8;cursor:pointer}.inv-link-btn:hover{color:#004a80}.inv-link-btn--danger{color:#ef4444;margin-right:0}.inv-link-btn--danger:hover{color:#dc2626}.inv-alert-badge{display:inline-block;padding:4px 8px;font-weight:500;color:#dc2626;background:#fef2f2;border:1px solid #fee2e2;border-radius:6px}.inv-config-tag-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 992px){.inv-config-tag-row{grid-template-columns:1fr}}.inv-tag-list{display:flex;flex-wrap:wrap;gap:10px}.inv-config-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:500;border-radius:8px;border:1px solid}.inv-config-tag--primary{color:#0061a8;background:#f0f7ff;border-color:#bfe0ff}.inv-config-tag--warning{color:#ea580c;background:#fff7ed;border-color:#fed7aa}.inv-config-tag--neutral{color:#374151;background:#f9fafb;border-color:#e5e7eb}.inv-config-tag-remove{display:flex;padding:2px;font-size:12px;background:none;border:none;border-radius:4px;cursor:pointer;opacity:0;transition:opacity .2s}.inv-config-tag:hover .inv-config-tag-remove{opacity:1}.inv-config-tag--primary .inv-config-tag-remove{color:#0061a8}.inv-config-tag--warning .inv-config-tag-remove{color:#ea580c}.inv-config-tag-add{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:14px;border-radius:8px;border:1px dashed;background:transparent;cursor:pointer;transition:background .2s}.inv-config-tag-add--primary{color:#0061a8;border-color:#bfe0ff}.inv-config-tag-add--primary:hover{background:#f0f7ff}.inv-config-tag-add--warning{color:#ea580c;border-color:#fed7aa}.inv-config-tag-add--warning:hover{background:#fff7ed}.inv-config-parts-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}@media (max-width: 1100px){.inv-config-parts-grid{grid-template-columns:1fr}}.inv-part-tree{display:flex;flex-direction:column;gap:6px}.inv-part-tree-node{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;border:1px solid transparent;transition:background .2s,border-color .2s}.inv-part-tree-node:hover{background:#f9fafb;border-color:#e5e7eb}.inv-part-tree-node--root:hover{background:#f0f7ff;border-color:#bfe0ff}.inv-part-tree-toggle,.inv-part-tree-toggle-placeholder{width:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.inv-part-tree-toggle{padding:0;border:none;background:none;color:#9ca3af;cursor:pointer}.inv-part-tree-toggle:hover{color:#0061a8}.inv-part-tree-icon{color:#0061a8;font-size:16px}.inv-part-tree-label{flex:1;font-size:14px;color:#374151}.inv-part-tree-node--root .inv-part-tree-label{font-weight:500;color:#1f2937}.inv-part-tree-children{position:relative;margin-left:10px;padding-left:14px}.inv-part-tree-children:before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:1px;background:#e5e7eb}.inv-part-tree-actions{display:flex;gap:4px;opacity:0;padding:4px 6px;background:#ffffffe6;border:1px solid #e5e7eb;border-radius:6px;transition:opacity .2s}.inv-part-tree-node:hover .inv-part-tree-actions{opacity:1}.inv-part-tree-actions button{padding:4px;border:none;background:none;color:#6b7280;cursor:pointer;border-radius:4px}.inv-part-tree-actions button:hover{color:#0061a8;background:#fff}.inv-part-tree-delete:hover{color:#ef4444!important}.inv-cost-type-list{display:flex;flex-direction:column;gap:12px}.inv-cost-type-item{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#f9fafb80;border:1px solid #e5e7eb;border-radius:8px;transition:background .2s,border-color .2s}.inv-cost-type-item:hover{background:#f0f7ff;border-color:#bfe0ff}.inv-cost-type-label{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:500;color:#374151}.inv-cost-type-icon{display:flex;padding:6px;color:#0061a8;background:#fff;border:1px solid #f3f4f6;border-radius:6px;box-shadow:0 1px 2px #0000000a}.inv-cost-type-actions{display:flex;gap:8px;opacity:0;transition:opacity .2s}.inv-cost-type-item:hover .inv-cost-type-actions{opacity:1}.inv-cost-type-actions button{padding:6px;border:1px solid transparent;border-radius:6px;background:#fff;color:#9ca3af;cursor:pointer}.inv-cost-type-actions button:hover{color:#0061a8;border-color:#bfe0ff}.inv-cost-type-add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:8px;padding:14px;font-size:14px;font-weight:500;color:#6b7280;background:#f9fafb4d;border:2px dashed #e5e7eb;border-radius:8px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.inv-cost-type-add:hover{color:#0061a8;background:#f0f7ff;border-color:#0061a8}.inv-config-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.inv-config-modal{width:480px;max-width:100%;background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;display:flex;flex-direction:column}.inv-config-modal--md{width:520px}.inv-config-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #f3f4f6}.inv-config-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.inv-config-modal-close{padding:6px;border:none;background:none;color:#9ca3af;border-radius:6px;cursor:pointer}.inv-config-modal-close:hover{color:#4b5563;background:#f3f4f6}.inv-config-modal-body{padding:24px}.inv-config-form .ant-form-item-label>label{font-weight:500}.inv-config-field{margin-bottom:20px}.inv-config-field label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.inv-config-field .required{color:#ef4444}.inv-config-field-hint{margin:6px 0 0;font-size:12px;color:#9ca3af}.inv-part-type-select{position:relative}.inv-part-type-select-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;font-size:14px;text-align:left;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:border-color .2s,box-shadow .2s}.inv-part-type-select-trigger:hover{border-color:#0061a8}.inv-part-type-select-trigger.is-open{border-color:#0061a8;box-shadow:0 0 0 2px #0061a81f}.inv-part-type-select-trigger .placeholder{color:#9ca3af}.inv-part-type-chevron{color:#9ca3af;font-size:12px;transition:transform .2s}.inv-part-type-chevron.open{transform:rotate(180deg)}.inv-part-type-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;max-height:256px;overflow-y:auto;padding:8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 24px #0000001a}.inv-part-type-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:14px;color:#4b5563;text-align:left;background:none;border:none;border-radius:6px;cursor:pointer}.inv-part-type-option:hover{color:#0061a8;background:#f0f7ff}.inv-config-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;background:#f9fafbcc;border-top:1px solid #f3f4f6;border-radius:0 0 12px 12px}.inv-config-btn-cancel{padding:8px 20px;font-size:14px;font-weight:500;color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;box-shadow:0 1px 2px #0000000a}.inv-config-btn-cancel:hover{background:#f3f4f6}.inv-config-btn-primary{padding:8px 20px;font-size:14px;font-weight:500;color:#fff;background:#0061a8;border:none;border-radius:8px;cursor:pointer;box-shadow:0 1px 2px #0000000f}.inv-config-btn-primary:hover{background:#00518f}.project-list-page{margin:-8px}.project-list-toolbar{flex-wrap:wrap;gap:12px}.project-list-toolbar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.project-search-input{width:280px}.project-search-icon{color:#00000040}.project-table .project-table-row{cursor:pointer}.project-name-link{color:#0061a8;font-weight:500}.project-row-actions{opacity:0;transition:opacity .2s}.project-table-row:hover .project-row-actions{opacity:1}.project-action-edit{color:#0061a8}.project-action-disable{color:#ff4d4f}.project-action-enable{color:#52c41a}.project-detail{margin:-24px;min-height:calc(100vh - 96px);display:flex;flex-direction:column;background:#f8fafc}.project-detail-header{display:flex;align-items:center;gap:8px;padding:16px 24px;background:#fff;border-bottom:1px solid #f0f0f0}.project-back-btn{color:#00000073}.project-back-btn:hover{color:#0061a8!important;background:#e8f2f9!important}.project-detail-title-wrap{display:flex;align-items:center;gap:12px}.project-detail-title{margin:0;font-size:18px;font-weight:600}.project-detail-body{flex:1;overflow-y:auto;padding:24px;max-width:960px}.project-section-card{background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:20px 24px;margin-bottom:16px;box-shadow:0 1px 2px #0f1c2e0a}.project-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid #f0f0f0}.project-section-title{margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.project-section-icon{color:#0061a8}.project-section-actions{display:flex;gap:8px}.project-field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 32px}@media (max-width: 992px){.project-field-grid{grid-template-columns:repeat(2,1fr)}}.project-field-item{min-width:0}.project-field-span-3{grid-column:1 / -1}.project-field-label{font-size:12px;color:#00000073;margin-bottom:6px}.project-field-value{font-size:14px;color:#000000e0}.project-field-value-strong{font-weight:500}.project-field-value-block{background:#fafafa;padding:12px;border-radius:6px;line-height:1.6}.project-online-status{display:inline-flex;align-items:center;gap:8px}.project-online-dot{width:8px;height:8px;border-radius:50%}.project-online-dot.online{background:#52c41a}.project-online-dot.offline{background:#d9d9d9}.project-building-empty{text-align:center;padding:32px;color:#00000073;font-size:14px}.project-building-actions{display:flex;justify-content:center;gap:4px}.ticket-type-toolbar{flex-wrap:wrap;gap:12px}.ticket-type-filter-bar{background:#fafafa;padding:16px;border-radius:8px;border:1px solid #f0f0f0}.ticket-type-form-modal .ant-modal-body{max-height:70vh;overflow-y:auto}.ticket-type-form-basic{display:flex;flex-direction:column;gap:16px}.ticket-type-form-row{display:flex;align-items:center;gap:16px}.ticket-type-form-label{width:112px;flex-shrink:0;text-align:right;font-size:14px;color:#000000e0}.ticket-type-form-label .required{color:#ff4d4f}.ticket-type-form-row .ant-input,.ticket-type-form-row .ant-radio-group{flex:1}.ticket-type-form-divider{height:1px;background:#f0f0f0;margin:20px 0}.ticket-type-section-title{margin:0 0 12px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;color:#000000e0}.ticket-type-section-title .anticon{color:#0061a8}.ticket-type-approval-panel{background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;padding:16px}.ticket-type-sub-label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.ticket-type-sub-label .required{color:#ff4d4f}.ticket-type-executor-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ticket-type-executor-tag{margin:0;padding:4px 10px;font-size:13px}.ticket-type-approval-divider{height:1px;background:#f0f0f0;margin:16px 0}.ticket-type-approval-tabs .ant-tabs-nav{margin-bottom:12px}.ticket-type-flow-card{border:1px solid #f0f0f0;border-radius:8px;background:#fff;overflow:hidden}.ticket-type-flow-card-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fafafa;border-bottom:1px solid #f0f0f0}.ticket-type-flow-card-title{font-weight:500;display:flex;align-items:center;gap:8px}.ticket-type-flow-card-title .anticon{color:#0061a8}.ticket-type-flow-timeline{padding:20px 24px;border-left:2px solid #f0f0f0;margin-left:12px}.ticket-type-flow-step{position:relative;padding-left:20px;margin-bottom:24px}.ticket-type-flow-step:last-child{margin-bottom:0}.ticket-type-flow-step-dot{position:absolute;left:-27px;top:2px;width:10px;height:10px;border-radius:50%;background:#0061a8;border:2px solid #fff;box-shadow:0 0 0 1px #0061a8}.ticket-type-flow-step-title{font-weight:500;margin-bottom:4px}.ticket-type-flow-step-desc{font-size:13px;color:#00000073}.approval-flow-edit-timeline{border-left:2px solid #e8e8e8;margin-left:8px;padding-left:24px}.approval-flow-edit-step{margin-bottom:28px}.approval-flow-edit-step-title{font-weight:500;margin-bottom:12px}.approval-flow-assignee-types{margin-bottom:12px}.approval-flow-assignee-values{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.approval-flow-value-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#e8f2f9;border:1px solid #b8d4eb;color:#0061a8;border-radius:4px;font-size:13px}.approval-flow-add-step{padding-left:0;margin-top:8px}.sop-toolbar{flex-wrap:wrap;gap:12px}.sop-linked-space-cell{display:flex;flex-direction:column;gap:4px}.sop-filter-bar{background:#fafafa;padding:16px;border-radius:8px;border:1px solid #f0f0f0}.sop-form-modal .ant-modal-content{padding:0;border-radius:8px;overflow:hidden}.sop-form-modal .ant-modal-header{padding:16px 24px;margin-bottom:0;border-bottom:1px solid #f0f0f0}.sop-form-modal .ant-modal-title{font-size:18px;font-weight:700;color:#000000e0}.sop-form-modal .ant-modal-close{top:16px;inset-inline-end:20px}.sop-form-modal .ant-modal-footer{padding:16px 24px;margin-top:0;border-top:1px solid #f0f0f0}.sop-form-body{padding:24px}.sop-form-footer{display:flex;justify-content:flex-end;gap:12px}.sop-footer-btn--secondary{min-width:88px;color:#000000e0;border-color:#d9d9d9;background:#fff}.sop-footer-btn--secondary:hover{color:#0061a8!important;border-color:#0061a8!important}.sop-footer-btn--primary{min-width:88px;background:#0061a8!important;border-color:#0061a8!important}.sop-footer-btn--primary:hover{background:#00518f!important;border-color:#00518f!important}.sop-form-section{margin-bottom:24px}.sop-form-section:last-child{margin-bottom:0}.sop-form-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sop-form-label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:#000000e0}.sop-form-label--inline{display:block;margin-bottom:10px}.sop-form-label .required{color:#ff4d4f}.sop-form-name-input{max-width:400px}.sop-ref-btn{background:#0061a8!important;border-color:#0061a8!important}.sop-work-detail-panel{border:1px solid #e8e8e8;border-radius:8px;overflow:hidden;background:#fff}.sop-step-tabs-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 8px 0 16px;border-bottom:1px solid #f0f0f0;background:#fafafa}.sop-step-tabs-actions{display:flex;align-items:center;flex-shrink:0}.sop-step-tabs{flex:1;margin-bottom:0!important;min-width:0}.sop-step-tabs .ant-tabs-nav{margin-bottom:0}.sop-step-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#0061a8}.sop-step-tabs .ant-tabs-ink-bar{background:#0061a8}.sop-step-content{padding:20px 24px 24px}.sop-check-object-select{width:100%;margin-bottom:20px}.sop-step-row{margin-bottom:20px}.sop-step-row--controls{margin-bottom:24px}.sop-control-checks{display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px}.sop-control-checks .ant-checkbox-wrapper{margin-inline-end:0;font-size:14px;color:#000000e0}.sop-operations-list{display:flex;flex-direction:column;gap:20px}.sop-operation-item{display:flex;gap:12px;align-items:flex-start}.sop-operation-index{width:22px;height:22px;border-radius:50%;background:#0061a8;color:#fff;font-size:12px;font-weight:500;line-height:22px;text-align:center;flex-shrink:0;margin-top:8px}.sop-operation-main{flex:1;min-width:0}.sop-operation-editor{display:flex;gap:12px;align-items:flex-start}.sop-operation-textarea{flex:1;min-width:0;resize:vertical;border-radius:6px;font-size:14px;line-height:1.6}.sop-operation-textarea.ant-input[disabled],.sop-operation-textarea.ant-input[readonly]{background:#fafafa;color:#000000e0}.sop-operation-side-actions{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:4px;flex-shrink:0}.sop-op-action{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;cursor:pointer;border-radius:4px;transition:opacity .2s}.sop-op-action:hover{opacity:.85}.sop-op-action--add{color:#0061a8;font-size:18px}.sop-op-action--delete{color:#ff4d4f;font-size:16px}.sop-operation-meta{display:flex;align-items:center;gap:12px;margin-top:10px}.sop-anomaly-btn{color:#0061a8!important;border-color:#91caff!important;background:#e6f4ff!important;box-shadow:none}.sop-anomaly-btn:hover{color:#00518f!important;border-color:#0061a8!important;background:#bae0ff!important}.sop-operation-logic{font-size:13px;color:#00000073}.sop-operation-logic-tag{display:inline-block;padding:2px 8px;margin-left:2px;background:#f5f5f5;border:1px solid #e8e8e8;border-radius:4px;color:#000000a6;font-size:12px}.plan-toolbar{flex-wrap:wrap;gap:12px}.plan-panel{background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.plan-filter-bar{padding:16px;border-bottom:1px solid #f0f0f0}.plan-date-sep{color:#00000073}.plan-table .ant-table-thead>tr>th{background:#fafafa}.plan-status-cell{display:inline-flex;align-items:center;gap:6px;color:#00000073;font-size:14px}.plan-status-cell--active{color:#0061a8}.plan-status-dot{width:6px;height:6px;border-radius:50%;background:#bfbfbf}.plan-status-cell--active .plan-status-dot{background:#0061a8}.plan-check-time-cell{white-space:pre-line;line-height:1.6}.plan-count-zero{color:#00000040}.plan-form-modal .ant-modal-header{padding:16px 24px;border-bottom:1px solid #f0f0f0}.plan-form-modal .ant-modal-title{font-size:18px;font-weight:700}.plan-form-modal .ant-modal-footer{padding:16px 24px;border-top:1px solid #f0f0f0;background:#fafafa80}.plan-form-body{padding:24px}.plan-form-footer{display:flex;justify-content:flex-end;gap:12px}.plan-footer-btn--secondary{min-width:88px;border-color:#d9d9d9}.plan-footer-btn--primary,.plan-primary-btn{background:#0061a8!important;border-color:#0061a8!important}.plan-footer-btn--primary:hover,.plan-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.plan-form-field{margin-bottom:20px}.plan-form-label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:#000000e0}.plan-form-label .required{color:#ff4d4f}.plan-add-sop-btn{color:#0061a8!important;border-color:#0061a8!important;margin-bottom:12px}.plan-add-sop-btn:hover{color:#00518f!important;border-color:#00518f!important;background:#e6f4ff!important}.plan-sop-tags{display:flex;flex-wrap:wrap;gap:8px}.plan-sop-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#e6f4ff;border:1px solid #91caff;border-radius:4px;color:#0061a8;font-size:13px}.plan-sop-tag-remove{display:inline-flex;padding:0;border:none;background:transparent;color:#0061a899;cursor:pointer;font-size:12px}.plan-sop-tag-remove:hover{color:#0061a8}.plan-batch-fields{margin-top:12px;padding-left:8px;display:flex;flex-direction:column;gap:12px}.plan-batch-row,.plan-round-row,.plan-effective-row,.plan-advance-row{display:flex;align-items:center;gap:8px}.plan-batch-row>span:first-child,.plan-round-row>span:first-child,.plan-effective-row>span:first-child{width:112px;flex-shrink:0;text-align:right;color:#000000a6;font-size:14px}.plan-round-row .ant-input{flex:1}.plan-date-range{display:flex;align-items:center;gap:8px;margin-top:12px}.plan-frequency-block{margin-top:12px;display:flex;flex-direction:column;gap:12px}.plan-frequency-inline{display:flex;align-items:center;gap:8px}.plan-effective-fields{margin-top:12px;display:flex;flex-direction:column;gap:12px}.plan-sop-select-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:16px}.plan-sop-select-toolbar .ant-input-affix-wrapper{flex:1;max-width:300px}.plan-sop-select-hint{color:#00000073;font-size:14px}.plan-sop-select-hint span,.plan-sop-select-count strong{color:#0061a8}.plan-sop-select-footer{display:flex;align-items:center;justify-content:space-between;width:100%}.plan-sop-select-count{color:#00000073;font-size:14px}.perm-toolbar{flex-wrap:wrap;gap:12px}.perm-panel{background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden}.perm-filter-bar{padding:16px;border-bottom:1px solid #f0f0f0}.perm-filter-label{color:#000000a6;font-size:14px}.perm-table .ant-table-thead>tr>th{background:#fafafa}.perm-tag-list{display:flex;flex-wrap:wrap;gap:6px}.perm-tag{display:inline-block;padding:2px 8px;background:#e6f4ff;border:1px solid #91caff;border-radius:4px;color:#0061a8;font-size:12px}.perm-primary-btn{background:#0061a8!important;border-color:#0061a8!important}.perm-primary-btn:hover{background:#00518f!important;border-color:#00518f!important}.perm-detail-page{display:flex;flex-direction:column;height:100%;min-height:0;margin:-8px;padding:0}.perm-detail-header{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 24px;background:#fff;border-bottom:1px solid #f0f0f0;flex-shrink:0}.perm-detail-header-left{display:flex;align-items:center;gap:8px}.perm-detail-back{color:#00000073}.perm-detail-back:hover{color:#0061a8!important;background:#e6f4ff!important}.perm-detail-title{margin:0;font-size:18px;font-weight:700}.perm-detail-body{flex:1;display:flex;gap:24px;padding:24px;min-height:0;overflow:hidden}.perm-detail-info{width:400px;flex-shrink:0;background:#fff;border:1px solid #f0f0f0;border-radius:8px;display:flex;flex-direction:column;min-height:0}.perm-detail-permissions{flex:1;min-width:0;background:#fff;border:1px solid #f0f0f0;border-radius:8px;display:flex;flex-direction:column;min-height:0}.perm-detail-panel-title{margin:0;font-size:16px;font-weight:700}.perm-detail-info .perm-detail-panel-title,.perm-detail-permissions-header{padding:16px 20px;border-bottom:1px solid #f0f0f0}.perm-detail-permissions-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.perm-detail-info-content{padding:20px;display:flex;flex-direction:column;gap:24px;overflow-y:auto}.perm-detail-permissions-body{flex:1;overflow-y:auto;padding:20px}.perm-detail-field{display:flex;flex-direction:column;gap:8px}.perm-detail-label{font-size:14px;font-weight:500;color:#000000e0}.perm-role-tags{display:flex;flex-wrap:wrap;gap:8px}.perm-role-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#e6f4ff;border:1px solid #91caff;border-radius:4px;color:#0061a8;font-size:12px}.perm-role-tag button{border:none;background:transparent;color:#0061a899;cursor:pointer;padding:0;line-height:1}.perm-role-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.perm-role-suggestion{padding:2px 8px;border:1px dashed #91caff;border-radius:4px;background:#fff;color:#0061a8;font-size:12px;cursor:pointer}.perm-role-suggestion:hover{background:#e6f4ff}.perm-client-segmented .ant-segmented-item-selected{color:#0061a8!important}.perm-tree-select-all{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #f0f0f0;padding-left:24px}.perm-tree-root{margin-bottom:8px}.perm-tree-root-header{display:flex;align-items:center;gap:4px;padding:8px 0;font-weight:500}.perm-tree-expand{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;color:#00000073;cursor:pointer;padding:0}.perm-tree-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d9d9d9}.perm-tree-children{margin-left:24px;padding-left:12px;border-left:1px dashed #e8e8e8}.perm-tree-leaf{padding:8px 0}.perm-tree-actions{display:flex;flex-wrap:wrap;gap:12px 20px;margin-left:32px;margin-top:8px}.ledger-id-link{border:none;background:transparent;padding:0;cursor:pointer;font:inherit;text-align:left}.ledger-id-link:hover{color:#005a96;text-decoration:underline}.ledger-detail-page{min-height:100%}.ledger-detail-loading,.ledger-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px}.ledger-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.ledger-detail-back-btn{height:36px;padding-inline:14px;border-radius:8px;color:#000000a6}.ledger-detail-back-btn:hover{color:#0061a8!important;border-color:#0061a8!important}.ledger-detail-title{margin:0;font-size:20px;font-weight:600;color:#000000e0}.ledger-detail-title-code{color:#0061a8}.ledger-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}@media (max-width: 1200px){.ledger-detail-layout{grid-template-columns:1fr}}.ledger-detail-card{min-width:0;border-radius:12px}.ledger-detail-card .ant-card-head{min-height:56px;border-bottom:1px solid #f0f0f0}.ledger-detail-card-title{font-size:16px;font-weight:600;color:#000000e0}.ledger-detail-card-extra{font-size:13px;color:#00000073}.ledger-detail-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px}@media (max-width: 768px){.ledger-detail-info-grid{grid-template-columns:1fr}}.ledger-detail-info-item{display:flex;flex-direction:column;gap:6px}.ledger-detail-info-label{font-size:13px;color:#00000073}.ledger-detail-info-value{font-size:14px;font-weight:500;color:#000000e0;word-break:break-all}.ledger-detail-info-value.is-highlight{color:#0061a8}.ledger-detail-type-tag{margin:0;border:none;background:#f3e8ff;color:#7c3aed;border-radius:6px}.ledger-detail-stock-normal{font-weight:700;color:#000000e0}.ledger-detail-stock-low{font-weight:700;color:#ef4444}.ledger-detail-timeline-card .ant-card-head-title{white-space:normal}.ledger-detail-timeline-heading{display:flex;flex-direction:column;gap:4px}.ledger-detail-timeline-subtitle{font-size:12px;font-weight:400;color:#00000073}.ledger-detail-timeline-card{position:sticky;top:16px}.ledger-detail-timeline{position:relative;display:flex;flex-direction:column;gap:0;padding:4px 0}.ledger-detail-timeline-item{position:relative;display:flex;gap:12px;padding-bottom:24px}.ledger-detail-timeline-item:last-child{padding-bottom:0}.ledger-detail-timeline-item:not(:last-child):before{content:"";position:absolute;left:15px;top:32px;bottom:0;width:2px;background:#e8e8e8}.ledger-detail-timeline-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff}.ledger-detail-timeline-icon--create{background:#22c55e}.ledger-detail-timeline-icon--inbound{background:#8b5cf6}.ledger-detail-timeline-icon--modify{background:#3b82f6}.ledger-detail-timeline-icon--borrow{background:#f97316}.ledger-detail-timeline-icon--return{background:#14b8a6}.ledger-detail-timeline-content{flex:1;min-width:0}.ledger-detail-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ledger-detail-timeline-title{font-size:14px;font-weight:600;color:#000000e0}.ledger-detail-timeline-operator{font-size:13px;color:#00000073;flex-shrink:0}.ledger-detail-timeline-time{margin-top:4px;font-size:12px;color:#00000073}.ledger-detail-timeline-remark{margin-top:8px;padding:10px 12px;background:#fafafa;border-radius:8px;font-size:13px;line-height:1.5;color:#000000a6}
