@charset "UTF-8";
.tax-record{font-size:11px;color:#6a8077;margin:-5px 0 16px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.tax-record label{display:flex;align-items:center;gap:8px}.tax-record input{width:min(330px,65vw);padding:8px 10px;border:1px solid #dce4e2;border-radius:5px;font:inherit;background:#fff}.tax-record small{font-size:10px;line-height:1.8}
.assessment-settings{display:flex;align-items:center;gap:15px;flex-wrap:wrap;background:#fff;border:1px solid #e0e8e5;padding:15px 18px;border-radius:9px;margin-bottom:20px;font-size:11px}.assessment-settings>div{margin-right:auto}.assessment-settings b{display:block;font-size:12px;margin-bottom:5px}.assessment-settings small{font-size:10px;color:#7c8d8b;line-height:1.7}.assessment-settings label{display:flex;align-items:center;gap:6px;white-space:nowrap}.assessment-settings input{width:87px;padding:7px 6px;border:1px solid #dce4e2;border-radius:5px;font-size:12px}.assessment-settings select,#market-category{padding:9px 10px;border:1px solid #dce4e2;border-radius:6px;background:white;font-size:11px;max-width:330px}.month-field{display:flex;align-items:center;gap:9px;font-size:11px;color:#6c817a}.month-field input{padding:7px 6px;border:1px solid #e0e8e5;border-radius:5px;color:#284c41;font-size:12px}.prior-line{display:block;font-size:10px;color:#83918e;margin-top:5px;line-height:1.7}.row-reason{display:block;font-size:10px;color:#83918e;white-space:normal;min-width:170px;max-width:260px;line-height:1.8;margin-top:6px}.signal-cell{text-align:left!important;min-width:195px}.compare-table .product-name{min-width:190px}.priority-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #edf1ef}.priority-row:last-child{border:0}.priority-row>div{text-align:right;white-space:nowrap;font-size:12px}.priority-row .rank-name{max-width:65%}.cost-period{font-size:13px;font-weight:600;color:#2c6c59;margin:20px 1px 15px}.cost-period span{font-size:11px;font-weight:400;color:#83918e;margin-left:12px}.coverage-detail{font-size:11px;line-height:1.8;margin:0 0 18px;color:#70867c}.coverage-detail summary{cursor:pointer;padding:10px 0}.coverage-detail .table-wrap{background:#fff;border:1px solid #e0e8e5;border-radius:8px}.observed-signal{display:block;white-space:normal;line-height:1.8;font-size:11px;color:#916543;max-width:270px;margin-bottom:5px}@media(max-width:650px){.assessment-settings{padding:13px;gap:12px}.assessment-settings>div{width:100%}.assessment-settings label{font-size:10px}.assessment-settings input{width:70px}.assessment-settings select{max-width:100%;font-size:10px}.month-field input{width:130px;font-size:11px}.cost-period span{display:block;margin:7px 0 0}.sidebar nav button{width:35px;padding:10px 8px}}
.upload-zone{display:flex;align-items:center;gap:14px;padding:17px 18px;margin-bottom:14px;background:#edf5f2;border:1px dashed #9bbcaf;border-radius:10px}.upload-symbol{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;background:#fff;border-radius:8px;color:#0b7f73}.upload-symbol svg{width:20px;height:20px}.upload-copy{display:flex;flex:1;flex-direction:column;gap:6px}.upload-copy strong{font-size:12px;font-weight:600}.upload-copy span{font-size:10px;line-height:1.7;color:#71867f}.upload-zone[aria-busy="true"]{border-style:solid;opacity:.8}.upload-progress{background:#fff;border:1px solid #dce7e2;border-radius:8px;margin-bottom:16px;padding:13px 16px;font-size:11px;line-height:1.8;color:#56776b;overflow-wrap:anywhere}.upload-progress.error{background:#fcf0ee;border-color:#e8c7c0;color:#974d48}.upload-progress .import-message{font-weight:600;margin-bottom:5px}.upload-progress ul{margin:6px 0 0;padding-left:18px}.upload-progress li{padding:2px 0}.file-drop-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:30px;background:#153e38df;backdrop-filter:blur(3px);pointer-events:none}.file-drop-overlay[hidden]{display:none}.file-drop-overlay>div{border:2px dashed #9fd5be;border-radius:18px;width:min(700px,95vw);padding:70px 30px;color:#fff;text-align:center}.file-drop-overlay svg{width:40px;height:40px;margin:0 auto 20px;color:#a9dfc6}.file-drop-overlay strong{display:block;font-size:22px}.file-drop-overlay p{font-size:12px;color:#c0d8cf;margin-top:15px}@media(max-width:650px){.upload-zone{padding:13px 11px;gap:9px;flex-wrap:wrap}.upload-copy strong{font-size:11px}.upload-copy span{font-size:9px}.upload-symbol{width:29px;height:29px}.upload-zone .button{padding:8px 10px;font-size:10px}.file-drop-overlay>div{padding:60px 20px}.file-drop-overlay strong{font-size:18px}}
:root{--bg:#f5f7f8;--surface:#fff;--ink:#1d3035;--muted:#718087;--line:#e5eaed;--teal:#0b7f73;--teal-soft:#eaf6f2;--red:#c75b56;--red-soft:#fcf0ee;--gold:#af813d;--side:#163c39;--side-text:#b6ccca;--shadow:0 3px 15px #163c3904;font-family:"Malgun Gothic","맑은 고딕",system-ui,sans-serif;font-synthesis:none;color:var(--ink);font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}a{color:inherit}button{border:0;background:none;color:inherit}svg{display:block}button svg{width:18px;height:18px}button:disabled{opacity:.55;cursor:wait}.sidebar{width:238px;background:var(--side);position:fixed;inset:0 auto 0 0;padding:36px 20px;display:flex;flex-direction:column;z-index:20;color:var(--side-text)}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:#fff;font-size:19px;letter-spacing:2px;font-weight:750;margin:0 11px 50px}.brand-mark{width:38px;height:40px;display:flex;align-items:center;position:relative;font-size:36px;font-weight:800;line-height:1;color:#89cab9}.brand-mark span{position:absolute;font-size:23px;right:-5px;top:-8px;color:#b7d8cd}.brand-sub{display:block;font-size:10px;letter-spacing:2.2px;color:#91b8b1;margin-top:6px}.nav-label{font-size:10px;color:#85a6a1;letter-spacing:1px;margin:0 15px 13px}nav button{width:100%;display:flex;align-items:center;gap:13px;text-align:left;padding:14px 16px;border-radius:9px;margin-bottom:5px;font-weight:500;font-size:13px}nav button:hover{background:#ffffff09;color:white}nav button.active{color:white;background:#ffffff13}nav button.active:after{content:"";width:5px;height:5px;border-radius:50%;margin-left:auto;background:#94d5bc}.nav-divider{height:1px;background:#ffffff14;margin:24px 13px}.sidebar-bottom{margin-top:auto;padding:26px 11px 0;font-size:12px;color:#d4e3df}.private-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#94d5bc;margin-right:7px}.sidebar-bottom p{color:#8caba6;font-size:11px;margin:10px 0 20px}.sidebar-bottom button{display:flex;gap:8px;align-items:center;border:1px solid #ffffff20;border-radius:7px;padding:10px 8px;font-size:11px;width:100%;justify-content:center}.sidebar-bottom small{display:block;color:#a8c8bd;font-size:10px;line-height:1.6;margin-top:10px;word-break:keep-all}main{margin-left:238px}.topbar{height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#fff}.breadcrumb{font-size:12px;color:var(--muted);display:flex;gap:12px;align-items:center}.breadcrumb span{color:#c3cdcf}.breadcrumb strong{font-weight:500;color:var(--ink)}.source-pill{font-size:11px;display:flex;gap:7px;align-items:center;color:#667b78}.source-pill i{width:6px;height:6px;border-radius:50%;background:#5f9e86}.workspace{padding:34px 40px 0;max-width:1800px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--teal);margin-bottom:9px}h1{font-size:29px;letter-spacing:-1.3px;margin:0 0 9px;font-weight:700}h2{font-size:16px;letter-spacing:-.4px;margin:0;font-weight:700}h3{font-size:14px;line-height:1.5;margin:0}.page-heading p{color:var(--muted);font-size:12px;margin:0;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:7px;padding:11px 15px;font-size:12px;font-weight:600;white-space:nowrap}.button.subtle{background:#fff;border:1px solid var(--line)}.button.primary{background:var(--teal);color:#fff}.button:hover{filter:brightness(.97)}.filterbar{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 16px;flex-wrap:wrap}.date-fields{display:flex;align-items:center;gap:10px}.date-fields label{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:10px}.date-fields input{width:135px;font-size:12px;border:0;background:transparent;color:var(--ink);padding:6px 2px}.date-separator{color:#b0babc}.end-label>span{display:none}.presets{display:flex;gap:3px}.presets button{font-size:11px;color:var(--muted);padding:7px 8px;border-radius:5px}.presets button.selected,.presets button:hover{background:var(--teal-soft);color:var(--teal)}.category-control{margin-left:auto}.category-control select{font-size:12px;max-width:175px;border:1px solid var(--line);border-radius:6px;padding:8px 26px 8px 10px;color:#4a6067;background:white}.period-note{font-size:11px;color:var(--muted);margin:12px 1px 20px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.period-note b{font-weight:500;color:var(--teal)}.coverage-tag{background:#e8f3ef;color:var(--teal);border-radius:4px;padding:3px 6px;font-size:10px}.coverage-tag.warn{background:#fff3dc;color:#9a702d}.notice{background:#fff7e8;border:1px solid #eddfbd;color:#805f2e;padding:13px 16px;border-radius:8px;line-height:1.8;font-size:12px;margin:0 0 18px}.notice.info{background:#eef5f8;border-color:#dbe7ec;color:#4c6d7c}.notice.error{background:var(--red-soft);border-color:#e8c7c0;color:#974d48}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.metric{background:#fff;border:1px solid var(--line);border-radius:11px;padding:21px 21px 18px;box-shadow:var(--shadow);min-height:139px}.metric.primary-metric{border-top:3px solid var(--teal);padding-top:19px}.metric-label{font-size:11px;color:#6d8086;display:flex;align-items:center;justify-content:space-between;gap:8px}.metric-label .tiny-icon{color:#8ea49e;width:15px;height:15px}.metric-value{font-family:system-ui,"Malgun Gothic",sans-serif;font-size:27px;letter-spacing:-.9px;font-weight:650;margin:12px 0 8px;line-height:1.1;white-space:nowrap}.metric-value .unit{font-size:13px;font-weight:400;letter-spacing:0;margin-left:4px;color:var(--muted)}.metric-foot{font-size:10px;color:var(--muted);line-height:1.5}.change{font-family:system-ui,"Malgun Gothic",sans-serif;font-size:11px;display:inline-flex;align-items:center;gap:3px;border-radius:4px;padding:3px 5px;margin-right:5px}.positive{color:var(--teal)}.negative{color:var(--red)}.change.positive{background:var(--teal-soft)}.change.negative{background:var(--red-soft)}.change.neutral{background:#f1f4f5;color:#7a8b90}.panel{background:#fff;border:1px solid var(--line);border-radius:11px;padding:23px;box-shadow:var(--shadow);min-width:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.panel-subtitle{font-size:11px;color:var(--muted);margin-top:6px;line-height:1.6}.panel-link{font-size:11px;color:var(--teal);white-space:nowrap}.grid-main{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:20px;margin-bottom:22px}.grid-halves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:22px}.legend{display:flex;align-items:center;gap:14px;font-size:10px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.legend i{height:3px;width:16px;border-radius:5px;background:var(--teal)}.legend i.prior{background:#b9c9cc}.chart{width:100%;position:relative}.chart svg{width:100%;height:auto;overflow:visible}.chart-label{font-size:10px;fill:#8a999f}.chart-grid{stroke:#edf1f3;stroke-width:1}.chart-tip{position:absolute;background:#233f3e;color:#fff;font-size:11px;line-height:1.9;border-radius:7px;padding:10px 12px;pointer-events:none;z-index:5;box-shadow:0 5px 20px #0002;min-width:140px}.chart-hover{fill:transparent;cursor:crosshair}.chart-hover:hover{fill:#0b7f7308}.chart-empty{height:250px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px}.category-item{margin-bottom:19px}.category-item:last-child{margin-bottom:0}.category-line{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;margin-bottom:8px}.category-line button{text-align:left;font-size:12px;font-weight:500}.category-line small{font-size:10px;margin-left:8px}.bar-track{height:7px;border-radius:4px;background:#f0f4f4;overflow:hidden}.bar-fill{height:100%;border-radius:4px;background:#629f90}.category-secondary{margin-top:6px;display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted)}.insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 23px}.insight{background:#edf5f2;border:1px solid #dceae4;border-radius:9px;padding:17px;display:flex;gap:10px}.insight.warning{background:#fff5ec;border-color:#efe4d5}.insight.negative{background:#fbf1ef;border-color:#efdfda}.insight-icon{width:28px;height:28px;min-width:28px;display:grid;place-items:center;background:#ffffffaa;border-radius:7px;color:var(--teal)}.insight-icon svg{width:16px;height:16px}.insight h3{font-size:11px;font-weight:700;margin:1px 0 6px;color:#355c51}.insight p{font-size:11px;line-height:1.8;color:#667c75;margin:0;word-break:keep-all}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.data-table th{font-weight:500;font-size:10px;color:#829098;padding:12px 12px;border-bottom:1px solid var(--line);background:#fafcfc;text-align:right}.data-table td{padding:15px 12px;border-bottom:1px solid #edf1f2;text-align:right;vertical-align:middle;font-variant-numeric:tabular-nums}.data-table tr:last-child td{border-bottom:0}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table th button{padding:0;font-size:10px}.data-table tbody tr:hover{background:#f8fbfa}.product-name{font-weight:500;display:block;text-align:left;max-width:300px;white-space:normal;line-height:1.7}.product-name:hover{color:var(--teal)}.product-meta{font-size:10px;color:#8a999f;margin-top:4px;text-align:left}.table-toolbar{display:flex;align-items:center;gap:12px;margin:0 0 15px;flex-wrap:wrap}.searchbox{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:6px;min-width:260px}.searchbox svg{width:15px;height:15px;color:#93a2a5}.searchbox input{border:0;outline:0;width:100%;font-size:12px;background:none}.table-toolbar select{padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:white;font-size:11px}.table-count{margin-left:auto;color:var(--muted);font-size:11px}.pagination{display:flex;justify-content:flex-end;gap:6px;align-items:center;margin-top:18px;font-size:11px;color:var(--muted)}.pagination button{border:1px solid var(--line);border-radius:5px;padding:5px 10px}.pagination button:disabled{cursor:default}.mini-rank{display:flex;align-items:center;gap:11px}.rank{color:#9caaa8;width:18px;font-family:system-ui;font-size:11px}.rank-name{max-width:260px;text-align:left;white-space:normal;line-height:1.6;font-size:11px}.status-tag{font-size:10px;padding:4px 6px;border-radius:4px;background:#f0f4f4;color:#6f8381}.status-tag.growth{background:var(--teal-soft);color:var(--teal)}.status-tag.decline{background:var(--red-soft);color:var(--red)}.wide-panel{margin-bottom:22px}.section-note{font-size:11px;color:var(--muted);line-height:1.9;margin:15px 0 0}.finance-bridge{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}.bridge-item{padding:18px;background:#f7f9f9;border:1px solid var(--line);border-radius:8px}.bridge-item:last-child{background:var(--teal-soft);border-color:#d4e8df}.bridge-label{font-size:10px;color:var(--muted);line-height:1.7}.bridge-value{font-size:21px;margin-top:9px;font-family:system-ui,sans-serif;font-weight:600}.audit-item{border-bottom:1px solid var(--line);padding:19px 0}.audit-item:first-child{padding-top:0}.audit-item:last-child{padding-bottom:0;border:0}.audit-item h3{margin-bottom:7px}.audit-item p{font-size:12px;color:#6a7e85;line-height:1.9;margin:6px 0}.audit-evidence{font-size:10px!important;color:#8a969d!important}.definitions{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.definition{padding:17px 0;border-bottom:1px solid var(--line)}.definition b{font-size:12px}.definition p{color:var(--muted);font-size:11px;line-height:1.9;margin:8px 0 0}.coverage-months{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;margin:18px 0}.month-cell{font-size:10px;text-align:center;padding:11px 2px;background:#eff5f3;color:#4d8776;border-radius:4px}.month-cell.missing{background:#f2f3f5;color:#a1acb0}.month-cell.partial{background:#fff1db;color:#a78346}.drawer-overlay{position:fixed;inset:0;background:#142f3855;z-index:50;backdrop-filter:blur(2px)}.drawer{position:fixed;inset:0 0 0 auto;width:min(680px,100%);background:var(--bg);z-index:51;overflow:auto;padding:30px;box-shadow:-15px 0 60px #143b391a}.drawer[hidden],.drawer-overlay[hidden]{display:none}.drawer-close{position:absolute;top:22px;right:22px;border-radius:50%;border:1px solid var(--line);background:#fff;padding:8px}.drawer h2{font-size:21px;line-height:1.6;max-width:90%;margin:12px 0}.drawer .metrics{grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.drawer .metric{padding:18px;min-height:120px}.drawer .metric-value{font-size:25px}.drawer .panel{margin-bottom:16px;padding:20px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:12px}.detail-grid small{font-size:10px;color:var(--muted);display:block;margin-bottom:6px}.loading{padding:100px 20px;text-align:center;color:var(--muted);font-size:13px}.spinner{width:27px;height:27px;border:2px solid #dde8e5;border-top-color:var(--teal);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 15px}@keyframes spin{to{transform:rotate(360deg)}}.empty{padding:55px 20px;text-align:center}.empty h3{font-size:15px;margin-bottom:10px}.empty p{color:var(--muted);font-size:12px;line-height:1.9}.empty .button{margin-top:10px}footer{display:flex;gap:25px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:24px 1px 28px;font-size:10px;color:#8f9da2;letter-spacing:1px;margin-top:30px}footer span{letter-spacing:0;text-align:right;line-height:1.8}#toast{position:fixed;bottom:28px;left:calc(50% + 100px);transform:translateX(-50%);color:white;background:#254943;padding:13px 22px;border-radius:7px;box-shadow:0 6px 30px #0002;z-index:70;font-size:12px;display:none;max-width:80vw}.skip{position:fixed;top:-80px;left:10px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.small-muted{font-size:11px;color:var(--muted)}.mono{font-family:Consolas,monospace}.text-left{text-align:left!important}.danger-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--red);margin-right:5px}.finance-select{border:1px solid var(--line);padding:7px 10px;border-radius:6px;background:white;font-size:12px}.cost-positive{color:#947853}.spaced{margin-bottom:22px}.cost-caption{font-size:11px;line-height:1.9;color:var(--muted);padding:13px 15px;background:#f6f8f8;border-radius:6px;margin-bottom:16px}
@media(min-width:1650px){.metric-value{font-size:32px}.workspace{padding-top:40px}.panel{padding:26px}.chart svg{min-height:255px}}@media(max-width:1250px){.sidebar{width:210px;padding:30px 12px}main{margin-left:210px}.workspace{padding:28px 25px 0}.topbar{padding:0 25px}.metrics{gap:11px}.metric{padding:18px 15px}.metric-value{font-size:24px}.grid-main{grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr)}.filterbar{gap:8px}.presets button{padding:6px}.insights{gap:10px}.insight{padding:13px}.finance-bridge{grid-template-columns:repeat(3,1fr)}}@media(max-width:1000px){.sidebar{width:76px;padding:30px 9px}.brand{margin:0 7px 40px}.brand>span:last-child,.nav-label,.sidebar-bottom,.nav-divider{display:none}nav button{font-size:0;padding:15px 19px;gap:0}nav button.active:after{display:none}main{margin-left:76px}.grid-main,.grid-halves{grid-template-columns:1fr}.insights{grid-template-columns:1fr 1fr}.insight:last-child{grid-column:1/-1}.presets{order:3;width:100%}.category-control{margin-left:auto}.chart svg{max-height:300px}.metrics{grid-template-columns:repeat(2,1fr)}.metric-value{font-size:30px}.definitions{grid-template-columns:1fr}}@media(max-width:650px){.sidebar{position:sticky;inset:0;height:58px;width:100%;padding:0 8px;flex-direction:row;align-items:center}.brand{margin:0 12px 0 3px}.brand-mark{font-size:26px;width:25px;height:30px}.brand-mark span{font-size:17px;right:-4px;top:-1px}.sidebar nav{display:flex;flex:1;justify-content:space-between}nav button{margin:0;width:40px;padding:12px 10px}.sidebar nav button svg{width:17px}main{margin-left:0}.topbar{height:50px;padding:0 16px}.breadcrumb{font-size:10px;gap:7px}.source-pill{font-size:9px}.workspace{padding:24px 15px 0}h1{font-size:24px}.page-heading{align-items:flex-start}.page-heading>button{font-size:0;padding:10px}.page-heading>button svg{width:17px}.page-heading p{font-size:11px;max-width:270px}.eyebrow{font-size:8px}.filterbar{padding:10px;gap:7px}.date-fields{width:100%;gap:4px}.date-fields label{gap:7px;font-size:10px}.date-fields input{width:122px;font-size:11px}.presets{order:0;width:auto;flex-wrap:wrap}.presets button{font-size:10px}.category-control{flex:1}.category-control select{width:100%;font-size:11px;max-width:none}.filterbar>.button{padding:9px 14px}.metrics{gap:9px;margin-bottom:15px}.metric{padding:16px 12px;min-height:127px}.metric.primary-metric{padding-top:14px}.metric-value{font-size:24px}.metric-label{font-size:10px}.metric-foot{font-size:9px}.insights{grid-template-columns:1fr;gap:9px}.insight:last-child{grid-column:auto}.panel{padding:17px}.panel-head{gap:8px;margin-bottom:18px}h2{font-size:14px}.legend{font-size:9px;gap:8px}.grid-main,.grid-halves{gap:15px;margin-bottom:15px}.searchbox{min-width:0;flex:1}.table-count{width:100%;margin-left:0}.data-table{font-size:11px}.data-table td,.data-table th{padding:11px 9px}.product-name{min-width:160px;max-width:220px}.finance-bridge{grid-template-columns:1fr 1fr;gap:8px}.bridge-item{padding:13px}.bridge-value{font-size:20px}.drawer{padding:25px 17px}.drawer h2{font-size:18px}.drawer .metric-value{font-size:24px}footer{display:block;font-size:9px;line-height:1.8}footer span{display:block;text-align:left;margin-top:8px}.coverage-months{gap:3px}.month-cell{font-size:9px;padding:9px 0}#toast{left:50%;font-size:11px;width:max-content}.notice{font-size:11px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.sku-mode-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.sku-mode-tabs button{padding:10px 15px;font-size:12px;border-radius:7px;background:var(--bg);color:var(--muted)}
.sku-mode-tabs button.selected{background:var(--teal);color:#fff;font-weight:600}
.sku-toolbar{flex-wrap:wrap}.sku-toolbar select{max-width:230px}.sku-toolbar .searchbox{flex:1;min-width:220px}
.sku-prior-toggle{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;white-space:nowrap}.sku-prior-toggle input{accent-color:var(--teal)}
.sku-filter-summary{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:12px 14px;margin:0 0 12px;background:var(--teal-soft);border-radius:7px;font-size:11px;color:#376c5f}
.sku-filter-summary b{font-size:11px}.sku-filter-summary small{font-size:10px;color:#6a8b80;margin-left:auto}
.sku-cost-table th:first-child,.sku-cost-table td:first-child{position:sticky;left:0;background:#fff;z-index:1;box-shadow:4px 0 6px #163c3906}.sku-cost-table th:first-child{background:#f8faf9;z-index:2}
.sku-cost-table td{vertical-align:top}.sku-pattern{display:inline-block;font-size:9px;color:#6b847b;border:1px solid #dde8e2;border-radius:4px;padding:2px 6px;margin-top:7px}
.sku-options{margin:12px 0 25px;font-size:12px;color:var(--muted)}.sku-options>summary{cursor:pointer;padding:13px 2px;margin-bottom:10px}
.sku-detail-metrics{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;margin-top:22px;font-size:14px}.sku-detail-metrics small{display:block;color:var(--muted);font-size:10px;margin-bottom:7px}.sku-detail-signals{margin-top:22px}
@media(max-width:650px){.sku-mode-tabs{gap:5px}.sku-mode-tabs button{padding:9px 11px;font-size:11px}.sku-toolbar .searchbox{min-width:100%;flex-basis:100%}.sku-toolbar select{flex:1;min-width:0;max-width:100%}.sku-filter-summary{gap:10px}.sku-filter-summary small{width:100%;margin:0}.sku-workspace .panel-head{flex-wrap:wrap}.sku-workspace .panel-head .button{padding:7px 9px;font-size:10px}.sidebar nav{min-width:0;overflow-x:auto;justify-content:flex-start;gap:2px}.sidebar nav button{flex:0 0 35px}}

.column-sort-button{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;padding:0;width:100%;color:inherit;font:inherit;font-weight:600;white-space:nowrap;text-align:inherit}.data-table th:first-child .column-sort-button{justify-content:flex-start}.column-sort-button:hover .column-sort-label{text-decoration:underline;text-underline-offset:4px}.column-sort-icon{color:#8a9c98;min-width:10px;font-size:12px}th[aria-sort=ascending] .column-sort-button,th[aria-sort=descending] .column-sort-button{color:var(--teal)}th[aria-sort=ascending] .column-sort-icon,th[aria-sort=descending] .column-sort-icon{color:var(--teal)}
.comparison-value{display:block;font-variant-numeric:tabular-nums}.yoy-change{display:inline-flex;gap:4px;align-items:center;font-size:10px;white-space:nowrap}.yoy-up{color:#2874a4}.yoy-down{color:#b56a37}.yoy-flat,.yoy-unknown{color:#7b8e88}.comparison-change{margin-top:3px}.unavailable-badge{display:inline-block;font-size:10px;border:1px solid #e8d8bd;background:#fff8e9;color:#9b733b;border-radius:4px;padding:2px 6px;line-height:1.6;white-space:nowrap}.comparison-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:10px;color:#7b8d87;margin:12px 1px 17px}.comparison-legend span:first-of-type{color:#2874a4}.comparison-legend span:nth-of-type(2){color:#b56a37}
.combined-basis-notice{display:flex;align-items:center;gap:18px;padding:16px 18px;border:1px solid #e5d9c2;background:#fffaf0;border-radius:9px;margin:0 0 17px}.combined-basis-notice>div{flex:1}.combined-basis-notice b{font-size:12px;color:#856333}.combined-basis-notice p{font-size:11px;line-height:1.8;margin:7px 0;color:#7c7058}.combined-basis-notice small{font-size:10px;line-height:1.8;color:#8f826e}
.product-analysis{display:grid;gap:18px;margin:0 0 20px}.product-analysis>.panel{margin:0}.product-analysis .data-table td{vertical-align:top}.product-analysis h3{font-size:12px;margin:0 0 9px}.product-driver-list{display:grid;gap:13px}.product-driver{border:1px solid #e1e9e5;background:#fbfdfc;border-radius:8px;padding:15px}.driver-evidence{font-size:11px;color:#5e756c;line-height:1.8;margin:7px 0}.driver-interpretation{font-size:12px;line-height:1.85;color:#284d40}.decomposition-bars{display:grid;gap:12px;margin:16px 0}.decomposition-row{display:grid;grid-template-columns:100px 1fr 105px;align-items:center;gap:10px;font-size:11px}.decomposition-label{color:#6a8077}.decomposition-track{height:10px;background:#edf2f0;border-radius:5px;overflow:hidden}.decomposition-fill{height:100%;border-radius:5px;background:#67a29b}.decomposition-fill.is-negative{background:#cf9c79}.decomposition-fill.is-positive{background:#77aab7}
@media(max-width:650px){.combined-basis-notice{flex-wrap:wrap;padding:13px}.combined-basis-notice>div{flex-basis:100%}.comparison-legend{gap:9px;font-size:9px}.product-driver{padding:12px}.decomposition-row{grid-template-columns:80px 1fr 85px;font-size:10px;gap:7px}}

.product-analysis-notes{overflow-wrap:anywhere}.product-analysis-notes summary{font-size:11px;color:var(--teal);cursor:pointer}.decomposition-track{display:block}.decomposition-fill{display:block}.decomposition-label{display:flex;justify-content:space-between;gap:15px}.decomposition-row{grid-template-columns:minmax(0,1fr);gap:8px}.decomposition-label strong{color:var(--ink);font-weight:500}.product-analysis-summary{border-left:3px solid #68a89b!important;background:#f7fcfa!important}

.chart-tooltip{position:fixed;z-index:1200;pointer-events:none;white-space:pre-line;box-sizing:border-box;max-width:min(360px,calc(100vw - 20px));padding:11px 14px;background:#173e38f5;color:#fff;border:1px solid #91b5a54d;border-radius:8px;box-shadow:0 7px 25px #163c3926;font-size:11px;line-height:1.9;overflow-wrap:anywhere}.chart-tooltip[hidden]{display:none!important}.chart-hover:focus{fill:#0b7f7310;outline:none}.category-item[data-tip]:focus,.decomposition-row[data-tip]:focus{outline:2px solid #8fb6a8;outline-offset:3px;border-radius:3px}
.column-visibility{margin:0 0 11px;font-size:11px;color:#627b70;max-width:680px}.column-visibility>summary{cursor:pointer;display:list-item;width:max-content;max-width:100%;border:1px solid #dce7e1;border-radius:6px;padding:8px 12px;background:#f8fbf9;color:#346654;line-height:1.6}.column-visibility-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px 16px;padding:16px;background:#f8fbf9;border:1px solid #e1e9e5;border-radius:7px;margin-top:8px}.column-visibility-option{display:flex;gap:7px;align-items:flex-start;font-size:11px;line-height:1.7}.column-visibility-option input{accent-color:var(--teal);margin:3px 0 0}.column-visibility-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px}.column-visibility-actions button{border:1px solid #dce7e1;background:#fff;padding:6px 10px;font-size:10px;border-radius:5px}.column-visibility-note{font-size:10px;color:#8b9b94;line-height:1.8;margin:9px 0}table.data-table [hidden]{display:none!important}
.category-cost-chart-tabs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:14px}.category-cost-chart-tabs button{font-size:11px;padding:8px 12px;border-radius:6px;background:#f1f5f3;color:#73867d}.category-cost-chart-tabs button.selected{background:var(--teal);color:#fff}.category-cost-chart-period{font-size:10px;color:#81928a;margin:0 0 18px}.category-cost-definitions{grid-template-columns:1fr}.bar-fill.discount-bar{background:#c89a65}
@media(max-width:650px){.column-visibility-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;padding:12px}.column-visibility{max-width:100%}.column-visibility-option{font-size:10px}.chart-tooltip{font-size:10px;padding:9px 11px}.category-cost-chart-tabs button{font-size:10px;padding:7px 10px}}
.column-visibility-count{margin-left:7px;color:#8ba095;font-size:10px}

[hidden]{display:none!important}
body.auth-locked>.sidebar,body.auth-locked>main,body.auth-locked>.skip,body.auth-locked>#drawer,body.auth-locked>#drawer-overlay,body.auth-locked>#file-drop-overlay,body.auth-locked>.chart-tooltip,body.auth-locked>#toast,body.auth-locked>#account-password-backdrop{display:none!important}
.auth-screen{min-height:100vh;display:grid;place-items:center;padding:40px 20px;background:radial-gradient(ellipse at 20% 0%,#c9e6db55,transparent 62%),var(--bg);position:relative;z-index:1300}
.auth-card{width:min(460px,100%);padding:36px;background:#fff;border:1px solid #dce7e2;border-radius:16px;box-shadow:0 18px 60px #163c3912}
.auth-brand{display:block;color:var(--teal);font-size:11px;font-weight:750;letter-spacing:2px;margin:0 0 23px}
.auth-header h1{font-size:25px;letter-spacing:-.8px;margin:0 0 12px}.auth-header p{font-size:12px;color:var(--muted);line-height:1.9;margin:0 0 26px}
.auth-form{display:grid;gap:17px}.auth-form>label,.admin-account-fields>label{display:grid;gap:8px;font-size:12px;color:#42645a;line-height:1.7}
.auth-form input:not([type=checkbox]),.auth-form select{width:100%;min-width:0;background:#fff;border:1px solid #d4e1db;border-radius:7px;padding:11px 12px;color:var(--ink);font-size:13px;line-height:1.5}
.auth-form input:focus,.auth-form select:focus{outline:2px solid #8fbaaa;outline-offset:2px}.auth-form input[readonly]{background:#f2f6f4;color:#70867c}
.auth-form .small-muted{font-size:10px;line-height:1.8;margin:-4px 0 0}.auth-form .permission-choice input{width:15px;height:15px;flex:0 0 auto;margin:2px 0 0;accent-color:var(--teal)}
.auth-form .permission-choice{display:flex;gap:9px;align-items:flex-start;color:#42645a;font-size:12px;line-height:1.8}
.auth-form-status{font-size:12px;line-height:1.8;color:var(--teal);margin:0;overflow-wrap:anywhere}.auth-form-status:empty{display:none}.auth-form-status.error{color:#a04f46}
.auth-form>button{justify-self:start;min-width:145px}.auth-card .auth-form>button{width:100%;margin-top:3px}.auth-footer{font-size:10px;line-height:1.9;color:#83958d;margin:24px 0 0;padding-top:21px;border-top:1px solid var(--line)}
.auth-card .loading{padding:30px 10px}.auth-account{display:flex;align-items:center;gap:9px;padding-left:17px;border-left:1px solid var(--line)}
.account-identity{font-size:11px;line-height:1.6;max-width:180px;overflow-wrap:anywhere}.account-identity b{font-weight:600}.account-identity small{display:block;font-size:10px;color:var(--muted)}
.auth-account .button{font-size:10px;padding:8px 10px}.topbar{height:auto;min-height:70px;gap:20px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.topbar .source-pill{margin-left:auto}
.account-password-backdrop{position:fixed;inset:0;z-index:1400;background:#12382e75;backdrop-filter:blur(3px);display:grid;place-items:center;padding:25px;overflow:auto}
.account-password-dialog{width:min(480px,100%);padding:28px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 18px 70px #102e2c35}
.account-password-dialog .panel-head{align-items:center;margin-bottom:23px}.account-password-dialog h2{font-size:18px}
.admin-users-grid{display:grid;gap:22px}.admin-user-table{min-width:820px}.admin-user-table td{vertical-align:top}.admin-user-table .button{font-size:10px;padding:8px 10px}
.admin-user-editor .auth-form{gap:22px}.admin-account-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 23px}
.permission-group{min-width:0;margin:0 0 19px;border:1px solid var(--line);border-radius:8px;padding:17px}.permission-group:last-child{margin-bottom:0}
.permission-group legend{font-size:12px;font-weight:600;color:#426b5d;padding:0 7px}.permission-group .small-muted{margin:0 0 14px}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px}
.permissions-disabled{opacity:.55}.admin-user-editor #admin-role-note{margin:0}.admin-user-editor .auth-form>button{justify-self:start}.data-table button[aria-disabled=true]{cursor:not-allowed;opacity:.7;text-decoration:none}
@media(max-width:1250px){.topbar{gap:11px}.topbar .source-pill{font-size:10px}.auth-account{padding-left:11px;gap:6px}.account-identity{max-width:130px}.auth-account .button{padding:7px 8px}}
@media(max-width:1000px){.topbar .breadcrumb{flex:1}.topbar .source-pill{order:3;flex-basis:100%;margin-left:0}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.auth-screen{padding:24px 16px}.auth-card{padding:27px 22px;border-radius:12px}.auth-header h1{font-size:23px}.topbar{min-height:77px;gap:9px;padding-top:10px;padding-bottom:10px}.topbar .breadcrumb{flex-basis:100%}.topbar .source-pill{order:3;flex-basis:auto;font-size:9px}.auth-account{order:2;flex-basis:100%;border:0;padding:0;gap:7px}.account-identity{margin-right:auto;max-width:48%}.account-identity small{font-size:9px}.auth-account .button{font-size:9px;padding:7px 8px}.account-password-backdrop{padding:17px}.account-password-dialog{padding:23px 20px}.admin-account-fields{grid-template-columns:1fr;gap:16px}.permission-grid{grid-template-columns:1fr;gap:10px}.permission-group{padding:14px}.admin-user-editor .panel-head{flex-wrap:wrap}}
