:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--navy: #17365d;--navy-strong: #102946;--blue: #1769aa;--blue-soft: #eaf4fb;--orange: #f5a623;--orange-soft: #fff4df;--green: #1d7a46;--green-soft: #e8f6ee;--red: #b42318;--red-soft: #fef0ee;--ink: #17212b;--muted: #607080;--line: #d9e0e7;--surface: #ffffff;--background: #f2f5f7;--shadow: 0 1px 2px rgba(16, 41, 70, .08), 0 8px 28px rgba(16, 41, 70, .05);--radius: 16px}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{min-width:320px;background:var(--background);color:var(--ink);overflow:hidden;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;touch-action:manipulation}button,input,select,textarea{font:inherit}button{min-height:48px;border:0;cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(23,105,170,.3);outline-offset:2px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.primary{background:var(--blue);color:#fff;font-weight:800;border-radius:12px}.primary:active{background:#10598f}.secondary{background:#fff;color:var(--navy);border:1px solid var(--line);border-radius:12px;font-weight:750}.danger{background:var(--red);color:#fff;border-radius:12px;font-weight:800}.danger-soft{background:var(--red-soft)!important;color:var(--red)!important}.full-width{width:100%;margin-top:10px;padding:12px 16px}.large{min-height:58px;padding:14px 24px;font-size:17px}.app-shell{height:100vh;height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.app-header{min-height:68px;display:grid;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr);align-items:center;gap:14px;padding:8px 14px;background:var(--navy);color:#fff;box-shadow:0 3px 12px #10294638;z-index:20}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:#fff;color:var(--navy);font-size:29px;line-height:1;font-weight:950;box-shadow:inset 0 -4px 0 var(--orange)}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-size:17px;letter-spacing:.06em}.brand-copy small{margin-top:4px;color:#c9d7e6;font-size:12px;font-weight:650}.workflow-nav{display:flex;align-items:center;gap:6px}.workflow-button{min-width:112px;min-height:50px;padding:7px 12px;display:flex;align-items:center;justify-content:center;gap:8px;color:#d9e6f1;background:#ffffff12;border-radius:13px;font-weight:800}.workflow-button:hover{background:#ffffff21}.workflow-button.active{color:var(--navy);background:#fff}.step-number{width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#ffffff26;font-size:12px}.workflow-button.active .step-number{color:#fff;background:var(--blue)}.header-status{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.status-chip{min-height:38px;display:flex;align-items:center;gap:7px;max-width:170px;padding:8px 11px;border-radius:999px;color:#d9e6f1;background:#ffffff14;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-chip:before{content:"";width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--orange)}.status-chip.ready:before{background:#62d394;box-shadow:0 0 0 4px #62d3941f}.status-chip.offline:before{background:var(--orange)}.icon-button{width:48px;min-width:48px;padding:0;display:grid;place-items:center;background:#ffffff1a;color:inherit;border-radius:12px;font-size:25px;font-weight:800}.progress-strip{min-height:64px;padding:8px 14px;display:grid;grid-template-columns:minmax(220px,auto) minmax(140px,1fr) auto auto;align-items:center;gap:16px;background:#fff;border-bottom:1px solid var(--line)}.progress-copy{display:flex;flex-direction:column;min-width:0}.progress-copy strong{font-size:15px;color:var(--navy)}.progress-copy span{margin-top:2px;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-track{height:10px;overflow:hidden;border-radius:99px;background:#e5ebf0}.progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#2aa26b);transition:width .25s ease}.next-button{min-width:158px;padding:9px 16px;border-radius:12px;background:var(--orange);color:#402900;font-weight:850}.compact-action{min-width:76px;min-height:44px;padding:8px 12px}.app-main{min-height:0;padding:12px;overflow:hidden}.empty-state{height:100%;max-width:720px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px}.empty-illustration{width:82px;height:82px;display:grid;place-items:center;border-radius:26px;color:var(--blue);background:var(--blue-soft);font-size:42px;font-weight:900}.empty-state h1{margin:22px 0 8px;color:var(--navy);font-size:clamp(28px,4vw,42px)}.empty-state p{max-width:570px;margin:0 0 24px;color:var(--muted);line-height:1.55;font-size:17px}.offline-promise{margin-top:22px;display:flex;align-items:center;gap:9px;color:var(--green);font-size:13px;font-weight:750}.offline-promise span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--green-soft)}.inventory-layout{height:100%;min-height:0;display:grid;grid-template-rows:minmax(300px,51%) minmax(0,1fr);gap:12px}.list-panel,.entry-panel{min-height:0;overflow:hidden}.list-panel{display:flex;flex-direction:column}.filter-row{flex:0 0 auto;display:grid;grid-template-columns:minmax(130px,1.5fr) minmax(95px,.85fr) minmax(90px,.72fr) minmax(85px,.62fr) 48px minmax(78px,auto);grid-template-areas:"search warehouse location status reset count";gap:6px;align-items:center;padding:6px 8px;border-bottom:1px solid var(--line)}.search-field{grid-area:search}.warehouse-filter{grid-area:warehouse}.location-filter{grid-area:location}.status-filter{grid-area:status}.filter-reset{grid-area:reset;width:48px;min-height:46px;padding:0;font-size:23px}.filter-row label,.note-field,.streit-options label{display:flex;flex-direction:column;gap:4px;min-width:0}.filter-row label>span{display:none}.note-field>span,.streit-options label>span{color:var(--muted);font-size:12px;font-weight:850;letter-spacing:.02em}.filter-row input,.filter-row select,.note-field textarea,.streit-options input[type=date]{width:100%;min-height:46px;padding:8px 10px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;font-size:14px;font-weight:650}.filter-row input::placeholder{color:#8a98a6;font-weight:500}.match-count{grid-area:count;align-self:center;justify-self:stretch;min-width:78px;padding:9px 7px;color:var(--navy);background:var(--blue-soft);border-radius:10px;text-align:center;font-size:12px;font-weight:850;white-space:nowrap}.warehouse-filter.complete select{color:var(--green);background:var(--green-soft);border-color:#86cba5;font-weight:850}.table-scroll{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.inventory-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.inventory-table th,.inventory-table td{height:56px;padding:8px 10px;border-bottom:1px solid #e6ebef;text-align:left;vertical-align:middle}.inventory-table th{height:42px;position:sticky;top:0;z-index:2;color:var(--muted);background:#f8fafb;font-size:12px;font-weight:850}.inventory-table th:nth-child(1){width:42px}.inventory-table th:nth-child(2){width:17%}.inventory-table th:nth-child(3){width:17%}.inventory-table th:nth-child(4){width:auto}.inventory-table th:nth-child(5),.inventory-table th:nth-child(6){width:9%}.inventory-table th:nth-child(7){width:7%}.inventory-table td{font-size:14px;font-weight:650}.inventory-table td.numeric,.inventory-table th.numeric{text-align:right;font-variant-numeric:tabular-nums}.inventory-row{cursor:pointer}.inventory-row:hover{background:#f7fafc}.inventory-row.current{background:var(--blue-soft);box-shadow:inset 4px 0 0 var(--blue)}.inventory-row.done .row-status{color:var(--green);background:var(--green)}.inventory-row td.warehouse-complete{color:var(--green);background:var(--green-soft);font-weight:900}.inventory-row.current td.warehouse-complete{background:#d6f0e1}.row-status{position:relative;width:12px;height:12px;display:block;margin:auto;border-radius:50%;color:var(--orange);background:var(--orange)}.row-status.has-comment{width:17px;height:12px;border-radius:4px}.row-status.has-comment:after{content:"";position:absolute;left:4px;bottom:-4px;width:0;height:0;border-top:5px solid currentColor;border-right:5px solid transparent}.short-text{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25}.spacer-row td{height:0;padding:0;border:0}.no-results td{text-align:center;color:var(--muted);padding:32px}.entry-panel{display:grid;grid-template-columns:minmax(0,.92fr) minmax(330px,1.08fr);gap:14px;padding:14px}.item-details{min-width:0;min-height:0;display:flex;flex-direction:column;gap:10px}.item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:55px}.eyebrow{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.item-heading h1{margin:3px 0 0;color:var(--navy);font-size:clamp(19px,2.5vw,27px);line-height:1.12;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.save-state{flex:0 0 auto;padding:6px 9px;border-radius:999px;color:var(--green);background:var(--green-soft);font-size:11px;font-weight:850}.save-state.saving{color:#8a5700;background:var(--orange-soft)}.save-state.error{color:var(--red);background:var(--red-soft)}.detail-grid{display:grid;grid-template-columns:1.2fr 1fr .75fr .85fr;gap:8px;margin:0}.detail-grid>div{min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:#fafcfd}.detail-grid dt{color:var(--muted);font-size:10px;font-weight:850}.detail-grid dd{margin:3px 0 0;overflow:hidden;color:var(--ink);font-size:14px;font-weight:850;white-space:nowrap;text-overflow:ellipsis}.detail-grid .recent-year{border-color:#f1b74e;background:var(--orange-soft)}.quantity-comparison{display:grid;grid-template-columns:1fr 1.18fr;gap:9px}.quantity-comparison>div{min-height:88px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fff}.quantity-comparison span{display:block;color:var(--muted);font-size:11px;font-weight:850}.quantity-comparison strong{display:inline-block;margin-top:5px;color:var(--navy);font-size:clamp(28px,4vw,42px);line-height:1;font-variant-numeric:tabular-nums}.quantity-comparison small{margin-left:7px;color:var(--muted);font-weight:750}.quantity-comparison .new-quantity{border:2px solid var(--blue);background:var(--blue-soft)}.quantity-comparison .new-quantity strong{color:var(--blue)}.take-old{min-height:48px}.entry-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.entry-actions .take-old,.entry-actions .undo-last{min-height:44px}.undo-last{padding-inline:13px}.quick-remarks{margin:0;padding:7px;display:grid;grid-template-columns:1fr 1fr;gap:6px;border:1px solid var(--line);border-radius:12px}.quick-remarks legend{padding:0 5px;color:var(--muted);font-size:10px;font-weight:850}.quick-remarks button{min-height:35px;padding:5px 7px;border:1px solid #d6dee5;border-radius:9px;color:var(--navy);background:#f7f9fa;font-size:11px;font-weight:800}.quick-remarks button.active,.quick-remarks button[aria-pressed=true]{color:#fff;background:var(--orange);border-color:var(--orange)}.quick-remarks button[data-review=not_found].active,.quick-remarks button[data-review=not_found][aria-pressed=true]{background:var(--green);border-color:var(--green)}.note-field{flex:0 0 auto;min-height:0}.note-field textarea{height:48px;min-height:48px;max-height:48px;resize:none;overflow-y:auto;line-height:1.25}.numpad{min-height:0;padding:10px;display:flex;flex-direction:column;border-radius:15px;background:#edf2f6}.numpad-grid{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:8px}.numpad button{min-width:0;min-height:52px;border:1px solid #d2dbe3;border-radius:13px;color:var(--navy);background:#fff;font-size:clamp(25px,4.5vh,36px);font-weight:900;box-shadow:0 2px 4px #10294612}.numpad button:active:not(:disabled){transform:translateY(1px);box-shadow:none}.numpad .numpad-ok{color:#fff;background:var(--blue);border-color:var(--blue);font-size:clamp(24px,4vh,33px)}.numpad-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.numpad-tools button{min-height:50px;font-size:23px}.app-dialog{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;border:0;border-radius:20px;background:transparent}.app-dialog::backdrop{background:#08172794;backdrop-filter:blur(3px)}.dialog-card{max-height:calc(100dvh - 28px);overflow:auto;padding:22px;color:var(--ink);background:#fff;border-radius:20px;box-shadow:0 24px 70px #0817274d}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dialog-heading h2{margin:3px 0 0;color:var(--navy);font-size:24px}.dialog-close{width:48px;min-width:48px;padding:0;border-radius:12px;color:var(--muted);background:#f1f4f6;font-size:27px}.dialog-card>p{color:var(--muted);line-height:1.5}.file-action{width:100%;min-height:68px;margin-top:10px;padding:12px 15px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;border-radius:14px}.file-action span{font-weight:850}.file-action small{margin-top:3px;opacity:.78;font-size:12px}.file-action input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.dialog-message{margin-top:14px;padding:13px;border-radius:12px;background:var(--orange-soft);color:#704500;font-size:13px;line-height:1.45}.dialog-message.error{color:var(--red);background:var(--red-soft)}.export-summary{margin:15px 0;padding:13px 15px;border-radius:13px;background:var(--blue-soft);color:var(--navy);font-weight:750}.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.export-actions .primary{grid-column:1 / -1}.streit-options{margin:18px 0 0;padding:15px;display:grid;gap:11px;border:1px solid var(--line);border-radius:15px}.streit-options legend{padding:0 7px;color:var(--navy);font-weight:850}.streit-options .check{min-height:40px;flex-direction:row;align-items:center;gap:10px}.streit-options .check input{width:23px;height:23px;accent-color:var(--blue)}.streit-options button{margin-top:3px}.compact-dialog{width:min(500px,calc(100vw - 28px))}.admin-facts{margin:17px 0}.admin-facts div{display:grid;grid-template-columns:145px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid #e8edf1}.admin-facts dt{color:var(--muted);font-size:12px;font-weight:750}.admin-facts dd{margin:0;text-align:right;font-weight:750}.admin-setting{margin:14px 0;padding:12px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:13px}.admin-setting label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:12px;font-weight:850}.admin-setting input{width:100%;min-height:48px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;font-size:16px;font-weight:750}.admin-setting button{min-height:48px;padding:9px 12px}.dialog-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.dialog-buttons button{min-width:130px;padding:10px 15px}.history-section{margin:16px 0;padding:13px;border:1px solid var(--line);border-radius:13px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.text-button{min-height:32px;padding:4px 8px;color:var(--blue);background:transparent;font-size:12px}.recent-changes{margin-top:8px;display:grid;gap:6px}.history-entry{display:grid;grid-template-columns:1fr auto;gap:6px;padding-top:6px;border-top:1px solid #e7ecef;font-size:12px}.history-entry small{color:var(--muted)}.warehouse-order-list{display:grid;gap:8px;margin-top:15px}.warehouse-order-row{display:grid;grid-template-columns:38px 38px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:12px}.warehouse-order-row>button{min-height:40px;padding:5px 9px}.warehouse-order-row .warehouse-copy{min-width:0}.warehouse-order-row .warehouse-copy strong,.warehouse-order-row .warehouse-copy small{display:block}.warehouse-order-row .warehouse-copy small{margin-top:2px;color:var(--muted)}.warehouse-order-row.complete{border-color:#86cba5;background:var(--green-soft)}.update-banner,.install-banner{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:80;width:min(620px,calc(100vw - 28px));padding:12px 14px;display:flex;align-items:center;gap:12px;border-radius:15px;color:#fff;background:var(--navy-strong);box-shadow:0 16px 46px #0817274d}.update-banner span,.install-banner span{min-width:0;display:flex;flex:1;flex-direction:column}.update-banner small,.install-banner small{margin-top:2px;color:#cbd9e6}.update-banner button,.install-banner>button:not(.icon-button){padding:9px 14px;color:var(--navy);background:var(--orange);border-radius:11px;font-weight:850}.install-banner .icon-button{color:#fff}.toast-region{position:fixed;right:15px;bottom:calc(15px + env(safe-area-inset-bottom));z-index:100;display:grid;gap:8px;pointer-events:none}.toast{width:min(390px,calc(100vw - 30px));padding:13px 15px;border-radius:13px;color:#fff;background:var(--navy-strong);box-shadow:0 12px 35px #08172747;font-size:13px;font-weight:700;animation:toast-in .18s ease-out}.toast.error{background:var(--red)}.toast.success{background:var(--green)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media(max-width:900px){.app-header{grid-template-columns:auto 1fr auto}.brand-copy{display:none}.workflow-button{min-width:104px}.status-chip{max-width:128px}.entry-panel{grid-template-columns:minmax(0,.9fr) minmax(310px,1.1fr);gap:10px;padding:10px}.detail-grid{grid-template-columns:1.2fr 1fr .75fr .9fr}}@media(min-width:521px)and (max-width:700px){.app-header{grid-template-columns:auto 1fr auto;min-height:62px;padding:7px 9px}.brand-mark{width:44px;height:44px}.workflow-nav{justify-self:center}.workflow-button{min-width:48px;width:48px;padding:5px}.workflow-button>span:last-child,.status-chip{display:none}.progress-strip{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.progress-track{grid-column:1 / -1;grid-row:2}.progress-copy span{max-width:220px}.next-button{min-width:125px;padding-inline:10px}.compact-action{min-width:64px}.app-main{padding:8px}.inventory-layout{grid-template-rows:minmax(275px,45%) minmax(0,1fr);gap:8px}.entry-panel{grid-template-columns:minmax(0,.9fr) minmax(275px,1.1fr);gap:8px;padding:8px}.detail-grid{grid-template-columns:1fr 1fr;gap:6px}.detail-grid>div{padding:7px 8px}.item-details{gap:7px}.quantity-comparison{gap:6px}.quick-remarks{gap:4px;padding:5px}.quick-remarks button{min-height:32px;padding:4px;font-size:10px}.numpad{padding:8px}.numpad-grid{gap:6px}.numpad button{min-height:44px}.numpad-tools{gap:6px;margin-top:6px}.numpad-tools button{min-height:44px}}@media(max-width:520px){body{overflow:auto}.app-shell{height:auto;min-height:100dvh;overflow:visible;grid-template-rows:auto auto auto}.app-header{position:sticky;top:0;grid-template-columns:auto 1fr auto;min-height:62px;padding:7px 9px}.brand-mark{width:44px;height:44px}.workflow-nav{justify-self:center}.workflow-button{min-width:48px;width:48px;padding:5px}.workflow-button>span:last-child{display:none}.status-chip{display:none}.progress-strip{grid-template-columns:1fr auto;gap:10px}.progress-track{grid-column:1 / -1;grid-row:2}.next-button{grid-column:2;grid-row:1;min-width:132px}.compact-action{display:none}.app-main{overflow:visible;padding:8px}.empty-state{min-height:calc(100dvh - 150px)}.inventory-layout{height:auto;display:block}.list-panel{height:42dvh;min-height:300px}.filter-row{grid-template-columns:minmax(88px,1.35fr) minmax(68px,.78fr) minmax(64px,.68fr) minmax(62px,.6fr) 40px minmax(58px,auto);gap:4px;padding:5px}.filter-row{grid-template-areas:"search warehouse location status reset count"}.filter-reset{width:40px;min-height:44px}.match-count{display:block;justify-self:stretch;min-width:58px;padding-inline:3px;font-size:10px}.entry-panel{margin-top:8px;display:block;overflow:visible}.numpad{min-height:450px;margin-top:12px}.detail-grid{grid-template-columns:1fr 1fr}.quantity-comparison{margin-top:5px}.note-field textarea{height:48px;min-height:48px;max-height:48px}.export-actions{display:block}}@media(orientation:landscape)and (min-width:900px){.inventory-layout{grid-template-columns:minmax(440px,1.15fr) minmax(560px,1fr);grid-template-rows:minmax(0,1fr)}.entry-panel{grid-template-columns:minmax(0,.92fr) minmax(300px,1.08fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
