:root{--red: #cf2f24;--red-dark: #a3211a;--yellow: #f2c541;--cream: #f6efe1;--cream-dark: #e6dcc6;--ink: #241c14;--ink-soft: #5d5245;--panel: #fffaf0;--shell: #2a211a;--line: #d6c9ae;--shadow: 0 2px 0 rgba(0, 0, 0, .18);--radius: 10px}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--shell);background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.025) 0 14px,transparent 14px 28px);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer}.app{max-width:1560px;margin:0 auto;padding:18px 18px 40px}.app-header{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--red);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:0 6px #00000059}.brand{display:flex;align-items:center;gap:14px}.brand-mark{display:grid;place-items:center;padding:10px 12px;border-radius:4px;background:var(--ink);border:3px solid var(--ink);font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;letter-spacing:2px;color:#ffffff6b}.brand-text{display:flex;flex-direction:column;line-height:1.15;color:#fff}.brand-text strong{font-family:Bebas Neue,Impact,sans-serif;font-size:30px;letter-spacing:2px}.brand-text small{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;opacity:.85}.tabs{display:flex;gap:8px}.tab{padding:10px 18px;background:#0003;color:#fff;border:2px solid rgba(0,0,0,.4);border-radius:999px;font-weight:600;font-size:14px;letter-spacing:.4px}.tab.is-active{background:var(--yellow);color:var(--ink);border-color:var(--ink)}.app-main{display:grid;grid-template-columns:minmax(250px,1fr) minmax(380px,1.5fr) minmax(300px,1fr);gap:16px;margin-top:16px;align-items:start}.app-main-single{grid-template-columns:1fr}.column{display:flex;flex-direction:column;gap:16px;min-width:0}.column-receipt{position:sticky;top:18px}@media(max-width:1180px){.app-main{grid-template-columns:1fr 1fr}.column-receipt{grid-column:1 / -1;position:static}}@media(max-width:780px){.app-main{grid-template-columns:1fr}.column-receipt{grid-column:auto}}.panel{background:var(--panel);border:3px solid var(--ink);border-radius:var(--radius);padding:16px;box-shadow:0 5px #0000004d}.panel-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 12px;font-family:Bebas Neue,Impact,sans-serif;font-size:24px;letter-spacing:1.6px;color:var(--red-dark)}.panel-title-secret{margin-top:22px;padding-top:14px;border-top:2px dashed var(--line)}.panel-title-note{font-family:Inter,sans-serif;font-size:12px;font-weight:600;letter-spacing:.2px;text-transform:none;color:var(--ink-soft)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.menu-key{display:grid;gap:3px;text-align:left;padding:10px 11px;background:linear-gradient(#fffdf7,#f0e6d2);border:2px solid var(--ink);border-radius:8px;box-shadow:var(--shadow);transition:transform .08s ease,background .15s ease}.menu-key:hover{background:linear-gradient(#fffef9,#f7edd9)}.menu-key:active{transform:translateY(2px);box-shadow:none}.menu-key.is-selected{background:linear-gradient(#ffd964,var(--yellow));box-shadow:0 0 0 3px var(--red-dark),var(--shadow)}.menu-key-name{font-weight:800;font-size:14px;line-height:1.2}.menu-key-desc{font-size:11px;line-height:1.35;color:var(--ink-soft)}.menu-key-price{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;color:var(--red-dark)}.view-panel{background:#1d1712;border-color:#0d0a07}.view-stage{display:grid;place-items:center;padding:8px;background:radial-gradient(circle at 50% 38%,#3b3128,#1a1510 72%);border:2px solid #0d0a07;border-radius:8px}.item-svg{width:100%;max-width:420px;height:auto;display:block}.item-svg-empty,.item-svg-note{fill:#8d8071;font-family:IBM Plex Mono,monospace;font-size:13px;letter-spacing:.6px}.carton-mark{fill:#fff4dd;font-family:Bebas Neue,Impact,sans-serif;font-size:18px;letter-spacing:2px}.burger-layer{transition:transform .32s cubic-bezier(.3,.9,.35,1.1);animation:layer-in .32s ease-out both}.fry-topping,.shake-band,.drink-fill{animation:layer-in .3s ease-out both}@keyframes layer-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.burger-layer,.fry-topping,.shake-band,.drink-fill{transition:none;animation:none}}.view-caption{display:flex;flex-direction:column;gap:3px;margin-top:12px;padding:10px 12px;background:#0f0c09;border-radius:8px;color:#f6efe1}.view-caption strong{font-family:Bebas Neue,Impact,sans-serif;font-size:24px;letter-spacing:1.4px;color:var(--yellow)}.view-caption span{font-size:12px;color:#b3a894}.preset-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.preset-chip{display:grid;gap:4px;text-align:left;padding:10px 12px;background:#fff;border:2px dashed var(--red);border-radius:8px;transition:background .15s ease,transform .08s ease}.preset-chip:hover{background:#fff6ee}.preset-chip:active{transform:translateY(2px)}.preset-chip.is-active{background:var(--red);border-style:solid;border-color:var(--ink);color:#fff;box-shadow:var(--shadow)}.preset-chip.is-modified{background:#fff3d4;border-color:#c98f10}.preset-chip-name{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px}.preset-chip-blurb{font-size:11px;line-height:1.4;opacity:.85}.preset-badge{padding:1px 7px;border-radius:999px;background:var(--yellow);color:var(--ink);font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600;letter-spacing:.8px}.preset-badge.is-modified{background:#c98f10;color:#fff}.group-list{display:grid;gap:14px}.option-group{margin:0;padding:0;border:0}.option-group-label{display:flex;align-items:baseline;gap:8px;padding:0 0 6px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-soft)}.option-group-hint{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.3px;text-transform:none;color:#9b8f7d}.option-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:6px}.option-chip{display:grid;gap:3px;align-content:start;text-align:left;padding:8px 10px;background:#fff;border:2px solid var(--line);border-radius:7px;transition:border-color .15s ease,background .15s ease,transform .08s ease}.option-chip:hover{border-color:var(--ink-soft)}.option-chip:active{transform:translateY(1px)}.option-chip.is-chosen{background:#fff6d9;border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.option-chip-label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-weight:600;font-size:13px}.option-chip-price{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--red-dark)}.option-chip-note{font-size:10.5px;line-height:1.35;color:var(--ink-soft)}.option-chip-tags{display:flex;flex-wrap:wrap;gap:4px}.option-chip-tags:empty{display:none}.tag{padding:1px 6px;border-radius:999px;font-family:IBM Plex Mono,monospace;font-size:9.5px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.tag-default{background:var(--cream-dark);color:var(--ink-soft)}.tag-preset{background:var(--red);color:#fff}.tag-secret{margin-left:8px;background:var(--yellow);color:var(--ink)}.receipt-panel{padding:0;background:transparent;border:0;box-shadow:none}.receipt{padding:20px 18px 26px;background:#fffdf6;border-radius:4px;font-family:IBM Plex Mono,monospace;font-size:12.5px;color:#2b241c;box-shadow:0 6px #0000004d;clip-path:polygon(0% 8px,4% 0%,8% 8px,12% 0%,16% 8px,20% 0%,24% 8px,28% 0%,32% 8px,36% 0%,40% 8px,44% 0%,48% 8px,52% 0%,56% 8px,60% 0%,64% 8px,68% 0%,72% 8px,76% 0%,80% 8px,84% 0%,88% 8px,92% 0%,96% 8px,100% 0%,100% calc(100% - 8px),96% 100%,92% calc(100% - 8px),88% 100%,84% calc(100% - 8px),80% 100%,76% calc(100% - 8px),72% 100%,68% calc(100% - 8px),64% 100%,60% calc(100% - 8px),56% 100%,52% calc(100% - 8px),48% 100%,44% calc(100% - 8px),40% 100%,36% calc(100% - 8px),32% 100%,28% calc(100% - 8px),24% 100%,20% calc(100% - 8px),16% 100%,12% calc(100% - 8px),8% 100%,4% calc(100% - 8px),0% 100%)}.receipt-head{text-align:center;margin-bottom:12px}.receipt-brand{font-family:Bebas Neue,Impact,sans-serif;font-size:26px;letter-spacing:3px}.receipt-sub{font-size:10.5px;letter-spacing:1.4px;color:#7a6f60}.receipt-rule{margin:12px 0;border-top:1px dashed #b8ad9a}.receipt-section-label{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px;font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#7a6f60}.receipt-link{padding:0;background:none;border:0;font-family:inherit;font-size:10px;letter-spacing:1px;color:var(--red-dark);text-decoration:underline}.receipt-group+.receipt-group{margin-top:10px;padding-top:10px;border-top:1px dotted #ddd3c0}.receipt-line{display:flex;gap:8px;align-items:baseline;font-weight:600}.receipt-line-draft{color:var(--red-dark)}.receipt-qty{min-width:24px}.receipt-item{flex:1;min-width:0}.receipt-price{white-space:nowrap}.receipt-mod{display:flex;gap:8px;padding-left:16px;color:#6b6153;font-size:11.5px;line-height:1.6}.receipt-mod-label{flex:1;min-width:0}.receipt-mod-plain{font-style:italic;color:#9b9081}.receipt-line-controls{display:flex;gap:6px;padding-left:16px;margin-top:4px}.receipt-line-controls button{padding:1px 8px;background:#f0e8d8;border:1px solid #c3b8a2;border-radius:4px;font-family:inherit;font-size:11px}.receipt-line-controls button:hover{background:#e6dbc5}.receipt-total-line{color:#6b6153;font-weight:400}.receipt-grand-total{margin-top:6px;padding-top:6px;border-top:2px solid #2b241c;font-size:15px;font-weight:600}.receipt-actions{display:flex;gap:8px;margin-top:12px}.receipt-foot{margin-top:12px;text-align:center;font-size:10px;letter-spacing:.6px;color:#9b9081}.pos-button{flex:1;padding:9px 12px;background:linear-gradient(#fffdf7,#ece1cb);border:2px solid var(--ink);border-radius:7px;font-family:Inter,sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.4px;box-shadow:var(--shadow);transition:transform .08s ease}.pos-button:active{transform:translateY(2px);box-shadow:none}.pos-button-primary{background:linear-gradient(#ffd964,var(--yellow))}.pos-button-wide{width:100%}.combo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:14px}@media(max-width:620px){.combo-list{grid-template-columns:1fr}}.combo-card{display:flex;flex-direction:column;gap:10px;padding:14px;background:#fffdf6;border:2px solid var(--line);border-radius:8px}.combo-card-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.combo-card-name{display:flex;align-items:center;margin:0;font-size:17px}.combo-card-desc{margin:3px 0 0;font-size:12px;color:var(--ink-soft)}.combo-card-count{display:flex;flex-direction:column;align-items:flex-end;text-align:right;flex-shrink:0}.combo-card-count strong{font-family:IBM Plex Mono,monospace;font-size:19px;color:var(--red-dark)}.combo-card-count span{font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:var(--ink-soft)}.combo-table{width:100%;border-collapse:collapse}.combo-table th{width:34%;padding:6px 10px 6px 0;text-align:left;vertical-align:top;border-top:1px dotted var(--line);font-size:11.5px}.combo-table td{padding:6px 0;border-top:1px dotted var(--line)}.combo-group-count{display:block;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:400;color:#9b8f7d}.combo-choice{display:inline-block;margin:0 4px 4px 0;padding:2px 7px;background:#f2ebda;border-radius:999px;font-size:11px}.combo-choice.is-default{background:var(--yellow);font-weight:600}.combo-presets{margin:0;font-size:11.5px;color:var(--ink-soft)}.combo-card .pos-button{flex:0 0 auto;margin-top:auto}.combo-sources{margin:0;font-family:IBM Plex Mono,monospace;font-size:10.5px;color:#9b8f7d}.combo-sources a{color:var(--red-dark)}.sources-note{margin-top:20px;padding:16px;background:#fffdf6;border:2px dashed var(--line);border-radius:8px}.sources-note h3{margin:0 0 6px;font-family:Bebas Neue,Impact,sans-serif;font-size:20px;letter-spacing:1.4px;color:var(--red-dark)}.sources-note p{max-width:80ch;margin:0 0 12px;font-size:12.5px;line-height:1.6;color:var(--ink-soft)}.sources-note ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.sources-note li{display:grid;grid-template-columns:90px minmax(0,1fr);gap:4px 12px;font-size:12px}.sources-note li code{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-soft)}.sources-note li a{color:var(--red-dark);font-weight:600}.sources-note li span{grid-column:2;color:var(--ink-soft)}@media(max-width:620px){.sources-note li{grid-template-columns:1fr}.sources-note li span{grid-column:1}}.app-footer{margin-top:22px;padding:14px 18px;background:#00000047;border-radius:var(--radius)}.app-footer p{max-width:78ch;margin:0 auto;text-align:center;font-size:11.5px;line-height:1.6;color:#cfc4b2}.app-footer strong{color:var(--yellow)}:focus-visible{outline:3px solid #2f7de1;outline-offset:2px}
