@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#e8edf2;background:#0f1419;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #0f1419;--card: #1a2028;--card-hover: #222a35;--border: #2a3340;--border-light: #384455;--text: #e8edf2;--muted: #8b98a8;--weak: #5c6a7a;--accent: #0066b3;--accent-light: #3db8e8;--green: #4ade80;--red: #f87171;--amber: #fbbf24;--purple: #c084fc;--cyan: #22d3ee}*{box-sizing:border-box}body{margin:0;min-width:360px;min-height:100vh;overflow:hidden}button,input,select,textarea{font:inherit}button{color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid rgba(61,184,232,.6);outline-offset:2px}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}::selection{background:#3db8e840}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#354151;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#46566a}.app-shell{min-height:100vh}.sidebar{width:240px;position:fixed;inset:0 auto 0 0;z-index:40;background:#151b22;border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width .22s ease,transform .22s ease}.brand{height:74px;padding:0 18px;display:flex;align-items:center;gap:11px;border-bottom:1px solid rgba(42,51,64,.65);cursor:pointer;flex-shrink:0;overflow:hidden}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;color:#fff;background:linear-gradient(135deg,#0066b3,#3db8e8);box-shadow:0 6px 18px #0066b340}.brand-copy{display:flex;flex-direction:column;white-space:nowrap}.brand-copy strong{font-size:16px;letter-spacing:1.5px}.brand-copy span{font-size:10px;color:var(--muted);letter-spacing:1px;margin-top:3px}.nav-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:14px 10px 20px}.nav-group+.nav-group{margin-top:16px}.nav-label{height:24px;padding:0 12px;color:var(--weak);font-size:10px;letter-spacing:1.5px;white-space:nowrap}.nav-item{position:relative;width:100%;height:38px;padding:0 11px;display:flex;align-items:center;gap:11px;border:0;border-radius:6px;background:transparent;color:#94a1b1;font-size:13px;text-align:left;white-space:nowrap;transition:.16s ease}.nav-item:hover{color:var(--text);background:var(--card-hover)}.nav-item.active{color:#7cd8fa;background:#0066b32e}.nav-item.active:before{content:"";position:absolute;left:-10px;top:8px;width:3px;height:22px;background:var(--accent-light);border-radius:0 3px 3px 0;box-shadow:0 0 12px #3db8e880}.nav-icon{width:20px;display:grid;place-items:center;flex-shrink:0}.nav-text{flex:1}.nav-badge{min-width:19px;height:18px;padding:0 5px;display:grid;place-items:center;border-radius:9px;color:var(--amber);background:#fbbf241f;border:1px solid rgba(251,191,36,.25);font-size:10px}.sidebar-footer{padding:12px;border-top:1px solid var(--border);overflow:hidden}.system-health{display:flex;align-items:center;gap:10px;padding:9px;border-radius:7px;background:#ffffff05;white-space:nowrap}.health-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #4ade8014;flex-shrink:0}.system-health div{display:flex;flex-direction:column}.system-health strong{font-size:11px;font-weight:500}.system-health span:last-child{color:var(--weak);font-size:9px;margin-top:2px}.main-shell{margin-left:240px;height:100vh;display:flex;flex-direction:column;transition:margin-left .22s ease}.topbar{height:56px;flex-shrink:0;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#1a2028f5;border-bottom:1px solid var(--border);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-left,.topbar-actions{display:flex;align-items:center;gap:12px}.breadcrumb{display:flex;align-items:center;gap:9px;font-size:12px;white-space:nowrap}.breadcrumb span{color:var(--weak)}.breadcrumb b{color:#3b4654;font-weight:400}.breadcrumb strong{color:#c5ced8;font-weight:500}.icon-btn{width:32px;height:32px;padding:0;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:6px;color:var(--muted);background:transparent;transition:.15s}.icon-btn:hover{color:var(--text);background:var(--card-hover);border-color:var(--border)}.menu-trigger{display:none}.global-search{position:relative;width:205px;height:32px;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid var(--border);border-radius:6px;color:var(--weak);background:#131920}.global-search input{width:100%;min-width:0;border:0;outline:0;color:var(--text);background:transparent;font-size:12px}.global-search kbd{padding:2px 5px;border:1px solid var(--border);border-radius:4px;font-size:9px;white-space:nowrap}.search-mask{position:fixed;inset:0;z-index:1}.search-results{position:absolute;z-index:2;top:39px;right:0;width:240px;padding:6px;background:#1c232c;border:1px solid var(--border-light);border-radius:8px;box-shadow:0 8px 24px #00000059}.search-results button{width:100%;padding:9px 10px;display:flex;align-items:center;gap:10px;border:0;border-radius:5px;background:transparent;color:#b8c3cf;font-size:12px;text-align:left}.search-results button:hover{background:#3db8e817;color:var(--accent-light)}.search-results p{padding:14px;margin:0;text-align:center;color:var(--muted);font-size:12px}.period-select{height:32px;padding:0 25px 0 10px;border:1px solid var(--border);border-radius:6px;color:#c4cdd7;background:#131920;font-size:12px;font-variant-numeric:tabular-nums}.notification-btn{position:relative}.notification-btn i{position:absolute;right:6px;top:5px;width:6px;height:6px;border-radius:50%;background:var(--red);border:1px solid var(--card)}.user-chip{display:flex;align-items:center;gap:8px;padding-left:4px;white-space:nowrap}.avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;color:#b8e9ff;background:#0066b347;border:1px solid rgba(61,184,232,.25);font-size:12px}.user-chip>div:nth-child(2){display:flex;flex-direction:column}.user-chip strong{font-size:11px;font-weight:600}.user-chip span{color:var(--weak);font-size:9px;margin-top:1px}.user-chip>svg{color:var(--weak)}.content{flex:1;overflow-y:auto;padding:22px 24px 40px;background-color:var(--bg);background-image:radial-gradient(circle at 88% -10%,rgba(0,102,179,.07),transparent 28%),radial-gradient(circle at 10% 110%,rgba(34,211,238,.025),transparent 25%)}.content>*{max-width:1660px;margin-left:auto;margin-right:auto}.sidebar-collapsed .sidebar{width:72px}.sidebar-collapsed .main-shell{margin-left:72px}.sidebar-collapsed .brand{padding:0 17px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-text,.sidebar-collapsed .nav-badge,.sidebar-collapsed .system-health div{display:none}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-collapsed .system-health{justify-content:center}.sidebar-collapsed .collapse-trigger svg{transform:rotate(180deg)}.mobile-close{display:none}.page-header{min-height:62px;margin-bottom:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.eyebrow{margin-bottom:6px;color:#3f91b9;font-size:9px;font-weight:700;letter-spacing:1.8px}.page-header h1{margin:0;font-size:22px;line-height:1.25;font-weight:600;letter-spacing:.3px}.page-header p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.page-actions,.button-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.card{padding:18px;margin-bottom:16px;border:1px solid var(--border);border-radius:10px;background:var(--card);box-shadow:0 1px 1px #00000014}.card-head{min-height:25px;margin-bottom:15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title{font-size:13px;font-weight:600;color:#dfe6ed}.card-extra{display:flex;align-items:center}.btn{min-height:34px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:7px;font-size:12px;font-weight:500;white-space:nowrap;transition:.16s}.btn-primary{color:#fff;background:var(--accent);border-color:#0874c5;box-shadow:0 3px 10px #0066b31f}.btn-primary:hover{background:#005293;border-color:#3b9cd1}.btn-secondary{color:#bdc7d2;background:#1b232c;border-color:var(--border-light)}.btn-secondary:hover{color:var(--text);background:var(--card-hover);border-color:#4b5d71}.btn-sm{min-height:30px;padding:0 10px;font-size:11px}.text-btn{padding:0;display:inline-flex;align-items:center;gap:5px;border:0;color:#68c5ed;background:transparent;font-size:11px;white-space:nowrap}.text-btn:hover{color:#a0e3ff}.badge{width:fit-content;min-height:21px;padding:2px 7px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid;border-radius:5px;font-size:10px;line-height:1.35;font-weight:500;white-space:nowrap}.badge i{width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 5px currentColor}.badge-blue{color:#72b9ff;background:#0066b324;border-color:#0066b366}.badge-green{color:var(--green);background:#4ade8017;border-color:#4ade8038}.badge-red{color:var(--red);background:#f8717117;border-color:#f8717138}.badge-amber{color:var(--amber);background:#fbbf2417;border-color:#fbbf2438}.badge-purple{color:var(--purple);background:#c084fc17;border-color:#c084fc38}.badge-cyan{color:var(--cyan);background:#22d3ee14;border-color:#22d3ee38}.badge-gray{color:#9ba8b7;background:#8b98a812;border-color:#8b98a82e}.muted-text{color:var(--weak);font-size:11px}.success-text{color:var(--green)}.warning-text{color:var(--amber)}.accent-text{color:var(--accent-light)!important}.number-cell,.money-positive,.money-negative,.mono-cell,.stat-value,.recon-total strong{font-variant-numeric:tabular-nums}.money-positive{color:var(--green)}.money-negative{color:var(--red)}.mono-cell{color:#a9b6c4;font-family:DM Sans,monospace;font-size:11px}code{padding:3px 6px;border:1px solid #303b48;border-radius:4px;color:#8fd8f5;background:#141b22;font-family:DM Sans,monospace;font-size:11px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.stats-grid .card{margin:0}.stat-card{min-height:105px;display:flex;align-items:center;gap:14px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-25px;top:-30px;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(61,184,232,.035),transparent 65%)}.stat-icon{width:42px;height:42px;display:grid;place-items:center;flex-shrink:0;border-radius:9px;border:1px solid}.stat-blue{color:#62c7f2;background:#0066b324;border-color:#3db8e82e}.stat-green{color:var(--green);background:#4ade8014;border-color:#4ade802e}.stat-red{color:var(--red);background:#f8717114;border-color:#f871712e}.stat-amber{color:var(--amber);background:#fbbf2414;border-color:#fbbf242e}.stat-purple{color:var(--purple);background:#c084fc14;border-color:#c084fc2e}.stat-cyan{color:var(--cyan);background:#22d3ee14;border-color:#22d3ee2e}.stat-content{min-width:0}.stat-label{color:var(--muted);font-size:11px;margin-bottom:7px}.stat-value{color:#eef3f7;font-size:clamp(17px,1.4vw,23px);line-height:1.15;font-weight:700;letter-spacing:-.5px;white-space:nowrap}.stat-helper{min-height:15px;margin-top:7px;display:flex;align-items:center;gap:3px;color:var(--weak);font-size:10px}.trend-up{color:var(--green)}.trend-down{color:var(--amber)}.stats-grid-compact .stat-card{min-height:93px}.stats-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.close-banner{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:#3db8e838;background:linear-gradient(105deg,#0066b324,#1a2028e6 38%,#1a2028)}.close-banner-main{display:flex;align-items:center;gap:12px}.close-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:10px;color:#8ee4ff;background:linear-gradient(135deg,#0066b373,#3db8e829);border:1px solid rgba(61,184,232,.25)}.close-title{font-size:14px;font-weight:600}.close-banner-main p{margin:5px 0 0;color:var(--muted);font-size:11px}.close-steps{display:flex;align-items:center;gap:11px}.close-step{display:flex;align-items:center;gap:8px;color:var(--weak)}.close-step>span{width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--border-light);border-radius:50%;font-size:9px}.close-step>div{display:flex;flex-direction:column}.close-step small{font-size:8px}.close-step strong{margin-top:2px;font-size:10px;font-weight:500;white-space:nowrap}.close-step.done>span{color:var(--green);border-color:#4ade804d;background:#4ade8014}.close-step.done strong{color:#b7c4cf}.close-step.current>span{color:var(--amber);border-color:#fbbf2459;background:#fbbf2414}.close-step.current strong{color:var(--amber)}.close-step>svg{margin-left:4px;color:#3b4653}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px}.span-2{grid-column:span 2}.chart-card{min-height:340px}.chart-legend{display:flex;align-items:center;justify-content:space-between;margin:-3px 0 5px;font-size:10px;color:var(--muted)}.chart-legend>span:first-child{display:flex;align-items:center;gap:6px}.chart-legend i{width:7px;height:7px;border-radius:2px}.chart-total b{color:#cdd7e1;font-weight:500;margin-left:5px}.chart-container{height:255px}.donut-wrap{padding-top:2px}.donut-chart{height:172px;position:relative}.donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-center strong{font-size:22px}.donut-center span{color:var(--weak);font-size:10px}.donut-legend{display:flex;flex-direction:column;gap:8px}.donut-legend>div{display:grid;grid-template-columns:7px 1fr auto;align-items:center;gap:7px;font-size:10px}.donut-legend i{width:6px;height:6px;border-radius:50%}.donut-legend span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-legend b{font-weight:500;color:#c4ced8;font-variant-numeric:tabular-nums}.recon-equation{min-height:158px;display:flex;align-items:center;justify-content:space-between;gap:6px}.recon-equation>div{display:flex;flex-direction:column;gap:8px}.recon-equation span{color:var(--weak);font-size:10px}.recon-equation strong{font-size:13px;font-variant-numeric:tabular-nums}.recon-equation>b{color:#4a5868;font-weight:400}.recon-equation .result strong{color:var(--green)}.recon-footer{padding-top:12px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border)}.recon-footer>span{display:flex;align-items:center;gap:6px;color:var(--green);font-size:10px}.mini-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mini-metrics>div{padding:8px 12px;border-right:1px solid var(--border)}.mini-metrics>div:last-child{border:0}.mini-metrics span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}.mini-metrics span svg{color:#579fc2}.mini-metrics strong{display:block;margin-top:8px;font-size:21px;font-variant-numeric:tabular-nums}.mini-metrics small{margin-left:5px;color:var(--weak);font-size:9px;font-weight:400}.coverage-row{margin-top:18px}.coverage-row>div{display:flex;justify-content:space-between;margin-bottom:7px;color:var(--muted);font-size:10px}.coverage-row b{color:var(--green);font-weight:500}.progress{height:5px;border-radius:4px;background:#242e39;overflow:hidden}.progress span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#0066b3,#3db8e8);transition:width .5s}.progress-green span{background:linear-gradient(90deg,#1b9e55,#4ade80)}.progress-amber span{background:var(--amber)}.attention-list{margin:-6px -5px -5px}.attention-list button{width:100%;padding:9px 6px;display:flex;align-items:center;gap:10px;border:0;border-bottom:1px solid rgba(42,51,64,.65);background:transparent;text-align:left}.attention-list button:last-child{border-bottom:0}.attention-list button:hover{background:#ffffff05}.attention-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:6px;color:var(--amber);background:#fbbf2412}.attention-list button>div:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column}.attention-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500}.attention-list span{margin-top:4px;color:var(--weak);font-size:9px}.attention-list>button>svg{color:var(--weak)}.activity-list{display:flex;flex-direction:column}.activity-list>div{position:relative;display:flex;gap:11px;padding-bottom:15px}.activity-list>div:not(:last-child):before{content:"";position:absolute;left:3px;top:11px;bottom:-1px;width:1px;background:var(--border)}.activity-dot{position:relative;z-index:1;width:7px;height:7px;margin-top:5px;flex-shrink:0;border-radius:50%;background:#4caed8;box-shadow:0 0 0 4px #1a2028}.activity-list strong{font-size:11px;font-weight:500}.activity-list p{margin:4px 0;color:var(--muted);font-size:10px;line-height:1.5}.activity-list small{color:var(--weak);font-size:9px}.import-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}.drop-zone{min-height:256px;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #354455;border-radius:9px;background:#0f14194d;transition:.2s;cursor:pointer}.drop-zone:hover,.drop-zone.dragging{border-color:var(--accent-light);background:#0066b317}.upload-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;color:#6ed2fa;background:#0066b326;border:1px solid rgba(61,184,232,.2)}.drop-zone h3{margin:15px 0 6px;font-size:15px}.drop-zone p{margin:0 0 15px;color:var(--muted);font-size:11px}.drop-zone small{margin-top:12px;color:var(--weak);font-size:9px}.import-options{padding-top:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--weak);font-size:9px}.btn-danger{color:#fca5a5;border-color:#f871714d;background:#f871710f}.btn-danger:hover{color:#fecaca;border-color:#f871718c;background:#f871711f}.drop-zone.disabled{cursor:wait;opacity:.72}.drop-zone.disabled:hover{border-color:#354455;background:#0f14194d}.import-progress{margin-top:15px;padding:14px;border:1px solid rgba(61,184,232,.2);border-radius:8px;background:#0066b30e}.import-progress-head{margin-bottom:11px;display:flex;align-items:center;justify-content:space-between;gap:12px}.import-progress-head strong{font-size:12px;font-weight:600}.import-progress .progress{height:7px}.import-progress-file{margin-top:10px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px}.import-progress-file>svg{flex-shrink:0;color:var(--accent-light)}.import-progress-file>span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-progress-file>b{color:#bce9fa;font-size:11px;font-variant-numeric:tabular-nums}.import-progress-stats{margin-top:12px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.import-progress-stats>span{padding:7px 9px;border-radius:5px;color:var(--weak);background:#0f141959;font-size:10px}.import-progress-stats b{margin-left:3px;color:#dbe7ee;font-weight:600}.import-progress-summary{margin:11px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.clear-warning{border:1px solid rgba(248,113,113,.16);color:#d8a9a9;background:#f871710e}.clear-warning strong{color:#fecaca}.check-label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;cursor:pointer}.check-label input{display:none}.check-label>span{width:15px;height:15px;display:grid;place-items:center;border:1px solid var(--border-light);border-radius:4px;color:transparent}.check-label input:checked+span{color:#fff;background:var(--accent);border-color:var(--accent)}.engine-steps{padding:2px 0}.engine-steps>div{display:flex;align-items:center;gap:11px}.engine-steps>div>span{width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;border-radius:7px;color:#79d3f6;background:#0066b326;border:1px solid rgba(61,184,232,.18);font-size:11px}.engine-steps strong{font-size:11px;font-weight:500}.engine-steps p{margin:3px 0 0;color:var(--weak);font-size:9px}.engine-steps>i{display:block;width:1px;height:16px;margin:3px 0 3px 14px;background:var(--border-light)}.engine-note,.principle-tip{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(61,184,232,.15);border-radius:6px;color:#8eb5c7;background:#0066b312;font-size:10px;line-height:1.5}.engine-note{margin-top:16px}.principle-tip{margin-bottom:16px}.source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.source-grid>div{padding:12px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:7px;background:#ffffff03}.source-grid>div>div:nth-child(2){flex:1;display:flex;flex-direction:column}.source-grid strong{font-size:11px;font-weight:500}.source-grid span{color:var(--weak);font-size:9px;margin-top:3px}.source-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:7px;color:#67c9f2;background:#0066b31f}.source-1{color:var(--green);background:#4ade8014}.source-2{color:var(--purple);background:#c084fc14}.source-3{color:var(--amber);background:#fbbf2414}.table-wrap{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:11px;white-space:nowrap}.data-table th{height:37px;padding:0 12px;color:#8593a3;background:#161c23;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:10px;font-weight:600;text-align:left}.data-table th:first-child{border-left:1px solid var(--border);border-radius:5px 0 0}.data-table th:last-child{border-right:1px solid var(--border);border-radius:0 5px 0 0}.data-table td{height:49px;padding:8px 12px;color:#b5c0cc;border-bottom:1px solid rgba(56,68,85,.55);vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:var(--card-hover)}.data-table tr.clickable{cursor:pointer}.data-table strong{color:#dce4ec;font-weight:500}.data-table.dense td{height:40px;padding-top:5px;padding-bottom:5px}.primary-cell{max-width:280px;display:flex;flex-direction:column;gap:4px}.primary-cell strong,.primary-cell>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.primary-cell>span{color:var(--weak);font-size:9px}.file-cell{display:flex;align-items:center;gap:9px}.file-cell>svg{color:#5faed2;flex-shrink:0}.file-cell>div{display:flex;flex-direction:column;gap:4px}.file-cell span{color:var(--weak);font-size:9px}.table-toolbar{min-height:42px;margin-bottom:13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.toolbar-right{display:flex;align-items:center;gap:10px}.search-box{width:280px;height:32px;padding:0 9px;display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:6px;color:var(--weak);background:#141a21}.search-box:focus-within{border-color:#3db8e880}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:11px}.search-box button{padding:0;display:grid;place-items:center;border:0;background:transparent;color:var(--weak)}.filter-select,.table-select{height:31px;padding:0 9px;border:1px solid var(--border);border-radius:5px;color:#b3bfca;background:#151c23;font-size:10px}.table-select{min-width:190px}.pager{padding-top:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--weak);font-size:10px}.pager>div{display:flex;align-items:center;gap:8px}.pager .icon-btn{width:27px;height:27px;border-color:var(--border)}.empty-state{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--weak)}.tabs{display:flex;align-items:center;gap:3px}.tabs button{min-height:31px;padding:0 11px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:5px;color:var(--muted);background:transparent;font-size:11px}.tabs button span{padding:1px 5px;border-radius:7px;color:var(--weak);background:#8b98a814;font-size:8px}.tabs button.active{color:#7bd3f7;background:#0066b329}.page-tabs{margin-bottom:16px;padding:4px;width:fit-content;border:1px solid var(--border);border-radius:8px;background:var(--card)}.voucher-meta{margin-bottom:14px;padding:10px 12px;display:flex;align-items:center;gap:28px;border:1px solid var(--border);border-radius:6px;background:#151c23;color:var(--weak);font-size:10px}.voucher-meta b{margin-left:5px;color:#c5d0da;font-weight:500}.check-input{width:14px;height:14px;accent-color:var(--accent);cursor:pointer}.switch{width:30px;height:17px;padding:2px;border:0;border-radius:10px;background:#3b4653;transition:.2s}.switch span{display:block;width:13px;height:13px;border-radius:50%;background:#a8b3c0;transition:.2s}.switch.on{background:#0874bc}.switch.on span{transform:translate(13px);background:#fff}.diff-cell{color:var(--amber);background:#fbbf2414;padding:5px 7px;border-radius:4px}.table-footnote{padding-top:12px;color:var(--weak);font-size:10px}.modal-backdrop{position:fixed;inset:0;z-index:100;padding:24px;display:flex;align-items:center;justify-content:center;background:#03070bb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s}.modal{width:min(480px,100%);max-height:90vh;display:flex;flex-direction:column;border:1px solid #3a4858;border-radius:16px;background:#1a2028;box-shadow:0 20px 60px #00000073;animation:modalIn .18s}.modal-wide{width:min(720px,100%)}.modal-head{padding:17px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.modal-head h3{margin:0;font-size:15px;font-weight:600}.modal-body{padding:20px;overflow-y:auto}.modal-footer{padding:13px 20px;display:flex;align-items:center;justify-content:flex-end;gap:9px;border-top:1px solid var(--border)}.modal-tip{margin-bottom:18px;padding:10px 12px;border-radius:6px;color:#91a9b9;background:#0066b314;font-size:11px;line-height:1.6}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;color:#a8b5c2;font-size:11px}.field input,.field select{width:100%;height:36px;padding:0 10px;border:1px solid var(--border-light);border-radius:6px;outline:0;color:var(--text);background:#121820;font-size:12px}.field input:focus,.field select:focus{border-color:#3b9ed0}.field small{color:var(--weak);font-size:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.cost-import-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cost-upload{margin-bottom:16px;transition:border-color .2s}.cost-upload.dragging{border-color:var(--accent-light)}.cost-upload-head{display:flex;align-items:center;gap:11px;min-height:52px}.cost-upload-head h3{margin:0;font-size:12px;font-weight:600}.cost-upload-head h3 i{color:var(--red);margin-left:3px;font-style:normal}.cost-upload-head p{margin:5px 0 0;color:var(--weak);font-size:9px;line-height:1.5}.upload-status{margin:15px 0 12px;display:flex;align-items:center;justify-content:space-between}.mini-drop{height:36px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #3a4858;border-radius:6px;color:var(--weak);background:#0f141940;font-size:9px;cursor:pointer}.mini-drop:hover{color:#7ecfec;border-color:#3b91b9}.workflow-card{padding:15px 20px}.workflow-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.workflow-title>div{display:flex;align-items:center;gap:8px}.workflow-title svg{color:#66c6ed}.workflow-title strong{font-size:12px}.workflow-title>span{color:var(--weak);font-size:9px}.workflow-steps{margin-top:16px;display:flex;align-items:center;justify-content:space-between}.workflow-steps>div{display:flex;align-items:center;gap:8px;color:var(--weak)}.workflow-steps>div>span{width:23px;height:23px;display:grid;place-items:center;border:1px solid var(--border-light);border-radius:50%;font-size:8px}.workflow-steps strong{font-size:10px;font-weight:500;white-space:nowrap}.workflow-steps>div.done>span{color:var(--green);border-color:#4ade8040;background:#4ade8012}.workflow-steps>div.done strong{color:#acbbc7}.workflow-steps>div>svg{margin-left:16px;color:#3c4856}.rule-notes{display:flex;flex-direction:column;gap:17px}.rule-notes>div{display:flex;align-items:flex-start;gap:10px}.rule-notes svg{color:#5ab6dd;margin-top:2px}.rule-notes p{margin:0;display:flex;flex-direction:column;gap:4px}.rule-notes strong{font-size:11px;font-weight:500}.rule-notes span{color:var(--weak);font-size:9px}.match-tabs{display:flex;align-items:center;gap:4px;margin:-2px 0 15px;border-bottom:1px solid var(--border);overflow-x:auto}.match-tabs button{padding:0 12px 12px;position:relative;display:flex;align-items:center;gap:6px;border:0;color:var(--muted);background:transparent;font-size:11px;white-space:nowrap}.match-tabs button span{color:var(--weak);font-size:9px}.match-tabs button.active{color:#75d1f7}.match-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:10px;right:10px;height:2px;background:var(--accent-light)}.product-cell{max-width:260px}.product-cell strong{display:flex;align-items:center;gap:6px}.product-cell strong span{padding:1px 4px;border-radius:3px;color:#8392a3;background:#242d37;font-size:8px;font-weight:400}.spin{animation:spin .8s linear infinite}.trace-product{display:flex;align-items:center;gap:12px;margin-bottom:20px}.trace-product>div:nth-child(2){flex:1;min-width:0}.trace-product h3{margin:0;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-product p{margin:5px 0 0;color:var(--weak);font-size:10px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:20px;border:1px solid var(--border);border-radius:7px;overflow:hidden;background:var(--border)}.detail-grid>div{padding:12px;display:flex;flex-direction:column;gap:5px;background:#161d24}.detail-grid span{color:var(--weak);font-size:9px}.detail-grid strong{font-size:11px;font-weight:500}.trace-path h4{margin:0 0 12px;font-size:12px}.trace-path>div{display:flex;gap:10px;padding:10px;border-left:2px solid var(--border-light)}.trace-path>div.hit{border-left-color:var(--green);background:#4ade8009}.trace-path>div>span{width:21px;height:21px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;color:var(--muted);background:#252f3a;font-size:9px}.trace-path p{margin:0;display:flex;flex-direction:column;gap:4px}.trace-path strong{font-size:11px;font-weight:500}.trace-path small{color:var(--weak);font-size:9px}.workbench-status{margin-bottom:16px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(74,222,128,.18);border-radius:8px;background:#4ade800b}.workbench-status>div{display:flex;align-items:center;gap:8px;color:#b9c8c0;font-size:11px}.workbench-status svg{color:var(--green)}.workbench-status p{margin:0;color:var(--weak);font-size:9px}.workbench-card{padding-top:0}.sheet-tabs{margin:0 -18px 16px;padding:0 14px;display:flex;border-bottom:1px solid var(--border);overflow-x:auto}.sheet-tabs button{height:47px;padding:0 12px;position:relative;display:flex;align-items:center;gap:6px;border:0;color:var(--muted);background:transparent;font-size:11px;white-space:nowrap}.sheet-tabs button span{color:var(--weak);font-size:8px}.sheet-tabs button.active{color:#78d0f4}.sheet-tabs button.active:after{content:"";position:absolute;bottom:-1px;left:10px;right:10px;height:2px;background:var(--accent-light)}.diff-panel{border-color:#fbbf2440}.difference-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.difference-list>div{padding:10px;display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:6px}.difference-list>div>span{color:var(--amber);font-size:10px}.difference-list strong{flex:1;font-size:10px;font-weight:500}.priority-cell{width:28px;height:24px;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:5px;color:#9aabba;background:#151c23;font-size:10px}.condition-cell{display:flex;flex-direction:column;gap:5px}.condition-cell strong{font-size:11px}.condition-cell span{color:var(--weak);font-size:9px}.voucher-type-tabs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.voucher-type-tabs>button{padding:15px 17px;display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:9px;background:var(--card);text-align:left}.voucher-type-tabs>button.active{border-color:#3db8e873;background:#0066b317}.voucher-type-tabs>button>div:nth-child(2){flex:1;display:flex;flex-direction:column;gap:5px}.voucher-type-tabs strong{font-size:12px}.voucher-type-tabs span{color:var(--weak);font-size:9px}.recon-hero{display:flex;align-items:center;gap:14px}.recon-hero.pass{border-color:#4ade8038;background:linear-gradient(100deg,rgba(74,222,128,.07),var(--card) 50%)}.recon-check-icon{color:var(--green)}.recon-hero>div:nth-child(2){flex:1}.recon-hero h2{margin:0;font-size:16px;font-weight:600}.recon-hero p{margin:6px 0 0;color:var(--muted);font-size:10px}.recon-total-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.recon-total{position:relative;overflow:hidden}.recon-total:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:2px;background:#627284}.recon-total.blue:before{background:var(--accent-light)}.recon-total.purple:before{background:var(--purple)}.recon-total.green:before{background:var(--green)}.recon-total span{color:var(--muted);font-size:10px}.recon-total strong{display:block;margin-top:9px;font-size:18px}.compliance-hero{min-height:175px;position:relative;display:flex;align-items:center;gap:28px;overflow:hidden;border-color:#4ade8033;background:radial-gradient(circle at 80% 20%,rgba(74,222,128,.07),transparent 35%),var(--card)}.compliance-score{width:120px;height:120px;position:relative;flex-shrink:0}.compliance-score svg{width:100%;transform:rotate(-90deg)}.compliance-score circle{fill:none;stroke:#28343d;stroke-width:7}.compliance-score .score-ring{stroke:var(--green);stroke-linecap:round;stroke-dasharray:314;transition:stroke-dashoffset .5s}.compliance-score>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.compliance-score strong{font-size:30px}.compliance-score span{color:var(--weak);font-size:9px}.compliance-summary h2{margin:11px 0 6px;font-size:18px}.compliance-summary p{margin:0 0 7px;color:var(--muted);font-size:11px}.compliance-summary small{color:var(--weak);font-size:9px}.compliance-watermark{margin-left:auto;color:#4ade8017}.subject-code{color:#85d7fa;font-size:12px}.timeline{padding:4px 0}.timeline-item{position:relative;display:flex;gap:13px;padding-bottom:20px}.timeline-item:not(:last-child):before{content:"";position:absolute;left:15px;top:33px;bottom:0;width:1px;background:var(--border)}.timeline-icon{width:31px;height:31px;display:grid;place-items:center;flex-shrink:0;border:1px solid rgba(61,184,232,.2);border-radius:7px;color:#66c3e9;background:#0066b31a}.timeline-content{flex:1;padding:4px 0}.timeline-content>div{display:flex;align-items:center;gap:9px}.timeline-content strong{font-size:12px;font-weight:500}.timeline-content p{margin:7px 0;color:var(--muted);font-size:11px}.timeline-content>span{display:flex;align-items:center;gap:5px;color:var(--weak);font-size:9px}.toast{position:fixed;z-index:150;right:24px;bottom:24px;max-width:460px;min-height:45px;padding:11px 16px;display:flex;align-items:center;gap:9px;border:1px solid rgba(74,222,128,.3);border-radius:8px;color:#c6f5d6;background:#182a22;box-shadow:0 10px 30px #00000059;font-size:12px;animation:toastIn .2s}.toast-error{color:#ffd0d0;background:#2d1d21;border-color:#f8717159}.empty-period{min-height:calc(100vh - 160px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-period>div{width:64px;height:64px;display:grid;place-items:center;border:1px solid var(--border);border-radius:15px;color:var(--muted);background:var(--card)}.empty-period h2{margin:18px 0 7px;font-size:18px}.empty-period p{max-width:460px;margin:0 0 20px;color:var(--muted);font-size:12px;line-height:1.8}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.985)}}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}}@media(min-width:1600px){.content{padding:26px 30px 44px}.card{padding:20px}.stat-card{min-height:112px}}@media(max-width:1250px){.global-search{width:150px}.global-search kbd{display:none}.close-banner{align-items:flex-start;flex-direction:column}.close-steps{width:100%;justify-content:space-between}.cost-import-grid{grid-template-columns:repeat(2,1fr);gap:0 14px}.workflow-steps>div>svg{margin-left:5px}.stat-value{font-size:18px}}@media(max-width:1050px){.sidebar{transform:translate(-100%);width:240px!important}.sidebar.mobile-open{transform:translate(0)}.main-shell,.sidebar-collapsed .main-shell{margin-left:0}.collapse-trigger{display:none}.menu-trigger{display:grid}.mobile-mask{position:fixed;inset:0;z-index:35;background:#0009}.mobile-close{display:grid;margin-left:auto;place-items:center;border:0;background:transparent;color:var(--muted)}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-text,.sidebar-collapsed .nav-badge,.sidebar-collapsed .system-health div{display:initial}.sidebar-collapsed .nav-item{justify-content:flex-start;padding:0 11px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid>.card:not(.span-2){grid-column:span 1}.chart-card.span-2{grid-column:span 2}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-grid-three{grid-template-columns:repeat(3,1fr)}.import-layout{grid-template-columns:1fr;gap:0}.workflow-title>span{display:none}.workflow-steps strong{font-size:9px}.source-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.topbar{padding:0 14px}.breadcrumb span,.breadcrumb b,.user-chip>div:nth-child(2),.user-chip>svg,.global-search{display:none}.content{padding:18px 14px 32px}.page-header{align-items:flex-start;flex-direction:column;gap:13px}.page-actions{width:100%}.page-header h1{font-size:20px}.stats-grid,.stats-grid-three{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:14px;gap:10px;min-height:100px}.stat-icon{width:35px;height:35px}.stat-value{font-size:15px}.stat-helper{font-size:9px}.dashboard-grid{display:block}.close-steps{display:grid;grid-template-columns:1fr 1fr}.close-step>svg{display:none}.source-grid,.cost-import-grid{grid-template-columns:1fr}.drop-zone{padding:20px 14px;text-align:center}.import-options{align-items:flex-start;flex-direction:column}.workflow-steps{display:grid;grid-template-columns:1fr 1fr;gap:12px}.workflow-steps>div>svg{display:none}.table-toolbar{align-items:flex-start;flex-direction:column}.search-box{width:100%}.toolbar-right{width:100%;justify-content:space-between}.tabs{max-width:100%;overflow-x:auto}.card{padding:14px}.sheet-tabs{margin-left:-14px;margin-right:-14px}.voucher-type-tabs{grid-template-columns:1fr;gap:10px}.voucher-meta{gap:12px;flex-wrap:wrap}.recon-total-grid{grid-template-columns:1fr 1fr;gap:10px}.recon-total strong{font-size:15px}.workbench-status{align-items:flex-start;flex-direction:column}.difference-list,.form-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}.compliance-hero{gap:16px;padding:18px}.compliance-score{width:90px;height:90px}.compliance-score strong{font-size:23px}.compliance-summary h2{font-size:14px}.compliance-watermark{display:none}.toast{left:14px;right:14px;bottom:14px}}@media(max-width:460px){.stats-grid,.stats-grid-three{grid-template-columns:1fr}.stat-card{min-height:88px}.stat-value{font-size:19px}.mini-metrics{grid-template-columns:1fr 1fr}.mini-metrics>div:nth-child(2){border-right:0}.recon-total-grid,.close-steps{grid-template-columns:1fr}.page-actions .btn{flex:1}.button-row{width:100%}.button-row .btn{flex:1}}
