:root { --ink:#18332b; --muted:#698077; --paper:#f5f7f3; --line:#d9e3da; --green:#167153; --green-dark:#0d4e3b; --mint:#e8f4ec; --red:#bd4e45; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--paper); }
* { box-sizing:border-box; } body { min-width:320px; margin:0; } button,input,select { font:inherit; } button { cursor:pointer; }
.skip-link { position:absolute; z-index:30; left:12px; top:-50px; padding:9px 12px; border-radius:8px; color:#fff; background:var(--green-dark); } .skip-link:focus { top:12px; }
.page-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:22px clamp(20px,4vw,72px); color:#fff; background:linear-gradient(112deg,#0c3c31 0%,#126345 70%,#1d7e5c 100%); }
.eyebrow,.section-kicker { margin:0 0 8px; color:#b9e6ce; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; } .page-header h1 { margin:0; font-size:clamp(28px,4vw,40px); letter-spacing:-.04em; line-height:1.08; } .page-header > div > p:last-child { max-width:640px; margin:8px 0 0; color:#d8eee1; }
.account-menu { position:relative; flex:0 0 auto; }.account-button { display:flex; align-items:center; gap:9px; padding:7px 8px 7px 10px; border:1px solid rgba(203,239,218,.42); border-radius:12px; color:#fff; background:rgba(7,49,37,.2); text-align:left; }.account-button:hover,.account-button[aria-expanded="true"] { border-color:rgba(222,246,229,.75); background:rgba(7,49,37,.34); }.account-button:focus-visible,.account-dropdown :focus-visible,input:focus-visible,select:focus-visible,.warehouse-tab:focus-visible { outline:3px solid #c7ead8; outline-offset:2px; }.account-avatar { display:grid; width:30px; height:30px; place-items:center; border-radius:50%; color:#13513e; background:#d8f0df; font-size:13px; font-weight:850; }.account-identity { display:grid; min-width:0; gap:1px; }.account-identity b { max-width:245px; overflow:hidden; font-size:13px; line-height:1.1; text-overflow:ellipsis; white-space:nowrap; }.account-identity small { color:#c6e8d2; font-size:11px; }.account-chevron { width:8px; height:8px; margin:0 4px 3px 3px; border-right:2px solid #d8eee1; border-bottom:2px solid #d8eee1; transform:rotate(45deg); }.account-button[aria-expanded="true"] .account-chevron { transform:rotate(225deg) translate(-2px,-2px); }.account-dropdown { position:absolute; z-index:20; top:calc(100% + 8px); right:0; display:grid; min-width:204px; padding:6px; border:1px solid #cfe1d4; border-radius:12px; background:#fff; box-shadow:0 16px 36px rgba(5,42,30,.24); }.account-dropdown[hidden] { display:none; }.account-dropdown button,.account-menu-link { display:flex; align-items:center; min-height:38px; width:100%; padding:0 11px; border:0; border-radius:8px; color:#1b493a; background:transparent; font-size:13px; font-weight:800; text-align:left; text-decoration:none; }.account-dropdown button:hover,.account-menu-link:hover { background:#edf6ef; }.account-logout { color:#974837 !important; }.account-logout:hover { background:#fcf0ed !important; }
main { width:min(1440px,100%); margin:0 auto; padding:18px clamp(16px,3vw,48px) 38px; }.intro-card,.warehouse-card { border:1px solid var(--line); border-radius:16px; background:#fff; box-shadow:0 8px 20px rgba(22,59,43,.05); }.intro-card { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 20px; }.intro-card h2,.table-caption h2 { margin:0; font-size:18px; letter-spacing:-.02em; }.intro-card p:not(.section-kicker) { max-width:720px; margin:5px 0 0; color:var(--muted); font-size:13px; line-height:1.45; }.intro-card .section-kicker { color:#4f8068; }.intro-state { display:flex; flex:0 0 auto; align-items:center; gap:8px; max-width:270px; color:#557468; font-size:12px; font-weight:700; line-height:1.4; }.state-dot { width:9px; height:9px; border-radius:50%; background:#5a9a72; }
.warehouse-card { margin-top:14px; overflow:hidden; }.warehouse-tabs { display:flex; gap:4px; padding:7px 10px 0; border-bottom:1px solid var(--line); background:#fbfcfa; }.warehouse-tab { min-height:38px; padding:8px 13px; border:0; border-radius:9px 9px 0 0; color:#5e746a; background:transparent; font-size:13px; font-weight:800; }.warehouse-tab:hover { color:#1e5945; background:#eff7f1; }.warehouse-tab.is-active { color:#0f543f; background:#e7f4eb; box-shadow:inset 0 -3px 0 var(--green); }
.filter-bar { display:grid; grid-template-columns:minmax(170px,.8fr) minmax(160px,.8fr) minmax(220px,1.2fr); gap:10px; padding:12px 14px; border-bottom:1px solid #e3ece4; }.filter-bar label { color:#587166; font-size:11px; font-weight:800; }.filter-bar label span { display:block; margin-bottom:4px; }.filter-bar select,.filter-bar input { width:100%; min-height:36px; padding:7px 9px; border:1px solid #c9d7cc; border-radius:8px; color:var(--ink); background:#fff; }.filter-bar input::placeholder { color:#87988f; }
.tab-panel { padding:14px; }.table-caption { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:10px; }.table-caption h2 { font-size:16px; }.table-caption p { max-width:390px; margin:3px 0 0; color:var(--muted); font-size:11px; line-height:1.4; }.table-caption > p { margin:0; text-align:right; }.table-navigation { display:flex; justify-content:space-between; gap:10px; margin:0 0 10px; }.table-navigation__group { display:flex; align-items:center; gap:6px; color:#60776b; font-size:11px; }.table-navigation__group b { margin-right:4px; font-variant-numeric:tabular-nums; }.table-nav-button { min-height:30px; padding:5px 9px; border:1px solid #cbdace; border-radius:7px; color:#315e4a; background:#fff; font-size:11px; font-weight:800; }.table-nav-button:hover:not(:disabled) { background:#edf7ef; }.table-nav-button:disabled { cursor:not-allowed; color:#9aac9f; border-color:#e1e9e3; background:#f7faf7; }.table-nav-button:focus-visible { outline:3px solid #c7ead8; outline-offset:2px; }.table-scroll { overflow:auto; border:1px solid #dfe9e1; border-radius:10px; }.table-scroll:focus-visible { outline:3px solid #c7ead8; outline-offset:3px; } table { width:100%; min-width:920px; border-collapse:collapse; background:#fff; } th { padding:9px 11px; color:#5a7065; border-bottom:1px solid #dfe9e1; background:#f6faf7; font-size:10px; letter-spacing:.06em; text-align:left; text-transform:uppercase; } td { padding:9px 11px; border-bottom:1px solid #e7eee8; color:#4f6a5d; font-size:12px; vertical-align:top; } tbody tr:last-child td { border-bottom:0; } td b { display:block; color:#1c4235; font-size:14px; } .numeric { text-align:right; white-space:nowrap; } .value { color:#214b3c; font-weight:800; font-variant-numeric:tabular-nums; }.positive { color:#1d7756; }.negative { color:#a6463e; }.inactive-note { display:block; margin-top:3px; color:#996443; font-size:10px; font-weight:700; }.empty-state { margin:12px 0 0; padding:14px; border:1px dashed #cbdace; border-radius:10px; color:#61776b; background:#f8fbf8; font-size:13px; line-height:1.45; }.build-version { margin:14px 0 0; color:#789084; font-size:12px; font-variant-numeric:tabular-nums; text-align:right; }
.daily-caption > p b { font-weight:900; }.daily-table { min-width:1000px; font-variant-numeric:tabular-nums; }.daily-table th { white-space:nowrap; }.daily-table td { padding:9px 10px; }.daily-table .sticky-col { position:sticky; z-index:2; background:#fff; }.daily-table th.sticky-col { z-index:4; background:#f6faf7; }.daily-table .size-heading,.daily-table .size-cell { left:0; width:174px; min-width:174px; max-width:174px; box-shadow:10px 0 12px -14px rgba(24,51,43,.65); }.source-tag { display:inline-flex; align-items:center; min-height:24px; padding:4px 7px; border-radius:6px; font-size:11px; font-weight:850; line-height:1.15; white-space:nowrap; }.source-factory_raw { color:#245f46; background:#e4f2e8; }.source-bar { color:#4e4b8c; background:#eeedff; }.source-str { color:#795617; background:#fff1c9; }.source-imitation { color:#78623b; background:#f6efd9; }.source-group-row th { padding:9px 10px; border-top:1px solid #d9e7dc; border-bottom:1px solid #dce9df; color:#406a57; background:#f3f8f4; text-align:left; }.source-group-row:first-child th { border-top:0; }.source-group-row th > span:last-child { margin-left:9px; color:#71877c; font-size:11px; font-weight:700; letter-spacing:0; text-transform:none; }.size-cell b { font-size:14px; }.size-cell small { display:block; margin-top:3px; color:#7b9085; font-size:10px; font-weight:700; }.grade-cell { width:104px; min-width:104px; color:#294f40; font-weight:800; }.current-heading,.current-balance { background:#f1f8f3; }.current-balance { width:102px; min-width:102px; border-inline:1px solid #dcebe0; }.day-heading { width:98px; min-width:98px; }.day-heading small { display:block; margin-top:3px; color:#84978c; font-size:9px; font-weight:700; letter-spacing:0; text-transform:none; }.day-value { width:98px; min-width:98px; color:#83958b; }.movement-cell { display:grid; justify-items:end; gap:2px; min-height:16px; font-weight:800; }.daily-table tbody tr:hover td { background:#fbfdfb; }.daily-table tbody tr:hover .sticky-col { background:#fbfdfb; }.daily-table tbody tr:hover .current-balance { background:#eaf5ed; }
.daily-table .grade-heading,.daily-table .grade-cell { left:174px; width:76px; min-width:76px; }.daily-table .current-heading,.daily-table .current-balance { left:250px; width:80px; min-width:80px; box-shadow:10px 0 12px -14px rgba(24,51,43,.65); }.daily-table th.grade-heading { z-index:4; background:#f6faf7; }.daily-table th.current-heading { z-index:4; background:#f1f8f3; }.daily-table tbody tr:hover .grade-cell { background:#fbfdfb; }.daily-table tbody tr:hover .current-balance { background:#eaf5ed; }.source-group-row .source-group-label { position:sticky; left:0; z-index:3; background:#f3f8f4; }.source-group-row .source-group-label .source-tag { margin-left:0; }.source-group-row td { background:#f3f8f4; border-top:1px solid #d9e7dc; border-bottom:1px solid #dce9df; }
.zero-filter { display:flex; align-items:center; align-self:end; min-height:36px; gap:8px; padding:8px 10px; border:1px solid #c9d7cc; border-radius:8px; color:#294f40 !important; background:#fff; }.filter-bar .zero-filter input { width:16px; min-height:16px; margin:0; accent-color:var(--green); }.filter-bar .zero-filter span { display:inline; margin:0; line-height:1.2; }
@media (max-width:760px) { .page-header,.intro-card,.table-caption { align-items:stretch; flex-direction:column; }.page-header { gap:16px; padding:22px 18px; }.account-menu { align-self:flex-start; }.warehouse-tabs { overflow-x:auto; }.warehouse-tab { flex:0 0 auto; }.filter-bar { grid-template-columns:1fr; }.table-caption > p { text-align:left; }.table-navigation { align-items:flex-start; flex-direction:column; }.intro-state { max-width:none; }.tab-panel { padding:12px; } main { padding:14px 10px 32px; } }
.day-heading,.day-value { width:86px; min-width:86px; }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto !important; } }
