:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#17233a;background:#f3f5f8;font-synthesis:none;--green-700: #15803d;--green-600: #16a34a;--green-500: #22c55e;--green-100: #dcfce7;--green-50: #f0fdf4;--ink: #17233a;--muted: #7d8ca1;--line: #e3e8ef;--line-soft: #eef2f7;--line-strong: #d6dee8;--link: #2563eb}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:default}a{color:var(--link);text-decoration:none}.no-scroll{overflow:hidden}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh}.app-header{background:#fff;border-bottom:1px solid var(--line)}.topbar{min-height:70px;display:flex;align-items:center;gap:24px;padding:0 25px}.brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:var(--ink)}.brand-logo{width:36px;height:36px;flex:0 0 auto}.brand-copy strong{display:block;font-size:14px;white-space:nowrap}.brand-copy small{display:block;color:var(--muted);margin-top:3px;font-size:11px;white-space:nowrap}.primary-nav{display:flex;align-items:center;gap:3px;min-width:0}.nav-item,.subnav-item{border:0;background:transparent;color:#526780;white-space:nowrap}.nav-item{padding:11px 12px;border-radius:7px;font-size:12px}.nav-item:not(:disabled):hover,.subnav-item:not(:disabled):hover{color:var(--green-700);background:var(--green-50)}.nav-item-active{background:var(--green-50);color:var(--green-700);font-weight:700}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:14px;flex:0 0 auto}.user-email{max-width:190px;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:12px}.logout-button{border:0;background:none;color:#55708e;font-size:12px;padding:7px 0}.logout-button:hover{color:var(--green-700)}.content{min-width:0;flex:1;min-height:0;display:flex}.subnav{min-height:38px;display:flex;align-items:stretch;gap:24px;padding:0 25px;border-top:1px solid var(--line-soft);overflow-x:auto}.subnav-item{position:relative;padding:0 3px;font-size:12px}.subnav-item-active{color:var(--green-700);font-weight:650}.subnav-item-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--green-600)}.page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;padding:14px 0;width:100%}.topbar-account{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;white-space:nowrap}.topbar-account select{height:34px;max-width:260px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:#233b55;padding:0 10px;font-size:12px}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:14px;padding:0 12px}.kpi{position:relative;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px 13px 26px;min-height:92px;transition:box-shadow .15s,border-color .15s}.kpi-clickable{cursor:pointer}.kpi-clickable:hover{border-color:var(--green-500);box-shadow:0 4px 14px #16a34a1f}.kpi-active{border-color:var(--green-600);background:var(--green-50);box-shadow:0 0 0 1px var(--green-500) inset}.kpi-dragging{opacity:.55}.kpi-drag{position:absolute;left:5px;top:10px;color:#c3ccd8;cursor:grab}.kpi-drag svg{width:13px;height:13px}.kpi-hide{position:absolute;right:4px;top:4px;border:0;background:none;color:var(--muted);padding:4px;border-radius:6px;opacity:0;transition:opacity .15s}.kpi:hover .kpi-hide{opacity:1}.kpi-hide:hover{color:var(--green-700);background:var(--green-50)}.kpi-title{display:block;font-size:12.5px;font-weight:600;color:#46586f}.kpi-value{display:block;font-size:22px;font-weight:750;letter-spacing:-.02em;margin-top:6px;color:var(--ink)}.kpi-category{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#9aa9bc;margin-top:5px}.sheet-table{border:1px solid var(--line);background:#fff;border-radius:10px;box-shadow:0 2px 9px #152f5508;display:flex;flex-direction:column;overflow:hidden;flex:1 1 auto;min-height:220px}.sheet-table.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;border-radius:0;border:0}.grid-toolbar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.sku-search{display:flex;align-items:center;gap:8px;flex:0 1 400px;min-width:240px;height:36px;padding:0 10px;border:1px solid var(--line-strong);border-radius:8px;color:#9aa9bc;background:#fff}.sku-search:focus-within{border-color:var(--green-500);box-shadow:0 0 0 3px #16a34a1f;color:var(--green-700)}.sku-search input{flex:1;min-width:0;border:0;outline:none;font-size:13px;color:var(--ink);background:transparent}.input-clear{border:0;background:none;color:#9aa9bc;display:grid;place-items:center;padding:2px;border-radius:4px}.input-clear:hover{color:#ef4444}.input-clear svg{width:12px;height:12px}.period-control{position:relative;display:flex;align-items:center;gap:8px}.period-switch{display:inline-flex;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden}.period-switch button{border:0;background:#fff;padding:7px 10px;font-size:12px;color:#56677e;white-space:nowrap}.period-switch button:hover{background:var(--green-50);color:var(--green-700)}.period-switch button.on{background:var(--green-600);color:#fff}.period-range{font-size:11px;color:var(--muted);white-space:nowrap}.period-custom{display:inline-flex;align-items:center;gap:5px}.period-custom svg{width:13px;height:13px}.period-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:288px;padding:12px;background:#fff;border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 14px 34px #17233a24}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.calendar-head strong{font-size:12.5px;text-transform:capitalize;color:#33455c}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.calendar-weekdays span{text-align:center;font-size:10.5px;color:#9aa9bc}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{height:32px;border:0;border-radius:7px;background:transparent;font-size:12px;color:#33455c;font-variant-numeric:tabular-nums}.calendar-day:hover:not(:disabled){background:var(--green-50);color:var(--green-700)}.calendar-day.in-range{background:#e8f5e9;color:var(--green-700);border-radius:0}.calendar-day.selected{background:var(--green-600);color:#fff;font-weight:700}.calendar-day.today{box-shadow:0 0 0 1px var(--green-500) inset}.calendar-day:disabled{opacity:.3;cursor:default}.calendar-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:11.5px;color:#46586f}.calendar-hint{color:#9aa9bc;font-size:10.5px}.period-control select.tape-warehouse{height:32px;max-width:210px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#33455c;font-size:12px;padding:0 8px}.toolbar-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#46586f;font-size:12px}.chip svg{width:14px;height:14px}.chip:hover{border-color:var(--green-500);color:var(--green-700)}.chip-on{background:var(--green-50);border-color:var(--green-600);color:var(--green-700);font-weight:650}.chip-plain{border-style:dashed;color:var(--muted)}.toolbar-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sync-chip{font-size:11px;color:var(--muted);background:#f4f6f9;border-radius:999px;padding:6px 11px;white-space:nowrap}.sync-chip-error{background:#fff7ed;color:#9a3412}.sync-chip-busy{background:var(--green-50);color:var(--green-700)}.icon-button{width:34px;height:34px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#4a5c73;display:grid;place-items:center;flex:0 0 auto}.icon-button:hover:not(:disabled){border-color:var(--green-500);color:var(--green-700);background:var(--green-50)}.icon-button.small{width:26px;height:26px;border-radius:6px}.icon-button svg{width:15px;height:15px}.sync-warning,.coverage-warning{padding:8px 14px;font-size:11.5px;background:#fff8eb;color:#8c5b17;border-bottom:1px solid var(--line)}.filter-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid var(--line);background:#fffaf5}.filter-tag{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 6px 0 10px;border-radius:999px;border:1px solid #fecaca;background:#fff1f0;color:#b91c1c;font-size:11.5px}.filter-tag button{border:0;background:none;color:inherit;display:grid;place-items:center;padding:2px;border-radius:4px}.filter-tag button:hover{background:#fee2e2}.filter-tag button svg{width:11px;height:11px}.filter-tags-clear{border:0;background:none;color:#8c5b17;font-size:11.5px;text-decoration:underline;padding:0 4px}.filter-tags-clear:hover{color:#78350f}.save-filter-button{margin-left:auto;height:28px;padding:0 12px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:#46586f;font-size:11.5px}.save-filter-button:hover{border-color:var(--green-500);color:var(--green-700)}.save-filter-form{margin-left:auto;display:inline-flex;align-items:center;gap:6px}.save-filter-form input{height:28px;width:190px;padding:0 9px;border:1px solid var(--line-strong);border-radius:7px;font-size:12px;color:var(--ink)}.save-filter-form input:focus{outline:none;border-color:var(--green-500);box-shadow:0 0 0 3px #16a34a1f}.save-filter-form .primary-button{height:28px;padding:0 12px;border:0;border-radius:7px;background:var(--green-600);color:#fff;font-size:11.5px;font-weight:650}.save-filter-form .primary-button:disabled{opacity:.5}.save-filter-form .ghost-button{height:28px;padding:0 10px}.saved-filter-popover{min-width:200px}.saved-filter-row{display:flex;align-items:center;gap:2px}.saved-filter-row .select-option{flex:1}.saved-filter-row .icon-button{flex:0 0 auto}.restore-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 14px;background:#fffbeb;border-bottom:1px solid #fde68a;font-size:12px;color:#78350f}.restore-bar button{display:inline-flex;align-items:center;gap:4px;border:1px solid #fcd34d;background:#fff;border-radius:6px;padding:4px 10px;font-size:12px;color:#78350f}.restore-bar button:hover{background:#fef3c7}.grid-zone{display:flex;align-items:stretch;flex:1;min-height:0}.table-scroll{flex:1;min-width:0;min-height:0;overflow:auto;position:relative}.fullscreen .table-scroll{max-height:none}.fullscreen .sheet-table{min-height:0}.sheet-table table{width:max-content;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px;white-space:nowrap}.sheet-table th,.sheet-table td{padding:0 9px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);text-align:center;vertical-align:middle}.sheet-table th:last-child,.sheet-table td:last-child{border-right:0}.sheet-table td{height:46px}.sheet-table .density-compact td{height:34px}.sheet-table .density-compact .photo{width:24px;height:32px}.sheet-table thead th{padding:0 7px;background:#fff;color:#56677e;font-weight:650;font-size:11px}.band-row th{position:sticky;top:0;z-index:6;height:34px;background:#f7f9fc;font-size:11px;color:#6b7c93}.band-cell{text-align:left;padding:0 10px}.band-cell>span{display:inline-block;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 22px);vertical-align:middle}.band-collapse{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:none;color:#9aa9bc;padding:3px;border-radius:5px;display:grid;place-items:center}.band-cell{position:relative}.band-collapse:hover{color:var(--green-700);background:var(--green-50)}.band-collapse svg{width:13px;height:13px;transform:rotate(180deg)}.head-row th{position:sticky;top:var(--band-h, 0px);z-index:5;height:40px;padding:0 6px}.head-cell{position:relative}.head-content{display:flex;align-items:center;justify-content:center;padding:0 6px;min-width:0}.head-cell.has-filter .head-content{padding-right:15px}.head-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.head-title{border:0;background:none;padding:0;font:inherit;color:inherit;max-width:100%}.head-title.sortable{cursor:pointer}.head-title.sortable:hover{color:var(--green-700)}.head-title.sortable:focus-visible{outline:2px solid var(--green-500);outline-offset:1px;border-radius:3px}.head-title.sorted{color:var(--green-700);font-weight:700}.resize-line{position:fixed;top:0;bottom:0;width:2px;background:var(--green-600);display:none;pointer-events:none;z-index:200}.col-resizer{position:absolute;right:-2px;top:0;height:100%;width:5px;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2;border-right:2px solid transparent}.col-resizer:hover,.col-resizer.resizing{border-right-color:var(--green-500)}.filter-toggle{position:absolute;right:2px;top:50%;transform:translateY(-50%);border:0;background:none;color:#c3ccd8;padding:2px;border-radius:4px;display:grid;place-items:center;z-index:1}.filter-toggle:hover{color:var(--green-700);background:var(--green-50)}.filter-toggle.on{color:#dc2626}.sheet-table .head-cell.filtered{background:#fff5f5}.filter-toggle svg{width:9px;height:9px}.head-filter{display:flex;align-items:center;gap:4px;height:28px;padding:0 6px;border:1px solid var(--green-500);border-radius:6px;background:#fff;box-shadow:0 0 0 2px #16a34a1a}.head-filter input{flex:1;min-width:0;border:0;outline:none;font-size:11.5px;color:var(--ink);background:transparent}.head-filter .input-clear{margin-right:-2px}.head-filter .input-clear svg{width:12px;height:12px}.select{position:relative;display:inline-block}.select-button{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;font-size:12px;color:#33455c;white-space:nowrap}.select-button:hover{border-color:var(--green-500);color:var(--green-700)}.select-button:disabled{opacity:.55}.select-button svg{width:12px;height:12px;flex:0 0 auto;transition:transform .12s}.select-button[aria-expanded=true] svg{transform:rotate(180deg)}.select-value{overflow:hidden;text-overflow:ellipsis}.select-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:70;min-width:100%;max-height:280px;overflow:auto;padding:5px;background:#fff;border:1px solid var(--line-strong);border-radius:9px;box-shadow:0 12px 28px #17233a24;display:grid;gap:1px}.select-option{display:block;width:100%;text-align:left;border:0;background:none;padding:7px 9px;border-radius:6px;font-size:12.5px;color:#33455c;white-space:nowrap}.select-option:hover{background:var(--green-50);color:var(--green-700)}.select-option.on{background:var(--green-50);color:var(--green-700);font-weight:650}.select-compact .select-button{height:32px}.toolbar-select .select-button{justify-content:space-between;min-width:170px;max-width:260px}.toolbar-select .select-value{max-width:210px}.filter-popover{position:fixed;z-index:90;width:284px;padding:12px;background:#fff;border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 16px 36px #17233a2b}.filter-search{width:100%;height:32px;padding:0 9px;border:1px solid var(--line-strong);border-radius:7px;font-size:12.5px;color:var(--ink)}.filter-search:focus{outline:none;border-color:var(--green-500);box-shadow:0 0 0 3px #16a34a1f}.filter-text{display:grid;gap:8px;margin-bottom:8px}.filter-values{max-height:190px;overflow:auto;margin:8px -2px 0;padding:0 2px}.filter-value{display:flex;align-items:center;gap:7px;padding:4px 3px;border-radius:5px;font-size:12.5px;color:#46586f}.filter-value:hover{background:#f6f8fb}.filter-value span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-value input{flex:0 0 auto}.filter-number{display:grid;gap:8px;margin-top:8px}.filter-number-row{display:flex;gap:8px}.filter-number-row input{flex:1;min-width:0;height:32px;padding:0 9px;border:1px solid var(--line-strong);border-radius:7px;font-size:12.5px;color:var(--ink)}.filter-number-row input:focus{outline:none;border-color:var(--green-500);box-shadow:0 0 0 3px #16a34a1f}.filter-note{margin:8px 0 0;font-size:11.5px;line-height:1.4;color:#8b9cb0}.filter-actions{display:flex;gap:8px;margin-top:10px}.filter-actions .primary-button{height:32px;padding:0 14px;border:0;border-radius:7px;background:var(--green-600);color:#fff;font-size:12px;font-weight:650}.filter-actions .primary-button:hover{background:var(--green-700)}.filter-actions .ghost-button{height:32px;padding:0 12px}.sheet-table td.sticky-col,.sheet-table th.sticky-col{position:sticky;background:#fff}.sheet-table .band-row th.sticky-col,.sheet-table .band-empty{background:#f7f9fc}.sheet-table td.sticky-col{z-index:2;box-shadow:6px 0 8px -8px #17233a1f}.sheet-table .band-row th.sticky-col{z-index:9}.sheet-table .head-row th.sticky-col{z-index:8}.sheet-table .band-row th.sticky-col,.sheet-table .band-row th.band-empty{box-shadow:6px 0 8px -6px #17233a14}.sheet-table .head-row th.sticky-col{box-shadow:none}.sheet-table tbody tr:hover td,.sheet-table tbody tr:hover td.sticky-col{background:#f8fafc}.sheet-table td.numeric{text-align:center}.buyout-low{color:#dc2626;font-weight:650}.buyout-mid{color:#b45309;font-weight:650}.buyout-high{color:#15803d;font-weight:650}.sheet-table td.align-left{text-align:left}.name-cell{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.number{display:block;text-align:center;font-variant-numeric:tabular-nums;padding:2px 4px;border-radius:4px}.total{font-weight:750;color:#1f3b5c}.stock-low{color:#c2410c;font-weight:650}.sheet-table tbody tr:hover td.heated{filter:brightness(.97)}.muted{color:#b8c3d1}.sheet-table .article-cell{text-align:center}.photo{display:block;width:36px;height:48px;margin:2px auto;border-radius:4px;object-fit:cover;background:#f1f5f9}.photo-empty{display:grid;place-items:center;color:#9fb0c3;border:1px dashed var(--line-strong);background:#f8fafc}.photo-empty svg{width:15px;height:15px}.product-link{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;text-align:left;vertical-align:middle}.sku-link{font-variant-numeric:tabular-nums}.table-state{padding:46px;text-align:center;color:var(--muted);font-size:13px}.link-button{border:0;background:none;color:var(--link);text-decoration:underline;padding:0;font-size:inherit}.grid-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid var(--line);font-size:11.5px;color:#7386a0}.footer-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.footer-dot{color:#c3ccd8}.pager{display:flex;align-items:center;gap:8px}.page-size{display:inline-flex;align-items:center;gap:8px}.page-size select{height:30px;border:1px solid var(--line-strong);border-radius:6px;font-size:12px;padding:0 6px;background:#fff;color:#33455c}.page-label{min-width:52px;text-align:center;font-variant-numeric:tabular-nums}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a29;z-index:90}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(380px,94vw);background:#fff;z-index:91;display:flex;flex-direction:column;box-shadow:-12px 0 30px #0f172a1f}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line)}.drawer-tabs{display:flex;gap:4px}.drawer-tabs button{border:0;background:none;padding:8px 11px;border-radius:7px;color:#5b6d84;font-size:13px}.drawer-tabs button.on{background:var(--green-50);color:var(--green-700);font-weight:700}.drawer-body{padding:14px;overflow:auto}.drawer-body section{margin-bottom:18px}.drawer-body h4{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#7b8ca1}.segmented{display:inline-flex;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden}.segmented button{border:0;background:#fff;padding:7px 12px;font-size:12px;color:#56677e}.segmented button.on{background:var(--green-600);color:#fff}.column-item{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12.5px;color:#33455c}.column-item input[type=checkbox]{accent-color:var(--green-600);width:14px;height:14px}.card-item{justify-content:space-between}.card-check{display:flex;align-items:center;gap:8px}.card-move{display:flex;gap:2px}.drawer-hint{margin:0 0 8px;font-size:11.5px;line-height:1.45;color:#8b9cb0}.title-group{margin-top:12px}.title-group h5{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#9aa9bc}.title-item{display:flex;align-items:center;gap:6px;margin-bottom:6px}.title-item input{flex:1;min-width:0;height:32px;border:1px solid var(--line-strong);border-radius:7px;padding:0 9px;font-size:12.5px;color:var(--ink);background:#fff}.title-item input:focus{outline:none;border-color:var(--green-500);box-shadow:0 0 0 3px #16a34a1f}.title-item input::placeholder{color:#9aa9bc}.switch-row{display:flex;align-items:flex-start;gap:9px;padding:6px 0;font-size:12.5px;color:#33455c;cursor:pointer}.switch-row input{accent-color:var(--green-600);width:15px;height:15px;margin-top:1px}.switch-row small{display:block;color:#93a3b7;font-size:11px;margin-top:2px}.block-item{border:1px solid var(--line-soft);border-radius:8px;padding:6px 8px;margin-bottom:8px;background:#fff}.block-item.dragging{opacity:.55;border-color:var(--green-500)}.block-head{display:flex;align-items:center;gap:6px}.block-check{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:#2c3e55;flex:1;min-width:0}.block-check input,.leaf-check input{accent-color:var(--green-600);width:14px;height:14px}.drag-handle{color:#b9c4d1;cursor:grab;display:grid;place-items:center;padding:2px;border-radius:4px}.drag-handle:hover{color:var(--green-700);background:var(--green-50)}.drag-handle.pinned{opacity:.4;cursor:default}.drag-handle svg{width:13px;height:13px}.order-buttons{display:flex;gap:2px;margin-left:auto}.leaf-list{margin-top:4px;padding-left:14px}.leaf-item{display:flex;align-items:center;gap:6px;padding:3px 0}.leaf-item.dragging{opacity:.55}.leaf-check{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#46586f;flex:1;min-width:0}.ghost-button{width:100%;height:36px;border:1px dashed var(--line-strong);background:#fff;border-radius:8px;color:#5b6d84;font-size:12.5px}.ghost-button:hover{border-color:var(--green-500);color:var(--green-700)}.drawer-body.info p{margin:0 0 10px;font-size:12.5px;line-height:1.55;color:#56677e}.drawer-body.info code{background:#f1f5f9;padding:1px 5px;border-radius:4px;font-size:11.5px}.alert{padding:12px 16px;background:#fff3f1;color:#9c3f32;font-size:12px;border-radius:8px}.alert button{margin-left:8px;border:0;background:none;color:#8e3329;text-decoration:underline}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(100%,390px);padding:35px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 35px #213b5a12}.login-mark{margin-bottom:24px}.login-card h1{font-size:24px;margin:0 0 5px}.login-card p{font-size:13px;color:var(--muted);margin:0 0 27px}.login-card label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650;margin-bottom:17px}.login-card input{height:39px;border:1px solid var(--line-strong);border-radius:6px;padding:0 11px;font-weight:400}.primary{height:40px;border:0;background:var(--green-600);color:#fff;border-radius:6px;width:100%;font-weight:700;margin-top:6px}.primary:hover{background:var(--green-700)}.boot{height:100vh;display:grid;place-items:center;color:var(--green-700);font-weight:800}@media(max-width:1100px){.topbar{flex-wrap:wrap;gap:0 16px;padding:10px 18px 0}.topbar-actions{margin-left:auto;min-height:48px}.primary-nav{order:3;width:100%;overflow-x:auto}.nav-item{padding:10px 11px}.page{padding:12px 14px}.kpi-row{padding:0}}@media(max-width:800px){.kpi-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.toolbar-right{margin-left:0}}@media(max-width:600px){.topbar{padding-inline:13px}.brand-copy small{display:none}.topbar-actions{gap:8px}.topbar-account{display:none}.primary-nav{gap:0}.nav-item{padding:10px 9px;font-size:11px}.page{padding:10px 9px}.kpi-row{grid-template-columns:1fr}.sku-search,.period-control{flex:1 1 100%}.sheet-table{flex:0 0 auto;min-height:0}.grid-zone{flex:0 0 auto;height:max(320px,60vh)}.sheet-table td[data-column=article],.sheet-table th[data-column=article]{position:static;box-shadow:none}.sheet-table .band-row th.sticky-col{position:static}}.costs-page{display:flex;flex-direction:column;gap:14px;min-height:0;padding:2px 2px 18px}.costs-toolbar{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;padding:2px 0}.costs-toolbar-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.costs-bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border:1px solid var(--green-100);background:var(--green-50);border-radius:10px;font-size:12.5px;color:var(--green-700)}.costs-note{margin:0;font-size:12px;line-height:1.6;color:#7d8ca1;max-width:960px}.button-secondary{height:36px;padding:0 14px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#3d5470;font-size:13px}.button-secondary:hover{border-color:var(--green-500);color:var(--green-700)}.primary.button-inline,.button-inline{width:auto;padding:0 16px;margin-top:0;height:36px}.costs-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:auto}.costs-card table{width:100%;border-collapse:collapse;font-size:12.5px}.costs-card th,.costs-card td{padding:11px 14px;border-bottom:1px solid var(--line-soft);text-align:left;white-space:nowrap}.costs-card th{position:sticky;top:0;z-index:1;background:#fff;color:#56677e;font-weight:650;font-size:11px}.costs-card tbody tr:hover td{background:#f8fafc}.costs-card tbody tr.row-selected td{background:var(--green-50)}.costs-card .check-col{width:44px;text-align:center}.costs-card .check-col input,.costs-card input[type=checkbox]{accent-color:var(--green-600);width:15px;height:15px;cursor:pointer}.costs-card td.num,.costs-card th.num{text-align:right;font-variant-numeric:tabular-nums}.costs-clip{max-width:240px;overflow:hidden;text-overflow:ellipsis}.costs-empty{padding:26px;text-align:center;color:#7d8ca1;font-size:13px}.costs-actions{display:inline-flex;gap:10px;align-items:center}.link-button{border:0;background:none;padding:0;color:var(--link);font-size:12.5px}.link-button:hover{text-decoration:underline}.link-danger{color:#dc2626}.costs-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;font-size:12px;color:#56677e}.costs-pager button{height:30px;padding:0 12px;border:1px solid var(--line-strong);background:#fff;border-radius:7px;font-size:12px}.costs-pager button:hover:not(:disabled){border-color:var(--green-500);color:var(--green-700)}.costs-updated{font-size:11.5px;color:#9aa9bc}.drawer-wide{width:min(560px,96vw)}.drawer-title{font-size:14px;color:var(--ink)}.drawer-close{border:0;background:none;color:#7d8ca1;display:grid;place-items:center;padding:6px;border-radius:6px}.drawer-close:hover{color:var(--ink);background:var(--line-soft)}.drawer-close svg{width:14px;height:14px}.upload-form{display:flex;flex-direction:column;gap:12px}.upload-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:650;color:#33455c}.upload-form input[type=text],.upload-form input[type=date],.upload-form input[type=file]{min-height:34px;border:1px solid var(--line-strong);border-radius:7px;padding:6px 9px;font-size:12.5px;background:#fff;font-weight:400;color:var(--ink)}.upload-form .select-button{width:100%;justify-content:space-between}.upload-form .hint{font-weight:400;color:#8b9cb0;font-size:11.5px}.form-block{border:1px solid var(--line-soft);border-radius:10px;padding:10px 12px 12px;margin:0;display:flex;flex-direction:column;gap:10px}.form-block legend{padding:0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#7b8ca1}.form-row{display:flex;gap:10px}.form-row label{flex:1}.form-total{font-size:12.5px;color:#46586f;padding:6px 0}.form-total strong{color:var(--ink)}.check-row{flex-direction:row;align-items:center;gap:8px;font-weight:400;color:#46586f}.check-row input{accent-color:var(--green-600);width:15px;height:15px}.upload-preview,.history-list{display:flex;flex-direction:column;gap:10px}.upload-preview{border:1px solid var(--line-soft);border-radius:10px;padding:12px;color:#46586f;font-size:12.5px}.upload-preview strong{color:var(--ink)}.upload-preview-meta{color:#7d8ca1;font-size:11.5px}.upload-preview-list{border-top:1px solid var(--line-soft);padding-top:8px;display:flex;flex-direction:column;gap:4px;max-height:180px;overflow:auto}.upload-preview-list div{display:flex;gap:10px}.upload-preview-list span{color:#7d8ca1}.upload-result{padding:12px 14px;border-radius:8px;background:var(--green-50);color:var(--green-700);font-size:12.5px;line-height:1.5}.upload-errors{padding:10px 14px;border-radius:8px;background:#fff3f1;color:#9c3f32;font-size:12px}.upload-errors ul{margin:6px 0 0;padding-left:18px}.history-item{border:1px solid var(--line-soft);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.history-item-old{opacity:.62}.history-date{display:flex;align-items:center;gap:8px}.history-chip{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--green-50);color:var(--green-700)}.history-chip-old{background:#f1f5f9;color:#7d8ca1}.history-values{display:flex;flex-wrap:wrap;gap:10px;font-size:12.5px;color:#46586f}.history-comment{margin:0;font-size:12px;color:#7d8ca1}.history-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11.5px;color:#9aa9bc}
