.lg-root{width:100%}.lg-panel-left,.lg-root{display:flex;min-height:100vh}.lg-panel-left{background:linear-gradient(145deg,#050e1d,#0a1e3a 35%,#0f2d5c 65%,#1a3f7a);flex-direction:column;flex-shrink:0;justify-content:space-between;overflow:hidden;position:relative;width:46%}.lg-orb{border-radius:50%;pointer-events:none;position:absolute}.lg-orb-1{animation:orbPulse 8s ease-in-out infinite;background:radial-gradient(circle,#1677ff38 0,#0000 70%);height:420px;right:-100px;top:-120px;width:420px}.lg-orb-2{animation:orbPulse 10s ease-in-out infinite reverse;background:radial-gradient(circle,#43e97b2e 0,#0000 70%);bottom:60px;height:280px;left:-80px;width:280px}.lg-orb-3{animation:orbPulse 12s ease-in-out 2s infinite;background:radial-gradient(circle,#63b3ed26 0,#0000 70%);height:180px;right:20px;top:55%;width:180px}@keyframes orbPulse{0%,to{opacity:.8;transform:scale(1) translate(0)}50%{opacity:1;transform:scale(1.15) translate(10px,-10px)}}.lg-left-content{flex:1 1;flex-direction:column;padding:56px 48px 40px;position:relative;z-index:2}.lg-left-content,.lg-logo-wrap{display:flex;justify-content:center}.lg-logo-wrap{align-items:center;animation:logoGlow 4s ease-in-out infinite;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff26;border:1.5px solid #ffffff4d;border-radius:24px;box-shadow:0 8px 32px #0000002e;height:90px;margin-bottom:28px;width:90px}@keyframes logoGlow{0%,to{box-shadow:0 8px 32px #0000002e}50%{box-shadow:0 12px 48px #ffffff38}}.lg-logo-img{filter:drop-shadow(0 2px 8px rgba(0,0,0,.25)) brightness(1.15);height:68px;object-fit:contain;width:68px}.lg-school-name{color:#fff;font-size:30px;font-weight:800;letter-spacing:3px;line-height:1.2;margin-bottom:4px}.lg-dept-name{color:#ffffffd9;font-size:19px;font-weight:600;letter-spacing:4px;margin-bottom:6px}.lg-sys-name{color:#ffffff8c;font-size:14px;font-weight:400;letter-spacing:2px}.lg-divider{background:linear-gradient(90deg,#43e97b,#38f9d7);border-radius:99px;height:3px;margin:28px 0;width:48px}.lg-features{display:flex;flex-direction:column;gap:18px}.lg-feat-item{gap:14px}.lg-feat-icon,.lg-feat-item{align-items:center;display:flex}.lg-feat-icon{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:11px;color:#43e97b;flex-shrink:0;font-size:17px;height:38px;justify-content:center;width:38px}.lg-feat-title{color:#ffffffeb;font-size:14px;font-weight:600;line-height:1.3}.lg-feat-sub{color:#ffffff73;font-size:12px;margin-top:1px}.lg-left-footer{color:#ffffff4d;font-size:12px;padding:20px 48px;position:relative;z-index:2}.lg-panel-right{align-items:center;background:#f5f7fb;display:flex;flex:1 1;justify-content:center;min-height:100vh;overflow-y:auto;padding:32px 24px}.lg-form-wrap{background:#fff;border-radius:20px;box-shadow:0 8px 40px #0000001a;max-width:420px;padding:40px 44px;width:100%}.lg-mobile-brand{display:none}.lg-form-header{margin-bottom:24px}.lg-greeting{color:#0a1628;font-size:26px;font-weight:800;line-height:1.2;margin-bottom:6px}.lg-form-sub{color:#8a94a6;font-size:14px}.lg-tabs .ant-tabs-nav{margin-bottom:24px!important}.lg-tabs .ant-tabs-tab{color:#8a94a6!important;font-size:15px;font-weight:500;padding:10px 0!important}.lg-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#1677ff!important;font-weight:700!important}.lg-tabs .ant-tabs-ink-bar{background:linear-gradient(90deg,#1677ff,#43e97b)!important;border-radius:2px!important;height:3px!important}.lg-tabs .ant-tabs-nav:before{border-bottom-color:#f0f2f5!important}.lg-input.ant-input,.lg-input.ant-input-affix-wrapper{background:#f8fafc!important;border:1.5px solid #e8ecf0!important;border-radius:12px!important;font-size:15px!important;height:50px!important;padding:0 16px!important;transition:all .25s ease!important}.lg-input.ant-input-affix-wrapper .ant-input{background:#0000!important;font-size:15px!important}.lg-input.ant-input-affix-wrapper:hover,.lg-input.ant-input:hover{background:#fff!important;border-color:#1677ff!important}.lg-input.ant-input-affix-wrapper-focused,.lg-input.ant-input:focus{background:#fff!important;border-color:#1677ff!important;box-shadow:0 0 0 4px #1677ff1a!important}.lg-input-icon{color:#b0b8c8!important;font-size:15px!important}.lg-btn-primary.ant-btn{background:linear-gradient(135deg,#1677ff,#0d5ecc)!important;border:none!important;border-radius:12px!important;box-shadow:0 6px 20px #1677ff52!important;font-size:16px!important;font-weight:700!important;height:50px!important;letter-spacing:1px;transition:all .25s ease!important}.lg-btn-primary.ant-btn:hover{background:linear-gradient(135deg,#3d8fff,#1677ff)!important;box-shadow:0 10px 28px #1677ff6b!important;transform:translateY(-2px)!important}.lg-btn-primary.ant-btn:active{transform:translateY(0)!important}.lg-btn-google.ant-btn{background:#fff!important;border:1.5px solid #e8ecf0!important;border-radius:12px!important;box-shadow:0 2px 8px #0000000f!important;color:#444!important;font-size:15px!important;font-weight:500!important;height:50px!important;transition:all .25s ease!important}.lg-btn-google.ant-btn:hover{border-color:#4285f4!important;box-shadow:0 4px 14px #4285f42e!important;color:#4285f4!important;transform:translateY(-1px)!important}.lg-divider-or.ant-divider{border-color:#f0f2f5!important;color:#b0b8c8!important;font-size:13px!important;margin:16px 0!important}.lg-form-wrap .ant-form-item{margin-bottom:16px}.lg-form-wrap .ant-form-item-explain-error{font-size:12px;margin-top:4px}@media (max-width:1024px){.lg-panel-left{width:42%}.lg-left-content{padding:40px 36px 32px}.lg-school-name{font-size:26px;letter-spacing:2px}.lg-form-wrap{padding:36px}}@media (max-width:768px){.lg-root{flex-direction:column}.lg-panel-left{display:none}.lg-panel-right{align-items:flex-start;background:linear-gradient(145deg,#0a1e3a,#0f2d5c 40%,#1677ff);min-height:100vh;padding:40px 16px 32px}.lg-form-wrap{border-radius:20px;margin-top:0;max-width:100%;padding:28px 24px 24px}.lg-mobile-brand{align-items:center;display:flex;gap:12px;margin-bottom:24px}.lg-mobile-logo{align-items:center;background:#0a162814;border:1px solid #0a16281f;border-radius:14px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.lg-logo-img-sm{filter:drop-shadow(0 1px 4px rgba(0,0,0,.15));height:36px;object-fit:contain;width:36px}.lg-mobile-name{color:#0a1628;font-size:15px;font-weight:700;letter-spacing:1px;line-height:1.3}.lg-greeting{font-size:22px}.lg-input.ant-input,.lg-input.ant-input-affix-wrapper,.lg-input.ant-input-affix-wrapper .ant-input{font-size:16px!important}}@media (max-width:400px){.lg-form-wrap{padding:24px 18px 20px}.lg-greeting{font-size:20px}}.dashboard-root{padding:0 0 40px}.db-hero{background:linear-gradient(135deg,#0d0d2b,#0f3460 40%,#16213e 70%,#0a1628);border-radius:18px;box-shadow:0 8px 32px #00000059;margin-bottom:24px;overflow:hidden;padding:32px 32px 28px;position:relative}.db-hero:before{background:radial-gradient(circle,#63b3ed1f 0,#0000 70%);height:260px;right:-60px;top:-60px;width:260px}.db-hero:after,.db-hero:before{border-radius:50%;content:"";pointer-events:none;position:absolute}.db-hero:after{background:radial-gradient(circle,#9f7aea1a 0,#0000 70%);bottom:-40px;height:180px;left:30%;width:180px}.db-hero-inner{flex-wrap:wrap;gap:16px;justify-content:space-between;position:relative;z-index:1}.db-hero-inner,.db-hero-left{align-items:center;display:flex}.db-hero-left{gap:20px}.db-hero-logo{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:20px;box-shadow:0 6px 24px #667eea59;display:flex;flex-shrink:0;height:72px;justify-content:center;padding:6px;width:72px}.db-hero-logo-img{filter:drop-shadow(0 2px 6px rgba(0,0,0,.3));height:100%;object-fit:contain;width:100%}.db-hero-school{color:#ffffff8c;font-size:12px;letter-spacing:1.5px;margin-bottom:4px;text-transform:uppercase}.db-hero-title{color:#fff!important;font-size:22px!important;font-weight:800!important;letter-spacing:.5px;margin:0 0 4px!important}.db-hero-subtitle{color:#ffffff80;font-size:12px}.db-hero-right{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.db-hero-date{color:#ffffffbf;font-size:14px;font-weight:500}.db-hero-time{font-feature-settings:"tnum";color:#fff;font-size:28px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:2px}.db-hero-badge{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:20px;color:#fffc;display:inline-flex;font-size:11px;gap:6px;padding:4px 12px}.db-hero-badge-dot{animation:db-blink 2s infinite;background:#52c41a;border-radius:50%;box-shadow:0 0 6px #52c41a;height:7px;width:7px}@keyframes db-blink{0%,to{opacity:1}50%{opacity:.3}}.stat-card{border-radius:16px;color:#fff;cursor:default;display:flex;flex-direction:column;justify-content:flex-end;min-height:118px;overflow:hidden;padding:20px 20px 16px;position:relative;transition:transform .22s,box-shadow .22s}.stat-card:hover{transform:translateY(-4px)}.stat-card:before{background:#ffffff21;height:100px;right:-20px;top:-20px;width:100px}.stat-card:after,.stat-card:before{border-radius:50%;content:"";position:absolute}.stat-card:after{background:#ffffff12;bottom:-30px;height:80px;left:-30px;width:80px}.stat-card-icon{font-size:30px;opacity:.85;position:absolute;right:16px;top:16px}.stat-card-value{font-size:34px;font-weight:700;letter-spacing:-.5px;line-height:1.1}.stat-card-title{font-size:13px;letter-spacing:.2px;margin-top:5px;opacity:.9}.db-quicklinks-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr);margin-bottom:24px}@media (max-width:1100px){.db-quicklinks-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:600px){.db-quicklinks-grid{grid-template-columns:repeat(2,1fr)}}.db-ql-card{align-items:center;background:#fff;border:1px solid #eee;border-radius:14px;box-shadow:0 2px 8px #0000000d;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px 12px;text-decoration:none;transition:transform .18s,box-shadow .18s}.db-ql-card:hover{box-shadow:0 6px 20px #0000001c;transform:translateY(-3px)}.db-ql-icon{align-items:center;border-radius:13px;color:#fff;display:flex;flex-shrink:0;font-size:22px;height:46px;justify-content:center;width:46px}.db-ql-label{color:#333;font-size:12px;font-weight:600;line-height:1.3;text-align:center}.dashboard-card{border:1px solid #f0f0f0!important;border-radius:14px!important;box-shadow:0 2px 14px #0000000f!important}.dashboard-table .ant-table{font-size:13px}.dashboard-table .ant-table-thead>tr>th{background:#f0f5ff!important;border-bottom:1px solid #dbe6ff!important;color:#1a1a2e!important;font-size:12px;font-weight:700!important}.dashboard-table .ant-table-tbody>tr:hover>td{background:#f0f5ff!important}.db-section-title{align-items:center;color:#1a1a2e;display:flex;font-size:15px;font-weight:700;gap:8px;margin-bottom:14px;padding-left:4px;position:relative}.db-section-title:before{background:linear-gradient(180deg,#1677ff,#9254de);border-radius:3px;content:"";flex-shrink:0;height:18px;width:4px}.dashboard-card .ant-card-head{background:#fafbff;border-bottom:1px solid #eef0f8;min-height:48px;padding:0 16px}.dashboard-card .ant-card-head-title{color:#1a1a2e;font-size:14px;font-weight:700;padding:12px 0}.db-quicklinks-title{align-items:center;color:#1a1a2e;display:flex;font-size:15px;font-weight:700;gap:8px;margin-bottom:12px;padding-left:4px;position:relative}.db-quicklinks-title:before{background:linear-gradient(180deg,#faad14,#ff7a45);border-radius:3px;content:"";flex-shrink:0;height:18px;width:4px}body.dark-mode .dashboard-root{background:#111827}body.dark-mode .db-quicklinks-title{color:#e5e7eb}body.dark-mode .db-quicklinks-title:before{background:linear-gradient(180deg,#fbbf24,#fb923c)}body.dark-mode .db-ql-card{background:#1f2937;border-color:#ffffff14;box-shadow:0 2px 8px #00000040}body.dark-mode .db-ql-card:hover{box-shadow:0 6px 20px #00000059}body.dark-mode .db-ql-label{color:#d1d5db}body.dark-mode .dashboard-card{background:#1f2937!important;border-color:#ffffff14!important;box-shadow:0 2px 14px #0000004d!important}body.dark-mode .dashboard-card .ant-card-head{background:#111827;border-bottom-color:#ffffff14}body.dark-mode .dashboard-card .ant-card-head-title{color:#e5e7eb}body.dark-mode .dashboard-card .ant-card-head .anticon{color:inherit}body.dark-mode .dashboard-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .dashboard-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .dashboard-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .dashboard-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .dashboard-table .ant-table-tbody>tr>td .ant-typography{color:#e5e7eb}body.dark-mode .dashboard-table .ant-table-tbody>tr>td .ant-typography.ant-typography-secondary{color:#6b7280}body.dark-mode .db-section-title{color:#e5e7eb}.inventory-table{margin-top:16px}.stock-status-high{color:#52c41a}.stock-status-low{color:#ff7a45}.stock-status-critical{color:#ff4d4f}.inv-stat-card{border-radius:14px;cursor:default;flex-direction:column;justify-content:flex-end;min-height:110px;overflow:hidden;padding:20px 20px 16px;position:relative}.inv-stat-card:hover{transform:translateY(-3px)}.inv-stat-card:before{background:#ffffff1f;border-radius:50%;content:"";height:90px;position:absolute;right:-20px;top:-20px;width:90px}.inv-stat-icon{font-size:28px!important;opacity:.85;position:absolute;right:16px;top:16px}.inv-stat-value{font-size:32px;font-weight:700;letter-spacing:-.5px;line-height:1.1}.inv-stat-title{font-size:13px;margin-top:4px;opacity:.88}.tb-header{background:linear-gradient(135deg,#0f2027,#203a43 50%,#2c5364);border-radius:14px;box-shadow:0 4px 20px #0f202766;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.tb-header,.tb-header-left{align-items:center;display:flex;gap:16px}.tb-header-icon{align-items:center;background:linear-gradient(135deg,#f7971e,#ffd200);border-radius:14px;box-shadow:0 4px 12px #f7971e73;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.tb-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.tb-header-sub{color:#ffffffb3;font-size:13px;margin-top:3px}.tb-header-actions .ant-btn{border-radius:8px;font-weight:600}.tb-stat-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr);margin-bottom:16px}@media (max-width:1400px){.tb-stat-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:800px){.tb-stat-grid{grid-template-columns:repeat(2,1fr)}}.tb-stat-card{align-items:center;border-radius:13px;box-shadow:0 3px 12px #00000021;color:#fff;display:flex;gap:12px;padding:14px 16px;transition:transform .2s,box-shadow .2s}.tb-stat-card:hover{box-shadow:0 7px 22px #0000002e;transform:translateY(-2px)}.tb-stat-card-icon{align-items:center;background:#ffffff38;border-radius:10px;display:flex;flex-shrink:0;font-size:20px;height:42px;justify-content:center;width:42px}.tb-stat-card-val{font-size:26px;font-weight:700;line-height:1.1}.tb-stat-card-label{font-size:11px;margin-top:2px;opacity:.88}.tb-s-pending{background:linear-gradient(135deg,#f7971e,#ffd200)}.tb-s-approved{background:linear-gradient(135deg,#1e5799,#2980b9)}.tb-s-borrowed{background:linear-gradient(135deg,#36d1dc,#5b86e5)}.tb-s-returned{background:linear-gradient(135deg,#43e97b,#38f9d7)}.tb-s-overdue{background:linear-gradient(135deg,#ff416c,#ff4b2b)}.tb-s-total{background:linear-gradient(135deg,#4a1a7c,#7b2fbe)}.tb-filter-bar{align-items:center;background:#f0f4f8;border:1px solid #dce4ee;border-radius:10px;display:flex;gap:12px;margin-bottom:14px;padding:10px 14px}.tb-filter-bar-label{color:#555;font-size:13px;font-weight:600;white-space:nowrap}.tb-table-card{border-radius:14px;box-shadow:0 2px 12px #00000014;overflow:hidden}.tb-table .ant-table-thead>tr>th{background:#e8eef4;font-size:13px;font-weight:700}.tb-table .ant-table-tbody>tr:hover>td{background:#f5f8fb}.tb-user{color:#2c5364;font-weight:600}.tb-username{color:#999;font-size:11px}.tb-item-name{color:#203a43;font-weight:600}.tb-action-btn{border-radius:8px}.tb-status-tag{border-radius:20px;font-weight:600}.aa-header{background:linear-gradient(135deg,#e6f4ff,#f0f5ff 50%,#f9f0ff);border:1px solid #d6e4ff;border-radius:14px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.aa-header,.aa-header-left{align-items:center;display:flex}.aa-header-left{gap:14px}.aa-header-icon{align-items:center;background:linear-gradient(135deg,#1677ff,#722ed1);border-radius:12px;box-shadow:0 4px 12px #1677ff4d;color:#fff;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.aa-header-title{color:#1a1a2e!important;font-size:18px!important;font-weight:700!important;margin:0!important}.aa-header-subtitle{color:#6b7280;font-size:13px;margin-top:2px}.aa-stat-card{border-radius:14px;color:#fff;cursor:default;display:flex;flex-direction:column;justify-content:flex-end;min-height:108px;overflow:hidden;padding:20px 20px 16px;position:relative;transition:transform .2s,box-shadow .2s}.aa-stat-card:hover{transform:translateY(-3px)}.aa-stat-card:before{background:#ffffff21;height:85px;right:-18px;top:-18px;width:85px}.aa-stat-card:after,.aa-stat-card:before{border-radius:50%;content:"";position:absolute}.aa-stat-card:after{background:#ffffff12;bottom:-30px;height:70px;left:-10px;width:70px}.aa-stat-icon{font-size:26px;opacity:.85;position:absolute;right:16px;top:16px}.aa-stat-value{font-size:30px;font-weight:700;letter-spacing:-.5px;line-height:1.1;position:relative;z-index:1}.aa-stat-label{font-size:13px;letter-spacing:.2px;margin-top:4px;opacity:.9;position:relative;z-index:1}.aa-table-card{border:1px solid #f0f0f0!important;border-radius:14px!important;box-shadow:0 2px 16px #0000000f!important;overflow:hidden}.aa-table-card .ant-card-head{background:#fafafa;border-bottom:1px solid #f5f5f5;min-height:52px;padding:0 16px}.aa-filter-bar{align-items:center;display:flex;gap:10px}.aa-table .ant-table-thead>tr>th{background:#f8fafc!important;border-bottom:1px solid #e5e7eb!important;color:#374151!important;font-size:13px;font-weight:600!important}.aa-table .ant-table-tbody>tr:hover>td{background:#f0f7ff!important}.aa-status-tag{border-radius:20px!important;font-size:12px!important;font-weight:500!important;padding:2px 10px!important}.aa-date-overdue{color:#ff4d4f;font-weight:600}.aa-table .ant-empty{padding:40px 0}body.dark-mode .aa-header{background:linear-gradient(135deg,#0f1f3d,#1a2040 50%,#1e1040);border-color:#ffffff14}body.dark-mode .aa-header-title{color:#e5e7eb!important}body.dark-mode .aa-header-subtitle{color:#6b7280}body.dark-mode .aa-table-card{background:#1f2937!important;border-color:#ffffff14!important;box-shadow:0 2px 16px #0006!important}body.dark-mode .aa-table-card .ant-card-head{background:#111827;border-bottom-color:#ffffff14}body.dark-mode .aa-filter-bar .ant-input,body.dark-mode .aa-filter-bar .ant-input-affix-wrapper,body.dark-mode .aa-filter-bar .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .aa-filter-bar .ant-input::placeholder,body.dark-mode .aa-filter-bar .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .aa-filter-bar .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .aa-filter-bar .ant-input:hover,body.dark-mode .aa-filter-bar .ant-select:not(.ant-select-customize-input):hover .ant-select-selector{border-color:#60a5fa73!important}body.dark-mode .aa-filter-bar .ant-select-arrow{color:#9ca3af!important}body.dark-mode .aa-table .ant-table{background:#1f2937!important}body.dark-mode .aa-table .ant-table-thead>tr>th{background:#111827!important;border-color:#ffffff0f!important;color:#9ca3af!important}body.dark-mode .aa-table .ant-table-tbody>tr>td{background:#1f2937!important;border-color:#ffffff0d!important;color:#d1d5db!important}body.dark-mode .aa-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}.inv-img-block{background:#fff;border:1.5px solid #e4ecff;border-radius:14px;box-shadow:0 2px 14px #1677ff0f,0 1px 3px #0000000a;margin-bottom:20px;overflow:hidden;padding:18px 22px 20px;position:relative;transition:box-shadow .25s,border-color .25s}.inv-img-block:before{background:linear-gradient(180deg,#1677ff,#69b0ff);border-radius:14px 0 0 14px;content:"";height:100%;left:0;position:absolute;top:0;width:4px}.inv-img-block:hover{border-color:#b3d0ff;box-shadow:0 4px 22px #1677ff21,0 1px 4px #0000000f}.inv-img-block__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.inv-img-block__title{align-items:center;color:#1a2e5a;display:flex;font-size:14px;font-weight:700;gap:7px;letter-spacing:.3px}.inv-img-block__title .anticon{color:#1677ff;font-size:16px}.inv-img-block__badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:500;gap:5px;padding:3px 10px;white-space:nowrap}.inv-img-block__badge--has{background:#f0fff4;border:1px solid #b7eb8f;color:#389e0d}.inv-img-block__badge--has .anticon{color:#52c41a;font-size:12px}.inv-img-block__badge--none{background:#f9fafb;border:1px dashed #d9d9d9;color:#9ca3af}.inv-img-block__body{align-items:flex-start;display:flex;flex-wrap:wrap;gap:22px}.inv-img-block__img-wrap{flex-shrink:0}.inv-img-block__preview{border:2px solid #dbeafe!important;border-radius:12px!important;box-shadow:0 4px 18px #1677ff24,0 1px 4px #00000014!important;display:block;height:150px!important;object-fit:cover!important;transition:transform .2s,box-shadow .2s!important;width:150px!important}.inv-img-block__preview:hover{box-shadow:0 8px 28px #1677ff33,0 2px 8px #0000001a!important;transform:translateY(-2px) scale(1.015)!important}.inv-img-block__placeholder{align-items:center;background:linear-gradient(145deg,#f0f5ff,#e8f0ff);border:2px dashed #93b4f7;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:10px;height:150px;justify-content:center;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;width:150px}.inv-img-block__placeholder:hover{background:linear-gradient(145deg,#e6eeff,#dceaff);border-color:#4f8ef7;box-shadow:0 6px 20px #1677ff24;transform:translateY(-2px)}.inv-img-block__placeholder-icon{color:#4f8ef7!important;font-size:38px!important;transition:transform .2s}.inv-img-block__placeholder:hover .inv-img-block__placeholder-icon{transform:scale(1.12)}.inv-img-block__placeholder-text{color:#6b90d0;font-size:12px;font-weight:500;letter-spacing:.5px}.inv-img-block__controls{display:flex;flex:1 1;flex-direction:column;gap:10px;max-width:200px;min-width:140px;padding-top:4px}.inv-img-block__btn-delete.ant-btn,.inv-img-block__btn-upload.ant-btn{border-radius:8px!important;font-weight:500!important;height:36px!important}.inv-img-block__hint{align-items:center;background:#f8faff;border:1px solid #edf2ff;border-radius:7px;color:#a0aec0;display:flex;font-size:12px;gap:5px;line-height:1.5;padding:6px 8px}.inv-img-block__hint .anticon{color:#93b4f7;font-size:12px}body.dark-mode .inv-img-block{background:#111827;border-color:#1e3a5f;box-shadow:0 2px 16px #0006,0 1px 3px #0000004d}body.dark-mode .inv-img-block:before{background:linear-gradient(180deg,#3b82f6,#1d4ed8)}body.dark-mode .inv-img-block:hover{border-color:#2d5299;box-shadow:0 4px 24px #388bfd2e,0 1px 4px #0006}body.dark-mode .inv-img-block__title{color:#e2e8f0}body.dark-mode .inv-img-block__title .anticon{color:#60a5fa}body.dark-mode .inv-img-block__badge--has{background:#4ade8014;border-color:#4ade8040;color:#4ade80}body.dark-mode .inv-img-block__badge--has .anticon{color:#4ade80}body.dark-mode .inv-img-block__badge--none{background:#ffffff0a;border-color:#ffffff1a;color:#6b7280}body.dark-mode .inv-img-block__preview{border-color:#1e3d6e!important;box-shadow:0 4px 18px #00000080!important}body.dark-mode .inv-img-block__preview:hover{box-shadow:0 8px 28px #0009!important}body.dark-mode .inv-img-block__placeholder{background:linear-gradient(145deg,#1a2f50,#152542);border-color:#2a4a7f}body.dark-mode .inv-img-block__placeholder:hover{background:linear-gradient(145deg,#1e3660,#1a304e);border-color:#3b82f6;box-shadow:0 6px 20px #388bfd33}body.dark-mode .inv-img-block__placeholder-icon{color:#3b82f6!important}body.dark-mode .inv-img-block__placeholder-text{color:#4a7cb8}body.dark-mode .inv-img-block__hint{background:#ffffff08;border-color:#ffffff0f;color:#4b5563}body.dark-mode .inv-img-block__hint .anticon{color:#2a4f80}.cat-header{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);border-radius:14px;box-shadow:0 4px 20px #0f346066;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.cat-header,.cat-header-left{align-items:center;display:flex;gap:16px}.cat-header-icon{align-items:center;background:linear-gradient(135deg,#a18cd1,#fbc2eb);border-radius:14px;box-shadow:0 4px 12px #a18cd173;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.cat-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.cat-header-sub{color:#ffffffb3;font-size:13px;margin-top:3px}.cat-header-actions .ant-btn{border-radius:8px;font-weight:600}.cat-stat-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}@media (max-width:700px){.cat-stat-grid{grid-template-columns:1fr}}.cat-stat-card{align-items:center;border-radius:13px;box-shadow:0 3px 14px #00000021;color:#fff;display:flex;gap:14px;padding:16px 20px;transition:transform .2s,box-shadow .2s}.cat-stat-card:hover{box-shadow:0 7px 22px #0000002e;transform:translateY(-2px)}.cat-stat-card-icon{align-items:center;background:#ffffff38;border-radius:11px;display:flex;flex-shrink:0;font-size:22px;height:44px;justify-content:center;width:44px}.cat-stat-card-val{font-size:28px;font-weight:700;line-height:1.1}.cat-stat-card-label{font-size:12px;margin-top:2px;opacity:.85}.cat-s-total{background:linear-gradient(135deg,#4a1a7c,#7b2fbe)}.cat-s-borrow{background:linear-gradient(135deg,#1e5799,#2980b9)}.cat-s-consume{background:linear-gradient(135deg,#43e97b,#38f9d7)}.cat-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.cat-table .ant-table-thead>tr>th{background:#f0eeff;font-size:13px;font-weight:700}.cat-table .ant-table-tbody>tr:hover>td{background:#faf8ff}.cat-name{color:#1a2e5a;font-size:14px;font-weight:600}body.dark-mode .cat-name{color:#93c5fd}.cat-action-btn{border-radius:8px}.cat-desc{color:#888;font-size:12px}.um-container{padding:24px}.um-header{background:linear-gradient(135deg,#004d40,#00695c 50%,#00897b);border-radius:14px;box-shadow:0 4px 20px #004d4052;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.um-header,.um-header-left{align-items:center;display:flex;gap:16px}.um-header-icon{align-items:center;background:linear-gradient(135deg,#ff9800,#ffc107);border-radius:14px;box-shadow:0 4px 12px #ff98006b;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.um-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.um-header-sub{color:#ffffffb8;font-size:13px;margin-top:3px}.um-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.um-header-actions .ant-btn{border-radius:8px;font-weight:600}.um-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.um-table .ant-table-thead>tr>th{background:#e0f7ee;font-size:13px;font-weight:700}.um-table .ant-table-tbody>tr:hover>td{background:#f0fff8}.um-action-btn{border-radius:8px}.um-username{background:#f0f4ff;border-radius:6px;color:#1565c0;font-family:SFMono-Regular,Consolas,monospace;padding:2px 8px}.um-role-tag,.um-username{font-size:12px;font-weight:600}.um-role-tag{border-radius:20px}.gm-container{padding:24px}.gm-header{background:linear-gradient(135deg,#4a148c,#6a1b9a 50%,#7b1fa2);border-radius:14px;box-shadow:0 4px 20px #4a148c52;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.gm-header,.gm-header-left{align-items:center;display:flex}.gm-header-left{gap:16px}.gm-header-icon{align-items:center;background:linear-gradient(135deg,#43e97b,#38f9d7);border-radius:14px;box-shadow:0 4px 12px #43e97b6b;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.gm-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.gm-header-sub{color:#ffffffb8;font-size:13px;margin-top:3px}.gm-header-actions{align-items:center;display:flex;gap:8px}.gm-header-actions .ant-btn{border-radius:8px;font-weight:600}.gm-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.gm-table .ant-table-thead>tr>th{background:#f3e5f5;font-size:13px;font-weight:700}.gm-table .ant-table-tbody>tr:hover>td{background:#fce4ec}.gm-action-btn,.gm-perm-item{border-radius:8px}.gm-perm-item{background:#fff;border:1px solid #d9d9d9;cursor:pointer;padding:10px 16px;transition:all .2s}.gm-perm-item:hover{background:#f9f0ff;border-color:#7b1fa2}.gm-perm-item.selected{background:#e6f4ff;border-color:#1677ff}.gm-perm-code{color:#888;font-family:SFMono-Regular,Consolas,monospace}.gm-perm-code,.gm-perm-desc{font-size:12px;margin-top:3px}.gm-perm-desc{color:#aaa}.rm-container{padding:24px}.rm-header{background:linear-gradient(135deg,#7f1d1d,#9b2c2c 50%,#c53030);border-radius:14px;box-shadow:0 4px 20px #7f1d1d52;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.rm-header,.rm-header-left{align-items:center;display:flex}.rm-header-left{gap:16px}.rm-header-icon{align-items:center;background:linear-gradient(135deg,#f7971e,#ffd200);border-radius:14px;box-shadow:0 4px 12px #f7971e6b;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.rm-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.rm-header-sub{color:#ffffffb8;font-size:13px;margin-top:3px}.rm-header-actions{align-items:center;display:flex;gap:8px}.rm-header-actions .ant-btn{border-radius:8px;font-weight:600}.rm-info-bar{background:#fffbe6;border:1px solid #ffe58f;border-radius:10px;color:#614700;font-size:13px;margin-bottom:14px;padding:10px 16px}.rm-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.rm-table .ant-table-thead>tr>th{background:#fff0f0;font-size:13px;font-weight:700}.rm-table .ant-table-tbody>tr:hover>td{background:#fff5f5}.rm-name-chip{background:#f5f5f5;border:1px solid #d9d9d9;border-radius:4px;color:#333;display:inline-block;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;padding:2px 8px}.rm-action-btn{border-radius:8px}body.dark-mode .rm-container{background:#111827}body.dark-mode .rm-info-bar{background:#ffbe0014;border-color:#ffbe0040;color:#fbbf24}body.dark-mode .rm-table-card{background:#1f2937;box-shadow:0 2px 12px #0000004d}body.dark-mode .rm-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .rm-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .rm-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .rm-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .rm-name-chip{background:#111827;border-color:#ffffff26;color:#e5e7eb}body.dark-mode .ant-modal-content{background:#1f2937;color:#e5e7eb}body.dark-mode .ant-modal-header{background:#1f2937;border-bottom-color:#ffffff14}body.dark-mode .ant-modal-title{color:#e5e7eb}body.dark-mode .ant-modal-close{color:#9ca3af}body.dark-mode .ant-modal-footer{background:#1f2937;border-top-color:#ffffff14}body.dark-mode .ant-form-item-label>label{color:#d1d5db}body.dark-mode .ant-input,body.dark-mode .ant-input-affix-wrapper,body.dark-mode .ant-input.ant-input-textarea,body.dark-mode textarea.ant-input{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .ant-input-affix-wrapper .ant-input::placeholder,body.dark-mode .ant-input::placeholder,body.dark-mode textarea.ant-input::placeholder{color:#4b5563!important}.edr-root{background:#f5f7fa;min-height:100vh;padding:24px}.edr-header{background:linear-gradient(135deg,#0f2a5e,#1a3d8f 50%,#1677ff);border-radius:14px;box-shadow:0 4px 20px #1677ff47;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.edr-header,.edr-header-left{align-items:center;display:flex}.edr-header-left{gap:16px}.edr-header-icon{align-items:center;background:linear-gradient(135deg,#13c2c2,#52efbd);border-radius:14px;box-shadow:0 4px 12px #13c2c26b;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.edr-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.edr-header-subtitle{color:#ffffffb8;font-size:13px;margin-top:3px}.edr-stat-row{margin-bottom:20px}.edr-stat-card{border:1px solid #0000000f!important;border-radius:14px!important;box-shadow:0 2px 12px #0000000f!important;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.edr-stat-card:hover{box-shadow:0 6px 20px #0000001a!important;transform:translateY(-2px)}.edr-stat-card:before{content:"";height:3px;left:0;position:absolute;right:0;top:0}.edr-stat-card-total:before{background:linear-gradient(90deg,#1677ff,#13c2c2)}.edr-stat-card-active:before{background:linear-gradient(90deg,#52c41a,#95de64)}.edr-stat-card-inactive:before{background:linear-gradient(90deg,#ff4d4f,#ff7a45)}.edr-stat-card-group:before{background:linear-gradient(90deg,#722ed1,#eb2f96)}.edr-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.edr-add-btn{background:linear-gradient(135deg,#1677ff,#0958d9)!important;border:none!important;border-radius:10px!important;box-shadow:0 4px 12px #1677ff52!important;font-weight:600!important;height:38px!important;padding:0 18px!important}.edr-add-btn:hover{box-shadow:0 6px 16px #1677ff66!important;opacity:.9!important;transform:translateY(-1px)}.edr-table-card{border:1px solid #0000000f!important;border-radius:14px!important;box-shadow:0 2px 12px #0000000f!important;overflow:hidden}.edr-table .ant-table-thead>tr>th{background:#f0f5ff!important;border-bottom:1px solid #dbe6ff!important;color:#1a1a2e!important;font-size:13px;font-weight:700!important}.edr-table .ant-table-tbody>tr:hover>td{background:#f0f7ff!important}.edr-domain-cell{align-items:center;background:#e6f4ff;border:1px solid #bae0ff;border-radius:20px;color:#1677ff;display:inline-flex;font-family:SFMono-Regular,Consolas,monospace;font-size:13px;font-weight:600;gap:6px;padding:3px 10px}.edr-modal .ant-modal-header{background:#fafcff;border-bottom:1px solid #f0f0f0;padding-bottom:12px}.edr-modal .ant-modal-title{color:#1a1a2e;font-size:16px;font-weight:700}body.dark-mode .edr-root{background:#111827}body.dark-mode .edr-header{background:linear-gradient(135deg,#0a1628,#1e3a6e);box-shadow:0 4px 20px #0006}body.dark-mode .edr-stat-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .edr-stat-card .ant-statistic-title{color:#9ca3af}body.dark-mode .edr-stat-card .ant-statistic-content,body.dark-mode .edr-stat-card .ant-statistic-content-value{color:#e5e7eb}body.dark-mode .edr-table-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .edr-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .edr-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .edr-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .edr-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .edr-domain-cell{background:#1677ff26;border-color:#1677ff4d;color:#60a5fa}body.dark-mode .edr-modal .ant-modal-content{background:#1f2937;color:#e5e7eb}body.dark-mode .edr-modal .ant-modal-header{background:#1f2937;border-bottom-color:#ffffff14}body.dark-mode .edr-modal .ant-modal-title{color:#e5e7eb}body.dark-mode .edr-modal .ant-modal-close{color:#9ca3af}body.dark-mode .edr-modal .ant-modal-footer{background:#1f2937;border-top-color:#ffffff14}body.dark-mode .edr-modal .ant-form-item-label>label{color:#d1d5db}body.dark-mode .edr-modal .ant-form-item-extra{color:#6b7280}body.dark-mode .edr-modal .ant-input,body.dark-mode .edr-modal .ant-input-affix-wrapper,body.dark-mode .edr-modal textarea.ant-input{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .edr-modal .ant-input::placeholder,body.dark-mode .edr-modal textarea.ant-input::placeholder{color:#4b5563!important}body.dark-mode .edr-modal .ant-input-group-addon{background:#1f2937!important;border-color:#ffffff1f!important;color:#9ca3af!important}body.dark-mode .edr-modal .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .edr-modal .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .edr-modal .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .edr-modal .ant-select-arrow{color:#9ca3af!important}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:-4px;left:50%;top:auto;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{align-items:center;background:#fefefe;border:none;border-bottom:1px solid #eee;box-sizing:initial;cursor:pointer;display:flex;height:16px;justify-content:center;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.bpm-root{background:#f5f7fa;min-height:100vh;padding:24px}.bpm-main-card{border:1px solid #0000000f!important;border-radius:16px!important;box-shadow:0 4px 24px #00000014!important;overflow:hidden}.bpm-main-card>.ant-card-head{background:linear-gradient(135deg,#0d1f4e,#1a3a8f 50%,#1677ff)!important;border-bottom:none!important;min-height:64px;padding:0 24px}.bpm-main-card>.ant-card-head .ant-card-extra,.bpm-main-card>.ant-card-head .ant-card-head-title{padding:16px 0}.bpm-header-title-wrap{align-items:center;display:flex;gap:12px}.bpm-header-icon{align-items:center;background:linear-gradient(135deg,#13c2c2,#52efbd);border-radius:11px;box-shadow:0 4px 10px #13c2c26b;color:#fff;display:flex;flex-shrink:0;font-size:20px;height:42px;justify-content:center;width:42px}.bpm-header-title{color:#fff!important;font-size:18px!important;font-weight:700!important;margin:0!important}.bpm-header-subtitle{color:#ffffffa6;font-size:12px;margin-top:2px}.bpm-module-selector-wrap{align-items:center;color:#ffffffd9;display:flex;font-size:13px;font-weight:500;gap:10px}.bpm-module-select .ant-select-selector{background:#ffffff26!important;border-color:#ffffff4d!important;border-radius:8px!important;color:#fff!important}.bpm-module-select .ant-select-arrow{color:#ffffffb3!important}.bpm-module-select .ant-select-selection-item{color:#fff!important}.bpm-main-card>.ant-card-body{background:#fff;padding:0!important}.bpm-main-card .ant-tabs-nav{background:#fafbff;border-bottom:1px solid #e8eaf0;margin:0;padding:0 20px}.bpm-main-card .ant-tabs-tab{color:#6b7280;font-size:14px;font-weight:500;padding:14px 4px}.bpm-main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#1677ff;font-weight:700}.bpm-main-card .ant-tabs-content-holder{padding:20px}.bpm-alert{border-radius:10px!important;margin-bottom:16px}.bpm-flow-card{min-height:650px}.bpm-flow-card,.bpm-list-card{border:1px solid #e8eaf0!important;border-radius:12px!important}.bpm-list-card .ant-card-head{background:#fafbff!important;border-bottom:1px solid #e8eaf0!important;padding:0 20px}.bpm-list-card .ant-card-head-title{color:#1a1a2e;font-weight:700}.bpm-table .ant-table-thead>tr>th{background:#f0f5ff!important;border-bottom:1px solid #dbe6ff!important;color:#1a1a2e!important;font-weight:700!important}.bpm-table .ant-table-tbody>tr:hover>td{background:#f0f7ff!important}.bpm-process-name{color:#1a1a2e;font-weight:600}.bpm-process-desc{color:#6b7280;font-size:12px}.bpm-add-btn{border-radius:8px!important;font-weight:600!important}body.dark-mode .bpm-root{background:#111827}body.dark-mode .bpm-main-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .bpm-main-card>.ant-card-head{background:linear-gradient(135deg,#0a1628,#1e3a6e)!important}body.dark-mode .bpm-main-card>.ant-card-body{background:#1f2937}body.dark-mode .bpm-main-card .ant-tabs-nav{background:#1a2235;border-bottom-color:#ffffff14}body.dark-mode .bpm-main-card .ant-tabs-tab{color:#9ca3af}body.dark-mode .bpm-main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#60a5fa}body.dark-mode .bpm-flow-card,body.dark-mode .bpm-list-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .bpm-list-card .ant-card-head{background:#111827!important;border-bottom-color:#ffffff14!important}body.dark-mode .bpm-list-card .ant-card-head-title{color:#e5e7eb}body.dark-mode .bpm-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .bpm-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .bpm-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .bpm-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .bpm-process-name{color:#e5e7eb}body.dark-mode .bpm-process-desc{color:#6b7280}body.dark-mode .bpm-modal .ant-modal-content{background:#1f2937;color:#e5e7eb}body.dark-mode .bpm-modal .ant-modal-header{background:#1f2937;border-bottom-color:#ffffff14}body.dark-mode .bpm-modal .ant-modal-title{color:#e5e7eb}body.dark-mode .bpm-modal .ant-modal-close{color:#9ca3af}body.dark-mode .bpm-modal .ant-modal-footer{background:#1f2937;border-top-color:#ffffff14}body.dark-mode .bpm-modal .ant-form-item-label>label{color:#d1d5db}body.dark-mode .bpm-modal .ant-input,body.dark-mode .bpm-modal .ant-input-affix-wrapper,body.dark-mode .bpm-modal textarea.ant-input{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .bpm-modal .ant-input::placeholder,body.dark-mode .bpm-modal textarea.ant-input::placeholder{color:#4b5563!important}body.dark-mode .bpm-modal .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .bpm-modal .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .bpm-modal .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .bpm-modal .ant-select-arrow{color:#9ca3af!important}body.dark-mode .bpm-module-select .ant-select-selector{background:#ffffff1f!important;border-color:#ffffff40!important}.pa-root{margin:0 auto;max-width:1100px}.pa-page-header{gap:12px;justify-content:space-between;margin-bottom:20px}.pa-page-header,.pa-title-wrap{align-items:center;display:flex}.pa-title-wrap{gap:14px}.pa-title-icon{align-items:center;background:linear-gradient(135deg,#1677ff,#0050b3);border-radius:14px;box-shadow:0 4px 16px #1677ff59;color:#fff;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.pa-title{color:#1a2e5a;font-size:22px;font-weight:700;line-height:1.2}.pa-subtitle{color:#94a3b8;font-size:12px;margin-top:2px}.pa-stats-row{margin-bottom:16px}.pa-stat-card{background:#fff;border:1.5px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:14px 12px;text-align:center;transition:box-shadow .2s,transform .2s}.pa-stat-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.pa-stat-card--total{border-color:#d6e4ff}.pa-stat-card--total.pa-stat-card--active{background:linear-gradient(135deg,#f0f9ff,#e9f3ff);border-color:#1677ff}.pa-stat-card--approval{border-color:#d9f7be}.pa-stat-card--countersign{border-color:#ffd6e7}.pa-stat-num{color:#1677ff;font-size:30px;font-weight:800;line-height:1;margin-bottom:4px}.pa-stat-card--approval .pa-stat-num{color:#52c41a}.pa-stat-card--countersign .pa-stat-num{color:#eb2f96}.pa-stat-label{color:#64748b;font-size:12px;font-weight:500}.pa-main-card{border:1.5px solid #e4ecff!important;border-radius:14px!important;box-shadow:0 2px 14px #1677ff0f!important}.pa-spin-wrap{display:flex;justify-content:center;padding:60px 0}.pa-tabs .ant-tabs-nav{margin-bottom:12px!important;padding:0 4px}.pa-table-row:hover>td{background:#f0f7ff!important}.pa-modal-body{padding:4px 0 8px}.pa-modal-info{background:#f8faff;border:1px solid #e4ecff;border-radius:10px;margin-bottom:16px;padding:14px 16px}.pa-modal-info-row{align-items:center;border-bottom:1px dashed #e8edf5;display:flex;gap:12px;padding:5px 0}.pa-modal-info-row:last-child{border-bottom:none}.pa-modal-info-label{color:#94a3b8;flex-shrink:0;font-size:12px;font-weight:500;min-width:52px}.pa-modal-info-val{color:#1a2e5a;font-size:13px;font-weight:500}.pa-modal-comment-label{color:#374151;font-size:13px;font-weight:600;margin-bottom:6px}.pa-modal-actions{display:flex;flex-wrap:wrap;gap:8px}.pa-modal-btn{border-radius:8px!important;flex:1 1;font-weight:500!important;min-width:80px}body.dark-mode .pa-title{color:#e2e8f0}body.dark-mode .pa-title-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 16px #388bfd59}body.dark-mode .pa-stat-card{background:#111827;box-shadow:0 2px 8px #0000004d}body.dark-mode .pa-stat-card--total{border-color:#1e3a5f}body.dark-mode .pa-stat-card--total.pa-stat-card--active{background:linear-gradient(135deg,#0c1f40,#0d2050);border-color:#3b82f6}body.dark-mode .pa-stat-card--approval{border-color:#14532d}body.dark-mode .pa-stat-card--countersign{border-color:#500724}body.dark-mode .pa-stat-label{color:#94a3b8}body.dark-mode .pa-main-card{background:#111827!important;border-color:#1e3a5f!important}body.dark-mode .pa-table-row:hover>td{background:#388bfd14!important}body.dark-mode .pa-modal-info{background:#0d1829;border-color:#1e3a5f}body.dark-mode .pa-modal-info-row{border-color:#1e2d40}body.dark-mode .pa-modal-info-label{color:#4b5870}body.dark-mode .pa-modal-info-val{color:#e2e8f0}body.dark-mode .pa-modal-comment-label{color:#cbd5e1}.cr-header{background:linear-gradient(135deg,#6a3093,#a044ff 50%,#c471ed);border-radius:14px;box-shadow:0 4px 20px #6a309359;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.cr-header,.cr-header-left{align-items:center;display:flex;gap:16px}.cr-header-icon{align-items:center;background:linear-gradient(135deg,#f7971e,#ffd200);border-radius:14px;box-shadow:0 4px 12px #f7971e73;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.cr-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.cr-header-sub{color:#ffffffb8;font-size:13px;margin-top:3px}.cr-header-actions .ant-btn{border-radius:8px;font-weight:600}.cr-stat-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr);margin-bottom:20px}@media (max-width:1400px){.cr-stat-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:800px){.cr-stat-grid{grid-template-columns:repeat(2,1fr)}}.cr-stat-card{align-items:center;border-radius:13px;box-shadow:0 3px 12px #00000021;color:#fff;display:flex;gap:12px;padding:14px 16px;transition:transform .2s,box-shadow .2s}.cr-stat-card:hover{box-shadow:0 7px 22px #0000002e;transform:translateY(-2px)}.cr-stat-card-icon{align-items:center;background:#ffffff38;border-radius:10px;display:flex;flex-shrink:0;font-size:20px;height:42px;justify-content:center;width:42px}.cr-stat-card-val{font-size:26px;font-weight:700;line-height:1.1}.cr-stat-card-label{font-size:11px;margin-top:2px;opacity:.88}.cr-s-pending{background:linear-gradient(135deg,#f7971e,#ffd200)}.cr-s-approved{background:linear-gradient(135deg,#1e5799,#2980b9)}.cr-s-issued{background:linear-gradient(135deg,#43e97b,#38f9d7)}.cr-s-rejected{background:linear-gradient(135deg,#ff416c,#ff4b2b)}.cr-s-quantity{background:linear-gradient(135deg,#6a3093,#a044ff)}.cr-s-total{background:linear-gradient(135deg,#36d1dc,#5b86e5)}.cr-filter-bar{align-items:center;background:#faf8ff;border:1px solid #e9e3ff;border-radius:10px;display:flex;gap:12px;margin-bottom:14px;padding:10px 14px}.cr-filter-bar-label{color:#666;font-size:13px;font-weight:600;white-space:nowrap}.cr-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.cr-table .ant-table-thead>tr>th{background:#f3eeff;font-size:13px;font-weight:700}.cr-table .ant-table-tbody>tr:hover>td{background:#faf8ff}.cr-item-name{color:#6a3093;font-weight:600}.cr-item-unit{color:#999;font-size:11px;margin-left:3px}.cr-action-btn{border-radius:8px}.cr-status-tag{border-radius:20px;font-weight:600}body.dark-mode .cr-filter-bar{background:#1f2937;border-color:#ffffff14}body.dark-mode .cr-filter-bar-label{color:#9ca3af}body.dark-mode .cr-filter-bar .ant-input,body.dark-mode .cr-filter-bar .ant-input-affix-wrapper,body.dark-mode .cr-filter-bar .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .cr-filter-bar .ant-input::placeholder,body.dark-mode .cr-filter-bar .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .cr-filter-bar .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .cr-filter-bar .ant-input:hover,body.dark-mode .cr-filter-bar .ant-select:not(.ant-select-customize-input):hover .ant-select-selector{border-color:#60a5fa73!important}body.dark-mode .cr-filter-bar .ant-select-arrow{color:#9ca3af!important}body.dark-mode .cr-table-card{background:#1f2937;box-shadow:0 2px 12px #0006}body.dark-mode .cr-table .ant-table{background:#1f2937!important}body.dark-mode .cr-table .ant-table-thead>tr>th{background:#111827!important;border-color:#ffffff0f!important;color:#9ca3af!important}body.dark-mode .cr-table .ant-table-tbody>tr>td{background:#1f2937!important;border-color:#ffffff0d!important;color:#d1d5db!important}body.dark-mode .cr-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .cr-item-name{color:#c084fc}.po-root{padding:0}.po-header{background:linear-gradient(135deg,#fff7e6,#fffbe6 40%,#f0f5ff);border:1px solid #ffd591;border-radius:14px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.po-header,.po-header-left{align-items:center;display:flex}.po-header-left{gap:14px}.po-header-icon{align-items:center;background:linear-gradient(135deg,#fa8c16,#faad14);border-radius:12px;box-shadow:0 4px 12px #fa8c1659;color:#fff;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.po-header-title{color:#1a1a2e!important;font-size:18px!important;font-weight:700!important;margin:0!important}.po-header-subtitle{color:#8c7a5a;font-size:13px;margin-top:2px}.po-stat-card{border-radius:14px;color:#fff;cursor:default;display:flex;flex-direction:column;justify-content:flex-end;min-height:100px;overflow:hidden;padding:18px 18px 14px;position:relative;transition:transform .2s,box-shadow .2s}.po-stat-card:hover{transform:translateY(-3px)}.po-stat-card:before{background:#ffffff21;border-radius:50%;content:"";height:78px;position:absolute;right:-16px;top:-16px;width:78px}.po-stat-icon{font-size:24px;opacity:.85;position:absolute;right:14px;top:14px}.po-stat-value{font-size:28px;font-weight:700;letter-spacing:-.5px;line-height:1.1;position:relative;z-index:1}.po-stat-label{font-size:12px;letter-spacing:.2px;margin-top:4px;opacity:.9;position:relative;z-index:1}.po-filter-bar{align-items:center;background:#fafafa;border:1px solid #f0f0f0;border-radius:10px;display:flex;gap:10px;margin-bottom:16px;padding:12px 16px}.po-filter-label{color:#595959;font-size:13px;font-weight:500;white-space:nowrap}.po-table-card{border:1px solid #f0f0f0!important;border-radius:14px!important;box-shadow:0 2px 16px #0000000f!important;overflow:hidden}.po-table-card .ant-card-head{background:#fafafa;border-bottom:1px solid #f0f0f0;min-height:52px;padding:0 20px}.po-table-card .ant-card-head-title{color:#1a1a2e;font-size:14px;font-weight:700}.po-table .ant-table-thead>tr>th{background:#f8fafc!important;border-bottom:1px solid #e5e7eb!important;color:#374151!important;font-size:13px;font-weight:600!important}.po-table .ant-table-tbody>tr:hover>td{background:#fff9f0!important}.po-number{background:#f5f5f5;border-radius:6px;color:#595959;font-family:SF Mono,Fira Code,monospace;font-size:12px;padding:2px 7px;white-space:nowrap}.po-amount{color:#d46b08;font-size:13px;font-weight:600}.po-status-tag{border-radius:20px!important;font-size:12px!important;font-weight:500!important;padding:2px 10px!important}.po-action-btn{border-radius:8px!important}body.dark-mode .po-root{background:#111827}body.dark-mode .po-header{background:linear-gradient(135deg,#1a2a4a,#1e3a6e)}body.dark-mode .po-stat-card{background:#1f2937;border-color:#ffffff14}body.dark-mode .po-stat-value{color:#e5e7eb}body.dark-mode .po-stat-label{color:#9ca3af}body.dark-mode .po-filter-bar{background:#1f2937;border-color:#ffffff14}body.dark-mode .po-filter-label{color:#d1d5db}body.dark-mode .po-filter-bar .ant-input,body.dark-mode .po-filter-bar .ant-input-affix-wrapper,body.dark-mode .po-filter-bar .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .po-filter-bar .ant-input::placeholder,body.dark-mode .po-filter-bar .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .po-filter-bar .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .po-filter-bar .ant-select:not(.ant-select-customize-input):hover .ant-select-selector{border-color:#60a5fa73!important}body.dark-mode .po-filter-bar .ant-select-arrow{color:#9ca3af!important}body.dark-mode .po-table-card{background:#1f2937;border-color:#ffffff14}body.dark-mode .po-table-card .ant-card-head{background:#1f2937;border-bottom-color:#ffffff14}body.dark-mode .po-table-card .ant-card-head-title{color:#e5e7eb}body.dark-mode .po-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .po-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .po-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .po-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .po-number{background:#111827;color:#93c5fd}body.dark-mode .po-amount{color:#fbbf24}.proj-header{background:linear-gradient(135deg,#e6fffb,#f0f5ff 50%,#fff7e6);border:1px solid #d9f7be;border-radius:14px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.proj-header,.proj-header-left{align-items:center;display:flex}.proj-header-left{gap:14px}.proj-header-icon{align-items:center;background:linear-gradient(135deg,#13c2c2,#1677ff);border-radius:12px;box-shadow:0 4px 12px #13c2c259;color:#fff;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.proj-header-title{color:#1a1a2e!important;font-size:18px!important;font-weight:700!important;margin:0!important}.proj-header-subtitle{color:#6b7280;font-size:13px;margin-top:2px}.proj-table-card{border:1px solid #f0f0f0!important;border-radius:14px!important;box-shadow:0 2px 16px #0000000f!important;overflow:hidden}.proj-table-card .ant-card-head{background:#fafafa;border-bottom:1px solid #f0f0f0;min-height:54px;padding:0 20px}.proj-table-card .ant-card-head-title{color:#1a1a2e;font-size:15px;font-weight:700}.proj-table .ant-table-thead>tr>th{background:#f8fafc!important;border-bottom:1px solid #e5e7eb!important;color:#374151!important;font-size:13px;font-weight:600!important}.proj-table .ant-table-tbody>tr{cursor:pointer;transition:background .15s}.proj-table .ant-table-tbody>tr:hover>td{background:#f0fffe!important}.proj-name-link{color:#1677ff!important;font-size:14px!important;font-weight:600!important;height:auto!important;line-height:1.4!important;padding:0!important}.proj-name-link:hover{color:#0958d9!important;text-decoration:underline!important}.proj-unit-tag{background:linear-gradient(135deg,#e6fffb,#b5f5ec)!important;border:none!important;border-radius:20px!important;color:#006d75!important;font-size:12px!important;font-weight:500!important;padding:2px 10px!important}.proj-desc{color:#6b7280;font-size:13px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-action-btn{border-radius:8px!important}.proj-unit-manage-tag{border-radius:20px;cursor:default;font-size:13px;padding:4px 10px}.proj-modal .ant-modal-header{border-bottom:1px solid #f0f0f0;padding-bottom:12px}.proj-modal .ant-modal-title{font-size:16px;font-weight:700}body.dark-mode .proj-header{background:linear-gradient(135deg,#1a2a4a,#1e3a6e);border-color:#ffffff14}body.dark-mode .proj-header-title{color:#e5e7eb!important}body.dark-mode .proj-header-subtitle{color:#9ca3af}body.dark-mode .proj-table-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .proj-table-card .ant-card-head{background:#1f2937;border-bottom-color:#ffffff14}body.dark-mode .proj-table-card .ant-card-head-title{color:#e5e7eb}body.dark-mode .proj-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .proj-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .proj-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .proj-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .proj-desc{color:#9ca3af}body.dark-mode .proj-name-link{color:#60a5fa!important}body.dark-mode .proj-name-link:hover{color:#93c5fd!important}body.dark-mode .proj-modal .ant-modal-content{background:#1f2937;color:#e5e7eb}body.dark-mode .proj-modal .ant-modal-header{background:#1f2937;border-bottom-color:#ffffff14}body.dark-mode .proj-modal .ant-modal-title{color:#e5e7eb}body.dark-mode .proj-modal .ant-modal-close{color:#9ca3af}body.dark-mode .proj-modal .ant-form-item-label>label{color:#d1d5db}body.dark-mode .proj-modal .ant-input,body.dark-mode .proj-modal .ant-input-affix-wrapper,body.dark-mode .proj-modal .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .proj-modal .ant-input::placeholder,body.dark-mode .proj-modal .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .proj-modal .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .proj-modal .ant-select-arrow{color:#9ca3af!important}body.dark-mode .proj-modal .ant-modal-footer{background:#1f2937;border-top-color:#ffffff14}.work-package-detail-page{background:#f0f2f5;margin:-16px;min-height:100vh;padding:0}.work-package-header{align-items:center;background:#fff;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:0;padding:16px 24px}.work-package-layout{background:#f0f2f5;min-height:calc(100vh - 65px)}.work-package-main{max-height:calc(100vh - 65px);overflow-y:auto;padding:24px}.work-package-main .ant-card{border-radius:8px;box-shadow:0 1px 2px #00000008}.work-package-sidebar{background:#fff!important;border-left:1px solid #f0f0f0;max-height:calc(100vh - 65px);overflow-y:auto;padding:24px}.comments-card{border:none;box-shadow:none;display:flex;flex-direction:column;height:100%}.comments-card .ant-card-head{border-bottom:2px solid #f0f0f0;font-weight:600}.comments-card .ant-card-body{display:flex;flex:1 1;flex-direction:column;padding:16px 0}.comments-container{flex:1 1;max-height:calc(100vh - 400px);overflow-y:auto;padding:0 16px}.comment-input{margin-top:16px;padding:0 16px}.files-section{margin-top:24px}.files-section .ant-list-item{padding:12px 0}.work-package-main .ant-form-item-label>label{font-weight:500}.comments-container .ant-list-item{border-bottom:1px solid #f0f0f0;padding:16px 0}.comments-container .ant-list-item:last-child{border-bottom:none}@media (max-width:1200px){.work-package-sidebar{min-width:350px!important;width:350px!important}}@media (max-width:992px){.work-package-layout{flex-direction:column}.work-package-sidebar{border-left:none;border-top:1px solid #f0f0f0;max-width:100%!important;width:100%!important}.work-package-main,.work-package-sidebar{max-height:none}}.profile-container{background:#f0f2f5;min-height:calc(100vh - 64px);padding:0 0 40px}.profile-header{animation:pf-fadein .5s ease-out;background:linear-gradient(135deg,#0a1628,#1e3a6e 60%,#2563bd);margin-bottom:28px;overflow:hidden;padding:36px 32px 28px;position:relative}.profile-header:before{background:radial-gradient(circle at 10% 50%,#63b3ed1f 0,#0000 55%),radial-gradient(circle at 90% 20%,#818cf81f 0,#0000 45%);inset:0}.profile-header:after,.profile-header:before{content:"";pointer-events:none;position:absolute}.profile-header:after{border:1.5px solid #ffffff0f;border-radius:50%;height:280px;right:-60px;top:-80px;width:280px}.profile-title{color:#fff!important;font-size:26px!important;font-weight:700!important;letter-spacing:1px;margin-bottom:4px!important;position:relative;z-index:1}.profile-title .title-icon{font-size:24px;margin-right:10px}.profile-header .ant-typography{color:#ffffffa6!important;font-size:14px;position:relative;z-index:1}.profile-container>.ant-row{padding:0 24px}.profile-sidebar-card{animation:pf-slideL .5s ease-out;background:#fff!important;border:1px solid #0000000f!important;border-radius:16px!important;box-shadow:0 2px 16px #00000014!important;overflow:hidden;transition:box-shadow .3s}.profile-sidebar-card:hover{box-shadow:0 6px 28px #0000001f!important}.profile-sidebar-card .ant-card-body{padding:0!important}.profile-avatar-section{align-items:center;background:linear-gradient(160deg,#0a1628,#1e3a6e);display:flex;flex-direction:column;overflow:hidden;padding:36px 24px 28px;position:relative}.profile-avatar-section:before{border:1px solid #ffffff14;border-radius:50%;bottom:-50px;content:"";height:200px;pointer-events:none;position:absolute;right:-50px;width:200px}.avatar-wrapper{margin-bottom:14px;position:relative}.profile-avatar{background:#1e3a6e!important;border:4px solid #ffffff40!important;box-shadow:0 8px 24px #0000004d;cursor:pointer;transition:all .3s ease}.profile-avatar:hover{box-shadow:0 12px 32px #0006;transform:scale(1.05)}.upload-btn{border-color:#fff6!important;border-radius:20px!important;color:#fff!important;font-size:13px!important;margin-top:6px;padding:2px 20px!important;transition:all .3s ease}.upload-btn:hover{background:#ffffff1f!important;border-color:#ffffffb3!important;transform:translateY(-1px)}.profile-user-info{padding:0 12px;text-align:center;width:100%}.profile-user-info .username{color:#fff!important;font-size:20px!important;font-weight:700!important;margin-bottom:2px!important}.profile-user-info .user-handle{color:#ffffff8c!important;display:block;font-size:13px;margin-bottom:10px}.role-badge{display:flex;justify-content:center;margin-top:8px}.role-tag{border-radius:20px!important;font-size:12px!important;font-weight:600;letter-spacing:.5px;padding:3px 14px!important}.pf-sidebar-body{padding:20px 20px 24px}.pf-sidebar-body .ant-divider{border-color:#f0f0f0;margin:16px 0}.profile-stats{background:#f7f9ff;border-radius:12px;margin-bottom:4px;padding:16px 12px}.profile-stats .ant-statistic-title{color:#8c8c8c;font-size:12px;margin-bottom:4px}.profile-stats .ant-statistic-content-value{font-size:20px!important}.profile-info-list{width:100%}.info-item{align-items:flex-start;background:#f7f9ff;border:1px solid #0000;border-radius:10px;display:flex;margin-bottom:6px;padding:10px 12px;transition:all .25s ease}.info-item:hover{background:#eef3ff;border-color:#d0e0ff;transform:translateX(2px)}.info-icon{color:#4f8ef7;flex-shrink:0;font-size:16px;margin-right:10px;margin-top:2px}.info-content{display:flex;flex:1 1;flex-direction:column;min-width:0}.info-label{color:#8c8c8c;font-size:11px;margin-bottom:1px}.info-value{color:#1a1a2e;font-size:13px;font-weight:500;word-break:break-all}.profile-content-card{animation:pf-slideR .5s ease-out;background:#fff!important;border:1px solid #0000000f!important;border-radius:16px!important;box-shadow:0 2px 16px #00000014!important;transition:box-shadow .3s}.profile-content-card:hover{box-shadow:0 6px 28px #0000001f!important}.profile-content-card .ant-card-body{padding:24px!important}.profile-tabs .ant-tabs-nav{background:#f7f9ff;border-radius:10px;margin-bottom:20px;padding:4px 6px}.profile-tabs .ant-tabs-nav:before{border:none}.profile-tabs .ant-tabs-tab{border-radius:8px;color:#595959;font-size:14px;font-weight:500;margin:0 2px;padding:8px 18px;transition:all .2s ease}.profile-tabs .ant-tabs-tab:hover{background:#1677ff0d;color:#1677ff}.profile-tabs .ant-tabs-tab.ant-tabs-tab-active{background:#fff;box-shadow:0 2px 8px #00000014}.profile-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#1677ff!important;font-weight:600}.profile-tabs .ant-tabs-ink-bar{display:none}.profile-tabs .ant-form-item-label>label{color:#1a1a2e;font-size:13px;font-weight:500}.profile-tabs .ant-input,.profile-tabs .ant-input-affix-wrapper,.profile-tabs .ant-input-password{background:#fafbff!important;border-color:#e0e7ff!important;border-radius:8px!important;font-size:14px;transition:all .25s ease}.profile-tabs .ant-input-affix-wrapper:hover,.profile-tabs .ant-input:hover{border-color:#93b4fd!important}.profile-tabs .ant-input-affix-wrapper-focused,.profile-tabs .ant-input:focus{border-color:#1677ff!important;box-shadow:0 0 0 3px #1677ff1a!important}.profile-tabs .ant-input-affix-wrapper-disabled,.profile-tabs .ant-input:disabled{background:#f5f5f5!important;border-color:#e8e8e8!important;color:#9ca3af!important}.profile-tabs textarea.ant-input{background:#fafbff!important;border-color:#e0e7ff!important;border-radius:8px!important}.save-btn{background:linear-gradient(135deg,#1677ff,#4f46e5)!important;border:none!important;border-radius:8px!important;box-shadow:0 4px 14px #1677ff59;font-size:14px!important;font-weight:600!important;height:40px!important;letter-spacing:.5px;padding:0 32px!important;transition:all .25s ease!important}.save-btn:hover{box-shadow:0 6px 20px #1677ff73!important;opacity:.93;transform:translateY(-2px)}.save-btn:active{transform:translateY(0)}.pf-pwd-tip{background:linear-gradient(135deg,#f0f5ff,#f5f0ff);border-left:3px solid #1677ff;border-radius:10px;margin-bottom:20px;padding:14px 16px}.pf-pwd-tip-title{color:#1677ff;font-size:13px;font-weight:600;margin-bottom:6px}.pf-pwd-tip ul{margin:0;padding-left:18px}.pf-pwd-tip li{color:#595959;font-size:12px;line-height:1.9}@keyframes pf-fadein{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes pf-slideL{0%{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}@keyframes pf-slideR{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@media (max-width:767px){.profile-container>.ant-row{padding:0 12px}.profile-header{margin-bottom:16px;padding:24px 16px 20px}.profile-title{font-size:20px!important}.profile-content-card,.profile-sidebar-card{border-radius:12px!important;margin-bottom:12px}.profile-avatar-section{padding:28px 16px 22px}.profile-content-card .ant-card-body{padding:16px!important}.profile-tabs .ant-tabs-nav{padding:3px 4px}.profile-tabs .ant-tabs-tab{font-size:13px;padding:7px 12px}.save-btn{width:100%}.pf-sidebar-body{padding:16px}}body.dark-mode .profile-container{background:#111827}body.dark-mode .profile-header{background:linear-gradient(135deg,#060d1a,#0f2040 60%,#1a4a99)}body.dark-mode .profile-sidebar-card{background:#1f2937!important;border-color:#ffffff0f!important;box-shadow:0 2px 16px #0006!important}body.dark-mode .profile-sidebar-card:hover{box-shadow:0 6px 28px #0000008c!important}body.dark-mode .profile-avatar-section{background:linear-gradient(160deg,#060d1a,#0f2040)}body.dark-mode .pf-sidebar-body{background:#1f2937}body.dark-mode .pf-sidebar-body .ant-divider{border-color:#ffffff14}body.dark-mode .profile-stats{background:#111827}body.dark-mode .profile-stats .ant-statistic-title{color:#9ca3af!important}body.dark-mode .profile-stats .ant-statistic-content-value{color:#f3f4f6!important}body.dark-mode .profile-stats .ant-statistic-content-prefix,body.dark-mode .profile-stats .ant-statistic-content-suffix{color:#9ca3af!important}body.dark-mode .info-item{background:#111827;border-color:#0000}body.dark-mode .info-item:hover{background:#1a2540;border-color:#4f8ef740}body.dark-mode .info-label{color:#6b7280!important}body.dark-mode .info-value{color:#e5e7eb!important}body.dark-mode .info-icon{color:#60a5fa!important}body.dark-mode .profile-content-card{background:#1f2937!important;border-color:#ffffff0f!important;box-shadow:0 2px 16px #0006!important}body.dark-mode .profile-content-card:hover{box-shadow:0 6px 28px #0000008c!important}body.dark-mode .profile-content-card .ant-card-body{background:#1f2937!important}body.dark-mode .profile-tabs .ant-tabs-nav{background:#111827}body.dark-mode .profile-tabs .ant-tabs-tab{color:#9ca3af}body.dark-mode .profile-tabs .ant-tabs-tab:hover{background:#60a5fa14;color:#60a5fa}body.dark-mode .profile-tabs .ant-tabs-tab.ant-tabs-tab-active{background:#1f2937;box-shadow:0 2px 8px #0000004d}body.dark-mode .profile-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#60a5fa!important}body.dark-mode .profile-tabs .ant-form-item-label>label{color:#d1d5db}body.dark-mode .profile-tabs .ant-input,body.dark-mode .profile-tabs .ant-input-affix-wrapper,body.dark-mode .profile-tabs .ant-input-password,body.dark-mode .profile-tabs textarea.ant-input{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .profile-tabs .ant-input-password input::placeholder,body.dark-mode .profile-tabs .ant-input::placeholder,body.dark-mode .profile-tabs textarea.ant-input::placeholder{color:#4b5563!important}body.dark-mode .profile-tabs .ant-input-affix-wrapper:hover,body.dark-mode .profile-tabs .ant-input:hover{border-color:#60a5fa73!important}body.dark-mode .profile-tabs .ant-input-affix-wrapper-focused,body.dark-mode .profile-tabs .ant-input:focus{border-color:#60a5fa!important;box-shadow:0 0 0 3px #60a5fa26!important}body.dark-mode .profile-tabs .ant-input-affix-wrapper-disabled,body.dark-mode .profile-tabs .ant-input:disabled{background:#1f2937!important;border-color:#ffffff12!important;color:#6b7280!important}body.dark-mode .pf-pwd-tip{background:linear-gradient(135deg,#1a2540,#1e1a3a);border-left-color:#60a5fa}body.dark-mode .pf-pwd-tip-title{color:#60a5fa}body.dark-mode .pf-pwd-tip li{color:#9ca3af}body.dark-mode .upload-btn{border-color:#ffffff4d!important;color:#ffffffd9!important}body.dark-mode .upload-btn:hover{background:#ffffff1a!important;border-color:#fff9!important}.file-management{background:#f0f2f5;min-height:100vh;padding:24px}.file-management h2{color:#1890ff;margin-bottom:24px}.ant-tree .ant-tree-node-content-wrapper{border-radius:4px;padding:4px 8px;transition:all .3s}.ant-tree .ant-tree-node-content-wrapper:hover{background-color:#e6f7ff}.ant-tree .ant-tree-node-selected{background-color:#bae7ff!important}.ant-breadcrumb-link{cursor:pointer;transition:color .3s}.ant-breadcrumb-link:hover{color:#1890ff}.ant-table-tbody>tr:hover{background-color:#f5f5f5}.ant-statistic-title{color:#000000a6;font-size:14px}.ant-statistic-content{font-size:24px;font-weight:600}.ant-btn-link{height:auto;padding:0}.ant-tag{margin:0}.ant-upload-list{margin-top:8px}.ant-input-search{border-radius:4px}.ant-modal-header{background-color:#fafafa;border-bottom:1px solid #f0f0f0}.ant-modal-title{font-size:16px;font-weight:600}.ant-form-item-label>label{font-weight:500}@media (max-width:768px){.file-management{padding:16px}.ant-layout-sider{min-width:200px!important;width:200px!important}.ant-col{margin-bottom:16px}}.ant-tree .anticon-folder{color:#1890ff}.ant-tree .anticon-file{color:#52c41a}.ant-statistic-content-prefix{font-size:32px;margin-right:8px}.ant-spin{text-align:center}.ant-empty,.ant-spin{padding:50px 0}.ant-popover-message-title{padding-left:0}.file-size-tag{font-family:Courier New,monospace;font-size:12px}.ant-breadcrumb-separator{color:#00000073}.ant-space-horizontal{gap:8px!important}.ant-tree-title .ant-space{align-items:center;display:flex}.ant-card-body{padding:16px}.ant-upload-select{display:block}.ant-input-textarea{resize:vertical}.ant-space-vertical{width:100%}.ant-tree-treenode{padding:4px 0}.ant-layout{border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.ant-layout-content{background:#fff}.ant-row{margin-bottom:0!important}.ant-space-item .anticon{margin-right:8px}body.dark-mode .file-management{background:#141414!important}body.dark-mode .file-management h2{color:#1890ff!important}body.dark-mode .ant-card{background:#1f1f1f!important;border-color:#303030!important}body.dark-mode .ant-statistic-title{color:#ffffffa6!important}body.dark-mode .ant-statistic-content{color:#ffffffd9!important}body.dark-mode .ant-layout{box-shadow:0 2px 8px #00000073!important}body.dark-mode .ant-layout-sider{background:#1f1f1f!important;border-right:1px solid #303030!important}body.dark-mode .ant-tree{background:#0000!important}body.dark-mode .ant-tree,body.dark-mode .ant-tree .ant-tree-node-content-wrapper{color:#ffffffd9!important}body.dark-mode .ant-tree .ant-tree-node-content-wrapper:hover{background-color:#262626!important}body.dark-mode .ant-tree .ant-tree-node-selected{background-color:#177ddc!important}body.dark-mode .ant-tree .anticon{color:#ffffffa6!important}body.dark-mode .ant-btn-primary{background:#177ddc!important;border-color:#177ddc!important}body.dark-mode .ant-btn-primary:hover{background:#165996!important;border-color:#165996!important}body.dark-mode .ant-btn-link{color:#177ddc!important}body.dark-mode .ant-btn-link.ant-btn-dangerous{color:#ff4d4f!important}body.dark-mode .ant-table{background:#1f1f1f!important;color:#ffffffd9!important}body.dark-mode .ant-table-thead>tr>th{background:#262626!important;border-bottom:1px solid #303030!important;color:#ffffffd9!important}body.dark-mode .ant-table-tbody>tr{background:#1f1f1f!important;border-bottom:1px solid #303030!important}body.dark-mode .ant-table-tbody>tr:hover{background:#262626!important}body.dark-mode .ant-table-tbody>tr>td{border-bottom:1px solid #303030!important;color:#ffffffd9!important}body.dark-mode .ant-table-empty .ant-table-tbody>tr>td{background:#1f1f1f!important}body.dark-mode .ant-empty-description{color:#ffffff73!important}body.dark-mode .ant-breadcrumb,body.dark-mode .ant-breadcrumb-link{color:#ffffffa6!important}body.dark-mode .ant-breadcrumb-link:hover{color:#177ddc!important}body.dark-mode .ant-breadcrumb-separator{color:#ffffff73!important}body.dark-mode .ant-input-search{background:#262626!important;border-color:#434343!important;color:#ffffffd9!important}body.dark-mode .ant-input-search:focus,body.dark-mode .ant-input-search:hover{border-color:#177ddc!important}body.dark-mode .ant-input-search input{background:#262626!important;color:#ffffffd9!important}body.dark-mode .ant-input-search input::placeholder{color:#ffffff73!important}body.dark-mode .ant-tag{background:#262626!important;border-color:#434343!important;color:#ffffffd9!important}body.dark-mode .ant-tag-blue{background:#111d2c!important;border-color:#15395b!important;color:#3c9ae8!important}body.dark-mode .ant-tag-green{background:#162312!important;border-color:#274916!important;color:#49aa19!important}body.dark-mode .ant-modal-content{background:#1f1f1f!important;color:#ffffffd9!important}body.dark-mode .ant-modal-header{background:#262626!important;border-bottom:1px solid #303030!important}body.dark-mode .ant-modal-title{color:#ffffffd9!important}body.dark-mode .ant-modal-close{color:#ffffff73!important}body.dark-mode .ant-modal-close:hover{color:#ffffffd9!important}body.dark-mode .ant-modal-footer{border-top:1px solid #303030!important}body.dark-mode .ant-form-item-label>label{color:#ffffffd9!important}body.dark-mode .ant-input,body.dark-mode .ant-input-textarea textarea{background:#262626!important;border-color:#434343!important;color:#ffffffd9!important}body.dark-mode .ant-input-textarea textarea:focus,body.dark-mode .ant-input-textarea textarea:hover,body.dark-mode .ant-input:focus,body.dark-mode .ant-input:hover{border-color:#177ddc!important}body.dark-mode .ant-input-textarea textarea::placeholder,body.dark-mode .ant-input::placeholder{color:#ffffff73!important}body.dark-mode .ant-upload.ant-upload-select{background:#262626!important;border-color:#434343!important}body.dark-mode .ant-upload-list{color:#ffffffd9!important}body.dark-mode .ant-upload-list-item{background:#262626!important;border-color:#434343!important}body.dark-mode .ant-popover,body.dark-mode .ant-upload-list-item-name{color:#ffffffd9!important}body.dark-mode .ant-popover-inner{background:#262626!important}body.dark-mode .ant-popover-inner-content{color:#ffffffd9!important}body.dark-mode .ant-popover-arrow-content{background:#262626!important}body.dark-mode .ant-popover-message-title{color:#ffffffd9!important}body.dark-mode .ant-spin{color:#177ddc!important}body.dark-mode .ant-spin-dot-item{background-color:#177ddc!important}body.dark-mode .ant-space-item{color:#ffffffd9!important}.fm-header{background:linear-gradient(135deg,#0d2359,#1a4491 50%,#1677ff);border-radius:14px;box-shadow:0 4px 20px #1677ff47;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.fm-header,.fm-header-left{align-items:center;display:flex;gap:14px}.fm-header-icon{align-items:center;background:linear-gradient(135deg,#13c2c2,#52efbd);border-radius:13px;box-shadow:0 4px 12px #13c2c26b;color:#fff;display:flex;flex-shrink:0;font-size:24px;height:50px;justify-content:center;width:50px}.fm-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.fm-header-subtitle{color:#ffffffb3;font-size:12px;margin-top:3px}.fm-stat-card{border:1px solid #0000000f!important;border-radius:14px!important;box-shadow:0 2px 12px #0000000f!important;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.fm-stat-card:hover{box-shadow:0 6px 20px #0000001a!important;transform:translateY(-2px)}.fm-stat-card:before{content:"";height:3px;left:0;position:absolute;right:0;top:0}.fm-stat-files:before{background:linear-gradient(90deg,#1677ff,#13c2c2)}.fm-stat-size:before{background:linear-gradient(90deg,#722ed1,#eb2f96)}.fm-stat-dl:before{background:linear-gradient(90deg,#52c41a,#95de64)}.fm-sider-inner{background:#fafbff;border-radius:0;border-right:1px solid #eef0f8;height:100%;padding:16px}.fm-drop-zone{background:#f0f7ff;border:1.5px dashed #bae0ff;border-radius:10px;color:#4b7cf3;cursor:default;font-size:12px;margin-bottom:10px;padding:10px 12px;text-align:center;transition:all .2s}.fm-drop-zone:hover{background:#e6f0ff;border-color:#1677ff}.fm-new-folder-btn{border-radius:8px!important;font-weight:600!important}.fm-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.fm-upload-btn{font-weight:600!important}.fm-search-input,.fm-upload-btn{border-radius:8px!important}.fm-table-wrap .ant-table-thead>tr>th{background:#f0f5ff!important;border-bottom:1px solid #dbe6ff!important;color:#1a1a2e!important;font-weight:700!important}.fm-table-wrap .ant-table-tbody>tr:hover>td{background:#f0f7ff!important}body.dark-mode .fm-header{background:linear-gradient(135deg,#0a1628,#1e3a6e);box-shadow:0 4px 20px #0006}body.dark-mode .fm-stat-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .fm-sider-inner{background:#1a2235;border-right-color:#ffffff14}body.dark-mode .fm-drop-zone{background:#1677ff14;border-color:#1677ff59;color:#60a5fa}body.dark-mode .fm-drop-zone:hover{background:#1677ff26;border-color:#60a5fa}body.dark-mode .fm-toolbar .ant-input-affix-wrapper,body.dark-mode .fm-toolbar .ant-input-search input{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .fm-toolbar .ant-input-search input::placeholder{color:#4b5563!important}body.dark-mode .fm-table-wrap .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}.system-settings-container{padding:24px}.system-settings-container .ant-card{box-shadow:0 2px 8px #0000001a}.settings-group{margin:0 auto;max-width:800px}.settings-tip{background:#e6f7ff;border:1px solid #91d5ff;border-radius:4px;margin-bottom:24px;padding:16px}.settings-tip ul{margin:8px 0 0;padding-left:24px}.settings-tip li{margin:4px 0}body.dark-mode .system-settings-container .ant-card{background:#1f1f1f!important;border-color:#303030!important}body.dark-mode .system-settings-container .ant-card-head{background:#141414!important;border-bottom-color:#303030!important;color:#ffffffd9!important}body.dark-mode .system-settings-container .ant-card-body{background:#1f1f1f!important}body.dark-mode .system-settings-container .ant-tabs-tab{color:#ffffffa6!important}body.dark-mode .system-settings-container .ant-tabs-tab-active{color:#177ddc!important}body.dark-mode .system-settings-container .ant-tabs-ink-bar{background:#177ddc!important}body.dark-mode .system-settings-container .ant-form-item-label>label{color:#ffffffd9!important}body.dark-mode .system-settings-container .ant-input,body.dark-mode .system-settings-container .ant-input-number,body.dark-mode .system-settings-container .ant-input-number-input,body.dark-mode .system-settings-container textarea.ant-input{background:#141414!important;border-color:#303030!important;color:#ffffffd9!important}body.dark-mode .system-settings-container .ant-input::placeholder,body.dark-mode .system-settings-container textarea.ant-input::placeholder{color:#ffffff73!important}body.dark-mode .system-settings-container .ant-switch{background:#fff3!important}body.dark-mode .system-settings-container .ant-switch-checked{background:#177ddc!important}body.dark-mode .settings-tip{background:#111b26!important;border-color:#15395b!important;color:#ffffffd9!important}body.dark-mode .ant-typography{color:#ffffffd9!important}body.dark-mode .ant-typography-secondary{color:#ffffffa6!important}.chat-container{height:calc(100vh - 140px);padding:0}.chat-card{border:none;border-radius:16px;box-shadow:0 4px 24px #0000001a;height:100%;overflow:hidden}.chat-card .ant-card-head{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);border-bottom:none;min-height:56px;padding:0 20px}.chat-card .ant-card-head-title{color:#fff}.chat-card .ant-card-body{height:calc(100% - 56px);padding:0}.room-list{background:linear-gradient(180deg,#f8faff,#f0f4ff);border-right:1px solid #e4e9f7;flex-shrink:0;width:300px}.room-list::-webkit-scrollbar{width:4px}.room-list::-webkit-scrollbar-thumb{background:#dce3f5;border-radius:4px}.room-item{border-bottom:1px solid #eef1fa;position:relative;transition:background .18s}.room-item:hover{background:#eef2ff}.room-item.active{background:linear-gradient(90deg,#e8eeff,#f0f4ff);border-left:3px solid #4a6fa5;box-shadow:inset 0 0 0 1px #4a6fa51f}.room-item.active .ant-list-item-meta-title{color:#1e3a8a;font-weight:700}.room-last-message{color:#9ca3af;font-size:12px}.room-last-message .truncate{max-width:160px}.room-time{color:#b0b9d0;font-size:11px}.empty-chat,.message-area{background:#f4f6fb}.chat-header{background:linear-gradient(180deg,#fff,#f8faff);border-bottom:1px solid #e4e9f7;box-shadow:0 1px 6px #0000000a;padding:12px 20px}.chat-header .ant-avatar{background:linear-gradient(135deg,#4a6fa5,#1e3a8a);box-shadow:0 2px 8px #4a6fa559}.chat-title{color:#1e3a8a;font-size:15px;font-weight:700}.chat-subtitle{color:#9ca3af;margin-top:1px}.messages-container{background:#f4f6fb;gap:14px;padding:20px 24px}.messages-container::-webkit-scrollbar-thumb{background:#d0d9ef}.messages-container::-webkit-scrollbar-thumb:hover{background:#b0bed8}.message-item{animation:fadeIn .25s ease-out;gap:10px}.message-avatar{box-shadow:0 2px 6px #0000001f}.message-item.mine .message-avatar{background:linear-gradient(135deg,#6a3093,#a044ff)}.message-item.other .message-avatar{background:linear-gradient(135deg,#4a6fa5,#1e3a8a)}.message-content{max-width:62%}.message-sender{color:#7c8db5;font-size:11px;font-weight:600}.message-bubble{border-radius:14px;box-shadow:0 2px 8px #00000014}.message-item.mine .message-bubble{background:linear-gradient(135deg,#6a3093,#a044ff 60%,#c471ed)}.message-item.other .message-bubble{background:#fff;border:1px solid #e8edf8;color:#222}.message-text{line-height:1.55}.message-time{font-size:10px;margin-top:5px;opacity:.75}.message-item.mine .message-time{color:#ffffffd9}.message-item.other .message-time{color:#b0b9d0}.typing-indicator{color:#9ca3af;font-size:12px;padding-left:42px}.typing-indicator:before{content:"💬 "}.input-area{background:#fff;border-top:1px solid #e4e9f7;box-shadow:0 -1px 8px #0000000a;gap:10px;padding:14px 18px}.input-area .ant-btn:first-child{border-color:#d0d9ef;border-radius:10px;color:#6b7db5}.input-area .ant-btn[type=button]:last-child{background:linear-gradient(135deg,#6a3093,#a044ff);border:none;border-radius:10px;font-weight:600}.message-input textarea{background:#f8faff;border-color:#d0d9ef;border-radius:10px;font-size:14px}.message-input textarea:focus{background:#fff;border-color:#a044ff;box-shadow:0 0 0 2px #a044ff1f}.message-image{border-radius:10px}@media (max-width:768px){.chat-container{height:calc(100vh - 120px)}.room-list{border-right:none;width:100%}.room-list.mobile-hidden{display:none}.message-area{display:none;width:100%}.message-area.mobile-show{background:#f4f6fb;bottom:0;display:flex;left:0;position:fixed;right:0;top:60px;z-index:1000}.message-content{max-width:80%}.chat-header{padding:10px 14px}.chat-title{font-size:14px}.message-bubble{max-width:250px}}body.dark-mode .empty-chat,body.dark-mode .message-area,body.dark-mode .messages-container{background-color:#141414}body.dark-mode .room-list{background:#1a1a2e;border-right-color:#ffffff14}body.dark-mode .room-item{border-bottom-color:#ffffff0f}body.dark-mode .room-item:hover{background-color:#ffffff0f}body.dark-mode .room-item.active{background:#6a309340;border-left-color:#a044ff}body.dark-mode .chat-header{background:#1f1f2e;border-bottom-color:#ffffff14}body.dark-mode .chat-title{color:#ffffffe6}body.dark-mode .input-area{background:#1f1f2e;border-top-color:#ffffff14}body.dark-mode .message-input textarea{background:#ffffff0d;border-color:#ffffff1a;color:#ffffffd9}body.dark-mode .message-item.other .message-bubble{border-color:#ffffff1a}body.dark-mode .messages-container::-webkit-scrollbar-thumb{background-color:#ffffff26}.chat-layout{display:flex;height:100%}.room-list{border-right:1px solid #f0f0f0;overflow-y:auto;width:320px}.room-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 16px;transition:background-color .2s}.room-item:hover{background-color:#f5f5f5}.room-item.active{background-color:#e6f7ff;border-left:3px solid #1890ff}.room-item-right{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px}.room-delete-btn{opacity:0;transition:opacity .15s}.room-item:hover .room-delete-btn{opacity:1}.room-last-message{color:#999;font-size:13px}.room-last-message .truncate{display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-time{color:#999;font-size:12px;white-space:nowrap}.text-secondary{color:#ccc;font-style:italic}.message-area{background-color:#f9f9f9;display:flex;flex:1 1;flex-direction:column}.empty-chat{flex:1 1;justify-content:center}.chat-header,.empty-chat{align-items:center;display:flex}.chat-header{background-color:#fff;border-bottom:1px solid #f0f0f0;gap:12px;padding:16px}.chat-header-info{flex:1 1}.chat-title{color:#333;font-size:16px;font-weight:500}.chat-subtitle{color:#999;font-size:12px;margin-top:2px}.messages-container{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:16px}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-thumb{background-color:#d9d9d9;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background-color:#bfbfbf}.message-item{animation:fadeIn .3s ease-in;display:flex;gap:8px}.message-item.mine{flex-direction:row-reverse}.message-item.other{flex-direction:row}.message-avatar{flex-shrink:0;margin-top:4px}.message-content{display:flex;flex-direction:column;max-width:65%}.message-sender{color:#666;font-size:12px;margin-bottom:4px;padding-left:12px}.message-bubble{word-wrap:break-word;border-radius:12px;box-shadow:0 1px 2px #0000001a;padding:10px 14px;position:relative}.message-item.mine .message-bubble{background-color:#1890ff;border-bottom-right-radius:4px;color:#fff}.message-item.other .message-bubble{background-color:#fff;border-bottom-left-radius:4px;color:#333}.message-text{font-size:14px;line-height:1.5;white-space:pre-wrap}.message-time{font-size:11px;margin-top:4px;opacity:.7;text-align:right}.message-item.mine .message-time{color:#ffffffe6}.message-item.other .message-time{color:#999}.typing-indicator{animation:fadeIn .3s ease-in;color:#999;font-size:13px;font-style:italic;padding-left:40px}.input-area{align-items:flex-end;background-color:#fff;border-top:1px solid #f0f0f0;display:flex;gap:12px;padding:16px}.message-input{flex:1 1}.message-input textarea{resize:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.chat-container{height:calc(100vh - 120px)}.room-list{border-right:none;width:100%}.room-list.mobile-hidden{display:none}.message-area{display:none;width:100%}.message-area.mobile-show{background:#fff;bottom:0;display:flex;left:0;position:fixed;right:0;top:60px;z-index:1000}.message-content{max-width:80%}.chat-header{padding:12px}.chat-title{font-size:14px}.message-bubble{max-width:250px}}.ant-empty{margin:auto}body.dark-mode .message-area{background-color:#141414}body.dark-mode .room-list{border-right-color:#ffffff1a}body.dark-mode .room-item{border-bottom-color:#ffffff1a}body.dark-mode .room-item:hover{background-color:#ffffff14}body.dark-mode .room-item.active{background-color:#1890ff33;border-left-color:#1890ff}body.dark-mode .room-item:hover .room-delete-btn{opacity:1}body.dark-mode .chat-header{background-color:#1f1f1f;border-bottom-color:#ffffff1a}body.dark-mode .chat-title{color:#ffffffd9}body.dark-mode .input-area{background-color:initial;border-top-color:#ffffff1a}body.dark-mode .message-item.mine .message-bubble{background:linear-gradient(135deg,#1890ff,#096dd9);color:#fff}body.dark-mode .message-item.other .message-bubble{background-color:#ffffff14;color:#ffffffd9}body.dark-mode .message-file a{color:#ffffffd9}body.dark-mode .message-file a:hover{color:#1890ff}body.dark-mode .message-time{color:#ffffff73}body.dark-mode .message-sender{color:#ffffffa6}body.dark-mode .chat-subtitle,body.dark-mode .room-last-message,body.dark-mode .room-time,body.dark-mode .typing-indicator{color:#ffffff73}.message-image{border-radius:8px;overflow:hidden}.message-image img{display:block}body.dark-mode .messages-container::-webkit-scrollbar-thumb{background-color:#fff3}body.dark-mode .messages-container::-webkit-scrollbar-thumb:hover{background-color:#ffffff4d}body.dark-mode .empty-chat{color:#ffffff73}body.dark-mode .message-image{background-color:#0003}.message-image{margin:4px 0}.message-image img{cursor:pointer;transition:transform .2s}.message-image img:hover{transform:scale(1.02)}.message-file{background:#ffffff1a;border-radius:8px;min-width:200px;padding:8px 12px}.message-file a{color:inherit;text-decoration:none}.message-file a:hover{color:#1890ff}.message-item.mine .message-file a{color:#fff}.message-item.mine .message-file a:hover{color:#e6f7ff}.message-item.other .message-file{background:#0000000d}.input-area .ant-upload{margin-right:8px}.iot-sider{background:#fff!important;border-radius:12px 0 0 12px;border-right:1px solid #8080802e!important}.iot-sider-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:14px 14px 10px}.iot-sider-title{align-items:center;color:#374151!important;display:flex;font-size:13px!important;font-weight:700!important;gap:6px;margin:0!important}.iot-lab-item{border-bottom:1px solid #0000;border-left:3px solid #0000;cursor:pointer;padding:9px 14px;transition:all .2s}.iot-lab-item:hover{background:#1677ff0d}.iot-lab-item.selected{background:#1677ff1a;border-left-color:#1677ff}.iot-lab-item-name{align-items:center;color:#1a1a2e;display:flex;font-size:13px;font-weight:500;justify-content:space-between}.iot-lab-item-name.selected-text{color:#1677ff}.iot-lab-location{color:#9ca3af;display:block;font-size:11px;margin-top:2px}.iot-lab-actions{display:flex;gap:2px;margin-top:4px}.iot-header{background:linear-gradient(135deg,#e6f4ff,#f0f5ff 50%,#e6fffb);border:1px solid #bae0ff;border-radius:12px;justify-content:space-between;margin-bottom:16px;padding:16px 20px}.iot-header,.iot-header-left{align-items:center;display:flex}.iot-header-left{gap:12px}.iot-header-icon{align-items:center;background:linear-gradient(135deg,#1677ff,#13c2c2);border-radius:11px;box-shadow:0 4px 12px #1677ff4d;color:#fff;display:flex;flex-shrink:0;font-size:20px;height:44px;justify-content:center;width:44px}.iot-header-title{color:#1a1a2e!important;font-size:17px!important;font-weight:700!important;margin:0!important}.iot-header-sub{color:#6b8ead;font-size:12px;margin-top:1px}.iot-stat-mini{display:flex;gap:10px}.iot-stat-mini-item{align-items:center;background:#ffffffb3;border:1px solid #1677ff26;border-radius:10px;display:flex;flex-direction:column;min-width:70px;padding:8px 16px}.iot-stat-mini-value{font-size:22px;font-weight:700;line-height:1.1}.iot-stat-mini-label{color:#6b7280;font-size:11px;margin-top:2px}.iot-device-card{border-radius:12px!important;margin-bottom:14px;overflow:hidden;transition:transform .2s,box-shadow .2s}.iot-device-card:hover{box-shadow:0 6px 20px #0000001a!important;transform:translateY(-2px)}.iot-device-card.online{border:1.5px solid #52c41a66!important}.iot-device-card.offline{border:1.5px solid #ff4d4f4d!important}.iot-device-id{color:#1a1a2e;font-size:13px;font-weight:700}.iot-device-status-dot{border-radius:50%;display:inline-block;flex-shrink:0;height:8px;margin-right:6px;width:8px}.iot-device-status-dot.online{background:#52c41a;box-shadow:0 0 5px #52c41a99}.iot-device-status-dot.offline{background:#ff4d4f}.iot-mode-bar{margin-bottom:10px}.iot-mode-label{color:#9ca3af;display:block;font-size:11px;font-weight:500;letter-spacing:.3px;margin-bottom:5px;text-transform:uppercase}.iot-heartbeat-bar{align-items:center;border-top:1px solid #f5f5f5;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:8px}.iot-heartbeat-chip{background:#f9fafb;border:1px solid #f0f0f0;border-radius:20px;color:#9ca3af;font-size:11px;padding:2px 7px;white-space:nowrap}.iot-heartbeat-chip.alarm-on{background:#fff7e6;border-color:#ffd591;color:#fa8c16}.iot-asset-box{background:linear-gradient(135deg,#f6ffed,#f0f5ff);border:1px solid #d9f7be;border-radius:9px;margin-top:10px;padding:10px 12px}.iot-tabs .ant-tabs-nav{margin-bottom:12px}.iot-table .ant-table-thead>tr>th{background:#f8fafc!important;border-bottom:1px solid #e5e7eb!important;color:#374151!important;font-size:13px;font-weight:600!important}.iot-table .ant-table-tbody>tr:hover>td{background:#f0f9ff!important}@media (max-width:767px){.iot-header{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 14px}.iot-header-left{align-items:center;flex-wrap:wrap;gap:6px}.iot-header-title{font-size:16px!important;margin:0!important}.iot-header-sub{font-size:12px}.iot-mob-lab-btn{background:#e8f4ff;border-color:#91caff;border-radius:6px;color:#1677ff;font-size:12px;height:28px;padding:0 8px}.iot-stat-mini{flex-wrap:wrap;gap:8px;justify-content:flex-start;padding:8px 0 0;width:100%}.iot-stat-mini-item{border-radius:8px;min-width:70px;padding:6px 10px}.iot-stat-mini-value{font-size:18px}.iot-tabs .ant-tabs-nav{-webkit-overflow-scrolling:touch;overflow-x:auto}.iot-tabs .ant-tabs-nav-wrap{overflow:visible!important}.iot-header-icon{font-size:18px;height:36px;width:36px}}body.dark-mode .iot-sider{background:#1f2937!important;border-right-color:#ffffff14!important}body.dark-mode .iot-sider-header{border-bottom-color:#ffffff14}body.dark-mode .iot-sider-title{color:#e5e7eb!important}body.dark-mode .iot-lab-item{border-bottom-color:#0000}body.dark-mode .iot-lab-item:hover{background:#60a5fa14}body.dark-mode .iot-lab-item.selected{background:#60a5fa26;border-left-color:#60a5fa}body.dark-mode .iot-lab-item-name{color:#e5e7eb}body.dark-mode .iot-lab-item-name.selected-text{color:#60a5fa}body.dark-mode .iot-lab-location{color:#6b7280}body.dark-mode .iot-header{background:linear-gradient(135deg,#1a2a4a,#1e3a6e);border-color:#ffffff14}body.dark-mode .iot-header-title{color:#e5e7eb!important}body.dark-mode .iot-header-sub{color:#9ca3af}body.dark-mode .iot-stat-mini-item{background:#ffffff0f;border-color:#ffffff1a}body.dark-mode .iot-stat-mini-label{color:#9ca3af}body.dark-mode .iot-device-card{background:#1f2937!important;border-color:#ffffff14!important}body.dark-mode .iot-device-card.online{border-color:#52c41a59!important}body.dark-mode .iot-device-card.offline{border-color:#ff4d4f4d!important}body.dark-mode .iot-device-id{color:#e5e7eb}body.dark-mode .iot-mode-label{color:#6b7280}body.dark-mode .iot-heartbeat-bar{border-top-color:#ffffff14}body.dark-mode .iot-heartbeat-chip{background:#111827;border-color:#ffffff14;color:#9ca3af}body.dark-mode .iot-heartbeat-chip.alarm-on{background:#fa8c1626;border-color:#fa8c1666;color:#fbbf24}body.dark-mode .iot-asset-box{background:linear-gradient(135deg,#1a2a1a,#1a2040);border-color:#ffffff14}body.dark-mode .iot-table .ant-table{background:#1f2937;color:#e5e7eb}body.dark-mode .iot-table .ant-table-thead>tr>th{background:#111827!important;border-bottom-color:#ffffff14!important;color:#d1d5db!important}body.dark-mode .iot-table .ant-table-tbody>tr>td{background:#1f2937;border-bottom-color:#ffffff0f;color:#e5e7eb}body.dark-mode .iot-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .ant-select-arrow{color:#9ca3af!important}.asset-list-container{padding:24px}.al-header{align-items:center;border-radius:14px;box-shadow:0 4px 20px #0000002e;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.al-header.official{background:linear-gradient(135deg,#003973,#1565c0 50%,#1976d2)}.al-header.internal{background:linear-gradient(135deg,#1a0050,#6a1b9a 50%,#8e24aa)}.al-header-left{align-items:center;display:flex;gap:16px}.al-header-icon{align-items:center;border-radius:14px;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.al-header.official .al-header-icon{background:linear-gradient(135deg,#43e97b,#38f9d7);box-shadow:0 4px 12px #43e97b6b}.al-header.internal .al-header-icon{background:linear-gradient(135deg,#f7971e,#ffd200);box-shadow:0 4px 12px #f7971e6b}.al-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.al-header-sub{color:#ffffffb8;font-size:13px;margin-top:3px}.al-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.al-header-actions .ant-btn{border-radius:8px;font-weight:600}.al-stat-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-bottom:18px}@media (max-width:900px){.al-stat-grid{grid-template-columns:repeat(2,1fr)}}.al-stat-card{align-items:center;border-radius:13px;box-shadow:0 3px 14px #00000021;color:#fff;display:flex;gap:14px;padding:16px 18px;transition:transform .2s,box-shadow .2s}.al-stat-card:hover{box-shadow:0 7px 22px #0000002e;transform:translateY(-2px)}.al-stat-card-icon{align-items:center;background:#ffffff38;border-radius:11px;display:flex;flex-shrink:0;font-size:22px;height:44px;justify-content:center;width:44px}.al-stat-card-val{font-size:26px;font-weight:700;line-height:1.1}.al-stat-card-label{font-size:12px;margin-top:2px;opacity:.85}.al-s-total{background:linear-gradient(135deg,#1565c0,#1976d2)}.al-s-inuse{background:linear-gradient(135deg,#43e97b,#38f9d7)}.al-s-scrapped{background:linear-gradient(135deg,#ff416c,#ff4b2b)}.al-s-value{background:linear-gradient(135deg,#f7971e,#ffd200)}.al-header.internal~.al-stat-grid .al-s-total{background:linear-gradient(135deg,#6a1b9a,#8e24aa)}.al-filter-bar{align-items:center;background:#f8faff;border:1px solid #e0e8ff;border-radius:10px;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:12px 16px}.al-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.al-table .ant-table-thead>tr>th{background:#e8f0ff;font-size:13px;font-weight:700}.al-table .ant-table-tbody>tr:hover>td{background:#f0f5ff}.al-asset-number{color:#333;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.al-asset-name{color:#1565c0;font-weight:600}.al-action-btn{border-radius:8px}.asset-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.asset-filter-bar{background:#fafafa;border-radius:4px;margin-bottom:16px;padding:16px}.inventory-plan-list-container{padding:24px}.page-header h2{font-size:20px;font-weight:600;margin:0}body.dark-mode .asset-list-container{background:#0000}body.dark-mode .al-filter-bar{background:#1f2937;border-color:#ffffff14}body.dark-mode .al-filter-bar .ant-input,body.dark-mode .al-filter-bar .ant-input-affix-wrapper,body.dark-mode .al-filter-bar .ant-input-search .ant-input,body.dark-mode .al-filter-bar .ant-input-search-button,body.dark-mode .al-filter-bar .ant-select:not(.ant-select-customize-input) .ant-select-selector{background:#111827!important;border-color:#ffffff1f!important;color:#e5e7eb!important}body.dark-mode .al-filter-bar .ant-input-search .ant-input::placeholder,body.dark-mode .al-filter-bar .ant-input::placeholder,body.dark-mode .al-filter-bar .ant-select-selection-placeholder{color:#4b5563!important}body.dark-mode .al-filter-bar .ant-select-selection-item{color:#e5e7eb!important}body.dark-mode .al-filter-bar .ant-input-affix-wrapper:hover,body.dark-mode .al-filter-bar .ant-input:hover,body.dark-mode .al-filter-bar .ant-select:not(.ant-select-customize-input):hover .ant-select-selector{border-color:#60a5fa73!important}body.dark-mode .al-filter-bar .ant-input-affix-wrapper-focused,body.dark-mode .al-filter-bar .ant-input:focus{border-color:#60a5fa!important;box-shadow:0 0 0 2px #60a5fa26!important}body.dark-mode .al-filter-bar .ant-input-search-button,body.dark-mode .al-filter-bar .ant-input-suffix .anticon{color:#9ca3af!important}body.dark-mode .al-table-card{background:#1f2937;box-shadow:0 2px 12px #0006}body.dark-mode .al-table .ant-table{background:#1f2937!important}body.dark-mode .al-table .ant-table-thead>tr>th{background:#111827!important;border-color:#ffffff0f!important;color:#9ca3af!important}body.dark-mode .al-table .ant-table-tbody>tr>td{background:#1f2937!important;border-color:#ffffff0d!important;color:#d1d5db!important}body.dark-mode .al-table .ant-table-tbody>tr:hover>td{background:#1a2540!important}body.dark-mode .al-asset-number{color:#9ca3af}body.dark-mode .al-asset-name{color:#60a5fa}.ma-header{background:linear-gradient(135deg,#0f2027,#203a43 40%,#2c5364);border-radius:14px;box-shadow:0 4px 20px #2c536459;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.ma-header,.ma-header-left{align-items:center;display:flex;gap:16px}.ma-header-icon{align-items:center;background:linear-gradient(135deg,#36d1dc,#5b86e5);border-radius:14px;box-shadow:0 4px 12px #36d1dc66;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.ma-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.ma-header-sub{color:#ffffffb3;font-size:13px;margin-top:3px}.ma-stat-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.ma-stat-grid-2{grid-template-columns:repeat(4,1fr)}@media (max-width:1200px){.ma-stat-grid{grid-template-columns:repeat(2,1fr)}}.ma-stat-card{align-items:center;border-radius:14px;box-shadow:0 4px 14px #0000001f;color:#fff;display:flex;gap:14px;padding:18px 20px;transition:transform .2s,box-shadow .2s}.ma-stat-card:hover{box-shadow:0 8px 24px #0000002e;transform:translateY(-3px)}.ma-stat-card-icon{align-items:center;background:#fff3;border-radius:12px;display:flex;flex-shrink:0;font-size:22px;height:44px;justify-content:center;width:44px}.ma-stat-card-body{flex:1 1;min-width:0}.ma-stat-card-val{font-size:28px;font-weight:700;line-height:1.1}.ma-stat-card-label{font-size:12px;margin-top:3px;opacity:.85}.ma-stat-total{background:linear-gradient(135deg,#36d1dc,#5b86e5)}.ma-stat-active{background:linear-gradient(135deg,#43e97b,#38f9d7)}.ma-stat-overdue{background:linear-gradient(135deg,#ff416c,#ff4b2b)}.ma-stat-ack{background:linear-gradient(135deg,#f7971e,#ffd200)}.ma-stat-groups{background:linear-gradient(135deg,#7f7fd5,#86a8e7)}.ma-stat-assets{background:linear-gradient(135deg,#36d1dc,#5b86e5)}.ma-stat-lent{background:linear-gradient(135deg,#43e97b,#38f9d7)}.ma-stat-risk{background:linear-gradient(135deg,#ff416c,#ff4b2b)}.ma-alert-bar{border-radius:10px;margin-bottom:14px}.ma-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.ma-table .ant-table-thead>tr>th{background:#f0f5ff;font-size:13px;font-weight:700}.ma-table .ant-table-tbody>tr:hover>td{background:#f0f7ff}.ma-asset-name{color:#1677ff;display:inline-block;font-weight:600;max-width:220px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.ma-asset-number{color:#888;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;margin-top:2px}.ma-status-tag{border-radius:20px;font-size:12px;font-weight:600}.ma-action-btn{border-radius:8px}.ma-tabs .ant-tabs-nav{margin-bottom:16px}.ma-tabs .ant-tabs-tab{font-weight:600;padding:8px 16px}.ma-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#1677ff}.inv-page-wrap{padding:24px}@media (max-width:767px){.inv-page-wrap{padding:10px 8px}}.inv-header{background:linear-gradient(135deg,#0a3d62,#1e5799 50%,#2980b9);border-radius:14px;box-shadow:0 4px 20px #1e579959;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding:20px 24px}.inv-header,.inv-header-left{align-items:center;display:flex;gap:16px}.inv-header-icon{align-items:center;background:linear-gradient(135deg,#43e97b,#38f9d7);border-radius:14px;box-shadow:0 4px 12px #43e97b66;color:#fff;display:flex;flex-shrink:0;font-size:26px;height:52px;justify-content:center;width:52px}.inv-header-title{color:#fff;font-size:20px;font-weight:700;line-height:1.3;margin:0}.inv-header-sub{color:#ffffffbf;font-size:13px;margin-top:3px}.inv-header-actions .ant-btn{border-radius:8px;font-weight:600}.inv-table-card{border-radius:14px;box-shadow:0 2px 12px #00000012;overflow:hidden}.inv-table .ant-table-thead>tr>th{background:#e8f4fd;font-size:13px;font-weight:700}.inv-table .ant-table-tbody>tr:hover>td{background:#f0f7ff}.inv-plan-code{background:#f0f0f0;border-radius:6px;color:#555;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;padding:1px 7px}.inv-plan-name{color:#1677ff;font-weight:600}.inv-status-tag{border-radius:20px;font-size:12px;font-weight:600}.inv-progress-wrap .ant-progress-line{margin-bottom:2px}.inv-progress-label{color:#888;font-size:11px}.inv-action-btn{border-radius:7px}.inv-back-bar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.inv-info-card{border-radius:14px;box-shadow:0 2px 10px #00000012;margin-bottom:16px}.inv-info-title{font-size:18px;font-weight:700;margin-bottom:6px}.inv-stat-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr);margin-bottom:16px}@media (max-width:1400px){.inv-stat-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:800px){.inv-stat-grid{grid-template-columns:repeat(2,1fr)}}.inv-stat-card{align-items:center;border-radius:13px;box-shadow:0 3px 12px #00000021;color:#fff;display:flex;gap:12px;padding:14px 16px;transition:transform .2s,box-shadow .2s}.inv-stat-card:hover{box-shadow:0 6px 20px #0000002e;transform:translateY(-2px)}.inv-stat-card-icon{align-items:center;background:#ffffff38;border-radius:10px;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.inv-stat-card-val{font-size:26px;font-weight:700;line-height:1.1}.inv-stat-card-label{font-size:11px;margin-top:2px;opacity:.88}.inv-s-total{background:linear-gradient(135deg,#1e5799,#2980b9)}.inv-s-done{background:linear-gradient(135deg,#43e97b,#38f9d7)}.inv-s-pending{background:linear-gradient(135deg,#f7971e,#ffd200)}.inv-s-surplus{background:linear-gradient(135deg,#36d1dc,#5b86e5)}.inv-s-shortage{background:linear-gradient(135deg,#fa8231,#f7b731)}.inv-s-damaged{background:linear-gradient(135deg,#ff416c,#ff4b2b)}.inv-record-card{border-radius:14px;box-shadow:0 2px 10px #0000000f;margin-bottom:16px}.inv-record-card .ant-card-head{border-bottom:2px solid #e8f4fd}.inv-record-table .ant-table-thead>tr>th{background:#e8f4fd;font-size:12px;font-weight:700}.inv-asset-code{background:#f5f5f5;border-radius:4px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;padding:1px 5px}.inv-extra-card{border-radius:14px;box-shadow:0 2px 10px #0000000f;margin-bottom:16px}@media (max-width:767px){.inv-header{align-items:flex-start;border-radius:12px;flex-direction:column;gap:12px;margin-bottom:12px;padding:14px}.inv-header-left{gap:10px}.inv-header-icon{border-radius:10px;font-size:20px;height:40px;width:40px}.inv-header-title{font-size:16px}.inv-header-sub{font-size:12px}.inv-header-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;width:100%}.inv-table-card{border-radius:10px}.inv-stat-grid{gap:8px;grid-template-columns:repeat(2,1fr);margin-bottom:12px}.inv-stat-card{gap:8px;padding:10px 12px}.inv-stat-card-val{font-size:20px}.inv-stat-card-icon{font-size:16px;height:32px;width:32px}.inv-back-bar{flex-wrap:wrap;gap:6px;margin-bottom:12px}.inv-extra-card,.inv-info-card,.inv-record-card{border-radius:10px;margin-bottom:10px}}.inv-comment-own{background:#f0f7ff;border-radius:8px;padding:4px 8px}.inv-progress-circle-wrap{align-items:center;display:flex;flex-direction:column;gap:6px}.is-container{margin:0 auto;max-width:640px;padding:0 8px 32px}.is-header{background:linear-gradient(135deg,#0d47a1,#1565c0 50%,#1976d2);border-radius:14px;box-shadow:0 4px 18px #0d47a152;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px;padding:18px 22px}.is-header,.is-header-left{align-items:center;display:flex}.is-header-left{gap:14px}.is-header-icon{align-items:center;background:linear-gradient(135deg,#ff9800,#ffc107);border-radius:13px;box-shadow:0 4px 12px #ff98006b;color:#fff;display:flex;flex-shrink:0;font-size:24px;height:48px;justify-content:center;width:48px}.is-header-title{color:#fff;font-size:18px;font-weight:700;margin:0}.is-header-sub{color:#ffffffb8;font-size:12px;margin-top:3px}.is-operator-bar{align-items:center;background:#f6ffed;border:1px solid #b7eb8f;border-radius:10px;display:flex;gap:10px;margin-bottom:12px;padding:8px 14px}.is-plan-card{margin-bottom:14px}.is-mode-card,.is-plan-card{border-radius:12px;box-shadow:0 2px 10px #0000000f;overflow:hidden}.is-mode-card{margin-bottom:12px}.is-tabs-card{border-radius:12px;box-shadow:0 2px 10px #0000000f;overflow:hidden}.is-tabs-card .ant-tabs-nav{background:#fafbff;margin:0;padding:0 12px}.is-asset-card{box-shadow:0 2px 10px #00000014}.is-asset-card,.is-history-card{border-radius:12px;margin-top:14px;overflow:hidden}.is-history-card{box-shadow:0 2px 10px #0000000f}.is-complete-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.is-stat-card{align-items:center;border-radius:12px;box-shadow:0 3px 12px #0000001f;color:#fff;display:flex;gap:12px;padding:14px 16px}.is-stat-card-icon{align-items:center;background:#ffffff38;border-radius:10px;display:flex;flex-shrink:0;font-size:18px;height:38px;justify-content:center;width:38px}.is-stat-val{font-size:24px;font-weight:700;line-height:1.1}.is-stat-label{font-size:11px;margin-top:2px;opacity:.85}.is-s-total{background:linear-gradient(135deg,#455a64,#607d8b)}.is-s-scanned{background:linear-gradient(135deg,#1565c0,#1976d2)}.is-s-missing-none{background:linear-gradient(135deg,#43e97b,#38f9d7)}.is-s-missing-some{background:linear-gradient(135deg,#ff416c,#ff4b2b)}@media (max-width:767px){.is-container{padding:0 4px 20px}.is-header{border-radius:12px;gap:8px;margin-bottom:12px;padding:12px 14px}.is-header-icon{border-radius:10px;font-size:20px;height:38px;width:38px}.is-header-title{font-size:15px}.is-complete-stats{gap:8px;grid-template-columns:1fr;margin-bottom:14px}.is-stat-card{padding:10px 14px}.is-stat-val{font-size:20px}}.app-container{padding:20px}@media (max-width:767px){.app-container{padding:8px}}.logo h1{word-wrap:break-word;font-size:14px;line-height:1.2;margin:0;max-width:100%;overflow-wrap:break-word;padding:0 4px;text-align:center;white-space:normal}.app-sider{background:linear-gradient(180deg,#0a1628,#0d1f3c 60%,#0f2447)!important;box-shadow:2px 0 12px #0000004d}.app-sider,.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;overflow:hidden}.app-sider .ant-layout-sider-children{height:100%}.app-logo{background:#ffffff0a;border-bottom:1px solid #ffffff14;cursor:default;gap:10px;min-height:64px;padding:16px 20px;-webkit-user-select:none;user-select:none}.app-logo,.app-logo-icon{align-items:center;display:flex;flex-shrink:0}.app-logo-icon{background:#ffffff1a;border:1px solid #ffffff2e;border-radius:10px;box-shadow:0 2px 8px #0000004d;height:36px;justify-content:center;padding:3px;width:36px}.app-logo-img{filter:drop-shadow(0 1px 3px rgba(0,0,0,.4));height:100%;object-fit:contain;width:100%}.app-logo-school{color:#ffffff80;font-size:12px;font-weight:400;letter-spacing:.5px;line-height:1.2}.app-logo-dept{color:#fff;font-size:13px;font-weight:700;letter-spacing:.3px;line-height:1.4}.app-logo-collapsed{display:flex;justify-content:center;width:100%}.app-logo-collapsed-img{background:#ffffff1a;border-radius:8px;filter:drop-shadow(0 1px 4px rgba(0,0,0,.4));height:32px;object-fit:contain;padding:2px;width:32px}.app-sider .ant-menu{-webkit-border-end:none!important;background:#0000!important;border-inline-end:none!important;flex:1 1;overflow-x:hidden;overflow-y:auto;scrollbar-color:#ffffff1a #0000;scrollbar-width:thin}.app-sider .ant-menu::-webkit-scrollbar{width:4px}.app-sider .ant-menu::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}.app-sider .ant-menu-item{border-radius:8px!important;color:#ffffff9e!important;font-size:13px;margin:1px 8px!important;width:calc(100% - 16px)!important}.app-sider .ant-menu-item:hover{background:#4da6ff1f!important;color:#fff!important}.app-sider .ant-menu-item-selected{background:linear-gradient(90deg,#4da6ff40,#4da6ff14)!important;color:#4da6ff!important;font-weight:600}.app-sider .ant-menu-item-selected .anticon{color:#4da6ff!important}.app-sider .ant-menu-item .anticon{font-size:15px;transition:color .2s}.app-sider .ant-menu-item-group-title{color:#ffffff4d!important;font-size:10px!important;font-weight:700!important;letter-spacing:1.2px!important;padding:8px 20px 4px!important;text-transform:uppercase}.app-sider .ant-menu-item-divider{border-color:#ffffff12!important;margin:4px 16px!important}.app-header{align-items:center!important;background:linear-gradient(90deg,#fff,#f8faff 50%,#fff)!important;border-bottom:1.5px solid #1677ff14!important;box-shadow:0 1px 0 #1677ff1a,0 2px 12px #0000000f!important;display:flex!important;gap:8px;height:60px!important;justify-content:space-between!important;line-height:60px!important;padding:0 16px!important;position:-webkit-sticky!important;position:sticky!important;top:0!important;transition:background .3s,box-shadow .3s;z-index:1000!important}.app-header-toggle{border-radius:9px!important;color:#6b7cb8!important;flex-shrink:0;font-size:16px!important;height:36px!important;min-width:36px!important;padding:0 8px!important;transition:background .2s,color .2s!important}.app-header-toggle:hover{background:#1677ff14!important;color:#1677ff!important}.app-content{background:#f4f6fb}body.dark-mode .app-sider{background:linear-gradient(180deg,#070f1f,#0a1628)!important;box-shadow:2px 0 12px #00000080}body.dark-mode .app-header{background:linear-gradient(90deg,#0d1117,#161c2a 40%,#161c2a 60%,#0d1117)!important;border-bottom:1.5px solid #388bfd1f!important;box-shadow:0 1px 0 #388bfd26,0 2px 16px #00000080!important}body.dark-mode .app-header-toggle{color:#94aad2bf!important}body.dark-mode .app-header-toggle:hover{background:#388bfd1f!important;color:#79b8ff!important}.app-hdr-actions{align-items:center;display:flex;flex-shrink:0;gap:12px}.app-hdr-avatar{border:2px solid #1677ff26;border-radius:50%;cursor:pointer;transition:border-color .2s,box-shadow .2s}.app-hdr-avatar:hover{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff1f}body.dark-mode .app-hdr-avatar{border-color:#388bfd33}body.dark-mode .app-hdr-avatar:hover{border-color:#388bfd;box-shadow:0 0 0 3px #388bfd2e}.app-hdr-center{flex:1 1;gap:10px;justify-content:center}.app-hdr-center,.app-hdr-infobar{align-items:center;display:flex;overflow:hidden}.app-hdr-infobar{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1677ff0a;border:1px solid #1677ff26;border-radius:24px;gap:8px;max-width:100%;padding:6px 18px;transition:box-shadow .2s,background .2s;white-space:nowrap}.app-hdr-infobar:hover{box-shadow:0 2px 14px #1677ff1a}.app-hdr-infobar--morning{background:linear-gradient(135deg,#faad1414,#ffec8208);border-color:#faad1447}.app-hdr-infobar--noon{background:linear-gradient(135deg,#1890ff14,#91d5ff08);border-color:#1890ff38}.app-hdr-infobar--evening{background:linear-gradient(135deg,#ff7a4514,#ffd2aa08);border-color:#ff7a4538}.app-hdr-infobar--night{background:linear-gradient(135deg,#722ed114,#c8a0ff08);border-color:#722ed138}.app-hdr-greet-icon{flex-shrink:0;font-size:15px!important}.app-hdr-greet-icon--morning{color:#f59e0b!important}.app-hdr-greet-icon--noon{color:#3b82f6!important}.app-hdr-greet-icon--evening{color:#f97316!important}.app-hdr-greet-icon--night{color:#a78bfa!important}.app-hdr-greet-text{color:#1e2f5e;font-size:14px;font-weight:600;white-space:nowrap}.app-hdr-greet-time{font-feature-settings:"tnum";color:#64748b;font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:.5px;white-space:nowrap}.app-hdr-divider{background:#0000001a;display:inline-block;flex-shrink:0;height:14px;margin:0 2px;width:1px}.app-hdr-clock-icon{color:#94a3b8!important;font-size:12px!important}.app-hdr-meta-icon{color:#94a3b8!important;font-size:13px!important}body.dark-mode .app-hdr-infobar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0a;border-color:#94aad224}body.dark-mode .app-hdr-infobar:hover{box-shadow:0 2px 14px #0000004d}body.dark-mode .app-hdr-infobar--morning{background:linear-gradient(135deg,#fbbf241f,#fbbf240a);border-color:#fbbf2447}body.dark-mode .app-hdr-infobar--noon{background:linear-gradient(135deg,#388bfd1f,#388bfd0a);border-color:#388bfd47}body.dark-mode .app-hdr-infobar--evening{background:linear-gradient(135deg,#fb8c001f,#fb8c000a);border-color:#fb8c0047}body.dark-mode .app-hdr-infobar--night{background:linear-gradient(135deg,#a78bfa1f,#a78bfa0a);border-color:#a78bfa47}body.dark-mode .app-hdr-greet-text{color:#e2e8f0}body.dark-mode .app-hdr-greet-time{color:#94a3b8}body.dark-mode .app-hdr-clock-icon,body.dark-mode .app-hdr-meta-icon{color:#4b5563!important}body.dark-mode .app-hdr-divider{background:#ffffff1f}body.dark-mode .app-hdr-infobar .ant-tag{border-color:#ffffff26!important}body.dark-mode .app-content{background:#0e0e0e}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-title{color:#000;font-size:24px;font-weight:600;margin:0}.button-group{display:flex;gap:8px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.stat-card{background:#fff;border:1px solid #f0f0f0;border-radius:8px;box-shadow:0 1px 2px #00000014;padding:16px}.stat-card-title{color:#666;font-size:14px;margin-bottom:8px}.stat-card-value{color:#000;font-size:28px;font-weight:600}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 2px #00000014;overflow:hidden}.modal-form{gap:16px}.form-item,.modal-form{display:flex;flex-direction:column}.form-label{color:#000;font-size:14px;font-weight:500;margin-bottom:8px}.form-input{border:1px solid #d9d9d9;border-radius:4px;font-size:14px;padding:8px 12px}.form-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33;outline:none}.status-tag{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.status-low{background-color:#fff7e6;color:#d48806}.status-normal{background-color:#f6ffed;color:#52c41a}.status-alert{background-color:#fff1f0;color:#ff4d4f}body.dark-mode{background-color:#141414;color:#ffffffd9}body.dark-mode *{scrollbar-color:#434343 #1f1f1f;scrollbar-width:thin}body.dark-mode ::-webkit-scrollbar{height:8px;width:8px}body.dark-mode ::-webkit-scrollbar-track{background:#1f1f1f}body.dark-mode ::-webkit-scrollbar-thumb{background:#434343;border-radius:4px}body.dark-mode ::-webkit-scrollbar-thumb:hover{background:#595959}body.dark-mode .form-label,body.dark-mode .page-title{color:#ffffffd9}body.dark-mode .stat-card{background:#1f1f1f;border-color:#303030}body.dark-mode .stat-card-title{color:#ffffffa6}body.dark-mode .stat-card-value{color:#ffffffd9}body.dark-mode .table-container{background:#1f1f1f}body.dark-mode .logo h1{color:#ffffffd9}body.dark-mode .work-package-detail-page{background:#141414}body.dark-mode .work-package-header{background:#1f1f1f;border-bottom-color:#303030}body.dark-mode .work-package-layout{background:#141414}body.dark-mode .work-package-main .ant-card{background:#1f1f1f}body.dark-mode .work-package-sidebar{background:#1f1f1f!important;border-left-color:#303030}body.dark-mode .comments-card{background:#1f1f1f}body.dark-mode .comments-container .ant-list-item{border-bottom-color:#303030}body.dark-mode .ant-card{background:#1f1f1f;border-color:#303030}body.dark-mode .ant-card-head{border-bottom-color:#303030;color:#ffffffd9}body.dark-mode .ant-table{background:#1f1f1f}body.dark-mode .ant-table-thead>tr>th{background:#262626;border-bottom-color:#303030}body.dark-mode .ant-table-tbody>tr>td{border-bottom-color:#303030}body.dark-mode .ant-table-tbody>tr:hover>td{background:#262626}body.dark-mode .ant-input,body.dark-mode .ant-input-number,body.dark-mode .ant-picker,body.dark-mode .ant-select-selector{background:#1f1f1f;border-color:#434343;color:#ffffffd9}body.dark-mode .ant-input-number:hover,body.dark-mode .ant-input:hover,body.dark-mode .ant-picker:hover,body.dark-mode .ant-select-selector:hover{border-color:#177ddc}body.dark-mode .ant-input-number:focus,body.dark-mode .ant-input:focus,body.dark-mode .ant-select-focused .ant-select-selector{border-color:#177ddc;box-shadow:0 0 0 2px #177ddc33}body.dark-mode .ant-modal-content{background:#1f1f1f}body.dark-mode .ant-modal-header{background:#1f1f1f;border-bottom-color:#303030}body.dark-mode .ant-modal-title{color:#ffffffd9}body.dark-mode .ant-modal-footer{border-top-color:#303030}body.dark-mode .ant-dropdown-menu{background:#1f1f1f}body.dark-mode .ant-dropdown-menu-item{color:#ffffffd9}body.dark-mode .ant-dropdown-menu-item:hover{background:#262626}body.dark-mode .ant-tabs-nav{border-bottom-color:#303030}body.dark-mode .ant-tabs-tab{color:#ffffffa6}body.dark-mode .ant-tabs-tab:hover{color:#ffffffd9}body.dark-mode .ant-tabs-tab-active .ant-tabs-tab-btn{color:#177ddc}body.dark-mode .ant-list-item{border-bottom-color:#303030}body.dark-mode .ant-list-item-meta-title{color:#ffffffd9}body.dark-mode .ant-list-item-meta-description{color:#ffffffa6}body.dark-mode .ant-btn-default{background:#1f1f1f;border-color:#434343;color:#ffffffd9}body.dark-mode .ant-btn-default:hover{background:#262626;border-color:#177ddc;color:#177ddc}body.dark-mode .ant-divider{border-top-color:#303030}body.dark-mode .loading{color:#ffffffd9}body.dark-mode .ant-layout,body.dark-mode .ant-layout-content,body.dark-mode .app-container,body.dark-mode .dashboard-container,body.dark-mode .inventory-container,body.dark-mode .page-container,body.dark-mode .projects-container{background:#141414!important}body.dark-mode .stat-item{background:#1f1f1f;border-color:#303030}.ant-switch-checked{background:#177ddc}body.dark-mode .ant-switch{background:#ffffff40}@media (max-width:767px){.ant-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.page-header{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:12px}.page-title{font-size:18px}.button-group{flex-wrap:wrap}.stats-grid{gap:8px;grid-template-columns:1fr 1fr;margin-bottom:12px}.ant-modal{margin:0!important;max-width:100vw!important;padding-bottom:0!important;top:0!important}.ant-modal-content{border-radius:0!important;min-height:100vh}.ant-form-item .ant-input,.ant-form-item .ant-input-number,.ant-form-item .ant-picker,.ant-form-item .ant-select{width:100%!important}.ant-card-body{padding:12px!important}.ant-layout-header{height:auto!important;line-height:48px;min-height:48px;padding:0 8px!important}.ant-tabs-tab{font-size:13px;padding:8px!important}.ant-descriptions-item-content,.ant-descriptions-item-label{padding:6px 8px!important}.ant-breadcrumb{font-size:12px!important}.ant-space{flex-wrap:wrap}#root,body{overflow-x:hidden}.ant-layout-header{padding-left:max(12px,env(safe-area-inset-left))!important;padding-right:max(12px,env(safe-area-inset-right))!important}}@media (max-width:479px){.stats-grid{grid-template-columns:1fr}.ant-table{font-size:12px}.ant-btn{font-size:13px}}body.dark-mode .ant-drawer-content{background:#0a1628!important}body.dark-mode .ant-drawer-header{background:#0a1628!important;border-bottom-color:#ffffff14}body.dark-mode .pwa-install-banner{background:linear-gradient(135deg,#07111f,#0d3060)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.loading{align-items:center;color:#666;display:flex;font-size:24px;height:100vh;justify-content:center}.ant-layout{background:#fff}.ant-layout-sider{background:#fff;border-right:1px solid #f0f0f0}*,:after,:before{-webkit-tap-highlight-color:transparent;touch-action:manipulation}body{padding-env:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#root,body,html{max-width:100vw;overflow-x:hidden}.ant-layout-content,.app-content{-webkit-overflow-scrolling:touch}.pwa-install-banner{align-items:center;animation:slideUp .35s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#0d1f3c,#1565c0);bottom:0;box-shadow:0 -4px 20px #00000040;color:#fff;cursor:pointer;display:flex;gap:12px;left:0;padding:12px 16px max(12px,env(safe-area-inset-bottom));position:fixed;right:0;z-index:9999}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.pwa-install-btn{background:#fff;border:none;border-radius:20px;color:#1565c0;cursor:pointer;font-size:13px;font-weight:700;min-height:34px;padding:6px 18px;transition:opacity .2s;white-space:nowrap}.pwa-install-btn:active{opacity:.75}.pwa-dismiss-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:13px;height:28px;justify-content:center;width:28px}@media (max-width:767px){body{overflow-x:hidden}.ant-layout,.ant-layout-content{max-width:100vw}.app-header{height:52px!important;line-height:52px!important;padding:0 8px 0 4px!important}.app-header-toggle{min-width:36px!important;width:36px!important}.app-content{padding:8px!important}.ant-table-wrapper{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto!important;overflow-y:visible!important;scrollbar-color:#bbb #f0f0f0;scrollbar-width:thin}.ant-table-wrapper::-webkit-scrollbar{height:4px}.ant-table-wrapper::-webkit-scrollbar-thumb{background:silver;border-radius:4px}.ant-card .ant-table-wrapper,.ant-card-body .ant-table-wrapper{overflow-x:auto!important}.ant-table{font-size:13px!important;min-width:100%!important;width:-webkit-max-content!important;width:max-content!important}.ant-table-thead>tr>th{font-size:12px!important;min-width:60px}.ant-table-tbody>tr>td,.ant-table-thead>tr>th{padding:8px 10px!important;white-space:nowrap!important}.ant-table-tbody>tr>td.ant-table-cell-ellipsis,.ant-table-tbody>tr>td.col-wrap{max-width:160px;white-space:normal!important;word-break:break-all}.ant-table-tbody>tr>td:last-child,.ant-table-thead>tr>th:last-child{background:#fff!important;box-shadow:-2px 0 6px #0000000f;position:-webkit-sticky!important;position:sticky!important;right:0!important;z-index:2!important}body.dark-mode .ant-table-tbody>tr>td:last-child,body.dark-mode .ant-table-thead>tr>th:last-child{background:#1f1f1f!important}.ant-card-body{padding:12px!important}.ant-card-head{min-height:44px;padding:0 12px!important}.ant-card-head-title{font-size:14px!important;padding:10px 0!important}.ant-form-item{margin-bottom:12px!important}.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-picker,.ant-select{font-size:16px!important;min-height:44px!important}.ant-select-selector{align-items:center!important;min-height:44px!important}.ant-input-search .ant-btn{min-height:44px!important;min-width:44px!important}.ant-btn{font-size:13px!important;min-height:36px!important;padding:0 12px!important}.ant-btn-icon-only{min-height:36px!important;min-width:36px!important;padding:0!important}.ant-modal{margin:0!important;max-width:100vw!important;padding-bottom:0!important;top:0!important}.ant-modal-content{border-radius:0!important;min-height:100dvh}.ant-modal-body{-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 110px);overflow-y:auto;padding:12px!important}.ant-drawer-body{padding:0!important}.ant-dropdown-menu-item{align-items:center;display:flex;font-size:14px!important;min-height:42px!important;padding:10px 16px!important}.ant-select-item{font-size:14px!important;line-height:40px!important;min-height:40px!important}.ant-tabs-tab{font-size:13px!important;padding:8px 10px!important}.ant-tabs-nav{-webkit-overflow-scrolling:touch;overflow-x:auto!important}.stat-cards-grid,.stats-grid{gap:8px!important;grid-template-columns:1fr 1fr!important}.stat-card{min-height:90px!important;padding:12px!important}.stat-card-value{font-size:22px!important}.al-header,.db-hero,.gm-header,.is-header,.rm-header,.um-header{border-radius:12px!important;padding:16px 14px!important}.db-hero-inner{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}.db-hero-right{align-self:flex-start;text-align:left!important}.db-hero-time{font-size:20px!important}.db-quicklinks-grid{gap:8px!important;grid-template-columns:repeat(3,1fr)!important}.db-ql-card{padding:10px 6px!important}.db-ql-icon{font-size:16px!important;height:36px!important;margin-bottom:6px!important;width:36px!important}.db-ql-label{font-size:11px!important}.al-filter-bar,.gm-filter-bar,.rm-filter-bar,.um-filter-bar{flex-direction:column!important;gap:8px!important}.al-filter-bar .ant-input-search,.gm-filter-bar .ant-input-search,.um-filter-bar .ant-input-search{max-width:100%!important;width:100%!important}.al-filter-bar .ant-select,.gm-filter-bar .ant-select,.um-filter-bar .ant-select{min-width:0!important;min-width:auto!important;width:100%!important}.al-filter-bar .ant-btn,.gm-filter-bar .ant-btn,.um-filter-bar .ant-btn{justify-content:center;width:100%!important}.al-stats,.gm-stats,.is-stats,.rm-stats,.um-stats{gap:8px!important;grid-template-columns:1fr 1fr!important}.page-header{align-items:flex-start!important;flex-direction:column!important;gap:8px!important;margin-bottom:12px!important}.page-title{font-size:18px!important}.button-group{flex-wrap:wrap;width:100%}.ant-descriptions-item-content,.ant-descriptions-item-label{padding:6px 8px!important}.ant-space{flex-wrap:wrap}.ant-progress{max-width:100%}}@media (max-width:479px){.stat-cards-grid,.stats-grid{grid-template-columns:1fr!important}.db-quicklinks-grid{grid-template-columns:repeat(2,1fr)!important}.ant-table{font-size:12px!important;min-width:360px}.al-stats,.gm-stats,.is-stats,.rm-stats,.um-stats{grid-template-columns:1fr!important}}@media (min-width:768px) and (max-width:1023px){.al-stats,.gm-stats,.um-stats{grid-template-columns:repeat(2,1fr)!important}.db-quicklinks-grid{grid-template-columns:repeat(4,1fr)!important}}select{-webkit-appearance:none}@supports (padding-bottom:env(safe-area-inset-bottom)){.pwa-install-banner{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.ant-back-top,.ant-float-btn-group{bottom:calc(24px + env(safe-area-inset-bottom))!important}}@media (display-mode:standalone){.app-header{height:calc(52px + env(safe-area-inset-top))!important;padding-top:env(safe-area-inset-top)!important}.ant-float-btn{bottom:calc(24px + env(safe-area-inset-bottom))!important}}@media print{.ant-float-btn,.app-header,.app-sider,.pwa-install-banner{display:none!important}.app-content{padding:0!important}}
/*# sourceMappingURL=main.5fcf65e7.css.map*/