:root{color:#142c3d;font-synthesis:none;--brand:#124c66;--muted:#536b7a;--line:#dbe4e9;background:#f3f6f8;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{border:1px solid var(--line);min-height:46px;color:inherit;cursor:pointer;background:#fff;border-radius:10px;padding:10px 16px;font-weight:650}button:hover{background:#f4f9fc;border-color:#7193a5}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--brand);color:#fff;border-color:var(--brand)}button.danger{color:#a62728;border-color:#e9b2b2}button.link{background:0 0;border:0;text-decoration:underline}button.icon{justify-content:center;align-items:center;min-width:46px;padding:10px;display:inline-flex}input,select,textarea{width:100%;min-height:46px;color:inherit;background:#fff;border:1px solid #aec1cc;border-radius:8px;padding:10px 12px}textarea{resize:vertical;min-height:80px}input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--brand);flex-shrink:0}:focus-visible{outline-offset:3px;outline:3px solid #2d8cba}a{color:var(--brand)}h1,h2,h3,p{margin:0}h1{letter-spacing:-.045em;font-size:1.8rem}h2{letter-spacing:-.025em;font-size:1.3rem}h3{font-size:1.05rem}p{color:var(--muted)}small{color:var(--muted);font-size:.85rem}.app-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:16px 28px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--brand);color:#fff;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.brand strong,.brand small{display:block}.user{align-items:center;gap:10px;display:flex}.badge{color:#235d77;background:#e8f1f6;border-radius:6px;padding:4px 8px;font-size:.8rem;font-weight:650;display:inline-flex}.badge.good{color:#276a43;background:#e7f3ec}.badge.warn{color:#794f00;background:#fff0c9}.demo-banner{color:#644200;text-align:center;background:#fff1c7;padding:8px 16px;font-size:.875rem}.shell{max-width:1320px;margin:auto;padding:30px 28px 110px}.heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.heading p{margin-top:3px}.nav{border-top:1px solid var(--line);padding:8px max(12px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom));z-index:10;background:#fff;justify-content:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0}.nav button{width:min(180px,25%);color:var(--muted);border:0;justify-content:center;align-items:center;gap:10px;display:flex}.nav button.active{color:var(--brand);background:#e9f2f7}.sell-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}.mobile-sale-actions,.mobile-payment-back{display:none}.payment-actions>.primary{width:100%}.panel{border:1px solid var(--line);background:#fff;border-radius:16px;min-width:0;padding:22px}.panel h2{margin-bottom:16px}.stack{flex-direction:column;gap:16px;display:flex}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.row.wrap{flex-wrap:wrap}.actions{flex-wrap:wrap;gap:10px;display:flex}.chips{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.chips button{border-radius:24px;font-size:.9rem}.chips button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.product{text-align:left;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:6px;min-height:154px;padding:18px;display:flex;position:relative}.stock-explanation{margin-bottom:12px;font-size:.85rem}.product-stock{color:#276a43;overflow-wrap:anywhere;padding-right:28px;font-size:.8rem;font-weight:600}.product.stock-empty{background:#fff4f2;border-color:#ce7774}.product.stock-empty:hover{background:#ffe7e3}.stock-danger{color:#942d27}.stock-unknown{color:var(--muted)}.cart-stock{margin-top:6px;font-size:.85rem}.cart-line.stock-shortage{border-left:3px solid #b23d35;padding-left:10px}.stock-alert{color:#942d27;background:#fff0ee;border:1px solid #edc0b9;border-radius:10px;padding:12px;font-size:.9rem}.product .name{font-size:1.05rem}.product .price{letter-spacing:-.025em;font-size:1.25rem;font-weight:750}.product .add{background:#e9f2f7;border-radius:8px;padding:3px;display:flex;position:absolute;bottom:15px;right:14px}.product small{font-size:.8rem}.cart{position:sticky;top:20px}.cart-line{border-bottom:1px solid var(--line);padding:15px 0}.cart-line:first-of-type{padding-top:0}.qty{align-items:center;gap:12px;margin-top:12px;display:flex}.qty button{min-width:44px;padding:8px}.qty .remove{margin-left:auto}.total{border-top:1px solid var(--line);padding-top:18px;font-size:1.15rem}.total strong{letter-spacing:-.04em;font-size:1.65rem}.field{flex-direction:column;gap:6px;font-size:.9rem;font-weight:550;display:flex}.field span{color:#3c5363}.check{align-items:center;gap:10px;min-height:44px;font-size:.9rem;display:flex}.empty{text-align:center;padding:36px 16px}.empty h3{margin-bottom:8px}.empty p{max-width:36ch;margin:auto;font-size:.9rem}.notice{color:#234e6a;background:#e8f2fa;border:1px solid #b9d6e7;border-radius:10px;margin-bottom:18px;padding:14px 18px}.notice.error{color:#942d27;background:#fff0ee;border-color:#edc0b9}.notice.warn{color:#765516;background:#fff6df;border-color:#efd69c}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.cash-summary{margin-bottom:28px}.cash-summary>h2{margin-bottom:0}.cash-income .metric{background:#e8f2fa;border-color:#b9d6e7}.payment-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.cash-count{border:0;min-width:0;margin:0;padding:0}.cash-count legend{margin-bottom:12px;font-weight:700}.cash-count .chips{margin-bottom:0}.banknote-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.cash-count-total{background:#e8f2fa;border-radius:10px;padding:14px}.cash-breakdown{margin-top:16px}.metric{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:7px;padding:20px;display:flex}.metric span{color:var(--muted);font-size:.9rem}.metric strong{letter-spacing:-.04em;font-size:1.65rem}.order-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.order .number{letter-spacing:-.04em;font-size:1.8rem;font-weight:800}.order ul{flex-direction:column;gap:10px;padding:15px 0;list-style:none;display:flex}.order li{gap:10px;display:flex}.order .note{background:#f4f7f9;border-radius:8px;margin-bottom:16px;padding:10px}.wide{width:100%}.two-col{grid-template-columns:1fr 1fr;gap:22px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid .full{grid-column:1/-1}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.menu-card{text-align:left;flex-direction:column;gap:8px;min-height:120px;padding:22px;display:flex}.list{flex-direction:column;gap:12px;display:flex}.list-card{border:1px solid var(--line);overflow-wrap:anywhere;background:#fff;border-radius:12px;padding:16px}.list-card h3{margin-bottom:4px}.login{max-width:450px;margin:8vh auto;padding:24px}.login h1{margin:20px 0 8px}.login .panel{margin-top:24px}.success{text-align:center;max-width:480px;margin:40px auto}.success .big-number{letter-spacing:-.06em;color:var(--brand);margin:12px 0;font-size:4rem;font-weight:850}.success svg{color:#278450}.modal-shade{z-index:30;background:#102c3daa;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{overscroll-behavior:contain;background:#fff;border-radius:18px;width:min(540px,100%);max-height:calc(100dvh - 32px);padding:24px;overflow:auto}.modal h2{margin-bottom:18px}.separator{background:var(--line);height:1px;margin:8px 0}.subhead{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:16px 0 10px;font-size:.75rem;font-weight:750}.filters{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.back{margin-bottom:12px}.inline-note{color:var(--muted);font-size:.875rem}.pending{border-left:4px solid #d4a044}.balance{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width>=1000px){.nav{border-bottom:1px solid var(--line);border-top:0;justify-content:flex-start;padding:8px max(28px,50vw - 632px);position:sticky;top:0;bottom:auto}.nav button{width:auto;padding:10px 25px}.shell{padding-bottom:40px}.app-header{padding-inline:max(28px,50vw - 632px)}}@media (width<=1000px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sell-grid{grid-template-columns:minmax(0,1fr) 320px}.order-grid,.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.sell-screen{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.sell-grid,.mobile-sale-actions{touch-action:pan-y pinch-zoom}.cart-checkout,.payment-back-top{display:none}.mobile-sale-actions{bottom:calc(73px + env(safe-area-inset-bottom));z-index:11;padding:10px max(16px, env(safe-area-inset-right)) 8px max(16px, env(safe-area-inset-left));border-top:1px solid var(--line);background:#fff;display:block;position:fixed;left:0;right:0;box-shadow:0 -5px 18px #142c3d0d}.mobile-sale-total{flex-direction:column;min-width:0;display:flex}.mobile-sale-total span{color:var(--muted);font-size:.8rem}.mobile-sale-total strong{overflow-wrap:anywhere;font-size:1.35rem}.mobile-sale-actions button{justify-content:center;align-items:center;gap:10px;min-width:132px;min-height:54px;display:flex}.mobile-sale-actions p{margin-top:6px;font-size:.75rem}.payment-shade.modal-shade{align-items:end;padding:0}.payment-modal.modal{touch-action:pan-y pinch-zoom;border-radius:18px 18px 0 0;width:100%;max-height:calc(100dvh - 16px);padding:20px 16px 0}.payment-actions{padding:12px 0 calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid;position:sticky;bottom:0}.mobile-payment-back{display:block}.app-header{padding:12px 16px}.brand small{font-size:.75rem}.user .badge{display:none}.shell{padding:22px 16px 108px}.heading{margin-bottom:18px}.heading h1{font-size:1.65rem}.heading p{font-size:.9rem}.sell-grid,.two-col{grid-template-columns:1fr}.cart{position:static}.panel{border-radius:13px;padding:18px}.product-grid{gap:10px}.product{min-height:140px;padding:15px}.product .price{font-size:1.1rem}.product .name{font-size:1rem}.nav{gap:0}.nav button{border-radius:9px;flex-direction:column;gap:3px;min-height:56px;padding:5px 6px;font-size:.75rem}.nav svg{width:21px;height:21px}.metrics{grid-template-columns:1fr 1fr;gap:8px}.metric{padding:14px}.metric strong{font-size:1.3rem}.metric:last-child:nth-child(odd){grid-column:1/-1}.order-grid,.form-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.menu-card{padding:16px}.modal{padding:20px}.modal-shade{padding:10px}.success{margin:20px auto}.demo-banner{font-size:.8rem}.row{gap:8px}.login{margin:24px auto;padding:16px}.actions>*{flex-grow:1}}
