:root{--ink:#192d2b;--muted:#586b67;--line:#d6dfda;--paper:#f4f6f3;--accent:#12604f;--dark:#143e37;--tint:#e5f2eb;--warn:#94551c;--bad:#9d3b35;color-scheme:light;font:15px/1.5 Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body,h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.16;letter-spacing:-.035em}h1{font-size:clamp(1.8rem,3vw,2.65rem);font-weight:700}h2{font-size:1.26rem}h3{font-size:1.06rem}a{color:var(--accent)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #c8d5ce;border-radius:7px;background:white;color:var(--ink);font-weight:600;padding:.56rem .84rem;line-height:1.35}button:hover:not(:disabled){background:#edf4ef;border-color:#9ab5a6}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:default;opacity:.48}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #6cafa0;outline-offset:2px}.primary-button,button.primary{background:var(--accent);border-color:var(--accent);color:white}button.primary:hover:not(:disabled){background:#0c4c40;border-color:#0c4c40}.shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;align-self:start;height:100dvh;overflow-y:auto;padding:27px 15px 18px;background:var(--dark);color:#f5faf7}.brand{display:flex;gap:10px;align-items:center;font-weight:750;letter-spacing:.03em;padding:0 12px 24px}.brand small,.sidebar small{display:block;color:#bdd4c9}.sidebar nav{display:grid;gap:3px}.sidebar nav a,.sidebar nav button{text-align:left;width:100%;display:flex;align-items:center;gap:11px;border:0;border-radius:7px;background:transparent;color:#d9e9e1;text-decoration:none;padding:.62rem .82rem;font-size:.95rem}.sidebar nav .active,.sidebar nav .selected,.sidebar nav [aria-current=page],.sidebar nav a:hover,.sidebar nav button:hover:not(:disabled){color:white;background:#2c574b}.sidebar footer{margin-top:auto;padding:16px 10px 0;border-top:1px solid #436355}.main{min-width:0;padding:clamp(18px,2.8vw,44px);max-width:1800px;width:100%;margin:0 auto}.catalog-view,.overview{display:grid;gap:18px}.catalog-view>header,.page-heading,.panel>header,.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-heading{padding-bottom:6px}.eyebrow{color:var(--accent);font-size:.7rem;letter-spacing:.14em;font-weight:800;margin-bottom:7px}.action-row,.actions,.filter-strip,.filters,.quick-actions,.report-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.muted,.quiet,small{color:var(--muted);font-size:.85rem}.filter-strip,.kpi,.panel{min-width:0;border:1px solid var(--line);background:#fff;border-radius:12px}.panel{padding:clamp(15px,1.65vw,25px);overflow:auto}.section-head{margin-bottom:15px}.panel h2:not(:only-child),.panel h3{margin-bottom:10px}.section-head h2:not(:only-child){margin:0}.fields,.filter-strip,.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:13px;align-items:end}.filter-strip{padding:14px 18px}.catalog-form,form{display:grid;gap:16px}label{display:grid;gap:4px;font-size:.83rem;color:#364d46;font-weight:600}input,select,textarea{min-width:0;max-width:100%;width:100%;background:#fcfdfb;color:var(--ink);border:1px solid #bfcfc5;border-radius:6px;padding:.5rem .58rem;line-height:1.4}input[type=checkbox],input[type=radio]{width:1rem;height:1rem;accent-color:var(--accent)}input[type=file]{padding:.37rem}.check{display:flex;align-items:center;gap:7px}textarea{min-height:75px;resize:vertical}fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px}legend{font-weight:650}.filters{margin:.75rem 0}.actions{margin-top:.45rem}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.kpi{padding:clamp(14px,1.5vw,23px);text-align:left;display:flex;flex-direction:column;align-items:start;gap:.38rem}.kpi span{font-size:.88rem;font-weight:650}.kpi strong{font-size:clamp(1.35rem,2.4vw,2.35rem);font-weight:700;line-height:1.2;letter-spacing:-.045em;overflow-wrap:anywhere;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi small{font-weight:400;line-height:1.4}.primary-kpi{background:#195846;border-color:#195846;color:white}.primary-kpi small{color:#d1e6da}.alert-kpi{background:#fcf6ea;border-color:#e7d6ad;color:#714716}.alert-kpi small{color:#745f43}.dash-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:16px}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:12px;color:var(--accent)}.quick-actions span{font-size:1rem;color:var(--muted)}.recent-row{display:flex;width:100%;align-items:center;gap:16px;border:0;border-top:1px solid var(--line);border-radius:0;text-align:left;padding:10px 3px;font-weight:400}.recent-row>:last-child{margin-left:auto}.report-tabs button.selected{background:var(--tint);color:var(--accent);border-color:#7ba08b}.table-scroll,.table-wrap{overflow-x:auto;max-width:100%}table{border-collapse:collapse;width:100%;text-align:left;font-size:.88rem}td,th{vertical-align:middle;padding:10px 11px;border-bottom:1px solid #e2e8e3}th{background:#f3f6f2;font-size:.77rem;color:#395447;font-weight:700}td{line-height:1.4}tbody tr:hover{background:#fbfcf9}.numeric{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.sort,.sort-button,.text-button{background:transparent;border:0;padding:0;text-align:inherit;color:inherit;font:inherit}.text-button{color:var(--accent);font-weight:650}.sort-button:hover,.sort:hover,.text-button:hover{text-decoration:underline}.empty-note,.totals-line{padding:8px 0 15px;color:var(--muted)}.stock-tag{border-radius:4px;padding:.25rem .55rem;display:inline-block;white-space:nowrap;font-size:.78rem;font-weight:650;background:#fff1d2;color:#794e0a}.level-1,.level-2{background:#f9e5dc;color:#8a3728}.detail-backdrop{position:fixed;inset:0;z-index:10;background:#10292380;display:grid;place-items:center;padding:16px}.detail-dialog{background:white;border-radius:12px;width:min(100%,800px);max-height:88dvh;overflow:auto;padding:24px;box-shadow:0 22px 80px #07292138}.detail-dialog h3{margin:18px 0 8px}.error,[role=alert]{color:#83392d}.notice,.success{color:#145947}.login{display:grid;place-items:center;min-height:100dvh;padding:20px}.login form,.login-card{background:white;border:1px solid var(--line);border-radius:14px;padding:clamp(20px,4vw,42px);width:min(430px,100%)}@media(max-width:1100px){.shell{grid-template-columns:202px minmax(0,1fr)}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}.sidebar{padding-left:11px;padding-right:11px}}@media(max-width:760px){.shell{display:block}.sidebar{position:static;height:auto;padding:14px;gap:9px}.brand{padding:0}.sidebar nav{display:flex;overflow-x:auto;gap:4px;padding-bottom:4px}.sidebar nav a,.sidebar nav button{width:auto;flex-shrink:0;white-space:nowrap}.sidebar footer{padding:8px 0 0}.main{padding:18px 12px}.catalog-view>header,.page-heading,.panel>header,.section-head{align-items:flex-start;flex-wrap:wrap}.kpi-grid{gap:8px}.kpi{padding:12px}.panel{border-radius:9px}.filter-strip{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.search-filter{grid-column:1/-1}.fields{grid-template-columns:repeat(2,minmax(0,1fr))}.recent-row{flex-wrap:wrap;gap:7px}.detail-dialog{padding:14px}}@media(max-width:400px){.fields,.quick-actions{grid-template-columns:1fr}}@page{size:A4 landscape;margin:10mm}@media print{:root,body{background:white;color:#111;font-size:10pt}.main,.overview,.shell{display:block;max-width:none;padding:0;margin:0}.action-row,.actions,.detail-backdrop,.filters,.no-print,.quick-actions,.sidebar{display:none!important}.filter-strip,.kpi,.panel{border:0;border-radius:0;overflow:visible;padding:4px 0;box-shadow:none}.panel{margin-top:12px}.table-scroll,.table-wrap{overflow:visible}.section-head,h2,h3{page-break-after:avoid;break-after:avoid}thead{display:table-header-group}tr{page-break-inside:avoid;break-inside:avoid}table{font-size:8pt}th{font-size:7pt}td,th{padding:3px;overflow-wrap:anywhere}.numeric{white-space:normal}.sort-button,.text-button,button{color:#111;background:transparent;border:0;box-shadow:none;padding:0}.page-heading{margin-bottom:12px}.alert-kpi,.primary-kpi,.primary-kpi small{background:white;color:#111}.main>header:not(.page-heading){display:none}}.products-list:not([hidden]){display:grid;gap:18px;min-width:0}.back-toolbar{position:sticky;top:0;z-index:8;background:var(--bg,#f6f8f7);padding:6px 0;margin-bottom:10px}.back-toolbar button{display:inline-flex;align-items:center;gap:8px;min-height:44px}.back-toolbar button span{font-size:1.4rem;line-height:1}.sign-in{min-height:100dvh;display:grid;place-items:center;padding:22px;background:linear-gradient(150deg,#e7efe7,#faf9f3)}.sign-in .panel{width:min(100%,430px);padding:34px;box-shadow:0 16px 50px #173d3010}.sign-in h1{margin-bottom:24px}.sign-in .brand{padding:0 0 25px;color:#12604f}.brand-mark{border:2px solid;border-radius:6px;padding:1px 7px;font-size:1.15rem}.notice{padding:10px 13px;background:#f9ecd4;border-radius:6px}.sidebar footer button{margin-top:8px}.sign-in input{font-size:16px}.filter-toggle,.mobile-dock,.mobile-only,.mobile-products,.mobile-report,.mobile-review,.mobile-title{display:none}.catalog-grid,.desktop-products{min-width:0;max-width:100%}.mobile-menu:not([open]){display:none}.filter-options{display:contents}@media screen and (max-width:900px){:root{--gutter:14px;--dock:calc(63px + env(safe-area-inset-bottom));-webkit-text-size-adjust:100%}html{scroll-padding-top:72px;scroll-padding-bottom:calc(var(--dock) + 12px)}.shell{display:block;min-height:100dvh}.sidebar{display:none}.main{padding:0 max(var(--gutter),env(safe-area-inset-right)) calc(var(--dock) + 18px) max(var(--gutter),env(safe-area-inset-left))}.back-toolbar{position:sticky;top:0;z-index:8;justify-content:space-between;gap:8px;min-height:56px;margin:0 calc(-1 * var(--gutter)) 12px;padding:calc(5px + env(safe-area-inset-top)) var(--gutter) 5px;background:var(--dark);color:white}.back-toolbar,.mobile-title{display:flex;align-items:center}.mobile-title{gap:10px;min-width:0}.mobile-title .brand-mark{border-color:#d9bd84;color:#f6dfab;font:700 21px/1.3 Georgia,serif;padding:2px 8px}.mobile-title small,.mobile-title strong{display:block;line-height:1.25}.mobile-title small{color:#cfe1d7;font-size:12px}.back-toolbar button.primary{background:transparent;border-color:#708c82;padding:4px 10px;color:white;font-size:14px}.back-toolbar button:disabled{visibility:hidden}.mobile-dock{position:fixed;z-index:9;inset:auto 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fff;border-top:1px solid #c4d5cb;padding:4px env(safe-area-inset-right) calc(4px + env(safe-area-inset-bottom)) env(safe-area-inset-left);box-shadow:0 -3px 16px #233f330c}.mobile-dock button{display:grid;justify-items:center;align-content:center;gap:2px;min-height:54px;margin:0 2px;padding:3px 0;border:0;font-size:.76rem;font-weight:600;color:#546760;background:transparent}.mobile-dock .current-section,.mobile-dock [aria-current=page],.mobile-dock [aria-expanded=true]{background:var(--tint);color:#124d3e}body:has(.mobile-menu[open]){overflow:hidden}.mobile-menu{color:var(--ink);width:min(100%,460px);max-width:100%;max-height:88dvh;margin:auto auto 0;border:0;border-radius:18px 18px 0 0;padding:0;overscroll-behavior:contain}.mobile-menu::backdrop{background:#0e28239c}.mobile-menu>div{padding:18px max(16px,env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.mobile-menu footer,.mobile-menu header{display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-menu nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:12px 0}.mobile-menu nav button{text-align:left;background:#f4f7f4;overflow-wrap:anywhere}.mobile-menu nav [aria-current=page]{background:var(--tint);border-color:var(--accent);color:var(--accent)}.mobile-menu footer{padding-top:10px;border-top:1px solid var(--line);flex-wrap:wrap}.mobile-menu footer button{margin-left:auto}.main button,.main summary,.mobile-menu button,.sign-in button{min-height:44px}.main input:not([type=checkbox]):not([type=radio]),.main select,.main textarea,.sign-in input{font-size:16px;min-height:44px}.main :is(label,.fields>*,.filters>*,.panel>*,.actions>*),.sign-in label{min-width:0}.main input[type=file]{max-width:100%;font-size:14px}.main :is(button,h1,h2,h3,legend,fieldset,a,dd,p){overflow-wrap:anywhere}.main .check{min-height:44px}.check input{flex-shrink:0}.panel{padding:14px;overflow:visible}.catalog-view,.doc-module,.overview,.products-list:not([hidden]){gap:12px}.overview .eyebrow{display:none}.page-heading h1{font-size:1.55rem}.overview .page-heading{gap:6px;padding:0}.mobile-dashboard .page-heading h1,.mobile-dashboard .page-heading>div:empty,.mobile-dashboard .page-heading>div:first-child{display:none}.mobile-dashboard .dash-grid{display:contents}.mobile-dashboard>.page-heading{order:-4}.mobile-dashboard .dash-quick{order:-3}.dash-quick .section-head{margin-bottom:9px}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.quick-actions button{padding:8px;min-height:48px;line-height:1.2}.quick-actions button span{flex-shrink:0}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi small{font-size:.76rem}.main>.notice{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;padding:5px 9px;font-size:.85rem}.main>.notice button{border:0;background:transparent;text-decoration:underline;font-size:.83rem;padding:4px}.fields,.receipt-line .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.doc-module fieldset{margin:10px 0;padding:10px}.doc-module>section>fieldset,.review-fields>fieldset:first-of-type{border:0;padding:0}.doc-module .fields:has(.transfer-picker) .transfer-picker{grid-column:1/-1}.transfer-options [role=option]{min-height:44px}.doc-module .camera-button{display:grid;place-items:center;min-height:52px;width:100%;letter-spacing:.02em}.delivery-files{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:9px;background:#f5f9f5}.delivery-files label{width:100%}.receipt-modes,.receipt-tabs{display:grid;gap:4px}.receipt-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.receipt-modes{grid-template-columns:1fr 1.6fr}.receipt-modes button,.receipt-tabs button{padding:6px;font-size:.9rem}.document-actions{display:grid;margin-top:16px}.document-actions .primary{grid-row:1}.mobile-review{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px}.mobile-review ul{padding:0;margin:0;list-style:none}.mobile-review li,.review-head{display:flex;justify-content:space-between;gap:12px}.mobile-review li{padding:8px 0;border-bottom:1px solid var(--line)}.mobile-review li b{flex-shrink:0}.line-fields.folded,.review-fields.folded{display:none}.line-toggle{margin:0 0 8px auto;font-size:.82rem;color:var(--accent)}.critical-preview thead{display:none}.critical-preview tr{display:grid;align-items:center;grid-template-columns:minmax(0,1fr) auto;gap:1px 10px;border-bottom:1px solid var(--line);padding:4px 0}.critical-preview td{display:none;border:0;padding:0}.critical-preview td[data-column="0"],.critical-preview td[data-column="1"],.critical-preview td[data-column="8"]{display:block}.critical-preview td[data-column="1"]{grid-column:1;grid-row:2;color:var(--muted)}.critical-preview td[data-column="8"]{grid-column:2;grid-row:1/3}.critical-preview table,.critical-preview tbody{display:block}.main .catalog-grid,.main .table-scroll{max-width:100%}.actions button[aria-pressed=true],.report-tabs button[aria-pressed=true]{color:var(--accent);background:var(--tint);border-color:#709c85}.mobile-only{display:grid}.filter-strip,.products-list .filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin:0}.filter-strip{padding:10px}.filter-strip .search-filter{grid-column:auto}.filter-options{display:none}.filter-options.expanded{display:grid;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(min(100%,135px),1fr));gap:8px}.filter-toggle{display:flex;align-items:center;justify-content:center;gap:8px}.desktop-products,.desktop-report{display:none}.mobile-products,.mobile-report{display:grid;gap:6px}.product-summary,.report-item{min-width:0;border:1px solid var(--line);border-radius:9px;background:white}.product-summary>button,.report-summary{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:11px;text-align:left}.product-summary strong,.report-summary strong{font-size:1rem;line-height:1.25}.product-summary small,.report-summary small{display:block;font-weight:400;margin-top:2px}.product-price,.report-summary b{margin-left:auto;text-align:right;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:0 0 auto;max-width:44%}.product-price small{font-size:.77rem}.report-detail{padding:0 12px 12px}.report-detail dl{display:grid;gap:7px;margin:4px 0 12px}.report-detail dl div{display:flex;gap:10px;justify-content:space-between}.report-detail dd{margin:0;text-align:right}.mobile-records thead{display:none}.mobile-records :is(table,tbody){display:block}.mobile-records tr{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;margin:8px 0;padding:10px;border:1px solid var(--line);border-radius:8px}.mobile-records td{display:block;border:0;min-width:0}.mobile-records .row-actions,.mobile-records td:first-child{grid-column:1/-1}.mobile-records td:first-child{font-weight:700}.mobile-records td[data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.76rem}.mobile-records .row-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}.table-scroll,.table-wrap{overscroll-behavior-x:contain}.table-scroll td,.table-scroll th,.table-wrap td,.table-wrap th{padding:7px 6px}.mobile-records td{padding:0}.restaurant-panel form,.restaurant-panel>button{margin-top:10px}.detail-backdrop{z-index:12}.detail-dialog,.receipt-product-dialog{max-height:88dvh;overscroll-behavior:contain}.sign-in .panel{padding:24px}}@media screen and (max-width:420px){.catalog-form .fields,.doc-module .fields{grid-template-columns:1fr}.kpi span{font-size:.82rem}}