/* Cedar's front-of-house tools feel like a late service: ink, plum, coral, and warm paper. */
:root {
  --ground: #111016;
  --surface: #1b1720;
  --surface-sunk: #28202d;
  --ink: #f9eee6;
  --ink-muted: #c5b4b8;
  --ink-faint: #a98e9a;
  --line: #3a303b;
  --line-strong: #806a78;
  --rail: #0d0c12;
  --rail-active: #332036;
  --rail-ink: #f1dfe7;
  --rail-ink-dim: #b89aaa;
  --accent: #f06a4f;
  --accent-ink: #171218;
  --accent-soft: #4b292e;
  --radius: 6px;
  color-scheme: light;
}
.demo-banner { background: var(--surface-sunk); color: var(--ink-muted); }
.brand { padding-block: 10px 22px; gap: 10px; }
.business-wordmark { width: 190px; }
.brand-sub { font-size: .7rem; letter-spacing: .14em; }
.nav-item[aria-current=page] { border-left-color: #ffad96; }
.nav-count { background: #ffad96; color: #171218; }
.page-title { font-weight: 400; }
.floor-zone { border-color: var(--line-strong); }
.panel-head { background: color-mix(in srgb, var(--surface-sunk) 35%, var(--surface)); }
@media(prefers-color-scheme:dark) {
  :root {
    --ground: #0a090d;
    --surface: #1c1520;
    --surface-sunk: #241926;
    --ink: #fff3eb;
    --ink-muted: #d8c1c5;
    --ink-faint: #bda3af;
    --line: #4b3548;
    --line-strong: #9d758b;
    --rail: #08070a;
    --rail-active: #3c203b;
    --accent: #ff9b70;
    --accent-ink: #19131b;
    --accent-soft: #4b293c;
    color-scheme: dark;
  }
}
@media print {
  html, body { background: white; color: black; color-scheme: light; }
}

/* Keep the business identity visible when navigation becomes a drawer. */
.mobile-business-logo{display:none}
.app.is-drawer .mobile-business-logo{display:block;width:174px;max-width:174px;min-width:0;height:auto;flex-shrink:1;margin-right:auto}
.app.is-drawer .phone-meta{display:none}
.app.is-drawer .topbar .demo-badge{flex-shrink:0}

/* A host reads the room spatially first. The map gets the visual weight, while
   order entry and kitchen tickets keep their own service rhythm. */
.floor-workspace { grid-template-columns: minmax(0, 1.55fr) minmax(280px, .8fr); gap: 22px; }
.floor-main.panel, .floor-sidebar.panel { border-color: #4b3548; box-shadow: 0 14px 34px rgba(4,2,8,.22); }
.floor-canvas { min-height: 520px; height: 520px; background: radial-gradient(circle at 50% 44%, #2d2031 0, #17131b 70%); }
.floor-zone { background: rgba(255,255,255,.025); border-color: #76506d; }
.floor-zone > span { color: #c5a5b5; letter-spacing: .12em; }
.floor-table { background: #2a202b; border-color: #987287; box-shadow: 0 5px 0 rgba(15,9,19,.65); }
.floor-table.shape-round { border-radius: 50%; }
.floor-table.table-seated { background: #f06a4f; border-color: #ffad96; color: #171218; }
.floor-table.table-reserved { background: #5d394e; color: #ffe4d6; border-color: #e39b80; }
.floor-table.table-dirty { background: #3e2732; border-color: #ff7b73; }
.floor-legend { background: #151119; }
.kitchen-lane { background: #211824; border: 1px solid #4b3548; }
.kitchen-ticket { border-top-color: #f06a4f; box-shadow: 0 8px 20px rgba(4,2,8,.2); }
.pos-table-tabs button[aria-pressed=true] { box-shadow: 0 0 0 3px rgba(240,106,79,.2); }
