/* Direction: private card-room — deep baize green, brass gold, ivory ink, a high-contrast serif */
/* Completed by the platform from the short form: both modes, every
   palette token, each text-on-ground pair at its floor. To restyle, write the
   short form again (the decisions in one :root) and it is completed again. */

:root {
  color-scheme: dark;
  --canvas: #0a2219;
  --surface: #11362a;
  --surface-2: #164332;
  --border: #2a5a47;
  --border-strong: #54645e;
  --ink: #f3ecd8;
  --muted: #a9bfb2;
  --accent: #d9ad3c;
  --accent-hover: #dfb959;
  --accent-ink: #1e1808;
  --accent-text: #e8c766;
  --accent-strong: #d9ad3c;
  --accent-soft: #384121;
  --accent-border: #676129;
  --success: #3fae72;
  --success-ink: #ffffff;
  --success-soft: #16412d;
  --success-strong: #5cba87;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #2f2d15;
  --warning-strong: #ca854f;
  --danger: #e0614f;
  --danger-ink: #ffffff;
  --danger-soft: #393025;
  --danger-strong: #e68576;
  --chart-1: #d9ad3c;
  --chart-2: #7fd589;
  --chart-3: #15aebe;
  --chart-4: #a1bcfd;
  --chart-5: #c378c3;
  --chart-6: #fba399;

  --x-player: #2f6fd6;
  --x-banker: #c0392b;
  --x-tie: #1f7a45;
  --x-on-photo: #ffffff;
  --font-display: "Playfair Display", Georgia, serif;
  --font-body: "Inter", system-ui, sans-serif;
  --display-weight: 700;
  --radius-card: 16px;
  --radius-btn: 12px;
  --radius-input: 10px;
  --font-mono: "JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-sans: "Inter", system-ui, sans-serif;
  --display-tracking: -0.02em;
  --eyebrow-tracking: 0.08em;
}

html[data-theme="light"] {
  color-scheme: light;
  --canvas: #ffffff;
  --surface: #ffffff;
  --surface-2: #f4f3f3;
  --border: #e0dfdc;
  --border-strong: #bcbab5;
  --ink: #0a2219;
  --muted: #63706c;
  --accent: #d9ad3c;
  --accent-hover: #b89333;
  --accent-ink: #1e1808;
  --accent-text: #846825;
  --accent-strong: #846825;
  --accent-soft: #faf4e4;
  --accent-border: #eedaa7;
  --success: #3fae72;
  --success-ink: #0a2219;
  --success-soft: #e8f5ee;
  --success-strong: #2d7c52;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #f6eae1;
  --warning-strong: #a64c08;
  --danger: #e0614f;
  --danger-ink: #0a2219;
  --danger-soft: #fbecea;
  --danger-strong: #af4b3e;
  --chart-1: #b98e04;
  --chart-2: #4ca158;
  --chart-3: #138d9a;
  --chart-4: #6c8ee5;
  --chart-5: #a35aa4;
  --chart-6: #e0746a;
}

.dot { display: inline-flex; align-items: center; justify-content: center; border-radius: 9999px; font-weight: 700; color: var(--x-on-photo); flex: none; }
.dot-P { background: var(--x-player); }
.dot-B { background: var(--x-banker); }
.dot-T { background: var(--x-tie); }

.ring-dot { position: relative; display: inline-flex; width: 22px; height: 22px; border-radius: 9999px; border: 3px solid; flex: none; align-items: center; justify-content: center; }
.ring-P { border-color: var(--x-player); }
.ring-B { border-color: var(--x-banker); }
.tie-mark { font-style: normal; font-size: 10px; font-weight: 700; color: var(--success); line-height: 1; }

.side-pill { display: inline-flex; align-items: center; justify-content: center; min-width: 11rem; padding: 0.9rem 1.5rem; border-radius: var(--radius-card); font-family: var(--font-display); font-weight: 800; font-size: 2.25rem; letter-spacing: 0.02em; text-transform: uppercase; color: var(--x-on-photo); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35); }
.side-P { background: var(--x-player); }
.side-B { background: var(--x-banker); }
@media (min-width: 768px) { .side-pill { font-size: 2.75rem; min-width: 13rem; } }

.hand-box { border: 1px solid var(--border); background: var(--surface-2); border-radius: var(--radius-card); padding: 0.75rem; }
.slot { display: grid; place-items: center; width: 100%; max-width: 3.25rem; height: 4.25rem; border-radius: 8px; border: 2px dashed var(--border); font-family: var(--font-display); font-weight: 700; font-size: 1.35rem; color: var(--canvas); }
.slot[data-filled="1"] { border: 2px solid var(--ink); background: var(--ink); animation: dealIn 0.18s ease-out; }
.slot[data-next="1"] { border-color: var(--accent); }
@keyframes dealIn { from { transform: translateY(-8px) scale(0.92); } to { transform: none; } }

.keycap { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; min-height: 3.5rem; border-radius: 12px; border: 1px solid var(--border); background: var(--surface-2); color: var(--ink); font-family: var(--font-display); font-size: 1.35rem; font-weight: 700; transition: transform 0.08s, background 0.15s, border-color 0.15s; touch-action: manipulation; }
.keycap small { font-family: var(--font-body); font-size: 0.62rem; font-weight: 500; color: var(--muted); }
.keycap:hover { border-color: var(--accent); }
.keycap:active { transform: scale(0.94); background: var(--accent-soft); }
.keycap:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.keycap:disabled { opacity: 0.35; pointer-events: none; }
.keycap-alt { font-size: 1.1rem; background: transparent; }

.betopt { cursor: pointer; }
.betopt-face { display: inline-flex; align-items: center; padding: 0.55rem 1rem; border-radius: 9999px; border: 1px solid var(--border); background: var(--surface-2); font-weight: 600; font-size: 0.9rem; --tw-ring-color: var(--accent); transition: background 0.15s; }
.betopt:hover .betopt-face { border-color: var(--accent); }

@media (prefers-reduced-motion: reduce) { .slot[data-filled="1"] { animation: none; } .keycap { transition: none; } }
html.reduced-motion .slot[data-filled="1"] { animation: none; }
