.console-body{background:var(--surface);color:var(--text);font-family:var(--body);overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;margin:0}main{padding-top:0}.lucid{grid-template-rows:auto 1fr auto;height:100dvh;display:grid}.booting{color:var(--text-faint);margin:auto;font-size:.875rem}.app-head{padding:max(.75rem,env(safe-area-inset-top)) 1rem .75rem;border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:.75rem;display:flex}.app-back{font-family:var(--logo);letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);flex:none;font-size:.5625rem;font-weight:500;text-decoration:none}.app-back:hover{color:var(--console)}.app-title{font-family:var(--display);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8125rem;overflow:hidden}.app-right{flex:none;align-items:center;gap:.5rem;display:flex}.app-loc{appearance:none;cursor:pointer;font-family:var(--logo);letter-spacing:.14em;text-transform:uppercase;color:var(--text);border:1px solid var(--line);background:0 0;border-radius:100px;padding:.3rem .7rem;font-size:.5625rem}.app-loc:hover{border-color:var(--console);color:var(--console)}.app-loc[hidden]{display:none}.app-staff{font-family:var(--logo);letter-spacing:.14em;text-transform:uppercase;color:var(--console);border:1px solid var(--console);border-radius:100px;padding:.3rem .6rem;font-size:.5625rem}.app-net:not(:empty){font-family:var(--logo);letter-spacing:.14em;text-transform:uppercase;color:var(--altair);border:1px solid var(--altair);border-radius:100px;padding:.3rem .6rem;font-size:.5625rem}.app-main.solo{grid-row:1/-1;align-content:center;width:100%;max-width:44rem;margin-inline:auto}.app-main{-webkit-overflow-scrolling:touch;align-content:start;gap:1rem;padding:1rem 1rem 1.5rem;display:grid;overflow-y:auto}@media (width>=820px){.app-main{width:100%;max-width:70rem;margin-inline:auto;padding:1.5rem clamp(1.5rem,6vw,4rem) 2rem}}.app-nav{border-top:1px solid var(--line);background:var(--surface);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(6,1fr);display:grid}.navbtn{appearance:none;cursor:pointer;color:var(--text-faint);background:0 0;border:0;justify-items:center;gap:.25rem;padding:.7rem .25rem .8rem;transition:color .2s;display:grid}.navbtn svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.navbtn-label{font-family:var(--logo);letter-spacing:.14em;text-transform:uppercase;font-size:.5rem}.navbtn.on{color:var(--console)}.navbtn:active{transform:translateY(1px)}.till-grid{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.6rem;display:grid}.tile{appearance:none;cursor:pointer;text-align:left;background:var(--surface-card);min-height:5.5rem;color:var(--text);border:1px solid var(--line);border-radius:14px;align-content:start;gap:.25rem;padding:.85rem .9rem;transition:border-color .15s,transform .1s,background .15s;display:grid}.tile:active{border-color:var(--console);background:var(--surface-2);transform:scale(.97)}.tile-name{font-size:.9375rem;font-weight:600;line-height:1.25}.tile-price{font-family:var(--logo);color:var(--console);letter-spacing:.02em;font-size:.75rem}.tile-stock{color:var(--text-faint);font-size:.6875rem}.tile.out{opacity:.5}.tile.out .tile-stock{color:var(--alert)}.basket{background:var(--surface);border-top:1px solid var(--line);gap:.6rem;margin:0 -1rem -1.5rem;padding:.75rem 1rem 1rem;display:grid;position:sticky;bottom:0}.basket-idle{text-align:center;color:var(--text-faint);margin:0;padding:.5rem 0;font-size:.8125rem}.basket.has{box-shadow:0 -20px 40px -30px #00000080}.basket-lines{gap:0;max-height:32vh;display:grid;overflow-y:auto}.bline{border-bottom:1px solid var(--line-soft);grid-template-columns:2rem 2rem 1fr auto;align-items:center;gap:.6rem;padding-block:.5rem;display:grid}.bline-minus{appearance:none;cursor:pointer;border:1px solid var(--line);width:2rem;height:2rem;color:var(--text);background:0 0;border-radius:50%;font-size:1.1rem;line-height:1}.bline-qty{font-family:var(--logo);color:var(--console);font-size:.8125rem}.bline-name{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.bline-sum{font-family:var(--logo);font-variant-numeric:tabular-nums;font-size:.8125rem}.basket-foot{justify-content:space-between;align-items:center;gap:1rem;display:flex}.basket-clear{appearance:none;cursor:pointer;font-family:var(--logo);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);background:0 0;border:0;padding:.3rem 0;font-size:.5625rem}.basket-total{align-items:baseline;gap:.6rem;display:flex}.basket-total-label{font-family:var(--logo);letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);font-size:.5625rem}.basket-total strong{font-family:var(--display);letter-spacing:-.02em;font-size:1.05rem}.charge-row{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.charge-row.three{grid-template-columns:1fr 1fr 1fr}.charge{appearance:none;cursor:pointer;border:0;border-radius:12px;justify-items:center;gap:.15rem;padding:.9rem .75rem;transition:transform .1s,filter .15s;display:grid}.charge:active{filter:brightness(1.1);transform:scale(.98)}.charge-k{font-family:var(--logo);letter-spacing:.18em;text-transform:uppercase;opacity:.85;font-size:.5625rem}.charge-v{font-family:var(--display);letter-spacing:-.02em;font-size:.9375rem}.charge.cash{background:var(--console);color:#fff}.charge.mobile{background:var(--surface-deep);color:var(--on-deep)}.charge.credit{border:1px solid var(--altair);color:var(--altair);background:0 0}.panel{background:var(--surface-card);border:1px solid var(--line);border-radius:16px;gap:.75rem;padding:1rem;display:grid}.panel-label{font-family:var(--logo);letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);margin:0;font-size:.5625rem;font-weight:500}.warnpanel{border-color:var(--altair)}.dangerpanel{border-color:var(--alert)}.stats{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.6rem;display:grid}.stat{background:var(--surface-card);border:1px solid var(--line);border-radius:14px;gap:.2rem;padding:.85rem .9rem;display:grid}.stat-k{font-family:var(--logo);letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);font-size:.5rem}.stat-v{font-family:var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1rem}.stat-sub{color:var(--text-faint);font-size:.6875rem}.rows{gap:0;display:grid}.row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:1rem;padding-block:.55rem;display:flex}.row:last-child{border-bottom:0}.row-k{color:var(--text-soft);font-size:.875rem}.row-v{font-family:var(--logo);font-variant-numeric:tabular-nums;font-size:.8125rem}.gap{border-radius:12px;justify-content:space-between;align-items:baseline;gap:1rem;margin-top:.25rem;padding:.9rem 1rem;display:flex}.gap-k{font-family:var(--logo);letter-spacing:.16em;text-transform:uppercase;font-size:.625rem}.gap-v{font-family:var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.25rem}.gap.level{background:color-mix(in srgb,var(--console) 12%,transparent);color:var(--console)}.gap.short{background:color-mix(in srgb,var(--alert) 14%,transparent);color:var(--alert)}.gap.over{background:color-mix(in srgb,var(--altair) 16%,transparent);color:var(--altair)}.close-note{color:var(--text-soft);margin:0;font-size:.8125rem}.feed{gap:0;display:grid}.feed-row{border-bottom:1px solid var(--line-soft);grid-template-columns:2.75rem 1fr auto auto;align-items:center;gap:.6rem;padding-block:.6rem;display:grid}.feed-row:last-child{border-bottom:0}.feed-time{font-family:var(--logo);color:var(--text-faint);font-size:.625rem}.feed-what{gap:.1rem;min-width:0;display:grid}.feed-items{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.feed-meta{color:var(--text-faint);font-size:.625rem}.feed-sum{font-family:var(--logo);font-variant-numeric:tabular-nums;font-size:.75rem}.feed-void{appearance:none;cursor:pointer;font-family:var(--logo);letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);background:0 0;border:0;padding:.25rem .35rem;font-size:.5rem}.feed-void:hover{color:var(--alert)}.addgrid{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}@media (width>=520px){.addgrid{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}}.addgrid.three{grid-template-columns:1fr 1fr}@media (width>=620px){.addgrid{grid-template-columns:2fr 1fr 1fr 1fr}.addgrid.three{grid-template-columns:1fr 1fr 2fr}}.items{gap:0;display:grid}.item{border-bottom:1px solid var(--line-soft)}.item:last-child{border-bottom:0}.item-head{appearance:none;cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:0;grid-template-columns:1fr auto auto;align-items:center;gap:.75rem;padding:.75rem 0;display:grid}.item-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;overflow:hidden}.item-price{font-family:var(--logo);color:var(--text-soft);font-variant-numeric:tabular-nums;font-size:.75rem}.item-stock{font-family:var(--logo);text-align:right;min-width:3.5rem;color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.6875rem}.item-stock.low{color:var(--altair)}.item-stock.out{color:var(--alert)}.item-edit{gap:.9rem;padding:.25rem 0 1rem;display:grid}.edit-block{gap:.5rem;display:grid}.edit-label{font-family:var(--logo);letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);margin:0;font-size:.5rem}.edit-row{grid-template-columns:1fr auto;align-items:start;gap:.5rem;display:grid}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1px solid var(--line);color:var(--text-soft);border-radius:100px;align-items:baseline;gap:.4rem;padding:.4rem .75rem;font-size:.75rem;display:inline-flex}.chip strong{color:var(--text);font-weight:600}.chip--out{border-color:var(--alert);color:var(--alert)}.chip--pick{cursor:pointer;font-family:var(--logo);letter-spacing:.1em;text-transform:uppercase;background:0 0;font-size:.625rem}.chip--pick.on{border-color:var(--console);color:var(--console)}.tabs{gap:.4rem;display:flex}.tab{appearance:none;cursor:pointer;border:1px solid var(--line);font-family:var(--logo);letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);background:0 0;border-radius:100px;padding:.45rem .9rem;font-size:.5625rem}.tab.on{border-color:var(--console);color:var(--console)}.bars{align-items:flex-end;gap:.25rem;height:7rem;display:flex;overflow-x:auto}.bar{flex:1;align-content:end;justify-items:center;gap:.3rem;min-width:1.1rem;height:100%;display:grid}.bar-fill{background:linear-gradient(var(--console),color-mix(in srgb,var(--console) 45%,transparent));border-radius:4px 4px 0 0;width:100%}.bar-k{font-family:var(--logo);color:var(--text-faint);font-size:.5rem}.field{width:100%;font-family:var(--body);background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:.7rem .75rem;font-size:1rem}.field:focus{border-color:var(--console);outline:none}.field.big{font-family:var(--display);letter-spacing:-.02em;text-align:center;padding:.9rem;font-size:1.25rem}.field-label{font-family:var(--logo);letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);font-size:.5rem}.btn{appearance:none;cursor:pointer;font-family:var(--body);border:1px solid #0000;border-radius:10px;padding:.7rem 1.1rem;font-size:.875rem;font-weight:500;transition:filter .15s,transform .1s}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--console);color:#fff}.btn.ghost{border-color:var(--line);color:var(--text);background:0 0}.btn.danger{background:var(--alert);color:#fff}.btn.danger-quiet{border-color:var(--line);color:var(--alert);background:0 0}.btn.wide{width:100%}.hint{color:var(--text-faint);margin:0;font-size:.75rem;line-height:1.5}.hint.standalone{padding:0}.welcome{gap:1rem}.welcome-h{font-family:var(--display);letter-spacing:-.02em;margin:.2rem 0 0;font-size:clamp(1.05rem,.9rem + .9vw,1.5rem);font-weight:400}.cats{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem;display:grid}.cat{appearance:none;cursor:pointer;text-align:left;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:12px;gap:.2rem;padding:.85rem .9rem;display:grid}.cat.on{border-color:var(--console);background:var(--surface-2)}.cat-name{font-size:.9375rem;font-weight:600}.cat-sub{color:var(--text-faint);font-size:.6875rem}.welcome-actions{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.4rem;display:grid}.empty{text-align:center;justify-items:center;gap:.6rem;padding:clamp(2.5rem,12vh,5rem) 1rem;display:grid}.empty-title{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:1rem}.empty-body{color:var(--text-soft);max-width:28ch;margin:0;font-size:.875rem}.empty .btn{margin-top:.5rem}.sheet-wrap{z-index:200;opacity:0;background:#00000080;place-items:end center;transition:opacity .22s;display:grid;position:fixed;inset:0}.sheet-wrap.in{opacity:1}@media (width>=620px){.sheet-wrap{align-items:center}}.sheet{background:var(--surface-card);border:1px solid var(--line);border-radius:16px;gap:.6rem;width:min(100%,28rem);margin:.75rem;padding:1.25rem;transition:transform .22s cubic-bezier(.2,.8,.2,1);display:grid;transform:translateY(12px)}.sheet-wrap.in .sheet{transform:none}.sheet h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:1rem}.sheet p{color:var(--text-soft);margin:0;font-size:.875rem}.sheet-actions{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem;display:grid}.sheet-actions.one{grid-template-columns:1fr}.picker{gap:.4rem;max-height:44vh;margin-top:.6rem;display:grid;overflow-y:auto}.pick{appearance:none;cursor:pointer;text-align:left;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:10px;gap:.15rem;padding:.8rem .9rem;display:grid}.pick:active{border-color:var(--console)}.pick-name{font-size:.9375rem;font-weight:600}.pick-sub{color:var(--text-faint);font-size:.75rem}.toasts{z-index:180;pointer-events:none;justify-items:center;gap:.4rem;display:grid;position:fixed;bottom:5.5rem;left:0;right:0}.toast{background:var(--surface-deep);color:var(--on-deep);opacity:0;border-radius:100px;padding:.55rem 1.1rem;font-size:.8125rem;transition:opacity .25s,transform .25s;transform:translateY(8px);box-shadow:0 16px 32px -18px #0009}.toast.in{opacity:1;transform:none}.toast--warn{background:var(--alert);color:#fff}@media (prefers-reduced-motion:reduce){.btn,.tile,.charge,.sheet,.toast{transition:none}.btn:active,.tile:active,.charge:active{transform:none}}
