:root{--bg:#0d0d0d;--surface:#1c1c1c;--surface-2:#262626;--border:#333;--gold:#c8a06a;--gold-soft:#e2c9a0;--green:#27ae60;--green-ink:#0f5c30;--red:#e74c3c;--red-ink:#7d241a;--text:#f5f5f0;--text-muted:#a0a0a0;--radius:12px;--radius-sm:8px;--space:16px;--shadow:0 6px 24px #00000059;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-size:14px;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .4em;font-weight:800}a{color:var(--gold-soft);text-decoration:none}.brand{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:800}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem}.container{width:min(1100px,100% - 2rem);margin-inline:auto}.stack{gap:var(--space);flex-direction:column;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;width:min(1100px,100% - 2rem);margin-inline:auto;padding:14px 0;display:flex}.app-nav{gap:20px;display:flex}.app-nav a{color:var(--text-muted);font-size:14px;font-weight:600}.app-nav a.is-active{color:var(--gold)}@media (width<=640px){.app-header{text-align:center;flex-wrap:wrap;justify-content:center;gap:10px}.app-nav{justify-content:center;width:100%}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space)}.panel-gold{background:var(--gold);color:#1a1408;border-radius:var(--radius);padding:20px}.btn{border-radius:var(--radius-sm);font:inherit;color:var(--text);background:var(--surface-2);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:700;transition:filter .15s,transform 50ms;display:inline-flex}.btn:hover{filter:brightness(1.12)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--green);color:#052813}.btn--danger{background:var(--red);color:#2a0a06}.btn--gold{background:var(--gold);color:#1a1408}.btn--ghost{border-color:var(--border);background:0 0}.btn--block{width:100%}.btn--lg{padding:16px 22px;font-size:15px}.field{flex-direction:column;gap:6px;display:flex}.field>label{color:var(--text-muted);font-size:.85rem}.input,.select,.textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);font:inherit;padding:12px 14px}.input:focus,.select:focus,.textarea:focus{border-color:var(--gold);outline:none}.textarea{resize:vertical;min-height:92px}.badge{background:var(--surface-2);color:var(--text-muted);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.badge--allergy{color:#ff9d90;background:#e74c3c29;border:1px solid #e74c3c80}.status-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.is-free{--status:var(--green)}.is-reserved,.is-occupied{--status:var(--red)}.is-selected{--status:var(--gold)}.status-dot.is-free{background:var(--green)}.status-dot.is-reserved,.status-dot.is-occupied{background:var(--red)}.table-card{aspect-ratio:1;background:var(--surface);border:2px solid var(--status,var(--border));border-radius:var(--radius);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.table-card .num{font-size:1.5rem;font-weight:800}.table-card .seats{color:var(--text-muted);font-size:.75rem}.dish-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:12px;display:flex}.dish-card.is-selected{border-color:var(--green);background:#27ae6029}.muted{color:var(--text-muted)}.price{font-variant-numeric:tabular-nums;font-weight:700}#root{min-height:100svh}
