:root{--bg: #101010;--panel: #101010;--panel-soft: #1a1a1a;--surface-2: #1a1a1a;--popover: #1a1a1a;--hover: #242424;--border: #3d3a39;--text: #f2f2f2;--text-strong: #ffffff;--body: #bdbdbd;--muted: #8b949e;--dim: #55595e;--accent: #00d992;--accent-soft: #2fd6a1;--on-accent: #101010;--ok: #2fd6a1;--loss: #f87171;--warn-bg: rgba(248, 113, 113, .1);--row-hi: rgba(0, 217, 146, .09);--badge-warn-bg: #2a2205;--badge-warn-text: #e3b341;--badge-ok-bg: #0d2b1e;--badge-ok-text: #2fd6a1;--mono: "SFMono-Regular", ui-monospace, Menlo, Monaco, Consolas, "Liberation Mono", monospace;font-size:15px;color-scheme:dark}:root[data-theme=light]{--bg: #f7f8f8;--panel: #ffffff;--panel-soft: #f1f2f3;--surface-2: #f4f5f5;--popover: #ffffff;--hover: #e8eaec;--border: #d8dbde;--text: #1a2028;--text-strong: #000000;--body: #3f4750;--muted: #64707c;--dim: #b3bac1;--accent: #00c485;--accent-soft: #0a8a60;--on-accent: #06281c;--ok: #0a8a60;--loss: #c0392f;--warn-bg: rgba(192, 57, 47, .08);--row-hi: rgba(0, 196, 133, .12);--badge-warn-bg: #fdf3d7;--badge-warn-text: #8a6d1a;--badge-ok-bg: #e2f0e6;--badge-ok-text: #157347;color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:"calt","rlig";background:var(--bg);color:var(--text)}.app{max-width:1240px;margin:0 auto;padding:16px 20px 60px}header.topbar{display:flex;align-items:center;gap:26px;margin-bottom:16px;border-bottom:1px solid var(--border);padding-bottom:10px}header.topbar h1{font-size:20px;margin:0;color:var(--text-strong);font-weight:600;letter-spacing:-.3px;display:flex;align-items:center;gap:10px;white-space:nowrap}.logo-chip{width:34px;height:34px;border-radius:8px;display:block}nav.tabs{display:flex;gap:22px}nav.tabs button{border:none;background:none;padding:6px 1px;font-size:14px;cursor:pointer;color:var(--muted);white-space:nowrap}nav.tabs button:hover{color:var(--text)}nav.tabs button.active{color:var(--text-strong);font-weight:600;box-shadow:inset 0 -2px 0 var(--accent)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:16px}.panel.scroll-x{overflow-x:auto}.panel h2{margin:0 0 12px;font-size:16px;color:var(--text-strong)}.panel h3{margin:16px 0 8px;font-size:14px;color:var(--text-strong)}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{border-bottom:1px solid var(--border);padding:9px 10px;text-align:left;vertical-align:top}.cell-clip{display:flex;align-items:center;gap:6px;min-width:0}.cell-clip .clip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cell-clip .badge{flex-shrink:0}th{color:var(--muted);font-weight:600;white-space:nowrap;font-size:11px;text-transform:uppercase;letter-spacing:.8px}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.num{font-family:var(--mono);font-size:12.5px}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--panel-soft)}tr.detail-row>td{background:var(--surface-2);padding:20px 24px}.detail-body{position:sticky;left:0;max-width:calc(min(1240px,100vw) - 112px)}tr.zero-stock td{opacity:.45}tr.zero-stock:hover td{opacity:1}a{color:var(--accent-soft);text-decoration:none}a:hover{text-decoration:underline}a.badge{color:var(--accent-soft)}a.badge:hover{text-decoration:none;border-color:var(--accent-soft)}.loss{color:var(--loss);font-weight:600}.ok{color:var(--ok)}.muted{color:var(--muted)}.small{font-size:12.5px}form.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 20px;align-items:end}form.grid>*{min-width:0}label.field>span{min-width:0}.table-scroll{overflow:visible}label.field{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--muted)}input,select{font-size:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:34px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel-soft);color:var(--text);min-width:90px}label.field input:not([type=checkbox]),label.field select{width:100%;min-width:0}input:focus,select:focus{outline:none;border-color:var(--accent)}input::placeholder{color:var(--muted)}input[type=checkbox]{min-width:0;width:15px;height:15px;padding:0;margin:0 4px 0 0;vertical-align:-2px;accent-color:var(--accent)}input[type=date]{accent-color:var(--accent);-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;text-align:left}.datewrap{min-width:0}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.75);cursor:pointer}input[type=date]:focus::-webkit-datetime-edit-month-field:focus,input[type=date]:focus::-webkit-datetime-edit-day-field:focus,input[type=date]:focus::-webkit-datetime-edit-year-field:focus{background:var(--accent);color:var(--on-accent);border-radius:3px}.datewrap{position:relative;display:block}.datewrap input[type=date]{width:100%;padding-right:32px}.datewrap input::-webkit-calendar-picker-indicator{display:none}.date-toggle{position:absolute;right:3px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--muted);padding:5px;display:flex}.date-toggle:hover{color:var(--text)}.calendar{position:absolute;top:calc(100% + 6px);left:0;z-index:30;background:var(--popover);border:1px solid var(--border);border-radius:8px;padding:10px;width:254px;box-shadow:0 12px 40px #0009}.cal-head{display:flex;align-items:center;gap:2px;margin-bottom:6px}.cal-title{font-weight:600;font-size:13.5px;color:var(--text-strong);padding-left:4px}.cal-nav{background:none;border:none;color:var(--muted);font:inherit;font-size:15px;cursor:pointer;padding:2px 8px;border-radius:4px}.cal-nav:hover{color:var(--text);background:var(--hover)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-dow{font-size:10px;font-weight:600;color:var(--muted);text-align:center;padding:3px 0;text-transform:uppercase;letter-spacing:.5px}.cal-day{background:none;border:none;color:var(--text);font:inherit;font-size:12.5px;font-variant-numeric:tabular-nums;padding:5px 0;text-align:center;border-radius:5px;cursor:pointer}.cal-day:hover{background:var(--hover)}.cal-day.out{color:var(--dim)}.cal-day.today{box-shadow:inset 0 0 0 1px var(--accent)}.cal-day.sel{background:var(--accent);color:var(--on-accent);font-weight:600}.cal-day.sel:hover{background:var(--accent-soft)}input[type=file]{height:auto;padding:5px 10px;font-size:13px}input[type=file]::file-selector-button{font:inherit;font-weight:600;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:5px;padding:3px 10px;margin-right:10px;cursor:pointer}select{min-width:150px}.detail-row h3{margin-top:22px}.detail-row h3:first-child{margin-top:0}.detail-row table{margin-bottom:6px}input.wide{min-width:220px}label.field.span-all{grid-column:1 / -1}label.field.span-all input{width:100%;min-width:320px}input:invalid{border-color:var(--loss)}button.primary,button.secondary,button.danger{font:inherit;font-weight:600;padding:6px 14px;border-radius:6px;cursor:pointer;border:1px solid var(--border)}button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}button.primary:hover{background:var(--accent-soft);border-color:var(--accent-soft)}button.primary:disabled{opacity:.5;cursor:default}button.secondary{background:var(--panel);color:var(--text)}button.secondary:hover{background:var(--panel-soft)}button.danger{background:var(--panel);color:var(--loss);border-color:var(--loss)}button.danger:hover{background:var(--warn-bg)}button.linklike{background:none;border:none;color:var(--accent-soft);cursor:pointer;padding:0;font:inherit;font-size:13px}label.btnlike{cursor:pointer;display:inline-block;font:inherit;font-weight:600;font-size:13.5px;padding:6px 14px;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:var(--text)}label.btnlike:hover{background:var(--panel-soft)}.file-pick{cursor:pointer;font-weight:500;font-size:13.5px;height:34px;line-height:32px;padding:0 12px;border-radius:6px;border:1px solid var(--border);background:var(--panel-soft);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.file-pick:hover{background:var(--hover)}.bulkbar{position:fixed;bottom:22px;left:50%;transform:translate(-50%);z-index:8;display:flex;gap:12px;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:9px 16px;box-shadow:0 12px 40px #0009;white-space:nowrap}.error-banner{background:var(--warn-bg);border:1px solid var(--loss);color:var(--loss);border-radius:6px;padding:8px 12px;margin:10px 0}.note{background:var(--panel-soft);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:13px;margin:10px 0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:10}.modal{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:20px;max-width:560px;width:92%;max-height:85vh;overflow:auto;box-shadow:0 20px 60px #000000b3,0 0 0 1px #94a3b81a inset}.modal h2{margin-top:0}.modal .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.badge{display:inline-block;padding:1px 7px;border-radius:9999px;font-size:11.5px;background:var(--panel-soft);border:1px solid var(--border);color:var(--body)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.tile{border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:var(--surface-2)}.tile-label{font-size:11px;color:var(--muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.8px;font-weight:600}.tile-value{font-size:21px;font-weight:600;font-variant-numeric:tabular-nums;font-family:var(--mono);color:var(--text-strong)}.tile-value.ok{color:var(--ok)}.tile-value.loss{color:var(--loss)}.tile-sub{font-size:12px;color:var(--muted);margin-top:4px}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}th.sortable:hover{color:var(--text)}.sort-arrow{color:var(--dim);font-size:10.5px}.sort-arrow.active{color:var(--accent)}table.fixed-cols{table-layout:fixed}table.fixed-cols td{overflow:hidden;text-overflow:ellipsis}th.select-cell,td.select-cell{text-overflow:clip;padding-right:0}th.select-cell input,td.select-cell input{margin-right:0}table.fixed-cols th{white-space:normal;overflow:visible;vertical-align:bottom}.doc-body{max-width:720px;font-size:14.5px;line-height:1.65;color:var(--body)}.doc-body h2{color:var(--text-strong)}.doc-body strong{color:var(--text)}.doc-body ul,.doc-body ol{padding-left:22px}.doc-body li{margin-bottom:6px}.doc-body code{background:var(--panel-soft);border:1px solid var(--border);color:var(--text);padding:1px 5px;border-radius:4px;font-size:13px;font-family:var(--mono)}.sparkline{display:block}.onboard-progress{height:4px;background:var(--panel-soft);border-radius:2px;margin-top:10px;overflow:hidden}.onboard-progress>div{height:100%;background:var(--accent);border-radius:2px;transition:width .25s ease}.onboard-step{display:flex;gap:12px;align-items:flex-start;padding:7px 0}.onboard-check{flex-shrink:0;width:19px;height:19px;margin-top:1px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:5px;background:var(--panel-soft);color:var(--on-accent);cursor:pointer}.onboard-check:hover{border-color:var(--accent)}.onboard-check.done{background:var(--accent);border-color:var(--accent)}.onboard-title{font-size:14px;font-weight:600;text-decoration:none;color:var(--text)}.onboard-title:hover{text-decoration:underline}.demo-banner{margin:0 0 14px;padding:8px 14px;border:1px solid var(--accent);border-radius:8px;background:var(--row-hi);font-size:13px;color:var(--text)}footer.footer{margin-top:28px;padding-top:14px;border-top:1px solid var(--border);display:flex;gap:20px;flex-wrap:wrap;align-items:baseline;font-size:12.5px;color:var(--muted)}footer.footer .linklike,footer.footer a{font-size:12.5px;color:var(--muted)}footer.footer .linklike:hover,footer.footer a:hover{color:var(--text);text-decoration:none}.split-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:32px;align-items:start}.help-grid{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:32px;align-items:start}@media (max-width: 760px){.app{padding:10px 10px 48px}header.topbar{flex-direction:column;align-items:stretch;gap:6px;padding-bottom:8px}nav.tabs{flex-wrap:wrap;gap:4px 18px}nav.tabs button{padding:8px 1px}.panel{padding:12px;overflow-x:auto}tr.detail-row>td{padding:12px 10px}.detail-body{max-width:calc(100vw - 66px)}.split-detail,.help-grid{grid-template-columns:minmax(0,1fr);gap:16px}form.grid{grid-template-columns:1fr 1fr;gap:12px 10px}form.grid>*{min-width:0}form.grid>button{grid-column:1 / -1}.lines-table,.lines-table tbody{display:block}.lines-table thead{display:none}.lines-table tr{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.lines-table td{display:block;border:none;padding:0;min-width:0;text-align:left}.lines-table td:first-child,.lines-table td[data-remove]{grid-column:1 / -1}.lines-table td[data-remove]:empty{display:none}.lines-table td[data-l]:before{content:attr(data-l);display:block;font-size:11px;font-weight:600;color:var(--muted);margin-bottom:4px;font-family:Inter,-apple-system,sans-serif}.lines-table td input{width:100%!important;min-width:0!important}label.field.span-all{grid-column:1 / -1}label.field.span-all input,input.wide,select{min-width:0}input,select{font-size:16px;height:40px}.date-toggle,.calendar{display:none}.datewrap input[type=date]{padding-right:10px}input[type=file]{height:auto}input[type=checkbox]{width:18px;height:18px}button.primary,button.secondary,button.danger,label.btnlike{padding:9px 14px}.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tile-value{font-size:18px}.modal{padding:14px}}
