:root{--bg:#12100e;--surface:#1c1917;--surface-2:#262220;--line:#38312d;--text:#f7f3ee;--text-dim:#b3a79c;--flame:#ff5a1f;--flame-2:#ff8a3d;--gold:#f2b705;--green:#3fbf6f;--red:#ef4444;--radius:14px;--shell:720px;--scrim:color-mix(in srgb, var(--bg) 92%, transparent);--scrim-solid:color-mix(in srgb, var(--bg) 95%, transparent);--accent-soft:color-mix(in srgb, var(--flame) 12%, transparent);--accent-wash:color-mix(in srgb, var(--flame) 16%, var(--bg));--warn-bg:color-mix(in srgb, var(--gold) 12%, transparent);--warn-line:color-mix(in srgb, var(--gold) 40%, transparent);--warn-text:color-mix(in srgb, var(--gold) 55%, var(--text));--danger-bg:color-mix(in srgb, var(--red) 13%, transparent);--danger-line:color-mix(in srgb, var(--red) 42%, transparent);--danger-text:color-mix(in srgb, var(--red) 55%, var(--text));--ok-text:color-mix(in srgb, var(--green) 45%, var(--text));--ok-glow:color-mix(in srgb, var(--green) 20%, transparent);--danger-glow:color-mix(in srgb, var(--red) 20%, transparent)}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{padding-bottom:env(safe-area-inset-bottom)}a{color:var(--flame-2)}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,textarea,select{font:inherit;border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--text);border-radius:10px;padding:12px 14px;font-size:16px}input:focus,textarea:focus,select:focus{outline:2px solid var(--flame);outline-offset:1px}.shell{max-width:var(--shell);margin:0 auto;padding:0 16px}.masthead{text-align:center;background:radial-gradient(120% 100% at 50% 0%, var(--accent-wash) 0%, var(--bg) 70%);border-bottom:1px solid var(--line);padding:22px 0 16px}.masthead .kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--flame-2);font-size:11px;font-weight:700}.masthead h1{letter-spacing:-.02em;margin:6px 0 4px;font-size:34px;font-weight:800;line-height:1}.masthead .tagline{color:var(--text-dim);margin:0;font-size:14px}.masthead--logo{padding-top:16px}.brandmark{background:#000;border-radius:18px;width:min(268px,64vw);height:auto;margin:0 auto 10px;display:block;box-shadow:0 6px 22px #00000059}@media (min-width:640px){.brandmark{width:308px}}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.status{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);align-items:center;gap:10px;margin:14px 0;padding:12px 14px;display:flex}.status .dot{border-radius:50%;flex:none;width:10px;height:10px}.status.open .dot{background:var(--green);box-shadow:0 0 0 4px var(--ok-glow)}.status.closed .dot{background:var(--red);box-shadow:0 0 0 4px var(--danger-glow)}.status .label{font-weight:700}.status .meta{color:var(--text-dim);font-size:13px}.banner{border-radius:var(--radius);background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-text);margin:12px 0;padding:12px 14px;font-size:14px}.catnav{z-index:20;background:var(--scrim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);scrollbar-width:none;gap:8px;margin:0 -16px;padding:10px 16px;display:flex;position:sticky;top:0;overflow-x:auto}.catnav::-webkit-scrollbar{display:none}.catnav-wrap{flex-wrap:wrap;row-gap:8px;overflow-x:visible}.catnav button{background:var(--surface-2);border:1px solid var(--line);white-space:nowrap;border-radius:999px;flex:none;padding:8px 14px;font-size:14px;font-weight:600}.catnav button[aria-current=true]{background:var(--flame);border-color:var(--flame);color:#fff}.category{padding-top:26px;scroll-margin-top:64px}.category h2{letter-spacing:-.01em;margin:0 0 4px;font-size:22px;font-weight:800}.category .blurb{color:var(--text-dim);margin:0 0 14px;font-size:14px;line-height:1.45}.card{text-align:left;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:14px;transition:border-color .12s,transform 60ms;display:flex}.card:active{transform:scale(.995)}.card:hover:not(:disabled){border-color:var(--flame)}.card:disabled{opacity:.45;cursor:not-allowed}.card .body{flex:1;min-width:0}.card .name{font-size:16px;font-weight:700}.card .desc{color:var(--text-dim);margin-top:2px;font-size:13px}.card .price{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.card .plus{background:var(--flame);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:19px;font-weight:700;display:grid}.badge{background:var(--warn-bg);color:var(--warn-text);letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:10px;font-weight:800;display:inline-block}.badge.out{background:var(--danger-bg);color:var(--danger-text)}.infoblock{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);color:var(--text-dim);padding:14px;font-size:14px;line-height:1.6}.infoblock strong{color:var(--text)}.scrim{z-index:40;background:#0009;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (min-width:640px){.scrim{align-items:center}}.sheet{width:100%;max-width:var(--shell);background:var(--surface);border:1px solid var(--line);border-radius:18px 18px 0 0;flex-direction:column;max-height:88vh;display:flex}@media (min-width:640px){.sheet{border-radius:18px;max-height:84vh}}.sheet header{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:18px 18px 12px;display:flex}.sheet header h3{margin:0;font-size:20px;font-weight:800}.sheet header p{color:var(--text-dim);margin:4px 0 0;font-size:13px}.sheet .x{background:var(--surface-2);border-radius:50%;flex:none;width:32px;height:32px;font-size:18px;line-height:1}.sheet .scroll{-webkit-overflow-scrolling:touch;padding:4px 18px 18px;overflow-y:auto}.sheet footer{padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);border-radius:0 0 18px 18px}.group{padding:16px 0 4px}.group .ghead{align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.group .ghead h4{margin:0;font-size:15px;font-weight:700}.group .req{letter-spacing:.06em;text-transform:uppercase;color:var(--flame-2);font-size:10px;font-weight:800}.group .helper{color:var(--text-dim);margin:0 0 10px;font-size:12.5px}.opt{background:var(--surface-2);border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;margin-bottom:7px;padding:11px 12px;display:flex}.opt.on{border-color:var(--flame);background:var(--accent-soft)}.opt input{width:auto;accent-color:var(--flame);flex:none;margin:0}.opt .oname{flex:1;font-size:15px}.opt .oprice{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:13px}.opt.disabled{opacity:.4}.qty{align-items:center;gap:14px;display:flex}.qty button{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;width:40px;height:40px;font-size:20px;font-weight:700}.qty span{text-align:center;font-variant-numeric:tabular-nums;min-width:26px;font-size:18px;font-weight:800}.btn{background:var(--flame);color:#fff;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:15px 18px;font-size:16px;font-weight:800;display:flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:var(--surface-2);border:1px solid var(--line);color:var(--text)}.btn .spacer{flex:1}.btn .amt{font-variant-numeric:tabular-nums}.cartbar{z-index:30;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 70%, transparent);position:fixed;bottom:0;left:0;right:0}.cartbar .inner{max-width:var(--shell);margin:0 auto}.cartbar .count{background:#00000040;border-radius:999px;place-items:center;min-width:26px;height:26px;padding:0 8px;font-size:13px;font-weight:800;display:grid}.line{border-bottom:1px solid var(--line);gap:12px;padding:14px 0;display:flex}.line:last-of-type{border-bottom:none}.line .lbody{flex:1;min-width:0}.line .lname{font-size:15px;font-weight:700}.line .ldesc{color:var(--text-dim);margin-top:3px;font-size:12.5px;line-height:1.45}.line .lprice{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.line .remove{color:var(--text-dim);margin-top:6px;font-size:12.5px;text-decoration:underline}.totals{border-top:1px solid var(--line);padding:14px 0 4px}.totals .row{color:var(--text-dim);justify-content:space-between;padding:5px 0;font-size:14.5px;display:flex}.totals .row.grand{color:var(--text);padding-top:10px;font-size:18px;font-weight:800}.totals .row span:last-child{font-variant-numeric:tabular-nums}.tips{gap:8px;padding:6px 0 2px;display:flex}.tips button{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;flex:1;padding:11px 4px;font-size:14px;font-weight:700}.tips button[aria-pressed=true]{background:var(--flame);border-color:var(--flame);color:#fff}.field{margin-bottom:12px}.field label{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.field .hint{color:var(--text-dim);font-size:12px;font-weight:400}.error{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger-text);border-radius:10px;margin:10px 0;padding:12px 14px;font-size:14px}#card-container{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;min-height:90px;padding:4px}.wallets{gap:8px;margin-bottom:12px;display:grid}.wallets:empty{display:none}.paydivider{color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:12px;margin:14px 0;font-size:12px;display:flex}.paydivider:before,.paydivider:after{content:"";background:var(--line);flex:1;height:1px}.foot{text-align:center;color:var(--text-dim);padding:34px 0 120px;font-size:13px;line-height:1.7}.foot a{margin:0 8px;display:inline-block}.spin{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex:none;width:17px;height:17px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.kds{min-height:100vh;padding-bottom:40px}.kds-bar{z-index:10;background:var(--scrim-solid);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:18px;display:flex;position:sticky;top:0}.kds-bar strong{font-size:20px;font-weight:800}.kds-count{background:var(--surface-2);color:var(--text-dim);border-radius:999px;margin-left:10px;padding:3px 11px;font-size:14px;font-weight:700}.kds-bar-right{align-items:center;gap:10px;display:flex}.kds-closed{background:var(--danger-bg);color:var(--danger-text);border-radius:999px;padding:5px 11px;font-size:13px;font-weight:800}.kds-toggle{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-size:14px;font-weight:700}.kds-toggle[aria-pressed=false]{opacity:.55}.kds-stay{cursor:pointer;align-items:flex-start;gap:10px;margin:14px 0 16px;display:flex}.kds-stay input{flex:none;width:20px;height:20px;margin-top:1px}.kds-stay span{font-size:14px;font-weight:700}.kds-stay em{color:var(--text-dim);margin-top:2px;font-size:12.5px;font-style:normal;font-weight:500;display:block}.kds-unmute{color:#fff;text-align:center;background:#b91c1c;border:0;width:100%;padding:16px 18px;font-size:20px;font-weight:800;animation:1.2s ease-in-out infinite kds-pulse;display:block}.kds-unmute em{opacity:.9;margin-top:4px;font-size:15px;font-style:normal;font-weight:600;display:block}.kds-unmute-urgent{padding:22px 18px;font-size:23px;box-shadow:inset 0 0 0 4px #fca5a5}.kds-alerting{padding-bottom:110px}.kds-alert{z-index:20;padding-bottom:max(16px, env(safe-area-inset-bottom));background:var(--flame);color:#fff;letter-spacing:.02em;text-align:center;padding:16px 18px;font-size:22px;font-weight:900;animation:.8s ease-in-out infinite kds-pulse;position:fixed;bottom:0;left:0;right:0}.kds-alerting .ticket.s-new{animation:.8s ease-in-out infinite kds-glow}.ticket.s-new.stranded{border-left-color:var(--danger-text);background:var(--danger-bg)}.t-stranded{background:var(--danger-text);color:#fff;border-radius:9px;margin-top:11px;padding:10px 12px;font-size:15px;font-weight:800}@keyframes kds-pulse{50%{opacity:.55}}@keyframes kds-glow{50%{box-shadow:0 0 0 4px var(--flame)}}@media (prefers-reduced-motion:reduce){.kds-unmute,.kds-alert,.kds-alerting .ticket.s-new{animation:none}}.t-src.t-test{color:#7c2d12;background:#fde68a}.t-src.t-warn{background:var(--danger-bg);color:var(--danger-text)}.t-src.t-cash{background:var(--ok-bg,#14532d);color:#fff}.t-check{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger-text);border-radius:9px;margin-top:11px;padding:10px 12px;font-size:15px;font-weight:800}.kds-select{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:9px 10px;font-size:14px;font-weight:700}.kds-history{border-top:1px solid var(--line);margin-top:22px;padding:20px 16px 8px}.kds-history h2{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin:0 0 12px;font-size:15px;font-weight:800}.kds-history h2 span{background:var(--surface-2);letter-spacing:0;border-radius:999px;margin-left:8px;padding:2px 9px}.kds-search{width:100%;max-width:420px;margin-bottom:14px;padding:12px 14px;font-size:16px}.kds-history-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;display:grid}.hrow{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.hrow-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.hrow-code{letter-spacing:.02em;font-size:17px;font-weight:800}.hrow-when{color:var(--text-dim);font-size:12.5px}.hrow-status{background:var(--surface-2);text-transform:uppercase;border-radius:999px;margin-left:auto;padding:2px 9px;font-size:11.5px;font-weight:800}.hrow-status.s-new{background:var(--flame);color:#fff}.hrow-name{flex-wrap:wrap;align-items:center;gap:8px;margin-top:3px;font-size:14.5px;font-weight:700;display:flex}.hrow-lines{margin-top:7px;font-size:13.5px;line-height:1.45}.hrow-detail,.hrow-note{color:var(--text-dim)}.kds-recent{border-top:1px solid var(--line);margin-top:26px;padding:22px 16px 8px}.kds-recent h2{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin:0 0 12px;font-size:15px;font-weight:800}.kds-recent h2 span{background:var(--surface-2);letter-spacing:0;border-radius:999px;margin-left:8px;padding:2px 9px}.kds-recent-row{-webkit-overflow-scrolling:touch;gap:10px;padding-bottom:10px;display:flex;overflow-x:auto}.rticket{background:var(--surface);border:1px solid var(--line);opacity:.75;border-radius:12px;flex:0 0 210px;padding:11px 12px}.r-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.r-code{letter-spacing:.02em;font-size:17px;font-weight:800}.r-took{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.r-name{margin-top:2px;font-size:14px;font-weight:700}.r-lines{color:var(--text-dim);margin-top:5px;font-size:13px;line-height:1.35}.r-undo{background:var(--surface-2);border:1px solid var(--line);width:100%;color:var(--text-dim);border-radius:9px;margin-top:9px;padding:9px;font-size:13px;font-weight:700}.r-undo:disabled{opacity:.5}.kds-empty{text-align:center;color:var(--text);padding:90px 24px}.kds-empty p{margin:10px 0 0;font-size:18px}.kds-dim{color:var(--text-dim);font-size:15px!important}.kds-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:14px;padding:16px;display:grid}.ticket{background:var(--surface);border:1px solid var(--line);border-left:7px solid var(--line);border-radius:14px;flex-direction:column;padding:14px 16px 16px;display:flex}.ticket.s-new{border-left-color:var(--flame);background:color-mix(in srgb, var(--flame) 8%, var(--surface))}.ticket.s-cooking{border-left-color:var(--gold)}.ticket.s-ready{border-left-color:var(--green)}.ticket.s-done{opacity:.4}.ticket.late{box-shadow:inset 0 0 0 1px var(--danger-line)}.t-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.t-code{letter-spacing:.03em;font-size:26px;font-weight:800}.t-age{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:15px;font-weight:800}.t-age.late{color:var(--danger-text)}.t-age-unit{opacity:.7;font-size:12px;font-weight:700}.t-name{flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:3px;font-size:17px;font-weight:700;display:flex}.t-phone{color:var(--text-dim);font-size:14px;font-weight:500}.t-lines{margin:13px 0 0;padding:0;list-style:none}.t-lines li{border-top:1px solid var(--line);gap:10px;padding:9px 0;font-size:17px;line-height:1.35;display:flex}.t-qty{color:var(--flame-2);flex:none;min-width:30px;font-weight:800}.t-item{font-weight:700;display:block}.t-detail{color:var(--text-dim);margin-top:3px;font-size:15px;display:block}.t-note{color:var(--warn-text);margin-top:4px;font-size:15px;font-weight:700;display:block}.t-ordernote{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-text);border-radius:9px;margin-top:11px;padding:9px 11px;font-size:15px;font-weight:600}.t-actions{gap:8px;margin-top:14px;display:flex}.t-go{background:var(--flame);color:#fff;border-radius:11px;flex:1;padding:16px;font-size:17px;font-weight:800}.ticket.s-cooking .t-go{background:var(--green);padding:20px 16px;font-size:18px}.ticket.s-ready .t-go{background:var(--surface-2);border:1px solid var(--green);color:var(--ok-text)}.t-go:disabled,.t-undo:disabled,.t-back:disabled{opacity:.5}.t-back,.t-undo{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:11px;padding:16px 15px;font-size:15px;font-weight:700}.t-undo{flex:1}.hours-odd{border-top:1px dashed var(--line-strong);margin-top:14px;padding-top:14px}.hours-odd-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px;font-size:13px;font-weight:800}.hours-odd-row{margin-bottom:10px}.hours-odd-row>strong{margin-bottom:6px;font-size:15px;display:block}.hours-odd-add{flex-wrap:wrap;gap:6px;display:flex}.hours-odd-add button{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:9px 13px;font-size:14px;font-weight:700}.hours-odd-add button:disabled{opacity:.5}.hours-drop{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:9px;align-self:end;padding:11px 13px;font-size:14px;font-weight:700}.hours-add{background:var(--surface-2);border:1px dashed var(--line-strong);width:100%;color:var(--text);border-radius:10px;margin-top:10px;padding:13px;font-size:15px;font-weight:700}.hours-add:disabled,.hours-drop:disabled{opacity:.5}.link-btn{color:var(--flame-2);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.link-btn:disabled{opacity:.5}.mode-box{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:0 0 14px;padding:13px 15px}.mode-box.is-event{border-color:var(--flame);background:color-mix(in srgb, var(--flame) 12%, var(--surface))}.mode-now{margin-bottom:9px;font-size:15px;font-weight:800}.mode-pick{gap:8px;display:flex}.mode-pick button{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:10px;flex:1;padding:12px;font-size:15px;font-weight:700}.mode-pick button[aria-pressed=true]{background:var(--flame);border-color:var(--flame);color:#fff}.mode-pick button:disabled{opacity:.5}.hours-box{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:0 0 20px;padding:14px 15px}.hours-toggle{cursor:pointer;align-items:flex-start;gap:11px;display:flex}.hours-toggle input{flex:none;width:20px;height:20px;margin-top:2px}.hours-toggle strong{font-size:15px;display:block}.hours-toggle em{color:var(--text-dim);margin-top:2px;font-size:13px;font-style:normal;display:block}.hours-days{flex-wrap:wrap;gap:6px;margin:13px 0 0;display:flex}.hours-days button{background:var(--surface-2);border:1px solid var(--line);min-width:52px;color:var(--text-dim);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}.hours-days button[aria-pressed=true]{background:var(--flame);border-color:var(--flame);color:#fff}.hours-times{gap:12px;margin-top:12px;display:flex}.hours-times label{flex:1;font-size:13px;font-weight:700}.hours-times select{width:100%;margin-top:5px}.kiosk{min-height:100vh;padding:0 0 120px}.kiosk-head{text-align:center;padding:26px 24px 14px}.kiosk-head h1{margin:0;font-size:34px;font-weight:800}.kiosk-head p{color:var(--text-dim);margin:6px 0 0;font-size:18px}.kiosk-tabs{-webkit-overflow-scrolling:touch;gap:10px;padding:10px 20px 14px;display:flex;overflow-x:auto}.kiosk-tabs button{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:999px;flex:none;padding:14px 22px;font-size:18px;font-weight:700}.kiosk-tabs button[aria-current=true]{background:var(--flame);border-color:var(--flame);color:#fff}.kiosk-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;padding:6px 20px;display:grid}.kiosk-item{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;min-height:104px;padding:20px;display:flex}.kiosk-item:disabled{opacity:.45}.ki-name{font-size:20px;font-weight:700}.ki-price{color:var(--flame-2);font-size:19px;font-weight:800}.kiosk-bar{z-index:20;padding:16px 20px calc(16px + env(safe-area-inset-bottom));background:var(--scrim-solid);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;font-size:19px;font-weight:700;display:flex;position:fixed;bottom:0;left:0;right:0}.kiosk-bar button{background:var(--flame);color:#fff;border-radius:14px;padding:18px 28px;font-size:19px;font-weight:800}.kiosk-review{max-width:620px;margin:0 auto;padding:26px 22px}.kiosk-review h1{margin:0 0 16px;font-size:30px;font-weight:800}.kiosk-empty{color:var(--text-dim);font-size:18px}.kiosk-lines{margin:0 0 20px;padding:0;list-style:none}.kiosk-lines li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 0;font-size:19px;display:flex}.kq{color:var(--flame-2);font-weight:800}.kn{flex:1;font-weight:600}.kiosk-remove{color:var(--text-dim);font-size:16px;text-decoration:underline}.kiosk-name{margin-bottom:18px;font-size:17px;font-weight:700;display:block}.kiosk-name span{color:var(--text-dim);font-weight:500}.kiosk-name input{margin-top:8px;padding:16px;font-size:19px}.kiosk-item.is-added{border-color:var(--green);background:color-mix(in srgb, var(--green) 22%, var(--surface))}.kiosk-item.is-added .ki-price{color:var(--ok-text,#fff);font-weight:800}.kiosk-total{border-top:2px solid var(--line);justify-content:space-between;align-items:baseline;padding:16px 0;font-size:20px;display:flex}.kiosk-total strong{font-size:28px;font-weight:800}.kiosk-total-dual{display:block}.kiosk-total-dual>div{justify-content:space-between;align-items:baseline;padding:4px 0;font-size:19px;display:flex}.kiosk-total-dual>div:first-of-type strong{color:var(--flame-2);font-size:30px}.kiosk-total-dual>div:last-of-type{color:var(--text-dim)}.kiosk-total-dual>div:last-of-type strong{font-size:22px;font-weight:700}.kiosk-total-dual p{color:var(--text-dim);margin:8px 0 0;font-size:15px;font-weight:600}.sign-copy{border-left:4px solid var(--flame);background:var(--surface-2);border-radius:0 10px 10px 0;margin:8px 0 12px;padding:14px 16px;font-size:16px;font-weight:700;line-height:1.45}.kiosk-pay{background:var(--flame);color:#fff;border-radius:16px;width:100%;margin-top:10px;padding:24px;font-size:22px;font-weight:800}.kiosk-pay:disabled{opacity:.5}.kiosk-cash{background:var(--surface-2);border:1px solid var(--line);color:var(--text);margin-top:12px}.kiosk-cash em{color:var(--text-dim);margin-top:4px;font-size:15px;font-style:normal;font-weight:600;display:block}.kiosk-back,.kiosk-cancel{background:var(--surface-2);border:1px solid var(--line);width:100%;color:var(--text);border-radius:14px;margin-top:12px;padding:18px;font-size:18px;font-weight:700}.kiosk-cancel{color:var(--text-dim);font-size:16px}.kiosk-result{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:100vh;padding:30px;display:flex}.kiosk-result h1{margin:0;font-size:34px;font-weight:800}.kiosk-result p{color:var(--text-dim);margin:6px 0 0;font-size:19px}.kiosk-tick{background:var(--ok-bg,#14532d);color:#fff;border-radius:50%;place-items:center;width:88px;height:88px;margin-bottom:10px;font-size:46px;font-weight:800;display:grid}.kiosk-code{letter-spacing:.04em;font-weight:800;color:var(--text)!important;font-size:46px!important}.kiosk-flag{font-weight:700;color:var(--warn-text)!important}.kiosk-again{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:14px;margin-top:26px;padding:18px 30px;font-size:18px;font-weight:700;text-decoration:none}.hf-bar{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.hf-head{background:var(--surface);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;padding:13px 15px;display:flex}.hf-head strong{font-size:16px}.hf-head span{color:var(--text-dim);font-size:12.5px}.hf-head.bad{background:var(--danger-bg);border-color:var(--danger-line)}.hf-head.bad strong{color:var(--danger-text)}.hf-head.good strong{color:var(--ok-text)}.hf{background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--line);border-radius:12px;margin-bottom:12px;padding:14px 15px}.hf h3{margin:0 0 6px;font-size:15.5px;font-weight:800}.hf-detail{margin:0 0 8px;font-size:14px;line-height:1.5}.hf-rec{color:var(--text-dim);margin:0 0 10px;font-size:14px;line-height:1.5}.hf-done{color:var(--ok-text);margin:0;font-size:14px;font-weight:700}.hf button em{opacity:.75;font-style:normal;font-weight:500}.hf-critical{border-left-color:var(--danger-text)}.hf-warning{border-left-color:var(--gold)}.hf-info{border-left-color:var(--line)}.ins-ranges{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.ins-range{background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:700}.ins-range[aria-current=true]{background:var(--flame);border-color:var(--flame);color:#fff}.ins-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.ins-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:3px;padding:13px 14px;display:flex}.ins-card strong{font-variant-numeric:tabular-nums;font-size:25px;font-weight:800}.ins-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:12px;font-weight:700}.ins-sub{color:var(--text-dim);font-size:12.5px;line-height:1.35}.ins-sub.d-up{color:var(--ok-text)}.ins-sub.d-down{color:var(--danger-text)}.ins-facts{color:var(--text-dim);flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:13.5px;display:flex}.ins-facts strong{color:var(--text)}.ins-chart{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:flex-end;gap:4px;height:110px;margin-top:16px;padding:10px 10px 0;display:flex}.ins-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.ins-bar-fill{background:var(--flame);border-radius:4px 4px 0 0;width:100%;min-height:2px}.ins-bar span{color:var(--text-dim);font-size:10px}.ins-head{margin:26px 0 8px;font-size:16px;font-weight:700}.ins-table{border:1px solid var(--line);border-radius:12px;overflow:hidden}.ins-row{grid-template-columns:1fr 58px 84px 84px;align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:grid}.ins-row+.ins-row{border-top:1px solid var(--line)}.ins-row span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.ins-row-head{background:var(--surface-2);text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-size:12px;font-weight:800}.ins-dim{color:var(--text-dim);font-size:12.5px;font-style:normal}.ins-ai{border:1px dashed var(--line);background:var(--surface);border-radius:12px;margin-top:12px;padding:14px 15px}.ins-ai pre{white-space:pre-wrap;word-break:break-word;font:inherit;margin:0 0 10px;font-size:14.5px;line-height:1.5}.edit-list{padding-bottom:96px}.edit-row{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.edit-fields{flex:1;min-width:0}.edit-fields input{padding:9px 11px}.edit-name{font-weight:700}.edit-desc{color:var(--text-dim);margin-top:5px;font-size:14px}.edit-price{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;flex:none;align-items:center;gap:2px;width:100px;padding:0 9px;font-weight:800;display:flex}.edit-price.bad{border-color:var(--red);background:var(--danger-bg)}.edit-price input{font-variant-numeric:tabular-nums;background:0 0;border:none;padding:10px 0;font-weight:800}.edit-price input:focus{outline:none}.edit-price:focus-within{outline:2px solid var(--flame);outline-offset:1px}.edit-save{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);margin:0 -16px;position:sticky;bottom:0}.edit-save .helper{margin-bottom:0}.theme-grid{gap:10px;display:grid}.theme-card{text-align:left;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);align-items:center;gap:13px;width:100%;padding:11px;display:flex}.theme-card.on{border-color:var(--flame);background:var(--accent-soft)}.theme-swatch{border:1px solid var(--line);border-radius:10px;flex:none;grid-template-columns:1fr 1fr;gap:3px;width:46px;height:46px;padding:5px;display:grid}.theme-swatch span{border-radius:3px}.theme-meta{min-width:0}.theme-name{font-size:15px;font-weight:700}.theme-blurb{color:var(--text-dim);margin-top:2px;font-size:13px}.accent-row{align-items:center;gap:12px;display:flex}.accent-swatch{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:10px;flex:none;width:54px;height:44px;padding:3px}.accent-hex{color:var(--text-dim);text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.theme-preview{border-radius:var(--radius);background:var(--bg);border:1px dashed var(--line);padding:14px}.theme-preview .status{margin-top:0}.mapwrap{aspect-ratio:16/10;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);max-height:300px;text-decoration:none;display:block;position:relative;overflow:hidden}@media (min-width:640px){.mapwrap{aspect-ratio:21/9}}.maptiles{display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.maptiles img{filter:saturate(.85)brightness(.96);display:block;position:absolute}.mappin{background:var(--flame);border:3px solid #fff;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;position:absolute;top:50%;left:50%;box-shadow:0 2px 8px #00000073}.mappin:after{content:"";border:2px solid var(--flame);opacity:.45;border-radius:50%;position:absolute;inset:-9px}.mapattrib{color:#333;background:#ffffffd1;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:600;position:absolute;bottom:5px;right:6px}.mapwrap--fallback{background:var(--surface);color:var(--text);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.mapfallback-pin{font-size:30px}.mapfallback-label{text-align:center;padding:0 16px;font-size:15px;font-weight:700}.mapfallback-cta{color:var(--flame-2);font-size:14px;font-weight:700}.findus-section h2{text-align:center}.findus{margin-top:14px}.findus-addr{text-align:center;margin-bottom:16px}.findus-line1{font-size:18px;font-weight:800}.findus-line2{color:var(--text-dim);margin-top:2px;font-size:15px}.findus-actions{gap:8px;display:grid}@media (min-width:480px){.findus-actions{grid-template-columns:1fr 1fr}}.findus-actions .btn{text-decoration:none}.findus-contact{flex-wrap:wrap;justify-content:center;gap:6px 18px;margin-top:16px;font-size:15px;display:flex}.sec{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin-bottom:10px;padding:12px}.sec.off{opacity:.55}.sec-head{align-items:flex-start;gap:11px;display:flex}.sec-order{flex-direction:column;flex:none;gap:4px;display:flex}.sec-order button{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;width:34px;height:28px;font-size:14px;font-weight:700}.sec-order button:disabled{opacity:.3}.sec-id{flex:1;min-width:0}.sec-kind{font-size:15px;font-weight:700}.sec-note{color:var(--text-dim);margin-top:2px;font-size:12.5px;line-height:1.4}.sec-toggle{flex:none;align-items:center;gap:7px;font-size:13px;display:flex}.sec-toggle input{width:auto;accent-color:var(--flame);margin:0}.sec-body{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.sec-body .field:last-of-type{margin-bottom:8px}.sec-remove{color:var(--danger-text);font-size:13px;text-decoration:underline}.photo{align-items:center;gap:10px;margin-top:8px;display:flex}.photo-slot{background:var(--surface-2);border:1px dashed var(--line);border-radius:10px;flex:none;place-items:center;width:62px;height:62px;display:grid;overflow:hidden}.photo-slot.has{border-style:solid}.photo-slot img{object-fit:cover;width:100%;height:100%}.photo-slot:disabled{opacity:.45}.photo-plus{color:var(--text-dim);font-size:20px}.photo-actions{gap:12px;display:flex}.photo-link{color:var(--flame-2);font-size:13.5px;font-weight:700;text-decoration:underline}.photo-link.danger{color:var(--danger-text)}.photo-link:disabled{opacity:.5;text-decoration:none}.photo-error{color:var(--danger-text);flex-basis:100%;font-size:13px}.edit-item{border-bottom:1px solid var(--line);padding:10px 0}.edit-item .edit-row{border-bottom:none;padding:0}.card-photo{object-fit:cover;background:var(--surface-2);border-radius:10px;flex:none;width:62px;height:62px}.sheet-photo{aspect-ratio:16/9;object-fit:cover;background:var(--surface-2);border-radius:12px;width:100%;margin:14px 0 2px;display:block}.review-links{gap:8px;display:grid}@media (min-width:480px){.review-links{grid-template-columns:1fr 1fr}}.review-links .btn{text-decoration:none}.review-toggle{color:var(--flame-2);margin:14px auto 0;font-size:14.5px;font-weight:600;text-decoration:underline;display:block}.review-form{margin-top:16px}.add-sections{gap:8px;margin-top:12px;display:grid}.rev{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);padding:16px}.rev-stars{justify-content:center;gap:4px;display:flex}.rev-star{color:var(--line);padding:2px 4px;font-size:34px;line-height:1;transition:color .1s,transform 60ms}.rev-star.on{color:var(--gold)}.rev-star:active{transform:scale(.9)}.rev-note{text-align:center;color:var(--text-dim);margin:12px 0 0;font-size:14.5px;line-height:1.5}.rev-links{gap:8px;margin-top:14px;display:grid}.rev-links .btn{text-decoration:none}.rev-toggle{text-align:center;width:100%;color:var(--flame-2);margin-top:14px;padding:4px;font-size:14px;font-weight:600;text-decoration:underline;display:block}.rev-form{border-top:1px solid var(--line);margin-top:16px;padding-top:4px}.rev-form .field:first-of-type{margin-top:12px}.stars{color:var(--gold);letter-spacing:1px;margin-right:8px}.stars-off{color:var(--line)}.ing{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin-bottom:10px;padding:14px}.ing .field{margin-bottom:10px}.ing-grid{grid-template-columns:1fr 1fr;gap:0 10px;display:grid}.ing-conv{border-top:1px solid var(--line);color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;padding-top:6px;font-size:13.5px;display:flex}.ing-unit{width:84px;padding:8px 10px;font-size:15px}.ing-eg{color:var(--flame-2);font-variant-numeric:tabular-nums;margin:8px 0 10px;font-size:13px}.rec{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin-bottom:8px}.rec-head{text-align:left;align-items:center;gap:10px;width:100%;padding:13px 14px;display:flex}.rec-name{flex:1;font-size:15px;font-weight:700}.rec-meta{color:var(--text-dim);font-size:12.5px}.rec-caret{text-align:center;width:22px;color:var(--text-dim);font-size:18px}.rec-body{border-top:1px solid var(--line);padding:0 14px 14px}.rec-group{letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px;padding-top:10px;font-size:12px;font-weight:800}.rec-choice{border-left:2px solid var(--line);margin-bottom:6px;padding:8px 0 8px 10px}.rec-choice-name{margin-bottom:4px;font-size:14px;font-weight:600}.rr{padding-top:8px}.rr-row{align-items:center;gap:8px;padding:5px 0;display:flex}.rr-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.rr-qty{text-align:right;width:74px;padding:8px 10px;font-size:15px}.rr-unit{width:44px;color:var(--text-dim);font-size:13px}.rr-cost{text-align:right;width:62px;color:var(--flame-2);font-variant-numeric:tabular-nums;font-size:13px}.rr-x{background:var(--surface-2);width:26px;height:26px;color:var(--text-dim);border-radius:6px;font-size:15px}.rr-add{margin-top:6px;padding:9px 10px;font-size:14px}.cost-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px 0;display:flex}.cost-name{flex:1;min-width:0;font-size:15px;font-weight:600}.cost-nums{font-variant-numeric:tabular-nums;align-items:baseline;gap:12px;font-size:14px;display:flex}.cost-cogs{color:var(--text-dim)}.cost-none{color:var(--text-dim);font-size:12.5px;font-style:italic}.cost-margin{text-align:right;min-width:62px;color:var(--green);font-weight:800}.cost-margin.thin{color:var(--gold)}.cost-margin.partial{color:var(--text-dim)}.item-tools{align-items:center;gap:14px;margin-top:8px;display:flex}.item-new{letter-spacing:.05em;text-transform:uppercase;color:var(--flame-2);font-size:11px;font-weight:800}.hidden-list{background:var(--surface-2);border-radius:10px;margin:8px 0 4px;padding:8px 10px}.hidden-row{color:var(--text-dim);justify-content:space-between;align-items:center;gap:12px;padding:5px 0;font-size:13.5px;display:flex}.add-item{margin-top:10px}.add-form{border-radius:var(--radius);background:var(--surface);border:1px dashed var(--line);margin-top:10px;padding:14px}.add-actions{grid-template-columns:1fr auto;gap:8px;display:grid}.add-actions .btn.ghost{width:auto;padding:15px 18px}.t-src{vertical-align:middle;background:var(--surface-2);border:1px solid var(--line);color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;margin-left:10px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-block}
