:root{--white:#fff;--neutral-50:#f8fafc;--neutral-100:#f3f4f6;--neutral-300:#d1d5db;--neutral-400:#9ca3af;--neutral-500:#6b7280;--neutral-600:#4b5563;--neutral-700:#374151;--neutral-900:#111827;--neutral-950:#15171a;--neutral-925:#1e2125;--green-600:#17803d;--green-700:#11612e;--green-500:#1b9c4a;--green-50:#dcfce7;--blue-600:#3f67dd;--blue-700:#2249c0;--blue-400:#6383e3;--blue-50:#dbeafe;--red-600:#da1f1f;--red-700:#a71818;--red-400:#e75656;--red-50:#fee2e2;--amber-700:#9d6208;--amber-800:#784a06;--amber-500:#bf770a;--amber-50:#fef3c7;--violet-600:#9e46c9;--violet-700:#7c2fa3;--violet-400:#b06ad4;--teal-700:#265c64;--teal-200:#88d1dd;--color-surface:var(--white);--color-surface-page:var(--neutral-50);--color-surface-stripe:var(--neutral-50);--color-text:var(--neutral-900);--color-text-muted:var(--neutral-700);--color-border:var(--neutral-300);--color-brand-primary:var(--teal-700);--color-on-brand:var(--white);--color-interactive:var(--color-brand-primary);--color-focus-ring:var(--color-brand-primary);--color-status-settled:var(--green-600);--color-status-awaiting:var(--blue-600);--color-status-short:var(--red-600);--color-status-surplus:var(--amber-700);--color-status-unbilled:var(--neutral-500);--color-degraded:var(--violet-600);--color-danger:var(--color-status-short);--color-status-settled-strong:var(--green-700);--color-status-awaiting-strong:var(--blue-700);--color-status-short-strong:var(--red-700);--color-status-surplus-strong:var(--amber-800);--color-status-settled-tint:var(--green-50);--color-status-awaiting-tint:var(--blue-50);--color-status-short-tint:var(--red-50);--color-status-surplus-tint:var(--amber-50);--glyph-status-settled:"✓";--glyph-status-awaiting:"…";--glyph-status-short:"▼";--glyph-status-surplus:"▲";--glyph-status-unbilled:"○";--glyph-degraded:"⌁";--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--font-sans:"Carlito", "Calibri", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--leading-tight:1.25;--leading-normal:1.5;--weight-regular:400;--weight-medium:500;--weight-bold:700;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--shadow-sm:0 1px 2px #00000014;--shadow-md:0 4px 12px #0000001f;--control-min-size:44px;--control-min-size-floor:56px;--focus-ring-width:3px;--focus-ring-offset:2px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-surface:var(--neutral-950);--color-surface-page:var(--neutral-950);--color-surface-stripe:var(--neutral-925);--color-text:var(--neutral-100);--color-text-muted:var(--neutral-300);--color-border:var(--neutral-700);--color-brand-primary:var(--teal-200);--color-on-brand:var(--neutral-950);--color-interactive:var(--color-brand-primary);--color-focus-ring:var(--color-brand-primary);--color-status-settled:var(--green-500);--color-status-awaiting:var(--blue-400);--color-status-short:var(--red-400);--color-status-surplus:var(--amber-500);--color-status-unbilled:var(--neutral-400);--color-degraded:var(--violet-400)}}:root[data-theme=dark]{--color-surface:var(--neutral-950);--color-surface-page:var(--neutral-950);--color-surface-stripe:var(--neutral-925);--color-text:var(--neutral-100);--color-text-muted:var(--neutral-300);--color-border:var(--neutral-700);--color-brand-primary:var(--teal-200);--color-on-brand:var(--neutral-950);--color-interactive:var(--color-brand-primary);--color-focus-ring:var(--color-brand-primary);--color-status-settled:var(--green-500);--color-status-awaiting:var(--blue-400);--color-status-short:var(--red-400);--color-status-surplus:var(--amber-500);--color-status-unbilled:var(--neutral-400);--color-degraded:var(--violet-400)}:root[data-contrast=high]{--color-surface:var(--white);--color-surface-page:var(--white);--color-text:var(--neutral-900);--color-text-muted:var(--neutral-700);--color-status-settled:var(--green-700);--color-status-awaiting:var(--blue-700);--color-status-short:var(--red-700);--color-status-surplus:var(--amber-800);--color-status-unbilled:var(--neutral-600);--color-degraded:var(--violet-700)}body{background:var(--color-surface-page);color:var(--color-text);font-family:var(--font-sans);line-height:var(--leading-normal)}button,input,select,textarea{font-family:inherit}button,[role=button],input,select{min-height:var(--control-min-size);min-width:var(--control-min-size)}[data-posture=floor] :is(button,[role=button],input,select){min-height:var(--control-min-size-floor);min-width:var(--control-min-size-floor)}:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.amount,.code{font-family:var(--font-mono);font-variant-numeric:tabular-nums}*{box-sizing:border-box}body{margin:0}.main{min-height:100vh}.masthead{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap;align-items:center;display:flex}.masthead__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}main [role=alert]{border-left:4px solid var(--color-danger);padding:var(--space-2) var(--space-3);background:var(--color-surface)}.wordmark{font-weight:var(--weight-bold);color:var(--color-brand-primary)}main{padding:var(--space-4)}.panel{gap:var(--space-4);flex-direction:column;max-width:28rem;display:flex}h1{font-size:var(--text-2xl);margin:0}label{gap:var(--space-2);flex-direction:column;display:flex}input,button{font-size:var(--text-base)}input{padding:0 var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text)}button{border-radius:var(--radius-md);padding:0 var(--space-4);background:var(--color-brand-primary);color:var(--color-on-brand);border:none}button.secondary{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border)}.choices{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pin-pad{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}[data-posture=till],[data-posture=till] :is(input,button){font-size:var(--text-lg)}[data-posture=office] .panel{gap:var(--space-3)}.unreachable{z-index:1;padding:var(--space-3) var(--space-4);background:var(--color-surface);border-bottom:6px solid var(--color-danger);color:var(--color-text);position:sticky;top:0}.unreachable__mode{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-danger);margin:0}.unreachable__detail{margin:var(--space-1) 0 0}.panel.wide{max-width:64rem}.row{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}h2{font-size:var(--text-xl);margin:var(--space-2) 0 0}select{padding:0 var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:inherit}fieldset.choice-row{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);flex-wrap:wrap;margin:0;display:flex}label.choice{align-items:center;gap:var(--space-2);flex-direction:row}button.inline{min-height:var(--control-min-size);padding:0 var(--space-3)}.day{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.count{font-weight:var(--weight-regular)}button.booking{align-items:flex-start;gap:var(--space-1);width:100%;padding:var(--space-2) var(--space-3);text-align:left;flex-direction:column;display:flex}.pin-confirm{gap:var(--space-3);flex-direction:column;max-width:28rem;display:flex}.bill table{border-collapse:collapse;width:100%}.bill th,.bill td{padding:var(--space-2);border-bottom:1px solid var(--color-border);text-align:left}.bill .amount{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.awaiting{color:var(--color-status-awaiting-strong)}.office-nav{gap:var(--space-2);padding-bottom:var(--space-4);flex-wrap:wrap;display:flex}.requests{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.request{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.request p{margin:0}.own{font-style:italic}tbody tr:nth-child(2n)>*,.requests>.request:nth-child(2n){background:var(--color-surface-stripe)}.striped{gap:var(--space-2);flex-direction:column;display:flex}.striped>*{padding:var(--space-3);border-radius:var(--radius-md)}.striped>:nth-child(2n){background:var(--color-surface-stripe)}.setup-key{font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.08em;word-break:break-all;display:inline-block}.recovery-codes{gap:var(--space-2);padding-left:var(--space-6);font-family:var(--font-mono);grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));display:grid}
