/* Shared by the guest page and the host tablet. Carried over from the v2 prototype. */
:root{
  --bg:#e7ece9; --surface:#ffffff; --sunk:#f2f5f3; --ink:#15201a; --muted:#57675f; --line:#d2dbd6;
  --accent:#0f6b4a; --accent-ink:#ffffff; --accent-soft:#dbeee4;
  --ready:#a86f00; --ready-bg:#f6b81a; --ready-soft:#fcefcc;
  --danger:#b23d2c; --danger-soft:#f8e0db;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"Figtree","Segoe UI",system-ui,sans-serif;
  --urdu:"Noto Naskh Arabic","Segoe UI","Tahoma",sans-serif;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0c1210; --surface:#151e1a; --sunk:#1b2621; --ink:#e6ede9; --muted:#93a39b; --line:#2b3832;
    --accent:#3cc08a; --accent-ink:#04140d; --accent-soft:#183a2b;
    --ready:#f5c346; --ready-bg:#f5c346; --ready-soft:#3a2e10;
    --danger:#ee7b68; --danger-soft:#3d1d17; color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0c1210; --surface:#151e1a; --sunk:#1b2621; --ink:#e6ede9; --muted:#93a39b; --line:#2b3832;
  --accent:#3cc08a; --accent-ink:#04140d; --accent-soft:#183a2b;
  --ready:#f5c346; --ready-bg:#f5c346; --ready-soft:#3a2e10;
  --danger:#ee7b68; --danger-soft:#3d1d17; color-scheme:dark;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.45;min-height:100dvh}
h1,h2,h3,h4{font-family:var(--display);text-wrap:balance;margin:0}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.45}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
[hidden]{display:none !important}

.field{display:flex;flex-direction:column;gap:6px}
.field label,.field .lbl{font-size:13px;font-weight:600}
.field input,.field select{border:1px solid var(--line);background:var(--sunk);border-radius:12px;padding:12px 14px;width:100%}
.field input:focus{border-color:var(--accent)}
.btn{border:0;border-radius:14px;padding:14px 18px;font-weight:700;font-size:15px}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover:not(:disabled){filter:brightness(1.08)}
.btn-ghost{background:none;border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--muted)}
.btn-danger{background:none;border:1px solid var(--danger);color:var(--danger)}
.fine{font-size:12.5px;color:var(--muted);margin:0}
.err{font-size:13.5px;color:var(--danger);font-weight:600;margin:0}
.row2{display:flex;gap:10px}
.row2 .btn{flex:1}
.linkbtn{background:none;border:0;color:var(--accent);font-weight:700;padding:4px}
.money{font-variant-numeric:tabular-nums;font-family:var(--body)}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{border:1px solid var(--line);background:none;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}

/* Login card (host) */
.login{max-width:360px;margin:12vh auto 0;padding:28px 24px;background:var(--surface);border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;gap:14px}
.login h1{font-size:24px;font-weight:800}
@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important}}
