:root{--bg:#0a1421;--surface:#0f2033;--surface2:#0b1824;--surface3:#091620;--head:#11263a;--line:#203a4d;--line2:#29485e;--text:#edf3f7;--muted:#8395a4;--muted2:#657b8d;--blue:#2ba8dc;--green:#25ad5a;--yellow:#d5a22e;--red:#d85861;--excel:#1f8f49;--shadow:0 12px 28px rgba(0,0,0,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 12% -12%,rgba(43,168,220,.06),transparent 28%),linear-gradient(180deg,#0a1421,#0b1725);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}header{height:64px;position:sticky;top:0;z-index:20;background:#0a1421f5;border-bottom:1px solid rgba(139,165,184,.1);box-shadow:0 8px 22px #0000001a;backdrop-filter:blur(14px)}.header-inner{width:min(1320px,100%);height:100%;margin:0 auto;padding:0 26px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.brandmark{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:#132b40;border:1px solid #2b4e68;color:#74c9ec;font-size:10px;font-weight:900}.brand b{display:block;font-size:13px;letter-spacing:-.01em}.brand small{display:block;margin-top:2px;color:#75889a;font-size:8px;letter-spacing:.08em}.header-actions{display:flex;align-items:center;gap:8px}.badge{height:32px;padding:0 10px;border-radius:9px;border:1px solid #29465b;background:#102238;color:#8fa8b9;font-size:9px;font-weight:800;display:inline-flex;align-items:center;gap:7px}.badge i{width:6px;height:6px;border-radius:50%;background:var(--green)}.btn{height:36px;padding:0 13px;border-radius:8px;border:1px solid #29445a;background:#0f2033;color:#cbd6df;font-size:10px;font-weight:800}.btn:hover{border-color:#397695}.btn-primary{background:#176d93;border-color:#2d8db5;color:#fff}.btn-excel{background:linear-gradient(180deg,#219f50,#197e40);border-color:#2aac5c;color:#fff}main{width:min(1320px,100%);margin:0 auto;padding:22px 26px 36px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;min-height:54px}.page-head h1{margin:0;font-size:30px;line-height:1.15;font-weight:700;letter-spacing:-.025em}.page-head p{max-width:780px;margin:5px 0 0;color:#90a3b2;font-size:13px;line-height:1.55}.page-chip{padding:7px 11px;border-radius:8px;border:1px solid #2d5870;background:#0f2033;color:#8bcce7;font-size:9px;font-weight:850;letter-spacing:.055em;white-space:nowrap}.workspace-grid{display:grid;grid-template-columns:minmax(420px,.44fr) minmax(0,.56fr);gap:12px 14px;grid-template-areas:"upload auto" "table table"}.upload-cell{grid-area:upload}.auto-cell{grid-area:auto}.table-cell{grid-area:table;min-width:0}.panel{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#ffffff03,#fff0),var(--surface2);box-shadow:var(--shadow)}.upload-card,.auto-analysis-panel{height:100%}.upload-kicker{padding:8px 12px 0;color:#6f8798;font-size:8.5px;font-weight:800;letter-spacing:.08em}.dropzone{min-height:92px;padding:11px 12px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:11px;row-gap:2px;align-items:center;background:linear-gradient(180deg,#18324457,#0a182424);transition:.16s ease}.dropzone.drag{background:#10263a;box-shadow:0 0 0 1px #37627d inset}.pdf-icon{width:38px;height:38px;border-radius:9px;grid-row:1/3;display:grid;place-items:center;background:#132d43;border:1px solid #29495e;color:#74c9ec;font-size:9px;font-weight:900;box-shadow:0 5px 14px #0000001f}.dropzone h3{margin:0;align-self:end;color:#e4ebf0;font-size:13px;letter-spacing:-.008em}.dropzone p{margin:0;align-self:start;color:#8395a4;font-size:11px;line-height:1.5}.dropzone .btn{grid-column:3;grid-row:1/3;align-self:center;height:31px;font-size:9px}.file-name{grid-column:2/4;margin-top:4px;color:#718798;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-card.loaded{border-color:#2a9a55;background:#0f2530}.upload-card.loaded .pdf-icon{background:#123827;border-color:#2ca55a;color:#91e4ad}.upload-card.loaded .file-name{color:#a9e9bc;font-weight:700}.auto-analysis-panel{padding:11px 12px;display:flex;flex-direction:column;justify-content:center}.auto-analysis-head{display:flex;align-items:flex-start;gap:8px;padding-bottom:8px;border-bottom:1px solid #1d3548}.auto-dot{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #20a4511a;flex:0 0 auto}.auto-analysis-head b{display:block;color:#e4ebf0;font-size:12px}.auto-analysis-head small{display:block;margin-top:2px;color:#8395a4;font-size:11px;line-height:1.5;font-weight:400}.analysis-progress{height:3px;margin-top:9px;overflow:hidden;border-radius:999px;background:#102636}.analysis-progress span{display:block;width:0;height:100%;border-radius:inherit;background:var(--up-btn-primary-bg,#3f7056);box-shadow:0 0 8px #3f705659;transition:width .15s ease}.auto-analysis-panel.warning .analysis-progress span{background:var(--yellow);box-shadow:0 0 8px #d5a22e4d}.auto-analysis-panel.error .analysis-progress span{background:var(--red);box-shadow:0 0 8px #d858614d}.auto-analysis-panel.processing .auto-dot{background:var(--green);animation:pulse 1.15s infinite ease-in-out}.auto-analysis-panel.complete .auto-dot{background:var(--green)}.auto-analysis-panel.warning .auto-dot{background:var(--yellow)}.auto-analysis-panel.error .auto-dot{background:var(--red)}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px}.metric{min-width:0;padding:8px 9px;border:1px solid #1d3548;border-radius:8px;background:#091620}.metric span{display:block;color:#8ea2b2;font-size:9px;line-height:1.3}.metric b{display:block;margin-top:4px;color:#d4dfe6;font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric.good b{color:#86df9f}.metric.warn b{color:#e2b85a}.metric.bad b{color:#e3838a}.table-card{border-radius:13px}.table-head{min-height:62px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#11263a;border-bottom:1px solid #203b50}.table-head h2{margin:0;color:#e7edf2;font-size:16px;font-weight:650;letter-spacing:-.012em}.table-head p{margin:4px 0 0;color:#8395a4;font-size:11px;line-height:1.5}.table-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.table-wrap{overflow:auto;padding:10px;background:#0b1824}table{width:100%;border-collapse:separate;border-spacing:0;min-width:820px;font-size:12px}thead th{height:43px;padding:0 12px;background:#365f91;color:#fff;font-weight:750;border-top:1px solid #4b729d;border-bottom:1px solid #263f53;border-right:1px solid rgba(255,255,255,.08);text-align:center;white-space:nowrap}thead th:first-child{border-left:1px solid #4b729d;border-radius:8px 0 0;text-align:left}thead th:last-child{border-radius:0 8px 0 0}tbody td{height:42px;padding:8px 12px;background:#0a1723;color:#d5dfe6;border-right:1px solid #1d3548;border-bottom:1px solid #1d3548}tbody td:first-child{border-left:1px solid #1d3548;text-align:left;font-weight:600}tbody td:nth-child(2),tbody td:nth-child(3),tbody td:nth-child(4){text-align:center}tbody td:nth-child(5){text-align:right;font-variant-numeric:tabular-nums}tbody tr:hover td{background:#0c1c2b}.empty-row td{height:132px;text-align:center!important;color:#657b8d!important;font-weight:400!important}.table-footer{padding:10px 12px 12px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border-top:1px solid #1d3548;background:#0d1c2a}.validation{display:flex;align-items:center;gap:9px;min-width:0;color:#8498a8;font-size:10.5px;line-height:1.5}.validation i{width:8px;height:8px;border-radius:50%;background:#526d87;flex:0 0 auto}.validation.good{color:#9ddfb0}.validation.good i{background:var(--green)}.validation.warn{color:#dfbd72}.validation.warn i{background:var(--yellow)}.validation.bad{color:#df8a91}.validation.bad i{background:var(--red)}.total-box{display:flex;align-items:center;gap:14px;padding:8px 10px;border:1px solid #1d3548;border-radius:8px;background:#091620}.total-box span{color:#8196a6;font-size:9px}.total-box b{color:#e3ebf1;font-size:11px;font-variant-numeric:tabular-nums}@media(max-width:1100px){.workspace-grid{grid-template-columns:1fr;grid-template-areas:"upload" "auto" "table"}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){main{padding:18px 14px 30px}.header-inner{padding:0 14px}.badge{display:none}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:25px}.page-chip{display:none}.dropzone{grid-template-columns:36px 1fr;grid-template-rows:auto auto auto auto}.dropzone .btn{grid-column:1/-1;grid-row:3;width:100%;margin-top:6px}.file-name{grid-column:1/-1}.metrics{grid-template-columns:1fr 1fr}.table-head{align-items:flex-start;flex-direction:column}.table-actions{width:100%}.table-actions .btn{flex:1}.table-footer{grid-template-columns:1fr}.total-box{justify-content:space-between}}
