:root{--navy:#010927;--light:#d5dff7;--bg:#f7f6f2;--surface:#fff;--surface-2:#efede6;--surface-3:#e5e2d8;--border:#dcd9cf;--text:#010927;--muted:#4a5170;--faint:#6a7190;--brand:#010927;--brand-hover:#092793;--brand-ink:#fff;--accent:#0e44e1;--accent-ink:#fff;--accent-soft:#e3eafd;--coral:#00ffa7;--ok:#0f6b3a;--ok-soft:#d9f8ea;--warn:#7a5a00;--warn-soft:#fff4c2;--danger:#c9114a;--danger-soft:#fde4ec;--info:#0e44e1;--info-soft:#e3eafd;--paper:#fbf8f2;--paper-2:#f3eee2;--paper-ink:#1a1a1a;--scrim:#01092799;--shadow:0 1px 2px #0109270d, 0 16px 40px -18px #01092740;--ring:0 0 0 3px #0e44e159;--chip-card:#010927;--chip-card-ink:#fff;--chip-swish:#0e44e1;--chip-swish-ink:#fff;--chip-cash:#1e7f4f;--chip-cash-ink:#fff;--chip-cafe:#8b5a2b;--chip-cafe-ink:#fff;--chip-restaurant:#b76e79;--chip-restaurant-ink:#010927;--chip-padel:#0b7a75;--chip-padel-ink:#fff;--chip-retail:#e63946;--chip-retail-ink:#fff;--chip-salon:#5e548e;--chip-salon-ink:#fff;--chip-popup:#ffd93b;--chip-popup-ink:#010927;--chip-qsr:#d3302f;--chip-qsr-ink:#fff;--radius-sm:6px;--radius:10px;--radius-lg:16px;--font-display:"Space Grotesk", "Avenir Next", "Segoe UI Variable", "Helvetica Neue", sans-serif;--font:"Inter", "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--fs-xs:12px;--fs-sm:13.5px;--fs-md:15px;--fs-base:16px;--fs-lg:18px;--ease:cubic-bezier(.22, 1, .36, 1);--t-fast:.16s;--t-base:.22s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#060f35;--surface:#0d1a48;--surface-2:#152459;--surface-3:#1e2f6c;--border:#27397a;--text:#d5dff7;--muted:#9fb0dd;--faint:#8e9fcf;--brand:#d5dff7;--brand-hover:#fff;--brand-ink:#010927;--accent:#00ffa7;--accent-ink:#010927;--accent-soft:#0b3a33;--ok:#5ef0b0;--ok-soft:#0b3a2a;--warn:#ffd93b;--warn-soft:#3d3208;--danger:#ff6b8f;--danger-soft:#3d0f22;--info:#7fa1ff;--info-soft:#14255e;--paper:#142153;--paper-2:#1c2b64;--paper-ink:#d5dff7;--scrim:#010514b3;--shadow:0 1px 2px #0000004d, 0 12px 32px -12px #0009;--ring:0 0 0 3px #00ffa766;--chip-card:#d5dff7;--chip-card-ink:#010927;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body,html{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:700;line-height:1.08}h1{font-size:clamp(2rem,1.2rem + 2.6vw,3rem)}h2{font-size:clamp(1.4rem,1rem + 1.2vw,1.9rem)}h3{font-size:1.1rem}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}input,select,textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:40px;transition:border-color var(--t-fast),box-shadow var(--t-fast);outline:none;padding:8px 10px}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:var(--ring)}textarea{resize:vertical;min-height:80px;line-height:1.45}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn,.sr-only{white-space:nowrap}.btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);transition:background var(--t-fast),border-color var(--t-fast),transform var(--t-fast),color var(--t-fast);justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-weight:600;line-height:1.2;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:active:not(:disabled){transform:translateY(1px)}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn.primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover)}.btn.accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.accent:hover:not(:disabled){filter:brightness(.95)}.btn.danger{color:var(--danger)}.btn.danger:hover:not(:disabled){background:var(--danger-soft)}.btn.sm{min-height:32px;font-size:var(--fs-sm);padding:5px 10px}.btn.lg{min-height:48px;font-size:var(--fs-lg);border-radius:var(--radius);padding:12px 20px}.btn.ghost{background:0 0;border-color:#0000}.badge,.btn.ghost:hover:not(:disabled){background:var(--surface-2)}.badge{min-height:22px;font-size:var(--fs-xs);color:var(--muted);letter-spacing:.01em;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-weight:600;display:inline-flex}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.info{background:var(--info-soft);color:var(--info)}.badge.live:before{content:"";background:var(--coral);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);border-radius:50%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.muted{color:var(--muted)}.faint{color:var(--faint)}.mono{font-family:var(--mono);font-size:var(--fs-xs)}.display{font-family:var(--font-display)}.row{align-items:center}.row,.stack{gap:8px;display:flex}.stack{flex-direction:column}.spacer{flex:1}.label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.field{flex-direction:column;gap:4px;display:flex}.field>label,.field>span{font-size:var(--fs-sm);color:var(--muted)}.toggle{cursor:pointer;align-items:center;gap:8px;min-height:32px;display:inline-flex}.toggle input{width:18px;height:18px;min-height:0;accent-color:var(--accent)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);min-height:32px;font-size:var(--fs-sm);cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast);border-radius:999px;padding:5px 11px;font-weight:500}.chip:hover:not(:disabled){border-color:var(--muted)}.chip.on,.chip[aria-pressed=true]{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.hr{background:var(--border);height:1px}.sr-live{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.pchip{--c:var(--chip-card);--i:var(--chip-card-ink);border:1.5px solid color-mix(in oklab,var(--c) 45%,var(--surface));background:color-mix(in oklab,var(--c) 12%,var(--surface));min-height:36px;color:var(--text);font-weight:600;font-size:var(--fs-sm);cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),transform var(--t-fast);border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 8px;display:inline-flex}.pchip:before{content:"";background:var(--c);border-radius:50%;flex:none;width:14px;height:14px}.pchip:hover:not(:disabled){background:color-mix(in oklab,var(--c) 22%,var(--surface));border-color:var(--c)}.pchip.on,.pchip[aria-pressed=true]{background:var(--c);color:var(--i);border-color:var(--c)}.pchip.on:before,.pchip[aria-pressed=true]:before{background:var(--i)}.receipt{background:var(--paper);color:var(--paper-ink);font-family:var(--mono);font-size:var(--fs-sm);border-radius:6px 6px 0 0;padding:18px 20px 26px;line-height:1.6;position:relative;box-shadow:0 1px 2px #0b123014,0 18px 40px -20px #0b123059}.receipt:after{content:"";background:radial-gradient(circle at 6px 0,transparent 0 5px,var(--paper) 5.5px) 0 0 /12px 8px repeat-x;height:8px;position:absolute;bottom:-7px;left:0;right:0}.receipt .rline{justify-content:space-between;gap:12px;display:flex}.receipt .rrule{border-top:1px dashed color-mix(in oklab,var(--paper-ink) 35%,transparent);margin:8px 0}.receipt .rhead{letter-spacing:.12em;text-transform:uppercase;font-weight:700}.receipt .rdim{opacity:.6}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--surface-3);border:2px solid var(--bg);border-radius:10px}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
