:root {
  color-scheme: light;
  font-family: Inter, ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ink: #11121a;
  --muted: #697083;
  --panel: rgba(255, 253, 248, .96);
  --line: #e4ded3;
  --pink: #ff4f7b;
  --violet: #101426;
  --cyan: #20b8cc;
  --gold: #e8b632;
  --green: #159f70;
  --red: #d93d55;
  --blue: #20b8cc;
}
.controller-basra-plays .basra-play{display:flex;flex-direction:column;gap:8px;align-items:stretch;text-align:start}
.basra-capture-preview{display:flex;gap:5px;overflow-x:auto;max-width:100%;padding:4px}
.basra-capture-preview .playing-card{flex:0 0 42px;width:42px;height:60px;pointer-events:none}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
body {
  color: var(--ink);
  background:
    radial-gradient(circle at 12% 8%, rgba(255, 79, 123, .13), transparent 30%),
    radial-gradient(circle at 88% 2%, rgba(32, 184, 204, .12), transparent 28%),
    #f6f2e9;
}
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, input:focus-visible, a:focus-visible { outline: 3px solid var(--cyan); outline-offset: 3px; }
.hidden { display: none !important; }
.muted { color: var(--muted); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.glass { border: 1px solid var(--line); background: var(--panel); box-shadow: 0 20px 55px rgba(16, 20, 38, .10); }
.eyebrow { margin: 0 0 10px; color: var(--gold); font-size: 13px; font-weight: 900; letter-spacing: .17em; }
.button {
  min-height: 56px; border: 1px solid transparent; border-radius: 18px; padding: 12px 20px;
  color: var(--ink); background:var(--surface); font-weight: 850; cursor: pointer;
  transition: transform .15s ease, filter .15s ease, border-color .15s ease;
}
.button:hover { transform: translateY(-2px); filter: brightness(1.08); }
.button:active { transform: scale(.98); }
.button:disabled { cursor: not-allowed; opacity: .42; transform: none; }
.primary { color:#fff; background: #ff4f7b; box-shadow: 0 12px 28px rgba(255,79,123,.20); }
.secondary { border-color: #20b8cc; background:var(--surface); }

/* Phone controller */
.controller-page { min-height: 100vh; display: grid; place-items: center; padding: 22px; }
.controller-shell { width: min(460px, 100%); min-height: 560px; padding: 28px; border-radius: 30px; }
.controller-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 40px; letter-spacing: .08em; }
.controller-brand, .host-brand { direction: ltr; }
.controller-brand b { display:block; font-size: 20px; line-height:1; }
.brand-lockup > span { display:block; margin-top:4px; color: var(--muted); font-size: 9px; font-weight: 900; letter-spacing:.18em; }
.lang-toggle { margin-inline-start: auto; border: 1px solid var(--line); border-radius: 999px; padding: 7px 11px; color: var(--ink); background:var(--surface); font-size: 12px; font-weight: 800; cursor: pointer; }
.brand-mark { display:block; width:42px; height:42px; flex:0 0 auto; }
.controller-shell h1 { margin: 0 0 10px; font-size: clamp(34px, 10vw, 50px); line-height: 1.02; }
.field { width: 100%; height: 58px; margin-top: 12px; padding: 0 17px; border: 1px solid var(--line); border-radius: 17px; background:var(--surface); color: var(--ink); font-size: 19px; outline: none; }
.field:focus { border-color: var(--cyan); box-shadow: 0 0 0 4px rgba(81, 215, 255, .12); }
.field.code { text-align: center; text-transform: uppercase; letter-spacing: .34em; font-size: 27px; font-weight: 900; }
.controller-shell .primary { width: 100%; margin-top: 15px; }
.host-link { display: block; margin-top: 22px; color: var(--muted); text-align: center; text-decoration: none; font-size: 14px; }
.identity-card { margin: 24px 0 14px; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background:var(--surface); font-weight: 800; }
.players { display: grid; gap: 8px; margin-top: 16px; }
.player { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border-radius: 14px; background:var(--surface); border:1px solid var(--line); }
.report { border: 0; padding: 5px 8px; color: #ff9ba7; background: transparent; font-size: 12px; cursor: pointer; }
.status { margin-top: 18px; color: var(--gold); text-align: center; font-weight: 800; min-height: 24px; }
.prompt { text-align: center; margin: 22px 0 28px !important; font-size: clamp(30px, 9vw, 45px) !important; }
.controls { display: grid; gap: 12px; }
.choice { width: 100%; min-height: 64px; text-align: left; border-color: var(--line); background:var(--surface); }
.choice:nth-child(4n+1) { border-left: 5px solid #ff6577; }
.choice:nth-child(4n+2) { border-left: 5px solid #4bb5ff; }
.choice:nth-child(4n+3) { border-left: 5px solid #ffd15b; }
.choice:nth-child(4n) { border-left: 5px solid #7ce79c; }
.result-icon { display: block; margin: 22px auto 12px; font-size: 70px; text-align: center; }

/* Rich shared game context: the public game-show view above private phone controls. */
.controller-page.rich-controller-active { display:block; padding:14px; }
.rich-controller-active .controller-shell { width:min(760px,100%); min-height:calc(100vh - 28px); margin:0 auto; }
.rich-controller-active .controller-brand { margin-bottom:24px; }
.game-context { position:relative; display:grid; gap:11px; margin:10px 0 22px; padding:18px; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:25px; color:#fff; background:linear-gradient(145deg,#171a31,#101426); box-shadow:0 18px 38px rgba(16,20,38,.18); isolation:isolate; }
.game-context::before { content:""; position:absolute; z-index:-1; width:190px; aspect-ratio:1; right:-75px; top:-80px; border-radius:50%; background:var(--cyan); opacity:.15; filter:blur(2px); }
.game-context::after { content:"✦"; position:absolute; z-index:-1; right:18px; bottom:10px; color:var(--gold); font-size:55px; opacity:.08; transform:rotate(13deg); }
.game-context.kind-bluff::before { background:var(--pink); }
.game-context.kind-survey::before { background:linear-gradient(135deg,var(--pink),var(--cyan)); }
.game-context.kind-group_vote::before { background:var(--gold); }
.game-context-topline { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:7px; }
.game-context-round,.game-context-phase { min-width:0; overflow:hidden; padding:6px 9px; border:1px solid rgba(255,255,255,.14); border-radius:999px; color:rgba(255,255,255,.73); font-size:8px; font-weight:950; letter-spacing:.11em; text-overflow:ellipsis; white-space:nowrap; }
.game-context-phase { color:var(--gold); }
.game-context-timer { display:grid; place-items:center; width:42px; height:42px; border:3px solid rgba(255,255,255,.17); border-top-color:var(--gold); border-radius:50%; color:#fff; font-size:17px; font-weight:950; font-variant-numeric:tabular-nums; animation:context-timer-pulse 1s ease-in-out infinite alternate; }
.game-context-scores { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.game-context-score { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; border:1px solid rgba(255,255,255,.13); border-left:5px solid var(--pink); border-radius:12px; background:rgba(255,255,255,.07); }
.game-context-score.blue,.game-context-score.team-1 { border-left-color:var(--cyan); }
.game-context-score.team-2 { border-left-color:var(--gold); }
.game-context-score.team-3 { border-left-color:var(--green); }
.game-context-score small { overflow:hidden; color:rgba(255,255,255,.57); font-size:7px; font-weight:950; letter-spacing:.08em; text-overflow:ellipsis; white-space:nowrap; }
.game-context-score b { color:#fff; font-size:18px; font-variant-numeric:tabular-nums; }
.game-context-media { margin:0; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:18px; background:rgba(255,255,255,.05); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
.game-context-media-stage { width:100%; max-height:220px; aspect-ratio:16/9; overflow:hidden; background:#f6f2e9; }
.game-context-media-content { display:block; width:100%; height:100%; }
.game-context-media-content.fit-cover { object-fit:cover; }
.game-context-media-content.fit-contain { object-fit:contain; }
.game-context-media figcaption { padding:7px 10px; color:rgba(255,255,255,.62); font-size:8px; font-weight:900; letter-spacing:.08em; text-align:center; }
.game-context-kicker { margin:1px 0 -5px; color:var(--gold); font-size:9px; font-weight:950; letter-spacing:.15em; }
.game-context-narration { margin:0; padding:8px 11px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.06); color:rgba(255,255,255,.88); font-size:12px; font-weight:800; line-height:1.35; }
.game-context-prompt { margin:0; color:#fff; font-size:clamp(24px,6.8vw,34px); line-height:1.08; letter-spacing:-.025em; }
.game-context-progress { min-height:13px; margin:0; color:rgba(255,255,255,.58); font-size:10px; font-weight:850; }
.game-context-options { display:grid; gap:7px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.game-context-domna,.game-context-four,.game-context-tricks { grid-column:1/-1; min-width:0; }
.game-context-board-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:7px; }
.game-context-board-meta>span { color:rgba(255,255,255,.62); font-size:7px; font-weight:950; letter-spacing:.09em; }
.game-context-board-meta b { color:var(--gold); font-size:12px; letter-spacing:0; }
.game-context-domna-chain { display:flex; gap:5px; padding:10px; overflow-x:auto; border:1px solid rgba(255,255,255,.12); border-radius:15px; background:rgba(255,255,255,.05); scrollbar-width:thin; }
.game-context-domino { flex:0 0 57px; height:34px; display:grid; grid-template-columns:1fr 1px 1fr; align-items:center; border:2px solid var(--gold); border-radius:9px; background:var(--surface); color:var(--ink); box-shadow:0 5px 11px rgba(0,0,0,.18); }
.game-context-domino>b { font-size:12px; text-align:center; }
.game-context-domino>i { width:1px; height:22px; background:var(--line); }
.game-context-four { display:grid; gap:7px; }
.game-context-four-grid { width:min(100%,390px); display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:5px; margin-inline:auto; padding:9px; border:2px solid rgba(255,255,255,.15); border-radius:16px; background:rgba(255,255,255,.06); }
.game-context-four-slot { aspect-ratio:1; border:1px solid rgba(255,255,255,.12); border-radius:50%; background:rgba(255,255,255,.09); box-shadow:inset 0 4px 6px rgba(0,0,0,.22); }
.game-context-four-slot.owner-0 { background:var(--pink); }
.game-context-four-slot.owner-1 { background:var(--cyan); }
.game-context-four-slot.owner-2 { background:var(--gold); }
.game-context-four-slot.owner-3 { background:var(--green); }
.game-context-four-slot.winner { border-color:#fff; box-shadow:0 0 0 3px rgba(232,182,50,.55),0 0 15px var(--gold); animation:winner-pulse .7s ease-in-out infinite alternate; }
.game-context-player-strip { display:flex; gap:5px; overflow-x:auto; }
.game-context-player-strip>span { flex:1 0 auto; min-width:86px; padding:6px 8px; border:1px solid rgba(255,255,255,.13); border-top:3px solid var(--pink); border-radius:9px; color:rgba(255,255,255,.74); background:rgba(255,255,255,.05); font-size:8px; font-weight:900; text-align:center; }
.game-context-player-strip>span.color-1 { border-top-color:var(--cyan); }.game-context-player-strip>span.color-2 { border-top-color:var(--gold); }.game-context-player-strip>span.color-3 { border-top-color:var(--green); }
.game-context-player-strip>span.active { color:#fff; background:rgba(232,182,50,.13); box-shadow:inset 0 0 0 1px var(--gold); }
.game-context-tricks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.game-context-trick-lane { min-width:0; display:grid; gap:6px; padding:8px; border:1px solid rgba(255,255,255,.13); border-radius:14px; background:rgba(255,255,255,.05); }
.game-context-trick-lane.previous { opacity:.72; }
.game-context-trick-lane>small { color:var(--gold); font-size:7px; font-weight:950; letter-spacing:.11em; }
.game-context-trick-lane>div { display:flex; align-items:flex-end; justify-content:center; gap:5px; min-width:0; overflow:hidden; }
.game-context-trick-play { min-width:0; display:flex; flex-direction:column; align-items:center; gap:3px; }
.game-context-trick-play .game-context-card { flex:0 0 auto; width:42px; height:57px; border-width:1px; border-color:var(--pink); border-radius:8px; box-shadow:0 5px 11px rgba(0,0,0,.18); }
.game-context-trick-play.team-1 .game-context-card { border-color:var(--cyan); }.game-context-trick-play.team-2 .game-context-card { border-color:var(--gold); }.game-context-trick-play.team-3 .game-context-card { border-color:var(--green); }
.game-context-trick-play .game-context-card b { font-size:13px; }.game-context-trick-play .game-context-card i { font-size:15px; }
.game-context-trick-play>b { max-width:52px; overflow:hidden; color:rgba(255,255,255,.72); font-size:7px; text-overflow:ellipsis; white-space:nowrap; }
.game-context-trix-penalties{grid-column:1/-1;display:grid;gap:6px;padding:8px;border:1px solid rgba(232,182,50,.28);border-radius:14px;background:rgba(232,182,50,.07)}.game-context-trix-penalties>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.game-context-trix-penalties>header small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.1em}.game-context-trix-penalties>header b{color:rgba(255,255,255,.65);font-size:7px;letter-spacing:.05em}.game-context-trix-penalties>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.game-context-trix-penalties>div>span{min-width:0;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:4px;padding:5px;border:1px solid rgba(255,255,255,.11);border-left:4px solid var(--pink);border-radius:10px;background:rgba(255,255,255,.05)}.game-context-trix-penalties>div>span.seat-1{border-left-color:var(--cyan)}.game-context-trix-penalties>div>span.seat-2{border-left-color:var(--gold)}.game-context-trix-penalties>div>span.seat-3{border-left-color:var(--green)}.game-context-trix-penalties>div>span>b{overflow:hidden;color:rgba(255,255,255,.78);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.game-context-trix-penalties>div>span>i{display:flex;min-width:0;overflow:hidden;font-style:normal}.game-context-trix-penalties .game-context-card{flex:0 0 29px;width:29px;height:40px;margin-left:-8px;border-width:1px;border-radius:6px;box-shadow:none}.game-context-trix-penalties .game-context-card:first-child{margin-left:0}.game-context-trix-penalties .game-context-card b{font-size:8px}.game-context-trix-penalties .game-context-card i{font-size:9px}
.game-context-survey { display:grid; grid-template-columns:32px 1fr; align-items:center; gap:9px; min-width:0; padding:10px; border:1px solid rgba(255,255,255,.16); border-left:5px solid var(--pink); border-radius:13px; background:rgba(255,79,123,.12); }
.game-context-survey.option-b { border-left-color:var(--cyan); background:rgba(32,184,204,.12); }
.game-context-survey b { display:grid; place-items:center; width:30px; height:30px; border-radius:10px; color:#fff; background:var(--pink); }
.game-context-survey.option-b b { background:var(--cyan); }
.game-context-survey em { overflow:hidden; color:#fff; font-size:12px; font-style:normal; font-weight:850; line-height:1.2; }
.game-context-trivia-choice,.game-context-bluff-choice { display:grid; grid-template-columns:32px 1fr; align-items:center; gap:9px; min-width:0; padding:10px 11px; border:1px solid rgba(255,255,255,.16); border-radius:13px; background:rgba(255,255,255,.07); }
.game-context-trivia-choice { border-left:5px solid var(--gold); }
.game-context-trivia-choice:nth-child(2n) { border-left-color:var(--cyan); }
.game-context-trivia-choice:nth-child(3n) { border-left-color:var(--pink); }
.game-context-trivia-choice:nth-child(4n) { border-left-color:var(--green); }
.game-context-trivia-choice b,.game-context-bluff-choice b { display:grid; place-items:center; width:30px; height:30px; border-radius:10px; color:#fff; background:var(--gold); font-size:12px; }
.game-context-trivia-choice:nth-child(2n) b,.game-context-bluff-choice:nth-child(2n) b { background:var(--cyan); }
.game-context-trivia-choice:nth-child(3n) b,.game-context-bluff-choice:nth-child(3n) b { background:var(--pink); }
.game-context-trivia-choice:nth-child(4n) b,.game-context-bluff-choice:nth-child(4n) b { background:var(--green); }
.game-context-trivia-choice em,.game-context-bluff-choice em { overflow:hidden; color:#fff; font-size:12px; font-style:normal; font-weight:850; line-height:1.2; }
.game-context-bluff-choice.truth { border-left:5px solid var(--green); background:rgba(21,159,112,.13); }
.game-context-result-row { position:relative; display:grid; grid-template-columns:1fr auto; gap:3px 8px; padding:8px 10px; overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:11px; background:rgba(255,255,255,.06); }
.game-context-result-row b,.game-context-result-row em { z-index:1; font-size:10px; font-style:normal; }
.game-context-result-row i { position:absolute; inset:auto auto 0 0; width:var(--context-result); height:4px; border-radius:999px; background:linear-gradient(90deg,var(--pink),var(--gold)); }
.game-context-leader { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border:1px solid rgba(255,255,255,.13); border-radius:12px; background:rgba(255,255,255,.06); }
.game-context-leader b { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.game-context-leader em { color:var(--gold); font-size:12px; font-style:normal; font-weight:950; white-space:nowrap; }
.game-context-leader.winner { border-color:rgba(232,182,50,.55); background:rgba(232,182,50,.12); }
.private-action-head { margin:0 0 14px; }
.private-action-head>span { color:var(--cyan); font-size:9px; font-weight:950; letter-spacing:.15em; }
.rich-controller-active .prompt { margin:7px 0 0!important; font-size:clamp(27px,7.5vw,38px)!important; text-align:left; }
.rich-choice { position:relative; overflow:hidden; min-height:68px; padding-inline-start:20px; box-shadow:0 7px 18px rgba(16,20,38,.06); }
.rich-choice.kind-trivia::after { content:attr(data-shortcut); position:absolute; right:13px; color:var(--muted); font-size:10px; font-weight:950; opacity:.5; }
.rich-choice.kind-survey:nth-child(1) { border-left-color:var(--pink); background:linear-gradient(135deg,#fff,rgba(255,79,123,.08)); }
.rich-choice.kind-survey:nth-child(2) { border-left-color:var(--cyan); background:linear-gradient(135deg,#fff,rgba(32,184,204,.08)); }
.touch-choice-arena{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px;touch-action:pan-y}.touch-choice{min-width:0;min-height:82px;margin:0!important;padding:13px!important;border:1px solid var(--line)!important;border-left:0!important;border-radius:20px!important;background:linear-gradient(145deg,#fff,var(--cream))!important;text-align:center!important;font-weight:900;line-height:1.18;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}.touch-choice:nth-of-type(4n+1){border-bottom:6px solid var(--pink)!important}.touch-choice:nth-of-type(4n+2){border-bottom:6px solid var(--cyan)!important}.touch-choice:nth-of-type(4n+3){border-bottom:6px solid var(--gold)!important}.touch-choice:nth-of-type(4n){border-bottom:6px solid var(--green)!important}.touch-choice:hover:not(:disabled),.touch-choice:focus-visible{z-index:2;transform:translateY(-3px);border-color:var(--ink)!important;box-shadow:0 16px 28px rgba(16,20,38,.14),0 0 0 3px rgba(32,184,204,.13);outline:0}.touch-choice:active:not(:disabled){transform:scale(.97)}.touch-choice.locked{border-color:var(--green)!important;background:linear-gradient(145deg,#fff,rgba(21,159,112,.16))!important;box-shadow:0 0 0 3px rgba(21,159,112,.18)}.family-quizPods .touch-choice{min-height:104px;font-size:clamp(16px,4.5vw,23px)}.family-bidGrid{grid-template-columns:repeat(3,minmax(0,1fr));padding:10px;border:1px solid rgba(232,182,50,.45);border-radius:22px;background:linear-gradient(145deg,#fff8e8,#fff)}.family-bidGrid .touch-choice{min-height:66px;border-bottom:5px solid var(--gold)!important;background:#fff!important;font-size:18px}.family-contractTiles{grid-template-columns:repeat(2,minmax(0,1fr));padding:9px;border-radius:22px;background:linear-gradient(145deg,rgba(32,184,204,.08),rgba(255,79,123,.06))}.family-contractTiles .touch-choice{min-height:76px}.family-voteArena{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));padding:11px;border-radius:28px;background:radial-gradient(circle at 50% 45%,rgba(232,182,50,.15),transparent 63%)}.family-voteArena .touch-choice{aspect-ratio:1;min-height:104px;border-radius:50%!important;border-bottom:0!important;box-shadow:0 10px 24px rgba(16,20,38,.1)}.family-choiceCloud{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.family-choiceCloud .touch-choice{min-height:60px;padding:10px!important;border-radius:16px!important}.family-binaryDecision{position:relative;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:50px;transform:translateX(var(--swipe-x,0));transition:transform .18s ease}.family-binaryDecision.dragging{transition:none}.family-binaryDecision .touch-choice{min-height:170px;font-size:clamp(18px,5vw,26px)}.family-binaryDecision .touch-choice:nth-of-type(1){border-bottom-color:var(--pink)!important;background:linear-gradient(145deg,#fff,rgba(255,79,123,.12))!important}.family-binaryDecision .touch-choice:nth-of-type(2){border-bottom-color:var(--cyan)!important;background:linear-gradient(145deg,#fff,rgba(32,184,204,.12))!important}.touch-swipe-guide{position:absolute;top:2px;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.06em;pointer-events:none}.touch-swipe-guide span:last-child{text-align:right}.touch-swipe-guide b{padding:7px 10px;border-radius:999px;background:var(--table);color:#fff;font-size:8px}.family-binaryDecision[data-swipe=left] .touch-choice:nth-of-type(1),.family-binaryDecision[data-swipe=right] .touch-choice:nth-of-type(2){border-color:var(--green)!important;box-shadow:0 0 0 4px rgba(21,159,112,.16)}.touch-text-composer{display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px 9px;padding:12px;border:1px solid rgba(32,184,204,.34);border-radius:22px;background:linear-gradient(145deg,#fff,rgba(32,184,204,.07));box-shadow:0 13px 28px rgba(16,20,38,.08)}.touch-text-composer-icon{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--table);color:var(--gold);font-size:24px}.touch-text-composer .field-label{align-self:end;margin:0}.touch-text-composer .field{grid-column:2;margin:0;min-width:0}.touch-text-composer .button{grid-column:1/-1;margin:2px 0 0!important;min-height:56px}
@media(max-width:360px){.touch-choice-arena{gap:7px}.touch-choice{min-height:72px;padding:10px!important;border-radius:17px!important}.family-quizPods .touch-choice{min-height:86px;font-size:15px}.family-bidGrid{gap:6px;padding:7px}.family-binaryDecision{padding-top:44px}.family-binaryDecision .touch-choice{min-height:144px;font-size:17px}.touch-swipe-guide{font-size:7px}.touch-swipe-guide b{padding:6px 8px;font-size:6px}.touch-text-composer{grid-template-columns:34px minmax(0,1fr);padding:9px}.touch-text-composer-icon{width:34px;height:34px;font-size:19px}}
@media(prefers-reduced-motion:reduce){.touch-choice,.family-binaryDecision{transition:none!important}}
@keyframes context-timer-pulse { from { box-shadow:0 0 0 0 rgba(232,182,50,0); } to { box-shadow:0 0 0 5px rgba(232,182,50,.12); } }
@media (max-width:360px) {
  .controller-page.rich-controller-active { padding:8px; }
  .rich-controller-active .controller-shell { min-height:calc(100vh - 16px); padding:17px; border-radius:22px; }
  .rich-controller-active .controller-brand { margin-bottom:17px; }
  .rich-controller-active .brand-mark { width:34px; height:34px; }
  .game-context { padding:13px; border-radius:20px; }
  .game-context-media-stage { max-height:150px; }
  .game-context-prompt { font-size:23px; }
  .game-context-score b { font-size:15px; }
  .game-context-options { grid-template-columns:1fr; }
  .game-context-four-grid { gap:3px; padding:7px; }
  .game-context-tricks { grid-template-columns:1fr; }
  .game-context-trick-play .game-context-card { width:38px; height:52px; }
}
@media (max-width:520px) { .game-context-tricks { grid-template-columns:1fr; } }
@media (max-width:520px) { .game-context-trix-penalties>div { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { .game-context-timer { animation:none; } }
.controller-domino-rack { display:flex; gap:8px; overflow-x:auto; padding:8px 2px 14px; scroll-snap-type:x proximity; }
.controller-domino { flex:0 0 72px; height:42px; display:grid; grid-template-columns:1fr 1px 1fr; align-items:center; border:2px solid var(--line); border-radius:12px; background:var(--surface); color:var(--ink); font-weight:950; scroll-snap-align:center; }
.controller-domino i { width:1px; height:26px; background:var(--line); }
.controller-domino span { text-align:center; }
.controller-domino.legal { border-color:var(--gold); box-shadow:0 8px 20px rgba(232,182,50,.18); }
.controller-domino.dim { opacity:.42; }
.domna-touch-rack { display:grid; grid-template-columns:repeat(auto-fit,minmax(72px,1fr)); gap:10px; overflow:visible; padding:2px 0 4px; scroll-snap-type:none; }
.domna-touch-tile { position:relative; min-width:0; min-height:64px; height:auto; padding:6px; cursor:pointer; transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease, background .14s ease; }
.domna-touch-tile:not(:disabled):hover, .domna-touch-tile:not(:disabled):focus-visible { transform:translateY(-2px); border-color:var(--pink); box-shadow:0 14px 28px rgba(255,79,123,.14), 0 0 0 3px rgba(255,79,123,.12); outline:none; }
.domna-touch-tile.single-end:not(:disabled):hover, .domna-touch-tile.single-end:not(:disabled):focus-visible { border-color:var(--gold); box-shadow:0 14px 28px rgba(232,182,50,.16), 0 0 0 3px rgba(232,182,50,.14); }
.domna-touch-tile.double-end:not(:disabled):hover, .domna-touch-tile.double-end:not(:disabled):focus-visible { border-color:var(--cyan); box-shadow:0 14px 28px rgba(32,184,204,.16), 0 0 0 3px rgba(32,184,204,.14); }
.domna-touch-tile.selected { border-color:var(--cyan); background:linear-gradient(180deg,#fff,rgba(32,184,204,.1)); box-shadow:0 16px 30px rgba(32,184,204,.18), 0 0 0 3px rgba(32,184,204,.14); transform:translateY(-2px); }
.domna-touch-tile.single-end::after, .domna-touch-tile.double-end::after { position:absolute; top:6px; right:6px; display:grid; place-items:center; min-width:22px; height:22px; padding:0 6px; border-radius:999px; font-size:9px; font-weight:950; letter-spacing:.08em; }
.domna-touch-tile.single-end::after { content:"AUTO"; color:#7b5b00; background:rgba(232,182,50,.2); }
.domna-touch-tile.double-end::after { content:"2 ENDS"; color:#045a67; background:rgba(32,184,204,.16); }
.controller-domna-guide { margin:0; color:var(--muted); font-size:13px; font-weight:800; line-height:1.4; }
.domna-end-picker { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:12px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(32,184,204,.05)); }
.domna-end-picker>small { grid-column:1/-1; color:var(--muted); font-size:10px; font-weight:950; letter-spacing:.12em; }
.domna-end-choice { min-height:58px; text-align:center; }
.domna-end-choice.left { border-left:5px solid var(--pink); }
.domna-end-choice.right { border-left:5px solid var(--cyan); }
.domna-controller-actions { display:grid; gap:10px; }
.column-controller { display:grid; grid-template-columns:repeat(7,1fr); gap:7px; padding:12px 0; }
.column-drop { min-width:0; height:86px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border:2px solid var(--line); border-radius:18px; color:var(--ink); background:var(--surface); cursor:pointer; transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease; }
.column-drop span { color:var(--pink); font-size:25px; font-weight:950; line-height:1; }.column-drop b { font-size:18px; }
.column-drop:hover { transform:translateY(-4px); border-color:var(--pink); box-shadow:0 10px 24px rgba(255,79,123,.16); }
.column-controller.color-1 .column-drop span { color:var(--cyan); }.column-controller.color-2 .column-drop span { color:var(--gold); }.column-controller.color-3 .column-drop span { color:var(--green); }
.column-controller-board { display:grid; gap:10px; }
.column-controller-meta { display:grid; gap:3px; text-align:center; }
.column-controller-meta small { color:var(--muted); font-size:10px; font-weight:950; letter-spacing:.14em; }
.column-controller-meta b { font-size:19px; line-height:1.04; }
.column-controller-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; align-items:stretch; }
.column-controller-grid.fallback .column-touch-lane { min-height:260px; }
.column-touch-lane { position:relative; display:grid; min-width:0; grid-template-rows:auto repeat(6,1fr) auto; gap:6px; padding:8px 4px 10px; border:2px solid rgba(16,20,38,.1); border-radius:24px; background:linear-gradient(180deg,#fff,rgba(255,255,255,.92)); box-shadow:0 14px 28px rgba(16,20,38,.08); color:var(--ink); cursor:pointer; transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease, background .14s ease; }
.column-touch-lane:hover:not(:disabled), .column-touch-lane:focus-visible { transform:translateY(-3px); border-color:var(--pink); box-shadow:0 16px 30px rgba(255,79,123,.16), 0 0 0 3px rgba(255,79,123,.12); outline:none; }
.column-controller-board.color-1 .column-touch-lane:hover:not(:disabled), .column-controller-board.color-1 .column-touch-lane:focus-visible { border-color:var(--cyan); box-shadow:0 16px 30px rgba(32,184,204,.16), 0 0 0 3px rgba(32,184,204,.12); }
.column-controller-board.color-2 .column-touch-lane:hover:not(:disabled), .column-controller-board.color-2 .column-touch-lane:focus-visible { border-color:var(--gold); box-shadow:0 16px 30px rgba(232,182,50,.16), 0 0 0 3px rgba(232,182,50,.12); }
.column-controller-board.color-3 .column-touch-lane:hover:not(:disabled), .column-controller-board.color-3 .column-touch-lane:focus-visible { border-color:var(--green); box-shadow:0 16px 30px rgba(21,159,112,.16), 0 0 0 3px rgba(21,159,112,.12); }
.column-touch-lane:active:not(:disabled), .column-touch-lane.locked { transform:scale(.98); }
.column-touch-lane:disabled { opacity:.56; cursor:not-allowed; filter:saturate(.75); }
.column-touch-badge, .column-touch-footer { display:grid; place-items:center; min-height:28px; border-radius:999px; font-size:10px; font-weight:950; letter-spacing:.1em; }
.column-touch-badge { background:rgba(255,79,123,.12); color:var(--pink); }
.column-controller-board.color-1 .column-touch-badge { background:rgba(32,184,204,.12); color:var(--cyan); }
.column-controller-board.color-2 .column-touch-badge { background:rgba(232,182,50,.14); color:#946b07; }
.column-controller-board.color-3 .column-touch-badge { background:rgba(21,159,112,.12); color:var(--green); }
.column-touch-slot { display:block; aspect-ratio:1; border:1px solid rgba(16,20,38,.1); border-radius:50%; background:rgba(16,20,38,.07); box-shadow:inset 0 4px 7px rgba(16,20,38,.14); }
.column-touch-slot.owner-0 { background:var(--pink); border-color:rgba(255,79,123,.34); box-shadow:inset 0 2px 4px rgba(255,255,255,.25), 0 5px 9px rgba(255,79,123,.16); }
.column-touch-slot.owner-1 { background:var(--cyan); border-color:rgba(32,184,204,.34); box-shadow:inset 0 2px 4px rgba(255,255,255,.25), 0 5px 9px rgba(32,184,204,.16); }
.column-touch-slot.owner-2 { background:var(--gold); border-color:rgba(232,182,50,.34); box-shadow:inset 0 2px 4px rgba(255,255,255,.25), 0 5px 9px rgba(232,182,50,.16); }
.column-touch-slot.owner-3 { background:var(--green); border-color:rgba(21,159,112,.34); box-shadow:inset 0 2px 4px rgba(255,255,255,.25), 0 5px 9px rgba(21,159,112,.16); }
.column-touch-footer { background:var(--ink); color:#fff; }
.column-touch-lane:disabled .column-touch-footer { background:rgba(16,20,38,.35); }
.column-controller-hint { margin:0; color:var(--muted); font-size:11px; font-weight:750; line-height:1.4; text-align:center; }
@media(max-width:560px){.column-controller-grid{gap:6px}.column-touch-lane{gap:5px;padding:7px 3px 9px;border-radius:19px}.column-touch-badge,.column-touch-footer{min-height:24px;font-size:9px}.column-controller-meta b{font-size:17px}.column-controller-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){.column-touch-lane{transition:none}.column-touch-slot{transition:none}}
.controller-dama-board { width:min(100%,390px); aspect-ratio:1; margin:10px auto 14px; display:grid; grid-template-columns:repeat(8,1fr); overflow:hidden; border:4px solid var(--ink); border-radius:18px; background:var(--table); }
.dama-cell { position:relative; min-width:0; padding:0; border:0; display:grid; place-items:center; }.dama-cell.shade-0 { background:#eee5d4; }.dama-cell.shade-1 { background:#d7c6a5; }.dama-cell.movable { box-shadow:inset 0 0 0 4px var(--pink); cursor:pointer; }.dama-cell.selected { box-shadow:inset 0 0 0 5px var(--cyan); }
.dama-piece { display:grid; place-items:center; width:74%; aspect-ratio:1; border-radius:50%; border:3px solid var(--gold); background:var(--surface); color:var(--gold); font-size:18px; font-weight:950; box-shadow:0 5px 9px rgba(16,20,38,.22); }.dama-piece.owner-1 { border-color:var(--cyan); background:var(--table); color:var(--cyan); }.dama-piece.king { box-shadow:0 0 0 3px rgba(232,182,50,.28),0 5px 9px rgba(16,20,38,.22); }
.controller-dama-moves { display:grid; gap:9px; }.dama-move { text-align:center; }
.mini-label { margin:12px 0 6px; color:var(--muted); font-size:10px; font-weight:950; letter-spacing:.15em; }.controller-card-row { display:flex; gap:8px; overflow-x:auto; padding:5px 2px 12px; }.playing-card { flex:0 0 62px; height:84px; display:flex; flex-direction:column; align-items:center; justify-content:center; border:2px solid var(--line); border-radius:12px; background:var(--surface); color:var(--ink); box-shadow:0 7px 16px rgba(16,20,38,.09); }.playing-card b { font-size:22px; }.playing-card i { font-size:25px; font-style:normal; }.playing-card.red { color:var(--red); }.playing-card.playable { border-color:var(--gold); cursor:pointer; }.playing-card.selected { border-color:var(--cyan); box-shadow:0 0 0 3px rgba(32,184,204,.18); }.playing-card:disabled { opacity:.45; }.controller-basra-plays { display:grid; gap:9px; }.basra-clear { width:100%; padding:20px; color:var(--gold); text-align:center; }
.kout-hand { padding-bottom:18px; }.kout-hand .playing-card.joker { flex-basis:72px; background:linear-gradient(145deg,#fff,#f7e8b7); }.kout-hand .playing-card.joker b { font-size:12px; letter-spacing:.04em; }.kout-help { margin:2px 0 0; color:var(--muted); font-size:13px; line-height:1.45; }
.tarneeb-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.tarneeb-private-meta>span{min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 5px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.08em;text-align:center}.tarneeb-private-meta b{max-width:100%;overflow:hidden;color:var(--ink);font-size:18px;letter-spacing:0;text-overflow:ellipsis}.tarneeb-private-meta small{max-width:100%;overflow:hidden;font-size:7px;white-space:nowrap;text-overflow:ellipsis}.tarneeb-private-contract{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid var(--line);border-left:7px solid var(--gold);border-radius:15px;background:linear-gradient(135deg,#fff,#fff8df)}.tarneeb-private-contract span{color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.1em}.tarneeb-private-contract b{color:var(--gold);font-size:25px;letter-spacing:.08em}.tarneeb-private-contract.phase-trump{border-left-color:var(--cyan);background:linear-gradient(135deg,#fff,rgba(32,184,204,.08))}.tarneeb-bid-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.tarneeb-bid-actions .tarneeb-action:last-child{grid-column:1/-1}.tarneeb-trump-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.tarneeb-action{min-width:0;min-height:56px;padding:8px;border:1px solid var(--line)!important;border-radius:15px;background:var(--surface);text-align:center}.tarneeb-action b{display:block;font-size:19px}.tarneeb-action span{display:block;color:var(--muted);font-size:8px;font-weight:900}.tarneeb-action.pass{grid-column:1/-1;min-height:44px;color:var(--muted);background:var(--cream)}.tarneeb-action.red b{color:var(--red)}.tarneeb-hand-label{margin-top:2px}.tarneeb-hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.tarneeb-hand .playing-card{width:100%;min-width:0;height:72px;flex:none;border-radius:10px}.tarneeb-hand .playing-card b{font-size:18px}.tarneeb-hand .playing-card i{font-size:21px}.tarneeb-hand .playing-card.playable{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff8dc);box-shadow:0 0 0 2px rgba(232,182,50,.16),0 7px 16px rgba(16,20,38,.09)}.tarneeb-hand .playing-card.locked{border-color:var(--green);box-shadow:0 0 0 3px rgba(21,159,112,.17)}.tarneeb-help{margin:0;padding:10px 12px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:11px;font-weight:750;line-height:1.42}

/* Spades Teams — complete private browser table */
.spades-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.spades-private-meta>span{min-width:0;display:flex;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.08em;text-align:center}.spades-private-meta b{max-width:100%;overflow:hidden;color:var(--ink);font-size:18px;letter-spacing:0;text-overflow:ellipsis}.spades-private-meta span:nth-child(2) b{color:var(--gold)}.spades-private-meta span:nth-child(3) b{color:var(--pink)}.spades-private-meta small{max-width:100%;overflow:hidden;font-size:6px;text-overflow:ellipsis;white-space:nowrap}.spades-team-ledger{display:grid;grid-template-columns:1fr 1fr;gap:7px}.spades-team-ledger>span{display:flex;min-height:58px;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:7px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.spades-team-ledger>span.team-1{border-top-color:var(--cyan)}.spades-team-ledger>span.yours{box-shadow:0 0 0 2px rgba(232,182,50,.22)}.spades-team-ledger small,.spades-team-ledger em{color:var(--muted);font-size:6px;font-style:normal;font-weight:950;letter-spacing:.06em}.spades-team-ledger b{font-size:18px}.spades-public-bids{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.spades-public-bids>span{display:flex;min-width:0;min-height:48px;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:5px;border:1px solid var(--line);border-bottom:4px solid var(--pink);border-radius:11px;background:var(--surface)}.spades-public-bids>span.team-1{border-bottom-color:var(--cyan)}.spades-public-bids>span.open{opacity:.55}.spades-public-bids small{max-width:100%;overflow:hidden;color:var(--muted);font-size:6px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.spades-public-bids b{font-size:13px}.spades-bid-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.spades-bid{min-width:0!important;min-height:54px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:6px!important;border:1px solid var(--line)!important;border-left:1px solid var(--line)!important;border-bottom:5px solid var(--gold)!important;border-radius:14px!important;background:#fff!important;text-align:center!important}.spades-bid b{font-size:18px}.spades-bid small{color:var(--muted);font-size:6px;font-weight:950}.spades-bid.nil{grid-column:1/-1;min-height:58px!important;border-bottom-color:var(--pink)!important;background:linear-gradient(145deg,#fff,rgba(255,79,123,.08))!important}.spades-bid.nil b{color:var(--pink);font-size:21px}.spades-hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.spades-hand .spades-card{width:100%;min-width:0;height:66px;flex:none;border-radius:10px}.spades-hand .spades-card b{font-size:17px}.spades-hand .spades-card i{font-size:20px}.spades-hand .spades-card.playable{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff8dc);box-shadow:0 0 0 2px rgba(232,182,50,.15),0 6px 13px rgba(16,20,38,.1)}.spades-hand .spades-card.locked{opacity:1;border-color:var(--green);box-shadow:0 0 0 3px rgba(21,159,112,.18)}.spades-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.spades-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.spades-result.final{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.12),#fff)}.spades-result-mark{color:var(--ink);font-size:46px;line-height:1}.spades-result>small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.11em}.spades-result>b{font-size:22px}.spades-result>span{color:var(--muted);font-size:10px;font-weight:800}.spades-result-scores{display:grid;grid-template-columns:1fr 1fr;gap:7px}.spades-result-scores>span{display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.spades-result-scores>span.team-1{border-top-color:var(--cyan)}.spades-result-scores>span.winner{box-shadow:0 0 0 2px var(--gold)}.spades-result-scores small{color:var(--muted);font-size:7px;font-weight:950}.spades-result-scores b{font-size:16px}.spades-result-scores em,.spades-result-scores i{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.spades-nil-results{display:grid;gap:5px;padding:9px;border:1px solid var(--line);border-radius:13px;background:rgba(255,79,123,.06)}.spades-nil-results>small{color:var(--pink);font-size:7px;font-weight:950;letter-spacing:.1em}.spades-nil-results>span{display:flex;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:9px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:850}.spades-nil-results b{color:var(--ink)}
@media(max-width:360px){.controller-page.spades-controller-active{display:block;padding:8px}.spades-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.spades-controller-active .controller-brand{margin-bottom:17px}.spades-controller-active .brand-mark{width:34px;height:34px}.spades-controller-active .prompt{margin:12px 0 15px!important;font-size:27px!important}.spades-hand .spades-card{height:58px}.spades-bid{min-height:48px!important}.spades-public-bids>span{min-height:43px}}
@media(prefers-reduced-motion:reduce){.spades-card,.spades-bid,.spades-result{transition:none!important;animation:none!important}}

.trix-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.trix-private-meta>span{min-width:0;display:flex;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.08em;text-align:center}.trix-private-meta b{width:100%;overflow:hidden;color:var(--ink);font-size:15px;line-height:1.08;letter-spacing:0;text-overflow:ellipsis}.trix-private-meta span:nth-child(2) b{color:var(--gold);font-size:12px}.trix-private-meta small{width:100%;overflow:hidden;font-size:6px;white-space:nowrap;text-overflow:ellipsis}.trix-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.trix-actions.phase-choosing_contract .trix-action:last-child{grid-column:1/-1}.trix-action{min-width:0;min-height:64px!important;display:grid!important;grid-template-columns:34px 1fr;align-items:center;gap:6px;padding:8px 9px!important;border:1px solid var(--line)!important;border-left:6px solid var(--pink)!important;border-radius:15px!important;background:#fff!important;text-align:left!important}.trix-action b{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(255,79,123,.1);color:var(--pink);font-size:19px}.trix-action span{overflow:hidden;font-size:10px;line-height:1.1;text-overflow:ellipsis}.trix-action.contract-diamonds,.trix-action.contract-hearts{border-left-color:var(--red)!important}.trix-action.contract-diamonds b,.trix-action.contract-hearts b{background:rgba(217,61,85,.09);color:var(--red)}.trix-action.contract-queens{border-left-color:var(--cyan)!important}.trix-action.contract-queens b{background:rgba(32,184,204,.09);color:var(--cyan)}.trix-action.contract-collection{border-left-color:var(--gold)!important}.trix-action.contract-collection b{background:rgba(232,182,50,.12);color:var(--gold)}.trix-action.contract-trix{border-left-color:var(--green)!important}.trix-action.contract-trix b{background:rgba(21,159,112,.1);color:var(--green)}.trix-action.pass{grid-column:1/-1;display:flex!important;min-height:50px!important;flex-direction:column;justify-content:center;border-left-color:var(--muted)!important;text-align:center!important}.trix-action.pass b{display:block;width:auto;height:auto;background:none;color:var(--ink);font-size:15px}.trix-action.pass small{color:var(--muted);font-size:7px;letter-spacing:.1em}.trix-contract-card{display:flex;flex-direction:column;gap:3px;padding:11px 13px;border:1px solid var(--line);border-left:8px solid var(--pink);border-radius:16px;background:linear-gradient(135deg,#fff,#fff7e7)}.trix-contract-card small{color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.11em}.trix-contract-card b{font-size:19px}.trix-contract-card span{color:var(--muted);font-size:10px;font-weight:800}.trix-contract-card.contract-king-of-hearts,.trix-contract-card.contract-diamonds{border-left-color:var(--red)}.trix-contract-card.contract-queens{border-left-color:var(--cyan)}.trix-contract-card.contract-collection{border-left-color:var(--gold)}.trix-layout{display:grid;gap:5px;padding:7px;border:1px solid var(--line);border-radius:16px;background:var(--table)}.trix-layout-row{min-width:0;display:flex;align-items:center;gap:3px;overflow:hidden}.trix-layout-row>strong{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:9px;background:var(--surface);color:var(--ink);font-size:16px}.trix-layout-row.red>strong{color:var(--red)}.trix-layout-empty{color:rgba(255,255,255,.4);font-size:7px;font-weight:950;letter-spacing:.08em}.trix-layout-row .trix-mini-card{flex:0 0 27px;width:27px;height:37px;margin-left:-10px;border-width:1px;border-radius:6px;box-shadow:none}.trix-layout-row .trix-mini-card:first-of-type{margin-left:0}.trix-layout-row .trix-mini-card b{font-size:9px}.trix-layout-row .trix-mini-card i{font-size:10px}.trix-hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.trix-hand .trix-card{width:100%;min-width:0;height:64px;flex:none;border-radius:10px}.trix-hand .trix-card b{font-size:17px}.trix-hand .trix-card i{font-size:19px}.trix-hand .trix-card.playable{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff8dc);box-shadow:0 0 0 2px rgba(232,182,50,.15),0 6px 13px rgba(16,20,38,.1)}.trix-hand .trix-card.locked{opacity:1;border-color:var(--green);box-shadow:0 0 0 3px rgba(21,159,112,.18)}.trix-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.trix-result{display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.trix-result-mark{color:var(--gold);font-size:42px;line-height:1}.trix-result>small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.12em}.trix-result>b{font-size:24px}.trix-result>span{color:var(--muted);font-size:11px;font-weight:800}.trix-result.final{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.11),#fff)}.trix-result.final .trix-result-mark{color:var(--green)}.trix-result-scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.trix-result-score{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:9px 10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.trix-result-score span{overflow:hidden;font-size:11px;font-weight:900;white-space:nowrap;text-overflow:ellipsis}.trix-result-score b{font-size:15px}.trix-result-score small{grid-column:1/-1;color:var(--muted);font-size:7px;font-weight:900}.trix-result-score.seat-1{border-top-color:var(--cyan)}.trix-result-score.seat-2{border-top-color:var(--gold)}.trix-result-score.seat-3{border-top-color:var(--green)}.trix-result-score.winner{box-shadow:0 0 0 2px var(--gold)}

.trix-action.locked{opacity:1!important;border-left-color:var(--green)!important;box-shadow:inset 0 0 0 2px rgba(21,159,112,.17)}.trix-action.locked b{background:rgba(21,159,112,.1);color:var(--green)}

/* Shared host / TV */
.host-page { min-height: 100vh; padding: clamp(18px, 2vw, 36px); padding-bottom:8px; overflow-x: hidden; }
.ambient { position: fixed; inset: 0; pointer-events: none; overflow: hidden; }
.ambient::before, .ambient::after { content: ""; position: absolute; width: 34vw; aspect-ratio: 1; border-radius: 50%; filter: blur(90px); opacity: .22; }
.ambient::before { background: var(--pink); left: -12vw; top: 30%; opacity:.35; }
.ambient::after { background: var(--cyan); right: -12vw; top: 5%; opacity:.3; }
.host-shell { position: relative; z-index: 1; width: min(1500px, 100%); margin: 0 auto; }
.host-topbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.host-brand { display: flex; align-items: center; gap: 13px; font-weight: 950; letter-spacing: .08em; font-size: clamp(18px, 2vw, 28px); }
.host-brand .brand-mark { width:54px; height:54px; }
.room-mini { display: flex; align-items: center; gap: 12px; padding: 11px 16px; border: 1px solid var(--line); border-radius: 16px; background:var(--surface); }
.room-mini b { letter-spacing: .18em; font-size: 21px; }
.tv-narrator { display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; margin:0 0 16px; padding:14px 18px; border:1px solid rgba(255,255,255,.18); border-radius:20px; background:linear-gradient(135deg,rgba(16,20,38,.94),rgba(25,29,48,.9)); color:#fff; box-shadow:0 12px 32px rgba(16,20,38,.14); }
.tv-narrator-badge { display:inline-flex; align-items:center; justify-content:center; padding:7px 10px; border-radius:999px; color:var(--gold); background:rgba(232,182,50,.12); font-size:10px; font-weight:950; letter-spacing:.14em; white-space:nowrap; }
.tv-narrator b { overflow:hidden; font-size:15px; line-height:1.35; text-overflow:ellipsis; }
.tv-narrator small { color:rgba(255,255,255,.55); font-size:9px; font-weight:900; letter-spacing:.12em; white-space:nowrap; }
.host-grid { display: grid; grid-template-columns: minmax(280px, .7fr) minmax(500px, 1.5fr); gap: clamp(20px, 3vw, 42px); align-items: stretch; }
.join-panel, .stage { border-radius: 32px; }
.join-panel { padding: clamp(22px, 3vw, 36px); text-align: center; }
.join-panel h2 { margin: 4px 0 2px; font-size: clamp(24px, 3vw, 38px); }
.join-url { margin: 5px 0 18px; color: var(--muted); }
.qr-frame { width: min(280px, 78%); aspect-ratio: 1; margin: 0 auto 18px; padding: 10px; border-radius: 24px; background: white; }
.qr-frame img { width: 100%; height: 100%; display: block; border-radius: 16px; }
.room-code { margin: 0; font-size: clamp(44px, 6vw, 82px); line-height: 1; letter-spacing: .16em; }
.roster { margin-top: 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; text-align: left; }
.roster-player { padding: 11px 12px; border-radius: 13px; background:var(--surface); border:1px solid var(--line); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.stage { min-height: min(640px, calc(100vh - 135px)); padding: clamp(24px, 3vw, 42px); display: flex; flex-direction: column; justify-content: center; }
.stage h1 { max-width: 1000px; margin: 0; font-size: clamp(36px, 4vw, 64px); line-height: 1.02; letter-spacing: -.035em; }
.stage-copy { max-width: 820px; color: var(--muted); font-size: clamp(18px, 2vw, 26px); line-height: 1.45; }
.party-intro-card { display:grid; gap:12px; }
.party-intro-card .stage-copy { max-width: 920px; }
.party-beat { display:grid; gap:6px; padding:12px 14px; border:1px solid rgba(16,20,38,.08); border-radius:18px; background:rgba(255,255,255,.66); box-shadow:0 8px 20px rgba(16,20,38,.06); }
.party-beat span { color:var(--gold); font-size:10px; font-weight:950; letter-spacing:.15em; }
.party-beat b { color:var(--ink); font-size:18px; line-height:1.25; }
.game-picker { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 28px; }
.game-card { min-height: 170px; padding: 22px; border: 1px solid var(--line); border-radius: 24px; color: var(--ink); background:var(--surface); text-align: left; cursor: pointer; }
.game-card:hover { border-color: var(--cyan); transform: translateY(-3px); }
.game-card .emoji { display: block; font-size: 40px; margin-bottom: 20px; }
.game-card b { display: block; font-size: 22px; }
.game-card small { color: var(--muted); }
.stage-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 24px; }
.phase-pill { display: inline-flex; padding: 8px 13px; border-radius: 999px; background: rgba(255, 209, 91, .14); color: var(--gold); font-size: 14px; font-weight: 900; letter-spacing: .12em; }
.timer { display: grid; place-items: center; width: 78px; height: 78px; border: 5px solid #e4ded3; border-top-color: var(--gold); border-radius: 50%; font-size: 28px; font-weight: 950; }
.scorebar { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 14px 0 22px; }
.team-score { padding: 12px 16px; border-radius: 14px; font-size: 20px; font-weight: 900; }
.team-score.red { background: rgba(255, 94, 112, .16); color: #ff9ba7; }
.team-score.blue { background: rgba(71, 168, 255, .16); color: #91ceff; text-align: right; }
.answer-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; margin-top: 20px; }
.answer-tile { min-height: 70px; display: flex; align-items: center; padding: 14px 17px; border: 1px solid var(--line); border-radius: 17px; background:var(--surface); font-size: clamp(17px, 1.6vw, 23px); font-weight: 850; }
.answer-tile.correct { border-color: #79e9a0; background: rgba(86, 218, 132, .2); }
.answer-tile.dim { opacity: .45; }
.response-meter { margin-top: 24px; color: var(--muted); font-size: 18px; font-weight: 800; }
.host-actions { display: flex; gap: 12px; margin-top: 28px; }
.host-actions .button { min-width: 180px; }
.result-list { display: grid; gap: 10px; margin-top: 28px; }
.result-row { display: grid; grid-template-columns: 1fr auto; gap: 16px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 16px; background:var(--surface); font-size: 20px; }
.result-row.truth { border: 1px solid #79e9a0; }
.bluff-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; margin-top: 20px; }
.bluff-option { min-height: 82px; display: flex; flex-direction: column; justify-content: center; gap: 7px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 17px; background:var(--surface); }
.bluff-option b { font-size: clamp(16px, 1.4vw, 21px); }
.bluff-option small { color: var(--muted); font-weight: 750; }
.bluff-option.truth { border-color: #79e9a0; background: rgba(86, 218, 132, .2); }
.secret-stage-icon { display: block; margin: 0 0 18px; font-size: clamp(54px, 7vw, 90px); }
.name-cloud { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.name-cloud span { padding: 10px 15px; border: 1px solid var(--line); border-radius: 999px; background:var(--surface); font-size: 18px; font-weight: 800; }
.vote-bars { display: grid; gap: 6px; margin-top: 14px; }
.vote-bar { padding: 8px 12px; border: 1px solid var(--line); border-radius: 13px; background:var(--surface); overflow: hidden; }
.vote-bar > div { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 4px; font-size: 16px; font-weight: 850; }
.vote-bar i { display: block; width: var(--vote); height: 5px; border-radius: 999px; background: linear-gradient(90deg, var(--pink), var(--violet)); transition: width .3s ease; }
.survey-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.survey-choice { min-height: 210px; display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 25px; border-radius: 25px; text-align: center; }
.survey-choice.a { background: linear-gradient(145deg, rgba(255,80,118,.35), rgba(255,80,118,.12)); border: 1px solid rgba(255,120,145,.5); }
.survey-choice.b { background: linear-gradient(145deg, rgba(71,168,255,.35), rgba(71,168,255,.12)); border: 1px solid rgba(100,190,255,.5); }
.survey-choice small { font-size: 22px; font-weight: 950; }.survey-choice b { font-size: clamp(22px,2.4vw,34px); }.survey-choice strong { font-size: 46px; }
.domna-target { color:var(--muted); font-size:14px; font-weight:900; letter-spacing:.12em; }
.domna-heading { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.domna-heading h1 { font-size:clamp(36px,4vw,62px); }
.domna-boneyard { flex:0 0 118px; display:grid; grid-template-columns:auto auto; align-items:center; gap:0 9px; padding:15px 17px; border:1px solid var(--line); border-radius:20px; background:var(--surface); }
.domna-boneyard span { grid-row:span 2; color:var(--gold); font-size:36px; transform:rotate(90deg); }
.domna-boneyard b { font-size:28px; line-height:1; }.domna-boneyard small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.08em; }
.domna-table { min-height:220px; display:flex; align-items:center; justify-content:center; padding:26px; border:2px solid rgba(232,182,50,.55); border-radius:30px; background:var(--table); box-shadow:inset 0 0 80px rgba(32,184,204,.1),0 24px 55px rgba(16,20,38,.16); overflow:hidden; }
.domna-chain { width:100%; display:flex; align-items:center; justify-content:center; gap:7px; flex-wrap:wrap; }
.tv-domino { width:104px; height:58px; display:grid; grid-template-columns:1fr 2px 1fr; align-items:center; padding:7px; border:2px solid #e8b632; border-radius:13px; background:var(--surface); box-shadow:0 9px 20px rgba(0,0,0,.22); animation:domino-deal .28s ease-out both; }
.tv-domino > b { width:2px; height:42px; background:#d8d1c4; }
.pip-face { display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:repeat(3,1fr); gap:2px; width:34px; height:34px; margin:auto; }
.pip-face i { width:7px; height:7px; margin:auto; border-radius:50%; background:transparent; }.pip-face i.on { background:var(--table); box-shadow:0 0 0 1px rgba(16,20,38,.1); }
.domna-scores { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
.domna-player { display:grid; grid-template-columns:1fr auto; gap:2px 10px; padding:13px 15px; border:1px solid var(--line); border-radius:17px; background:var(--surface); }
.domna-player span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:17px; font-weight:900; }.domna-player b { color:var(--ink); font-size:18px; }.domna-player small { grid-column:1/-1; color:var(--muted); font-weight:750; }
.domna-player.active { border-color:var(--pink); background:rgba(255,79,123,.09); box-shadow:0 9px 24px rgba(255,79,123,.13); }
.preview-mode .host-grid { grid-template-columns:1fr; }.preview-mode .join-panel { display:none; }
.connect-show { display:grid; grid-template-columns:minmax(390px,540px) minmax(310px,1fr); align-items:center; gap:clamp(24px,4vw,58px); min-height:0; }
.connect-copy { min-width:0; }.connect-copy h1 { font-size:clamp(36px,4.3vw,64px); }.connect-mark { display:block; margin:16px 0 20px; color:var(--pink); font-size:clamp(34px,5vw,68px); line-height:.7; font-weight:950; letter-spacing:-.15em; }
.connect-board { width:min(540px,52vw); display:grid; grid-template-columns:repeat(7,1fr); gap:8px; padding:16px; border:3px solid rgba(255,255,255,.18); border-radius:28px; background:var(--table); box-shadow:inset 0 0 80px rgba(32,184,204,.1),0 24px 55px rgba(16,20,38,.18); }
.connect-slot { aspect-ratio:1; border:2px solid rgba(255,255,255,.16); border-radius:50%; background:rgba(255,255,255,.08); box-shadow:inset 0 7px 12px rgba(0,0,0,.22); }
.connect-slot.owner-0 { background:var(--pink); }.connect-slot.owner-1 { background:var(--cyan); }.connect-slot.owner-2 { background:var(--gold); }.connect-slot.owner-3 { background:var(--green); }
.connect-slot:not(.owner--1) { animation:disc-drop .32s cubic-bezier(.2,.9,.35,1.2) both; }.connect-slot.winner { border:5px solid #fff; box-shadow:0 0 0 5px rgba(232,182,50,.5),0 0 28px var(--gold); animation:winner-pulse .7s ease-in-out infinite alternate; }
.connect-player.color-0 { border-top:4px solid var(--pink); }.connect-player.color-1 { border-top:4px solid var(--cyan); }.connect-player.color-2 { border-top:4px solid var(--gold); }.connect-player.color-3 { border-top:4px solid var(--green); }
.connect-scores { display:grid; grid-template-columns:1fr; gap:8px; }
.dama-show { display:grid; grid-template-columns:minmax(380px,475px) minmax(320px,1fr); align-items:center; gap:clamp(28px,4vw,58px); }.tv-dama-board { width:min(475px,45vw); aspect-ratio:1; display:grid; grid-template-columns:repeat(8,1fr); padding:10px; gap:1px; border:3px solid var(--ink); border-radius:28px; background:var(--table); box-shadow:0 24px 55px rgba(16,20,38,.18); overflow:hidden; }
.tv-dama-cell { position:relative; display:grid; place-items:center; }.tv-dama-cell.shade-0 { background:#eee5d4; }.tv-dama-cell.shade-1 { background:#d7c6a5; }.tv-dama-cell.origin { box-shadow:inset 0 0 0 4px var(--pink); }.tv-dama-cell.path { box-shadow:inset 0 0 0 4px var(--gold); }
.tv-dama-piece { display:grid; place-items:center; width:76%; aspect-ratio:1; border-radius:50%; border:4px solid var(--gold); background:var(--surface); color:var(--gold); font-style:normal; font-size:23px; font-weight:950; box-shadow:0 6px 12px rgba(16,20,38,.26); }.tv-dama-piece.owner-1 { border-color:var(--cyan); background:var(--table); color:var(--cyan); }.tv-dama-piece.king { box-shadow:0 0 0 4px rgba(232,182,50,.32),0 6px 12px rgba(16,20,38,.26); }
.dama-copy h1 { font-size:clamp(38px,4.4vw,66px); }.dama-rule-chips { display:flex; flex-wrap:wrap; gap:7px; margin:18px 0; }.dama-rule-chips span { padding:7px 10px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:var(--surface); font-size:11px; font-weight:900; letter-spacing:.06em; }.dama-player.color-0 { border-top:4px solid var(--gold); }.dama-player.color-1 { border-top:4px solid var(--cyan); }
.basra-show { display:grid; grid-template-columns:minmax(470px,1.15fr) minmax(340px,.85fr); align-items:center; gap:clamp(28px,4vw,58px); }.basra-table { min-height:390px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px; padding:28px; border:3px solid rgba(232,182,50,.5); border-radius:32px; background:#123b35; box-shadow:inset 0 0 90px rgba(232,182,50,.08),0 24px 55px rgba(16,20,38,.18); }.basra-floor { width:100%; display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }.basra-floor>strong { display:flex; flex-direction:column; color:var(--gold); font-size:56px; text-align:center; }.basra-floor>strong small { font-size:13px; letter-spacing:.12em; }.tv-playing-card { width:84px; height:116px; display:flex; flex-direction:column; align-items:center; justify-content:center; border:2px solid var(--gold); border-radius:14px; background:var(--surface); color:var(--ink); box-shadow:0 10px 22px rgba(0,0,0,.22); transform:rotate(var(--tilt,0deg)); }.tv-playing-card:nth-child(odd){--tilt:-2deg}.tv-playing-card:nth-child(even){--tilt:2deg}.tv-playing-card b{font-size:29px}.tv-playing-card i{font-size:34px;font-style:normal}.tv-playing-card.red{color:var(--red)}.basra-deck{padding:9px 14px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#fff;font-weight:850}.basra-copy h1{font-size:clamp(38px,4.4vw,66px)}.basra-team.team-0{border-top:4px solid var(--pink)}.basra-team.team-1{border-top:4px solid var(--cyan)}.basra-roster{margin:4px 0 0;color:var(--muted);font-size:13px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kout-show{display:grid;grid-template-columns:minmax(560px,1.25fr) minmax(300px,.75fr);align-items:center;gap:clamp(24px,3vw,48px)}.kout-table{min-height:410px;padding:22px;border:3px solid rgba(232,182,50,.55);border-radius:42% 42% 28px 28px;background:var(--table);box-shadow:inset 0 0 110px rgba(32,184,204,.1),0 24px 55px rgba(16,20,38,.2);color:#fff}.kout-contract{display:flex;justify-content:center;gap:12px}.kout-contract span{padding:8px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.08em}.kout-contract b{color:var(--gold);font-size:18px}.kout-trick{min-height:175px;display:flex;align-items:center;justify-content:center;gap:12px}.kout-play{display:flex;flex-direction:column;align-items:center;gap:6px}.kout-play.team-0 .tv-playing-card{border-color:var(--pink)}.kout-play.team-1 .tv-playing-card{border-color:var(--cyan)}.kout-play small{max-width:86px;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:850}.kout-wait{display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--gold);font-weight:900;letter-spacing:.11em}.kout-wait b{font-size:70px}.kout-seats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.kout-seat{padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:850}.kout-seat b{float:right;color:var(--gold)}.kout-seat.team-0{border-top-color:var(--pink)}.kout-seat.team-1{border-top-color:var(--cyan)}.kout-seat.active{background:rgba(232,182,50,.18);box-shadow:0 0 0 2px var(--gold)}.kout-copy h1{font-size:clamp(38px,4.4vw,66px)}.kout-scoreboard{display:grid;gap:9px}.kout-team.team-0{border-top:4px solid var(--pink)}.kout-team.team-1{border-top:4px solid var(--cyan)}
.kout-celebration{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--gold);text-align:center;animation:winner-pulse .7s ease-in-out infinite alternate}.kout-celebration b{font-size:76px;line-height:.9}.kout-celebration span{font-size:28px;font-weight:950;letter-spacing:.1em}.kout-celebration small{color:#fff;font-size:16px;font-weight:800}
.tarneeb-show{display:grid;grid-template-columns:minmax(570px,1.27fr) minmax(300px,.73fr);align-items:center;gap:clamp(24px,3vw,48px)}.tarneeb-table{position:relative;min-height:410px;overflow:hidden;border:4px solid rgba(232,182,50,.72);border-radius:46% 46% 30% 30%;background:radial-gradient(circle at 50% 48%,rgba(32,184,204,.17),transparent 36%),linear-gradient(145deg,#11182b,#0d1020);box-shadow:inset 0 0 110px rgba(32,184,204,.11),0 24px 55px rgba(16,20,38,.22);color:#fff;isolation:isolate}.tarneeb-pattern{position:absolute;inset:0;z-index:-1;opacity:.2;background-image:radial-gradient(circle at 50% 50%,transparent 0 30%,rgba(232,182,50,.25) 30.4% 30.8%,transparent 31.2%),repeating-linear-gradient(45deg,transparent 0 25px,rgba(255,255,255,.03) 26px 27px)}.tarneeb-contract{position:absolute;left:50%;top:17px;z-index:4;display:flex;gap:7px;translate:-50% 0}.tarneeb-contract span{display:flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.06);font-size:9px;font-weight:950;letter-spacing:.08em;white-space:nowrap}.tarneeb-contract b{max-width:92px;overflow:hidden;color:var(--gold);font-size:15px;text-overflow:ellipsis}.tarneeb-center{position:absolute;left:50%;top:50%;z-index:3;display:grid;place-items:center;width:54%;height:50%;translate:-50% -46%}.tarneeb-trick{display:flex;align-items:center;justify-content:center;gap:9px}.tarneeb-play{display:flex;flex-direction:column;align-items:center;gap:4px;animation:tarneeb-card-land .3s cubic-bezier(.2,.8,.25,1) both}.tarneeb-play:nth-child(2){animation-delay:.05s}.tarneeb-play:nth-child(3){animation-delay:.1s}.tarneeb-play:nth-child(4){animation-delay:.15s}.tarneeb-play .tv-playing-card{width:70px;height:96px;border-color:var(--pink)}.tarneeb-play.team-1 .tv-playing-card{border-color:var(--cyan)}.tarneeb-play .tv-playing-card b{font-size:24px}.tarneeb-play .tv-playing-card i{font-size:28px}.tarneeb-play small{max-width:75px;overflow:hidden;font-size:9px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.tarneeb-seat{position:absolute;z-index:4;display:flex;flex-direction:column;gap:2px;min-width:120px;padding:8px 11px;border:1px solid rgba(255,255,255,.14);border-top:4px solid var(--pink);border-radius:12px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.tarneeb-seat.team-1{border-top-color:var(--cyan)}.tarneeb-seat small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.1em}.tarneeb-seat span{max-width:150px;overflow:hidden;font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.tarneeb-seat b{color:rgba(255,255,255,.6);font-size:7px;letter-spacing:.06em}.tarneeb-seat.active{background:rgba(232,182,50,.2);box-shadow:0 0 0 2px var(--gold),0 0 28px rgba(232,182,50,.25)}.tarneeb-seat.seat-0{left:50%;top:61px;translate:-50% 0}.tarneeb-seat.seat-1{right:17px;top:50%;translate:0 -50%}.tarneeb-seat.seat-2{left:50%;bottom:16px;translate:-50% 0}.tarneeb-seat.seat-3{left:17px;top:50%;translate:0 -50%}.tarneeb-auction,.tarneeb-suit-call,.tarneeb-hand-result,.tarneeb-pass-out,.tarneeb-opening,.tarneeb-celebration{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tarneeb-auction>small,.tarneeb-suit-call>small,.tarneeb-hand-result>small,.tarneeb-pass-out>small,.tarneeb-opening>small{color:rgba(255,255,255,.62);font-size:8px;font-weight:950;letter-spacing:.12em}.tarneeb-auction>b{color:var(--gold);font-size:66px;line-height:.9}.tarneeb-auction>span,.tarneeb-suit-call>span,.tarneeb-opening>span{margin-top:3px;font-size:12px;font-weight:900}.tarneeb-auction>div{display:flex;gap:4px;margin-top:9px}.tarneeb-auction i{display:grid;place-items:center;width:27px;height:27px;border:1px solid rgba(255,255,255,.18);border-radius:8px;color:rgba(255,255,255,.5);font-size:10px;font-style:normal;font-weight:900}.tarneeb-auction i.passed{opacity:.28}.tarneeb-auction i.current{border-color:var(--gold);background:var(--gold);color:var(--ink);transform:scale(1.12)}.tarneeb-auction em{max-width:220px;margin-top:7px;overflow:hidden;color:var(--cyan);font-size:8px;font-style:normal;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.tarneeb-suit-call>b{display:flex;gap:8px;margin:5px 0;color:#fff;font-size:37px}.tarneeb-suit-call i{font-style:normal}.tarneeb-suit-call i.red{color:#ff6577}.tarneeb-hand-result{gap:5px;padding:16px 20px;border:2px solid var(--cyan);border-radius:20px;background:rgba(32,184,204,.12)}.tarneeb-hand-result.defeated{border-color:var(--pink);background:rgba(255,79,123,.12)}.tarneeb-hand-result>b{color:var(--gold);font-size:22px;letter-spacing:.08em}.tarneeb-hand-result>span{font-size:11px;font-weight:850}.tarneeb-pass-out>b{color:var(--cyan);font-size:62px;line-height:.8}.tarneeb-pass-out>span{margin:7px 0 3px;color:var(--gold);font-size:18px;font-weight:950;letter-spacing:.1em}.tarneeb-opening>b{color:var(--gold);font-size:43px;letter-spacing:.1em}.tarneeb-celebration{gap:6px;color:var(--gold);animation:winner-pulse .7s ease-in-out infinite alternate}.tarneeb-celebration>b{font-size:72px;line-height:.9}.tarneeb-celebration>span{font-size:25px;font-weight:950;letter-spacing:.1em}.tarneeb-celebration>small{color:#fff;font-size:12px;font-weight:800}.tarneeb-copy h1{margin:3px 0 8px;font-size:clamp(38px,4.2vw,64px)}.tarneeb-copy .stage-copy{margin:0 0 10px;font-size:clamp(18px,1.6vw,26px)}.tarneeb-rule-strip{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tarneeb-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.05em}.tarneeb-last-trick{display:grid;grid-template-columns:1fr auto;gap:2px 9px;margin:6px 0;padding:8px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.tarneeb-last-trick small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.1em}.tarneeb-last-trick b{font-size:10px;text-align:right}.tarneeb-last-trick span{grid-column:1/-1;color:var(--muted);font-size:9px;font-weight:800}.tarneeb-scoreboard{display:grid;gap:7px}.tarneeb-scoreboard .domna-player{padding:8px 10px}.tarneeb-team{border-top:4px solid var(--pink)}.tarneeb-team.team-1{border-top-color:var(--cyan)}.tarneeb-team.declarer{box-shadow:inset 0 0 0 2px var(--gold)}.tarneeb-team span{font-size:11px}.tarneeb-team b{font-size:15px}.tarneeb-team small{max-width:100%;overflow:hidden;font-size:7px;text-overflow:ellipsis;white-space:nowrap}@keyframes tarneeb-card-land{from{opacity:0;transform:translateY(-20px) rotate(-4deg) scale(.82)}to{opacity:1;transform:none}}
.trix-show{display:grid;grid-template-columns:minmax(620px,1.34fr) minmax(320px,.66fr);align-items:center;gap:clamp(24px,3vw,48px);width:100%;height:100%}.trix-table{position:relative;width:100%;height:100%;min-height:410px;overflow:hidden;border:4px solid rgba(232,182,50,.72);border-radius:36% 36% 24% 24%;background:radial-gradient(circle at 50% 48%,rgba(32,184,204,.17),transparent 37%),linear-gradient(145deg,#11182b,#0d1020);box-shadow:inset 0 0 110px rgba(32,184,204,.11),0 24px 55px rgba(16,20,38,.22);color:#fff;isolation:isolate}.trix-table-pattern{position:absolute;inset:0;z-index:-1;opacity:.18;background-image:radial-gradient(circle at 50% 50%,transparent 0 33%,rgba(232,182,50,.34) 33.4% 33.8%,transparent 34.2%),repeating-linear-gradient(45deg,transparent 0 29px,rgba(255,255,255,.035) 30px 31px)}.trix-kingdom-badge{position:absolute;left:50%;top:14px;z-index:5;display:grid;grid-template-columns:auto auto;gap:1px 10px;min-width:190px;padding:7px 13px;border:1px solid rgba(255,255,255,.17);border-radius:15px;background:rgba(255,255,255,.08);translate:-50% 0;text-align:center;backdrop-filter:blur(8px)}.trix-kingdom-badge small{grid-column:1/-1;color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.12em}.trix-kingdom-badge b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.trix-kingdom-badge span{color:rgba(255,255,255,.58);font-size:8px;font-weight:900}.trix-table-center{position:absolute;left:50%;top:50%;z-index:3;display:grid;place-items:center;width:64%;height:61%;translate:-50% -45%}.trix-seat{position:absolute;z-index:4;display:flex;min-width:128px;max-width:180px;flex-direction:column;gap:2px;padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-top:4px solid var(--pink);border-radius:12px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.trix-seat.seat-1{border-top-color:var(--cyan)}.trix-seat.seat-2{border-top-color:var(--gold)}.trix-seat.seat-3{border-top-color:var(--green)}.trix-seat small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.09em}.trix-seat span{overflow:hidden;font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.trix-seat>b{color:rgba(255,255,255,.57);font-size:7px;letter-spacing:.04em}.trix-seat>div{display:flex;min-height:14px;gap:3px;overflow:hidden}.trix-seat>div i{padding:2px 4px;border-radius:5px;background:var(--surface);color:var(--ink);font-size:7px;font-style:normal;font-weight:950}.trix-seat>div i.red{color:var(--red)}.trix-seat>div em{color:rgba(255,255,255,.45);font-size:7px;font-style:normal;font-weight:900}.trix-seat.active{background:rgba(232,182,50,.2);box-shadow:0 0 0 2px var(--gold),0 0 28px rgba(232,182,50,.25)}.trix-seat.finished{border-color:var(--green)}.trix-seat.winner{box-shadow:0 0 0 3px var(--gold);animation:winner-pulse .7s ease-in-out infinite alternate}.trix-seat.seat-0{left:50%;top:66px;translate:-50% 0}.trix-seat.seat-1{right:15px;top:50%;translate:0 -50%}.trix-seat.seat-2{left:50%;bottom:14px;translate:-50% 0}.trix-seat.seat-3{left:15px;top:50%;translate:0 -50%}.trix-current-trick{display:flex;align-items:center;justify-content:center;gap:8px}.trix-play{display:flex;flex-direction:column;align-items:center;gap:4px;animation:trix-card-land .3s cubic-bezier(.2,.8,.25,1) both}.trix-play:nth-child(2){animation-delay:.05s}.trix-play:nth-child(3){animation-delay:.1s}.trix-play:nth-child(4){animation-delay:.15s}.trix-play .tv-playing-card{width:clamp(54px,4.8vw,112px);height:clamp(76px,6.6vw,154px);border-color:var(--gold)}.trix-play .tv-playing-card b{font-size:clamp(18px,1.7vw,38px)}.trix-play .tv-playing-card i{font-size:clamp(21px,2vw,45px)}.trix-play small{max-width:90px;overflow:hidden;font-size:clamp(7px,.7vw,15px);font-weight:900;text-overflow:ellipsis;white-space:nowrap}.trix-suit-layout{display:grid;width:100%;gap:5px}.trix-suit-row{display:grid;grid-template-columns:34px 1fr;align-items:center;min-width:0;gap:5px}.trix-suit-row>strong{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--surface);color:var(--ink);font-size:20px}.trix-suit-row.red>strong{color:var(--red)}.trix-suit-row>div{display:flex;min-width:0;align-items:center;justify-content:center;overflow:hidden}.trix-layout-card{display:flex;flex:0 0 clamp(27px,2.1vw,67px);width:clamp(27px,2.1vw,67px);height:clamp(38px,2.9vw,92px);flex-direction:column;align-items:center;justify-content:center;margin-left:clamp(-13px,-.6vw,-5px);border:1px solid rgba(16,20,38,.16);border-radius:clamp(5px,.45vw,11px);background:var(--surface);color:var(--ink);box-shadow:0 3px 8px rgba(0,0,0,.23)}.trix-layout-card:first-child{margin-left:0}.trix-layout-card.red{color:var(--red)}.trix-layout-card b{font-size:clamp(9px,.8vw,20px)}.trix-layout-card i{font-size:clamp(10px,.95vw,23px);font-style:normal}.trix-suit-row>div>em{color:rgba(255,255,255,.38);font-size:8px;font-style:normal;font-weight:950;letter-spacing:.12em}.trix-contract-call,.trix-contract-open,.trix-celebration{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.trix-contract-call>small,.trix-contract-open>small{color:rgba(255,255,255,.55);font-size:8px;font-weight:950;letter-spacing:.13em}.trix-contract-call>b{color:var(--gold);font-size:30px}.trix-contract-call>span{font-size:12px;font-weight:900}.trix-contract-call>div{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px}.trix-contract-call i{display:flex;min-width:72px;flex-direction:column;align-items:center;gap:2px;padding:6px;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:rgba(255,255,255,.66);font-size:7px;font-style:normal;font-weight:850}.trix-contract-call i strong{color:var(--gold);font-size:16px}.trix-contract-open>b{margin:5px 0;color:var(--gold);font-size:70px;line-height:.85}.trix-contract-open>span{font-size:12px;font-weight:900}.trix-hand-result{width:min(100%,390px);padding:14px;border:2px solid var(--gold);border-radius:20px;background:rgba(232,182,50,.1);text-align:center}.trix-hand-result>small{color:rgba(255,255,255,.57);font-size:8px;font-weight:950;letter-spacing:.12em}.trix-hand-result>b{display:block;margin:4px 0 8px;color:var(--gold);font-size:24px}.trix-hand-result>div{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.trix-hand-result>div>span{display:grid;grid-template-columns:1fr auto;gap:2px 5px;padding:6px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.06);text-align:left}.trix-hand-result strong{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.trix-hand-result em{color:var(--cyan);font-size:9px;font-style:normal;font-weight:950}.trix-hand-result span small{grid-column:1/-1;color:var(--gold);font-size:6px;font-weight:900}.trix-celebration{gap:5px;color:var(--gold);animation:winner-pulse .7s ease-in-out infinite alternate}.trix-celebration>b{font-size:78px;line-height:.9}.trix-celebration>span{font-size:24px;font-weight:950}.trix-celebration>small{color:#fff;font-size:10px;font-weight:850;letter-spacing:.12em}.trix-copy h1{margin:3px 0 7px;font-size:clamp(37px,4vw,62px)}.trix-copy .stage-copy{margin:0 0 8px;font-size:clamp(17px,1.45vw,24px)}.trix-contract-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:7px}.trix-contract-progress>span{min-width:0;display:flex;min-height:48px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font-size:6px;font-weight:900;text-align:center}.trix-contract-progress>span b{color:var(--muted);font-size:14px}.trix-contract-progress>span.complete{border-color:var(--green);background:rgba(21,159,112,.08);color:var(--green)}.trix-contract-progress>span.complete b{color:var(--green)}.trix-contract-progress>span.active{box-shadow:inset 0 0 0 2px var(--gold)}.trix-last-trick{display:grid;gap:4px;margin:5px 0;padding:7px 9px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.trix-last-trick>small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.1em}.trix-last-trick>div{display:grid;grid-template-columns:repeat(2,1fr);gap:3px}.trix-last-trick span{display:flex;justify-content:space-between;gap:4px;color:var(--muted);font-size:8px;font-weight:800}.trix-last-trick b{color:var(--ink)}.trix-scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.trix-score{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:8px 9px;border:1px solid var(--line);border-top:4px solid var(--pink);border-radius:12px;background:var(--surface)}.trix-score.seat-1{border-top-color:var(--cyan)}.trix-score.seat-2{border-top-color:var(--gold)}.trix-score.seat-3{border-top-color:var(--green)}.trix-score span{overflow:hidden;font-size:10px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.trix-score>b{font-size:14px}.trix-score small{grid-column:1/-1;color:var(--muted);font-size:7px;font-weight:850}.trix-score.active{box-shadow:inset 0 0 0 2px var(--gold)}.trix-score.winner{background:rgba(232,182,50,.12);box-shadow:0 0 0 2px var(--gold)}@keyframes trix-card-land{from{opacity:0;transform:translateY(-22px) rotate(-5deg) scale(.8)}to{opacity:1;transform:none}}
.tawla-show{display:grid;grid-template-columns:minmax(610px,1.35fr) minmax(310px,.65fr);align-items:center;gap:clamp(26px,3.5vw,54px);width:100%;height:100%}.tawla-board{position:relative;display:grid;grid-template-columns:1fr 62px 1fr;grid-template-rows:1fr 1fr;min-height:clamp(410px,58vh,980px);padding:22px 30px;border:5px solid #8c5a34;border-radius:32px;background:linear-gradient(145deg,#d7a466,#b97a43);box-shadow:inset 0 0 0 4px rgba(255,255,255,.18),inset 0 0 80px rgba(75,39,21,.18),0 26px 58px rgba(16,20,38,.2);overflow:hidden}.tawla-board>.tawla-quadrant:nth-child(1){grid-column:1;grid-row:1}.tawla-board>.tawla-quadrant:nth-child(2){grid-column:3;grid-row:1}.tawla-board>.tawla-quadrant:nth-child(4){grid-column:1;grid-row:2}.tawla-board>.tawla-quadrant:nth-child(5){grid-column:3;grid-row:2}.tawla-quadrant{display:grid;grid-template-columns:repeat(6,1fr);min-width:0}.tawla-point{position:relative;display:flex;align-items:center;gap:2px;padding:5px 2px;isolation:isolate}.tawla-point::before{position:absolute;inset:0;z-index:-1;content:"";background:#f0d2a0;clip-path:polygon(0 0,100% 0,50% 92%)}.tawla-point:nth-child(even)::before{background:#9e3e4c}.tawla-point.top{flex-direction:column;justify-content:flex-start}.tawla-point.bottom{flex-direction:column-reverse;justify-content:flex-start}.tawla-point.bottom::before{clip-path:polygon(50% 8%,100% 100%,0 100%)}.tawla-point.last{filter:drop-shadow(0 0 8px #e8b632)}.tawla-point.last::before{outline:4px solid var(--gold)}.tawla-checker{display:grid;place-items:center;flex:0 0 clamp(25px,2.4vw,54px);width:clamp(25px,2.4vw,54px);height:clamp(25px,2.4vw,54px);border:3px solid rgba(255,255,255,.92);border-radius:50%;background:var(--pink);box-shadow:0 5px 10px rgba(16,20,38,.3);animation:checker-land .28s cubic-bezier(.2,.8,.25,1) both}.tawla-checker.owner-1{background:var(--cyan)}.tawla-point>b{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--surface);color:var(--ink);font-size:14px}.tawla-bar{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:1fr auto;align-content:center;align-items:center;gap:7px;padding:12px 8px;border-inline:2px solid rgba(255,255,255,.25);background:#8c5a34;color:#fff}.tawla-bar>span{grid-column:1/-1;color:var(--gold);font-size:11px;font-weight:950;letter-spacing:.1em;text-align:center}.tawla-bar .tawla-checker{width:27px;height:27px;flex-basis:27px}.tawla-bar>b{font-size:18px}.tawla-off{position:absolute;right:6px;top:50%;display:grid;gap:5px;translate:0 -50%;font-size:11px;font-weight:950;writing-mode:vertical-rl}.tawla-off .coral{color:var(--pink)}.tawla-off .cyan{color:#087f91}.tawla-copy h1{font-size:clamp(38px,4.4vw,66px)}.tawla-copy .connect-scores{grid-template-columns:repeat(2,minmax(0,1fr))}.tawla-dice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.tawla-dice strong{font-size:clamp(38px,4vw,62px);letter-spacing:.08em}.tawla-dice span{color:var(--muted);font-size:13px;font-weight:900}.tawla-dice b{color:var(--gold);font-size:26px}.tawla-player.color-0{border-top:4px solid var(--pink)}.tawla-player.color-1{border-top:4px solid var(--cyan)}
.controller-tawla-board{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(2,72px);gap:2px;padding:10px;border:3px solid #8c5a34;border-radius:22px;background:#c99152;box-shadow:inset 0 0 28px rgba(75,39,21,.18)}.controller-tawla-point{position:relative;display:flex;align-items:center;gap:1px;isolation:isolate}.controller-tawla-point::before{position:absolute;inset:0;z-index:-1;content:"";background:#f0d2a0;clip-path:polygon(0 0,100% 0,50% 94%)}.controller-tawla-point:nth-child(even)::before{background:#9e3e4c}.controller-tawla-point.top{flex-direction:column;padding-top:3px}.controller-tawla-point.bottom{flex-direction:column-reverse;padding-bottom:3px}.controller-tawla-point.bottom::before{clip-path:polygon(50% 6%,100% 100%,0 100%)}.controller-tawla-checker{display:block;width:16px;height:16px;border:2px solid #fff;border-radius:50%;background:var(--pink);box-shadow:0 2px 4px rgba(16,20,38,.28)}.controller-tawla-checker.owner-1{background:var(--cyan)}.controller-tawla-point>b{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--surface);font-size:9px}.controller-tawla-dice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 15px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.controller-tawla-dice strong{font-size:34px;letter-spacing:.08em}.controller-tawla-dice span{color:var(--muted);font-size:12px;font-weight:900}.controller-tawla-moves{display:grid;gap:10px}.tawla-move.hit{border-color:var(--gold);background:rgba(232,182,50,.1)}
.tawla-dice strong,.controller-tawla-dice strong{display:flex;align-items:center;gap:9px;font-size:24px}.tawla-die{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);flex:0 0 auto;width:clamp(42px,4vw,68px);height:clamp(42px,4vw,68px);padding:7px;border:2px solid var(--ink);border-radius:11px;background:var(--surface);box-shadow:0 5px 12px rgba(16,20,38,.14)}.tawla-die>b{width:6px;height:6px;margin:auto;border-radius:50%;background:transparent}.tawla-die>b.on{background:var(--table)}.tawla-dice span>b{color:var(--gold);font-size:26px}.controller-tawla-dice .tawla-die{width:38px;height:38px;padding:5px;border-radius:9px}.controller-tawla-dice .tawla-die>b{width:5px;height:5px}
.souq-private-travel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:8px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,var(--ink),#19203a);color:#fff}.souq-private-travel>span{min-width:0;display:flex;min-height:58px;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.06);text-align:center}.souq-private-travel small{color:rgba(255,255,255,.58);font-size:7px;font-weight:950;letter-spacing:.08em}.souq-private-travel>span>b{color:var(--gold);font-size:22px}.souq-private-roll strong{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--gold);font-size:12px}.souq-private-roll .tawla-die{width:30px;height:30px;padding:4px;border-radius:7px}.souq-private-roll .tawla-die b{width:4px;height:4px}.souq-your-bid{border-color:rgba(32,184,204,.48)!important}.souq-your-bid>b{color:var(--cyan)!important}.souq-finance{display:grid;grid-template-columns:1fr 1fr;gap:9px}.souq-finance span{display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.07em}.souq-finance b{color:var(--ink);font-size:24px;letter-spacing:0}.souq-focus{padding:15px 16px;border:2px solid var(--gold);border-top-width:8px;border-radius:20px;background:var(--surface);box-shadow:0 12px 25px rgba(16,20,38,.08)}.souq-focus small,.souq-private-offer small{color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.1em}.souq-focus h3{margin:5px 0 2px;font-size:24px}.souq-focus p{margin:0 0 12px;color:var(--muted);font-weight:750}.souq-focus>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.souq-focus>div b{padding:7px 4px;border-radius:9px;background:var(--cream);font-size:10px;text-align:center}.souq-opportunities,.souq-deeds{display:flex;gap:8px;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.souq-opportunities::-webkit-scrollbar,.souq-deeds::-webkit-scrollbar{display:none}.souq-opportunity{flex:0 0 126px;min-height:65px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:9px;border:1px solid var(--gold);border-radius:16px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.souq-opportunity i{color:var(--gold);font-size:18px;font-style:normal}.souq-opportunity b{font-size:11px}.souq-deed{flex:0 0 132px;min-height:78px;display:flex;flex-direction:column;gap:4px;padding:9px;border:1px solid var(--line);border-top:7px solid var(--pink);border-radius:14px;background:var(--surface)}.souq-deed small{color:var(--muted);font-size:8px;font-weight:950}.souq-deed b{font-size:13px}.souq-deed em{margin-top:auto;color:var(--muted);font-size:9px;font-style:normal;font-weight:750}.souq-private-offer{display:flex;flex-direction:column;gap:3px;padding:14px;border:2px solid var(--cyan);border-radius:18px;background:rgba(32,184,204,.09)}.souq-private-offer b{font-size:17px}.souq-private-offer span{color:var(--muted);font-weight:800}.souq-auction-meter{margin:0;padding:10px;border-radius:14px;background:var(--cream);color:var(--muted);font-size:12px;font-weight:900;text-align:center}.souq-actions{display:grid;gap:10px}.souq-actions .negotiation{border-left-color:var(--cyan)}.tier-1{border-top-color:var(--pink)!important}.tier-2{border-top-color:var(--cyan)!important}.tier-3{border-top-color:var(--gold)!important}.tier-4{border-top-color:var(--green)!important}.tier-5{border-top-color:#8a5fc0!important}.tier-6{border-top-color:var(--ink)!important}
.souq-show{display:grid;grid-template-columns:minmax(620px,1.42fr) minmax(315px,.58fr);align-items:center;gap:clamp(24px,3vw,46px);width:100%;height:100%}.souq-board{position:relative;display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);width:100%;aspect-ratio:1.48;padding:4px;border:4px solid #9b6a38;border-radius:30px;background:#f4e8d1;box-shadow:inset 0 0 0 4px rgba(255,255,255,.48),0 24px 52px rgba(16,20,38,.18);overflow:hidden}.souq-space{position:relative;grid-row:var(--row);grid-column:var(--column);display:flex;min-width:0;flex-direction:column;justify-content:center;gap:2px;padding:4px 5px;border:1px solid var(--line);background:var(--surface);overflow:hidden}.souq-space.area{border-top:6px solid var(--pink)}.souq-space.special{align-items:center;background:var(--table);color:#fff;text-align:center}.souq-space.focus{z-index:3;box-shadow:inset 0 0 0 4px var(--gold),0 0 20px rgba(232,182,50,.75);animation:souq-focus-pulse .7s ease-in-out infinite alternate}.souq-space small{overflow:hidden;color:var(--muted);font-size:clamp(6px,.58vw,10px);font-weight:900;line-height:1;white-space:nowrap;text-overflow:ellipsis}.souq-space.special small{color:var(--gold);white-space:normal}.souq-space>b{overflow:hidden;font-size:clamp(7px,.7vw,12px);line-height:1.05;white-space:nowrap;text-overflow:ellipsis}.souq-space em{overflow:hidden;color:var(--muted);font-size:clamp(6px,.55vw,9px);font-style:normal;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.souq-projects{min-height:8px;color:var(--gold);font-size:8px;letter-spacing:2px}.souq-tokens{position:absolute;right:3px;bottom:3px;display:flex}.souq-tokens i{display:grid;place-items:center;width:16px;height:16px;margin-left:-4px;border:2px solid #fff;border-radius:50%;background:var(--pink);color:#fff;font-size:8px;font-style:normal;font-weight:950;box-shadow:0 2px 5px rgba(0,0,0,.25)}.souq-city-art{position:relative;grid-column:2/9;grid-row:2/9;overflow:hidden;border:2px solid rgba(155,106,56,.38);background:linear-gradient(180deg,#fff9ed 0 60%,rgba(32,184,204,.18) 60%);isolation:isolate}.souq-city-art h2{position:absolute;left:26%;top:15%;z-index:4;width:48%;margin:0;color:var(--ink);font-size:clamp(25px,3vw,52px);line-height:.92;text-align:center}.souq-city-art h2 small{display:block;margin-top:7px;font-size:.52em}.souq-city-art>p{position:absolute;left:30%;top:42%;z-index:4;width:40%;margin:0;color:var(--muted);font-size:clamp(8px,.8vw,14px);font-weight:950;letter-spacing:.13em;text-align:center}.souq-skyline{position:absolute;left:5%;bottom:23%;z-index:2;color:var(--ink);font-size:clamp(28px,4vw,70px);letter-spacing:-.18em;opacity:.82}.souq-towers{position:absolute;right:12%;bottom:24%;z-index:3;display:flex;gap:15px}.souq-towers i{position:relative;display:block;width:5px;height:clamp(70px,9vw,135px);background:var(--table);transform:skew(-4deg)}.souq-towers i::after{position:absolute;left:50%;top:22%;width:clamp(25px,3vw,46px);aspect-ratio:1;content:"";translate:-50% 0;border:4px solid #fff;border-radius:50%;background:var(--pink)}.souq-towers i:nth-child(2)::after{top:42%;background:var(--cyan)}.souq-arch{position:absolute;left:46%;bottom:22%;z-index:3;width:12%;height:24%;border:8px solid var(--gold);border-bottom:0;border-radius:50% 50% 0 0}.souq-dhow{position:absolute;right:31%;bottom:10%;z-index:3;color:#8c5a34;font-size:clamp(45px,6vw,95px);transform:rotate(8deg)}.souq-sea{position:absolute;left:0;right:0;bottom:0;height:22%;display:grid;align-content:space-evenly}.souq-sea i{display:block;height:3px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.55}.souq-copy h1{margin:3px 0 8px;font-size:clamp(38px,4.2vw,64px)}.souq-copy .stage-copy{margin:0 0 10px;font-size:clamp(18px,1.6vw,26px)}.souq-tv-focus{display:flex;flex-direction:column;gap:2px;padding:10px 13px;border:1px solid var(--line);border-top:7px solid var(--pink);border-radius:16px;background:var(--surface)}.souq-tv-focus small{color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.08em}.souq-tv-focus b{font-size:20px}.souq-tv-focus span{color:var(--muted);font-size:11px;font-weight:800}.souq-dice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.souq-dice>.tawla-die{width:42px;height:42px;padding:6px}.souq-dice>span{display:flex;flex-direction:column;color:var(--muted);font-size:10px;font-weight:900;text-align:right}.souq-dice>span>b{color:var(--gold);font-size:24px}.souq-dice>span>small{font-size:8px}.souq-waiting-dice{font-size:13px;letter-spacing:.08em}.souq-bid-meter{margin:0;padding:8px;border-radius:13px;background:var(--cream);color:var(--muted);font-size:10px;font-weight:950;text-align:center}.souq-scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.souq-scoreboard .domna-player{padding:8px 10px}.souq-scoreboard .domna-player span{font-size:13px}.souq-scoreboard .domna-player b{font-size:12px}.souq-scoreboard .domna-player small{font-size:8px}.souq-player{border-top:4px solid var(--pink)}.souq-player.seat-1{border-top-color:var(--cyan)}.souq-player.seat-2{border-top-color:var(--gold)}.souq-player.seat-3{border-top-color:var(--green)}.souq-player.winner{box-shadow:0 0 0 3px var(--gold);animation:winner-pulse .7s ease-in-out infinite alternate}.souq-tokens .seat-1{background:var(--cyan)}.souq-tokens .seat-2{background:var(--gold)}.souq-tokens .seat-3{background:var(--green)}@keyframes souq-focus-pulse{to{box-shadow:inset 0 0 0 4px var(--gold),0 0 35px rgba(232,182,50,.95)}}
.hand-private-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.hand-private-meta span{display:flex;flex-direction:column;gap:2px;padding:9px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.06em;text-align:center}.hand-private-meta b{color:var(--ink);font-size:18px;letter-spacing:0}.hand-fire-card{display:flex;align-items:center;justify-content:center;gap:12px;padding:9px;border:1px solid var(--line);border-radius:15px;background:var(--cream)}.hand-fire-card>small{color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.08em}.hand-sort{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:6px}.hand-sort span{color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.07em}.hand-sort button{min-height:30px;padding:5px 7px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:900}.hand-card-rack{display:flex;gap:5px;overflow-x:auto;padding:5px 2px 9px;scrollbar-width:none}.hand-card-rack::-webkit-scrollbar{display:none}.hand-playing-card{position:relative;display:flex;flex:0 0 50px;height:70px;flex-direction:column;align-items:center;justify-content:center;padding:3px;border:2px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 5px 10px rgba(16,20,38,.11)}button.hand-playing-card{cursor:pointer}.hand-playing-card.red{color:var(--red)}.hand-playing-card b{font-size:18px}.hand-playing-card i{font-size:20px;font-style:normal}.hand-playing-card small{font-size:7px;font-weight:950}.hand-playing-card.wild{border-color:var(--gold);background:linear-gradient(145deg,#fff7d8,#fff)}.hand-playing-card.wild b{color:var(--gold);font-size:24px}.hand-playing-card.selected{translate:0 -6px;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(32,184,204,.2),0 8px 15px rgba(16,20,38,.14)}.hand-table-melds{display:grid;gap:7px}.hand-mini-meld{display:flex;align-items:center;gap:3px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:var(--table);overflow-x:auto}.hand-mini-meld>small{flex:0 0 62px;color:var(--gold);font-size:8px;font-weight:900}.hand-mini-meld .hand-playing-card{flex-basis:36px;width:36px;height:50px;border-width:1px;box-shadow:none}.hand-mini-meld .hand-playing-card b{font-size:12px}.hand-mini-meld .hand-playing-card i{font-size:14px}.hand-actions{display:grid;gap:9px}.hand-meld-plan{display:flex!important;flex-direction:column;gap:3px}.hand-meld-plan small{color:var(--muted);font-size:9px}.hand-meld-plan.full{border-color:var(--gold);background:rgba(232,182,50,.12)}.hand-layoff{border-left-color:var(--cyan)!important}.hand-joker-swap{border-left-color:var(--gold)!important}.hand-discard:disabled{opacity:.38}.hand-discard:not(:disabled){background:var(--pink)}
.hand-show{display:grid;grid-template-columns:minmax(620px,1.3fr) minmax(330px,.7fr);align-items:center;gap:clamp(25px,3vw,46px);width:100%;height:100%}.hand-table{position:relative;width:100%;aspect-ratio:1.52;overflow:hidden;border:4px solid rgba(232,182,50,.7);border-radius:29% 29% 22% 22%;background:var(--table);box-shadow:inset 0 0 100px rgba(32,184,204,.1),0 24px 55px rgba(16,20,38,.22)}.hand-table-pattern{position:absolute;inset:0;opacity:.15;background-image:repeating-linear-gradient(45deg,transparent 0 28px,rgba(32,184,204,.25) 29px 30px)}.hand-stock-zone,.hand-discard-zone{position:absolute;top:38%;z-index:3;display:flex;flex-direction:column;align-items:center;gap:3px;color:#fff}.hand-stock-zone{left:43%}.hand-discard-zone{right:43%}.hand-stock-zone>b{font-size:18px}.hand-stock-zone small,.hand-discard-zone small{color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.08em}.hand-card-back,.hand-tv-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:75px;border:2px solid var(--gold);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 7px 14px rgba(0,0,0,.28)}.hand-card-back{background:var(--pink)}.hand-card-back i{width:24px;height:36px;border:3px solid #fff;border-radius:50% 50% 8px 8px}.hand-tv-card.red{color:var(--red)}.hand-tv-card b{font-size:18px}.hand-tv-card i{font-size:21px;font-style:normal}.hand-tv-card small{font-size:7px;font-weight:950}.hand-tv-card.joker{color:var(--gold);background:linear-gradient(145deg,#fff7d8,#fff)}.hand-public-melds{position:absolute;left:5%;right:5%;top:10%;bottom:18%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:1fr 1fr;gap:45% 2%;z-index:2}.hand-tv-meld{min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px}.hand-tv-meld>small{color:var(--gold);font-size:8px;font-weight:900;letter-spacing:.05em}.hand-tv-meld>div{display:flex;justify-content:center;width:100%;overflow:hidden}.hand-tv-meld .hand-tv-card{flex:0 0 40px;width:40px;height:56px;margin-left:-14px;border-width:1px;border-radius:7px;box-shadow:0 4px 8px rgba(0,0,0,.2)}.hand-tv-meld .hand-tv-card:first-child{margin-left:0}.hand-tv-meld .hand-tv-card b{font-size:12px}.hand-tv-meld .hand-tv-card i{font-size:14px}.hand-empty-table{grid-column:1/-1;grid-row:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gold);opacity:.35}.hand-empty-table b{font-size:44px}.hand-empty-table span{font-size:11px;font-weight:950;letter-spacing:.12em}.hand-seat-row{position:absolute;left:4%;right:4%;bottom:3%;z-index:4;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.hand-seat{display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:7px 8px;border:1px solid rgba(255,255,255,.14);border-top:4px solid var(--pink);border-radius:11px;background:rgba(255,255,255,.07);color:#fff}.hand-seat span{overflow:hidden;font-size:11px;font-weight:900;white-space:nowrap;text-overflow:ellipsis}.hand-seat b{font-size:10px}.hand-seat small{grid-column:1/-1;color:rgba(255,255,255,.62);font-size:7px;font-weight:850}.hand-seat.active{background:rgba(232,182,50,.18);box-shadow:0 0 0 2px var(--gold)}.hand-seat.seat-1{border-top-color:var(--cyan)}.hand-seat.seat-2{border-top-color:var(--gold)}.hand-seat.seat-3{border-top-color:var(--green)}.hand-seat.winner{box-shadow:0 0 0 3px var(--gold);animation:winner-pulse .7s ease-in-out infinite alternate}.hand-copy h1{margin:3px 0 8px;font-size:clamp(38px,4.2vw,64px)}.hand-copy .stage-copy{margin:0 0 10px;font-size:clamp(18px,1.6vw,26px)}.hand-rule-strip{display:flex;flex-wrap:wrap;gap:6px}.hand-rule-strip span{padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:9px;font-weight:900}.hand-round-result{display:flex;flex-direction:column;gap:2px;padding:10px;border:2px solid var(--gold);border-radius:15px;background:rgba(232,182,50,.1)}.hand-round-result b{font-size:17px}.hand-round-result span{color:var(--muted);font-size:11px}.hand-scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.hand-scoreboard .domna-player{padding:8px 10px}.hand-scoreboard .domna-player span{font-size:13px}.hand-scoreboard .domna-player b{font-size:15px}.hand-scoreboard .domna-player small{font-size:8px}.hand-score{border-top:4px solid var(--pink)}.hand-score.seat-1{border-top-color:var(--cyan)}.hand-score.seat-2{border-top-color:var(--gold)}.hand-score.seat-3{border-top-color:var(--green)}.hand-score.winner{box-shadow:0 0 0 3px var(--gold)}
.party-intermission{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;width:100%}.switch-countdown{display:grid;place-items:center;width:118px;height:118px;margin-top:24px;border:8px solid var(--gold);border-radius:50%;background:var(--violet);color:#fff;font-size:58px;font-weight:950;animation:countdown-pop .8s ease-in-out infinite alternate}.party-mini-board,.party-podium{display:grid;gap:12px}.party-score-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;border:1px solid var(--line);border-radius:20px;background:var(--surface);font-size:clamp(20px,1.8vw,30px);font-weight:900}.party-score-row b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--cyan)}.party-score-row.leader{border:3px solid var(--gold);background:rgba(232,182,50,.12);transform:scale(1.02)}.party-score-row.leader b{color:var(--gold)}.party-final{width:min(1050px,100%);margin:auto}.party-history{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.party-history .eyebrow{width:100%}.party-history span{padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-weight:800}.party-podium{grid-template-columns:1fr 1fr;margin-top:24px}.party-podium .leader{grid-column:1/-1}.party-podium .party-score-row{animation:score-land .5s cubic-bezier(.2,.8,.25,1) both}.party-podium .party-score-row:nth-child(2){animation-delay:.08s}.party-podium .party-score-row:nth-child(3){animation-delay:.16s}
.party-team-copy{display:grid;gap:3px}.party-team-copy small,.party-team-copy em,.party-podium .party-score-row span small{display:block;color:var(--muted);font-size:.5em;font-style:normal;font-weight:850;letter-spacing:.05em}.party-event-details{display:flex;flex-wrap:wrap;gap:8px}.party-event-details span{padding:8px 12px;border:1px solid rgba(16,20,38,.12);border-radius:999px;background:rgba(255,255,255,.78);color:var(--violet);font-size:clamp(13px,1.15vw,19px);font-weight:950}.party-score-row.color-coral{border-left:8px solid var(--pink)}.party-score-row.color-cyan{border-left:8px solid var(--cyan)}.party-score-row.color-gold{border-left:8px solid var(--gold)}.party-score-row.color-green{border-left:8px solid var(--green)}.party-score-row.color-violet{border-left:8px solid var(--violet)}.party-score-row.color-navy{border-left:8px solid var(--ink)}.party-final{position:relative}.party-celebration{position:absolute;z-index:3;inset:-30px 0 auto;height:220px;overflow:hidden;pointer-events:none}.party-celebration i{--tone:var(--pink);position:absolute;top:-18px;width:13px;height:22px;border-radius:5px;background:var(--tone);transform:rotate(var(--r));animation:party-confetti var(--dur) cubic-bezier(.2,.75,.25,1) var(--d) both}.party-celebration i:nth-child(3n){--tone:var(--cyan)}.party-celebration i:nth-child(4n){--tone:var(--gold)}.party-celebration i:nth-child(5n){--tone:var(--green)}@keyframes party-confetti{0%{opacity:0;transform:translateY(-20px) rotate(0)}12%{opacity:1}78%{opacity:1}100%{opacity:0;transform:translateY(220px) rotate(420deg)}}
@media(prefers-reduced-motion:reduce){.party-celebration i{animation:none;top:18px;opacity:.45}.switch-countdown,.party-podium .party-score-row{animation:none!important}}
@keyframes countdown-pop{to{transform:scale(1.08);box-shadow:0 0 40px rgba(232,182,50,.36)}}@keyframes score-land{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes checker-land{from{opacity:0;transform:translateY(-12px) scale(.8)}to{opacity:1;transform:none}}
@keyframes disc-drop { from { opacity:0; transform:translateY(-45px) scale(.78); } to { opacity:1; transform:none; } }
@keyframes winner-pulse { to { transform:scale(1.08); } }
@keyframes domino-deal { from { opacity:0; transform:translateY(-14px) rotate(-2deg) scale(.92); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion: reduce) { .tv-domino,.connect-slot,.connect-slot.winner { animation:none; } }
@media (max-width:900px) { .connect-show { grid-template-columns:1fr; }.connect-board { width:min(540px,90vw); margin:auto; }.connect-copy { text-align:center; } }
@media (max-width:900px) { .dama-show { grid-template-columns:1fr; }.tv-dama-board { width:min(520px,88vw); margin:auto; }.dama-copy { text-align:center; } }
@media (max-width:900px){.basra-show{grid-template-columns:1fr}.basra-copy{text-align:center}.basra-table{min-height:360px}}
@media (max-width:900px){.kout-show{grid-template-columns:1fr}.kout-copy{text-align:center}.kout-table{min-height:360px}}
@media (max-width:900px){.tarneeb-show{grid-template-columns:1fr}.tarneeb-copy{text-align:center}.tarneeb-table{min-height:410px}.tarneeb-rule-strip{justify-content:center}}
@media (max-width:900px){.trix-show{grid-template-columns:1fr}.trix-table{min-height:430px}.trix-copy{text-align:center}.trix-contract-progress{width:min(620px,100%);margin-inline:auto}.trix-scoreboard{width:min(620px,100%);margin-inline:auto}}
@media (max-width:900px){.tawla-show{grid-template-columns:1fr}.tawla-board{min-height:400px}.tawla-copy{text-align:center}}
@media (max-width:900px){.souq-show{grid-template-columns:1fr}.souq-board{width:min(850px,92vw);margin:auto}.souq-copy{text-align:center}}
@media (max-width:900px){.hand-show{grid-template-columns:1fr}.hand-table{width:min(850px,92vw);margin:auto}.hand-copy{text-align:center}}
@media (max-height:800px) and (min-width:901px){.tawla-copy h1{margin:3px 0 9px;font-size:54px}.tawla-copy .stage-copy{margin:0 0 10px;font-size:22px}.tawla-copy .dama-rule-chips{margin:8px 0}.tawla-dice{padding:9px 14px}.tawla-die{width:42px;height:42px}.tawla-board{min-height:400px}}
@media (max-height:800px) and (min-width:901px){.tarneeb-show{gap:24px}.tarneeb-table{min-height:390px}.tarneeb-copy h1{font-size:48px}.tarneeb-copy .stage-copy{font-size:20px}.tarneeb-play .tv-playing-card{width:64px;height:88px}.tarneeb-last-trick{margin:4px 0}.tarneeb-scoreboard{gap:5px}}
@media (max-height:800px) and (min-width:901px){.trix-show{gap:22px}.trix-table{min-height:390px}.trix-copy h1{font-size:44px}.trix-copy .stage-copy{font-size:18px}.trix-contract-progress>span{min-height:42px}.trix-last-trick{margin:3px 0}.trix-scoreboard{gap:4px}.trix-seat{padding:6px 8px}.trix-table-center{height:57%}}
.host-error { color: #ff9ba7; font-weight: 800; }
.fullscreen { position: fixed; right: 18px; bottom: 18px; z-index: 5; width: 46px; height: 46px; border: 1px solid var(--line); border-radius: 50%; color: var(--ink); background:var(--surface); box-shadow: 0 8px 20px rgba(16,20,38,.12); cursor: pointer; }
[dir="rtl"] .choice { text-align: right; border-left-width: 1px; border-right: 5px solid var(--pink); }
[dir="rtl"] .room-code, [dir="rtl"] .code { direction: ltr; }

.trix-seat.seat-0{top:clamp(66px,5vw,190px)}

@media (min-width:1920px){.trix-stage-head .phase-pill,.trix-stage-head .domna-target{font-size:clamp(22px,1.15vw,40px)}.trix-suit-layout{gap:clamp(8px,.6vw,20px)}.trix-suit-row{grid-template-columns:clamp(42px,2.5vw,90px) 1fr;gap:clamp(7px,.5vw,17px)}.trix-suit-row>strong{width:clamp(40px,2.4vw,86px);height:clamp(40px,2.4vw,86px);font-size:clamp(24px,1.5vw,52px)}.trix-layout-card{flex-basis:clamp(42px,3vw,120px);width:clamp(42px,3vw,120px);height:clamp(58px,4.1vw,164px);margin-left:clamp(-35px,-.8vw,-10px)}.trix-layout-card b{font-size:clamp(14px,1vw,38px)}.trix-layout-card i{font-size:clamp(16px,1.2vw,45px)}.trix-suit-row>div>em{font-size:clamp(10px,.65vw,22px)}}

@media (min-width:1920px){.trix-seat{min-width:clamp(160px,11vw,300px);max-width:340px;padding:clamp(10px,1vw,24px)}.trix-seat small{font-size:clamp(9px,.55vw,18px)}.trix-seat span{font-size:clamp(14px,.82vw,27px)}.trix-seat>b,.trix-seat>div em{font-size:clamp(9px,.5vw,16px)}.trix-seat>div i{font-size:clamp(9px,.48vw,15px)}.trix-kingdom-badge{min-width:clamp(230px,16vw,520px);padding:clamp(10px,.8vw,22px)}.trix-kingdom-badge small{font-size:clamp(9px,.48vw,15px)}.trix-kingdom-badge b{font-size:clamp(16px,.8vw,27px)}.trix-kingdom-badge span{font-size:clamp(10px,.55vw,18px)}.trix-contract-progress>span{min-height:clamp(56px,4vw,120px);font-size:clamp(8px,.52vw,17px)}.trix-contract-progress>span b{font-size:clamp(17px,1vw,34px)}.trix-score{padding:clamp(10px,.8vw,22px)}.trix-score span{font-size:clamp(12px,.72vw,24px)}.trix-score>b{font-size:clamp(18px,1vw,34px)}.trix-score small{font-size:clamp(9px,.5vw,17px)}.trix-last-trick>small{font-size:clamp(9px,.5vw,17px)}.trix-last-trick span{font-size:clamp(10px,.6vw,20px)}.trix-contract-call>b{font-size:clamp(36px,2vw,68px)}.trix-contract-call>span,.trix-contract-open>span{font-size:clamp(15px,.9vw,30px)}.trix-contract-call i{min-width:clamp(90px,6vw,190px);font-size:clamp(9px,.5vw,17px)}.trix-contract-call i strong{font-size:clamp(20px,1.2vw,40px)}.trix-contract-open>b{font-size:clamp(85px,5vw,170px)}.trix-hand-result{width:min(100%,760px);padding:clamp(18px,1.3vw,42px)}.trix-hand-result>b{font-size:clamp(30px,1.8vw,60px)}.trix-hand-result strong,.trix-hand-result em{font-size:clamp(11px,.65vw,22px)}.trix-celebration>b{font-size:clamp(95px,6vw,190px)}.trix-celebration>span{font-size:clamp(30px,1.8vw,60px)}.trix-celebration>small{font-size:clamp(13px,.8vw,27px)}}

@media (max-width:360px){.controller-page.trix-controller-active{display:block;padding:8px}.trix-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.trix-controller-active .controller-brand{margin-bottom:17px}.trix-controller-active .brand-mark{width:34px;height:34px}.trix-controller-active .controller-brand b{font-size:17px}.trix-controller-active .prompt{margin:12px 0 16px!important;font-size:28px!important}.trix-controller-active .controls{gap:8px}.trix-controller-active .status{margin-top:11px;font-size:12px}.trix-controller-active .mini-label{margin:7px 0 4px}}

@media (max-width: 900px) {
  .host-grid { grid-template-columns: 1fr; }
  .join-panel { display: grid; grid-template-columns: 170px 1fr; align-items: center; text-align: left; }
  .qr-frame { width: 150px; grid-row: span 4; margin: 0; }
  .roster { grid-column: 1 / -1; }
  .stage { min-height: 540px; }
  .game-picker { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .host-page { padding: 16px; }
  .host-topbar { align-items: flex-start; }
  .host-brand span:last-child { display: none; }
  .join-panel { display: block; text-align: center; }
  .qr-frame { width: 190px; margin: 0 auto 14px; }
  .stage { min-height: 520px; padding: 24px; }
  .stage h1 { font-size: 45px; }
  .answer-grid, .scorebar { grid-template-columns: 1fr; }
  .bluff-grid { grid-template-columns: 1fr; }
  .team-score.blue { text-align: left; }
}

.legal-page { min-height: 100vh; padding: 30px 18px; }
.legal-shell { width: min(820px, 100%); margin: 0 auto; padding: clamp(26px, 5vw, 58px); border-radius: 30px; line-height: 1.65; }
.legal-shell h1 { margin: 0 0 6px; font-size: clamp(38px, 7vw, 64px); line-height: 1; }
.legal-shell h2 { margin: 30px 0 5px; font-size: 22px; }
.legal-shell p { color: var(--muted); }
.legal-shell a { color: #087f91; }
.legal-brand { display:flex; align-items:center; gap:12px; margin-bottom:28px; letter-spacing:.08em; }
.legal-brand .brand-mark { width:52px; height:52px; }

/* Physical-TV presentation: explicit 10-foot sizing and stage modes. */
.host-page { width:100vw; height:100vh; min-height:600px; padding:max(24px,3.8vh) max(44px,4vw); overflow:hidden; }
.host-shell { width:100%; max-width:none; height:100%; display:flex; flex-direction:column; }
.host-topbar { flex:0 0 auto; min-height:58px; margin-bottom:14px; }
.host-brand { font-size:clamp(22px,2vw,32px); }.host-brand .brand-mark { width:58px; height:58px; }
.tv-top-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.tv-top-actions .lang-toggle { min-height:44px; padding:8px 14px; font-size:13px; font-weight:900; }
.host-grid { flex:1 1 auto; min-height:0; height:calc(100vh - 130px); }
.host-grid.tv-lobby { grid-template-columns:minmax(310px,.72fr) minmax(560px,1.28fr); gap:clamp(24px,3vw,48px); }
.host-grid.tv-lobby .join-panel { display:flex; }
.host-grid.tv-live,.host-grid.tv-rules { display:grid; grid-template-columns:1fr; }
.host-grid.tv-live .join-panel,.host-grid.tv-rules .join-panel { display:none; }
.host-grid.tv-live .stage,.host-grid.tv-rules .stage { width:100%; height:100%; min-height:0; }
.host-grid.tv-live .stage { padding-top:22px; padding-bottom:22px; }
.host-grid.tv-rules .stage {
  justify-content:flex-start;
  padding-top:18px;
  padding-bottom:18px;
}
.host-grid.tv-lobby .stage { padding-top:22px; padding-bottom:22px; }
.join-panel,.stage { height:100%; min-height:0; overflow:hidden; }
.join-panel { display:flex; flex-direction:column; justify-content:center; padding:clamp(24px,3vh,38px); }
.join-panel .qr-frame { width:min(32vh,330px); max-width:76%; margin:0 auto 12px; }
.join-panel h2 { font-size:clamp(28px,2.5vw,42px); }.join-panel .room-code { font-size:clamp(58px,6vw,94px); }
.join-panel .roster { display:none; }.join-panel .roster-player { font-size:clamp(14px,1.25vw,19px); }
.stage { padding:clamp(30px,4vh,54px) clamp(38px,4vw,70px); }
.stage h1 { max-width:1200px; font-size:clamp(50px,5.2vw,88px); line-height:1.02; }
.stage-copy { font-size:clamp(23px,2.15vw,36px); line-height:1.32; }
.eyebrow,.phase-pill,.domna-target { font-size:clamp(15px,1.3vw,21px); }
.response-meter { margin-top:18px; font-size:clamp(20px,1.8vw,30px); }
.timer { width:92px; height:92px; font-size:36px; border-width:6px; }
.answer-grid { gap:16px; margin-top:22px; }.answer-tile { min-height:88px; padding:18px 22px; font-size:clamp(24px,2vw,34px); }
.scorebar { gap:18px; }.team-score { padding:16px 20px; font-size:clamp(24px,2vw,34px); }
.bluff-option { min-height:96px; padding:18px 20px; }.bluff-option b { font-size:clamp(22px,1.8vw,31px); }
.bluff-question { max-width:1100px; margin:12px 0 16px; color:var(--muted); font-size:clamp(19px,1.55vw,26px); font-weight:800; line-height:1.3; }
.survey-choice { min-height:260px; }.survey-choice b { font-size:clamp(30px,2.8vw,48px); }
.lobby-instructions { width:100%; }.join-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:28px 0 22px; }
.join-steps div { min-height:118px; display:flex; flex-direction:column; justify-content:center; gap:10px; padding:18px; border:1px solid var(--line); border-radius:22px; background:var(--surface); }
.join-steps b { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; color:#fff; background:var(--pink); font-size:22px; }.join-steps div:nth-child(2) b{background:var(--cyan)}.join-steps div:nth-child(3) b{background:var(--gold)}
.join-steps span { font-size:clamp(19px,1.55vw,27px); font-weight:900; }
.lobby-count { display:inline-flex; align-items:baseline; gap:12px; margin-top:12px; padding:12px 18px; border:1px solid var(--line); border-radius:18px; background:var(--surface); }
.lobby-count strong { color:var(--pink); font-size:42px; }.lobby-count span { font-size:18px; font-weight:900; letter-spacing:.08em; }
.rules-stage {
  width:100%;
  height:100%;
  min-height:0;
  display:grid;
  grid-template-rows:auto auto auto auto minmax(0,1fr) auto;
  align-content:stretch;
  gap:8px;
}
.rules-stage>.stage-head { margin:0; }
.rules-stage>.eyebrow { margin:0; font-size:clamp(11px,.9vw,16px); }
.rules-stage>h1 { margin:0; max-width:none; font-size:clamp(38px,4vw,64px); line-height:.98; }
.rules-stage>.stage-copy { margin:0; max-width:none; font-size:clamp(18px,1.65vw,27px); line-height:1.18; }
.rules-stage>.response-meter { margin:0; font-size:clamp(15px,1.3vw,22px); }
.tv-rule-list { min-height:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:2px 0 0; }
.tv-rule { min-height:0; display:flex; flex-direction:column; justify-content:center; gap:11px; overflow:hidden; padding:16px 18px; border:1px solid var(--line); border-radius:22px; background:var(--surface); box-shadow:0 12px 30px rgba(16,20,38,.08); }
.tv-rule b { display:grid; place-items:center; width:46px; height:46px; flex:0 0 46px; border-radius:50%; color:#fff; background:var(--pink); font-size:23px; }.tv-rule:nth-child(2) b{background:var(--cyan)}.tv-rule:nth-child(3) b{background:var(--gold)}
.tv-rule span { color:var(--ink); font-size:clamp(17px,1.38vw,24px); font-weight:850; line-height:1.16; }
@media (min-width:1920px) {
  .rules-stage { gap:clamp(10px,.55vw,22px); }
  .rules-stage>.eyebrow { font-size:clamp(16px,.72vw,28px); }
  .rules-stage>h1 { font-size:clamp(64px,3vw,116px); }
  .rules-stage>.stage-copy { font-size:clamp(27px,1.45vw,55px); }
  .rules-stage>.response-meter { font-size:clamp(22px,1.05vw,40px); }
  .tv-rule-list { gap:clamp(20px,1.15vw,44px); }
  .tv-rule { gap:clamp(16px,.8vw,30px); padding:clamp(28px,1.5vw,58px); border-radius:clamp(28px,1.7vw,64px); }
  .tv-rule b { width:clamp(62px,2.35vw,90px); height:clamp(62px,2.35vw,90px); flex-basis:clamp(62px,2.35vw,90px); font-size:clamp(31px,1.2vw,46px); }
  .tv-rule span { font-size:clamp(28px,1vw,40px); line-height:1.18; }
}
.stage-enter { animation:tv-stage-in .34s cubic-bezier(.2,.8,.25,1) both; }
.tv-live .connect-show,.tv-live .dama-show,.tv-live .basra-show,.tv-live .kout-show,.tv-live .tarneeb-show,.tv-live .trix-show,.tv-live .baloot-show,.tv-live .concan-show,.tv-live .tawla-show,.tv-live .souq-show,.tv-live .hand-show { width:100%; height:100%; }
.tv-live .stage-head { margin-bottom:14px; }
.tv-live .scorebar { margin:8px 0 12px; }
.tv-live .answer-grid { margin-top:14px; }
.tv-live .answer-tile { min-height:78px; }
.tv-live .response-meter { margin-top:10px; }
@keyframes tv-stage-in { from{opacity:0;transform:translateX(32px) scale(.992)} to{opacity:1;transform:none} }
@media (prefers-reduced-motion:reduce){.stage-enter,.souq-space.focus,.souq-player.winner,.hand-seat.winner,.tarneeb-play,.tarneeb-celebration,.trix-play,.trix-celebration,.trix-seat.winner{animation:none}}

/* Baloot Majlis — private phone controller */
.baloot-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.baloot-private-meta>span{min-width:0;display:flex;min-height:61px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.08em;text-align:center}.baloot-private-meta b{width:100%;overflow:hidden;color:var(--ink);font-size:15px;line-height:1.08;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.baloot-private-meta span:nth-child(2) b{color:var(--gold);font-size:12px}.baloot-private-meta small{width:100%;overflow:hidden;font-size:6px;white-space:nowrap;text-overflow:ellipsis}
.baloot-contract-strip{position:relative;min-height:66px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:2px 10px;padding:10px 73px 10px 13px;border:1px solid var(--line);border-left:7px solid var(--gold);border-radius:16px;background:linear-gradient(135deg,#fff,#fff8df)}.baloot-contract-strip>span{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.1em}.baloot-contract-strip>b{grid-row:1/3;grid-column:2;color:var(--gold);font-size:28px}.baloot-contract-strip>em{color:var(--ink);font-size:10px;font-style:normal;font-weight:950}.baloot-contract-strip.contract-sun{border-left-color:var(--pink);background:linear-gradient(135deg,#fff,rgba(255,79,123,.08))}.baloot-contract-strip.mode-locked{box-shadow:inset 0 0 0 2px rgba(16,20,38,.08)}.baloot-buyer-card{position:absolute;right:10px;top:7px;width:46px!important;height:54px!important;flex:none!important;border-color:var(--gold)!important;border-radius:9px!important;transform:rotate(3deg)}.baloot-buyer-card b{font-size:14px!important}.baloot-buyer-card i{font-size:16px!important}
.baloot-auction-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.baloot-choice{min-width:0!important}.baloot-auction-choice{min-height:62px!important;display:grid!important;grid-template-columns:34px 1fr;align-items:center;gap:6px;padding:8px 9px!important;border:1px solid var(--line)!important;border-left:6px solid var(--gold)!important;border-radius:15px!important;background:#fff!important;text-align:left!important}.baloot-auction-choice>b{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(232,182,50,.12);color:var(--gold);font-size:19px}.baloot-auction-choice>span{overflow:hidden;font-size:10px;line-height:1.13;text-overflow:ellipsis}.baloot-auction-choice.call-pass{border-left-color:var(--muted)!important}.baloot-auction-choice.call-pass>b{background:rgba(105,112,131,.08);color:var(--muted)}.baloot-auction-choice.call-sun{border-left-color:var(--pink)!important}.baloot-auction-choice.call-sun>b{background:rgba(255,79,123,.1);color:var(--pink)}.baloot-auction-choice.call-ashkal{border-left-color:var(--cyan)!important}.baloot-auction-choice.call-ashkal>b{background:rgba(32,184,204,.1);color:var(--cyan)}.baloot-auction-choice.red>b{color:var(--red)}
.baloot-multiplier-ladder{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:6px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.baloot-multiplier-ladder>span{display:flex;min-width:0;min-height:45px;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;color:var(--muted)}.baloot-multiplier-ladder b{font-size:16px}.baloot-multiplier-ladder small{font-size:6px;font-weight:950}.baloot-multiplier-ladder .current{background:var(--table);color:var(--gold);box-shadow:0 5px 12px rgba(16,20,38,.18)}.baloot-multiplier-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.baloot-multiplier-choice{min-height:58px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px!important;border:1px solid var(--line)!important;border-left:6px solid var(--pink)!important;border-radius:14px!important;background:#fff!important;text-align:center!important}.baloot-multiplier-choice>b{font-size:10px;line-height:1.15}.baloot-multiplier-choice small{color:var(--muted);font-size:7px;font-weight:950}.baloot-multiplier-choice.mode-locked{border-left-color:var(--ink)!important;background:linear-gradient(135deg,#fff,rgba(16,20,38,.05))!important}.baloot-multiplier-choice.call-pass{border-left-color:var(--muted)!important}
.baloot-project-label{margin-top:3px}.baloot-project-candidates{display:grid;gap:7px}.baloot-project-candidate{overflow:hidden;border:1px solid var(--line);border-left:7px solid var(--cyan);border-radius:15px;background:var(--surface)}.baloot-project-candidate.declarable{border-left-color:var(--gold);box-shadow:0 0 0 2px rgba(232,182,50,.16)}.baloot-project-candidate header{display:grid;grid-template-columns:1fr auto;gap:1px 8px;padding:8px 10px}.baloot-project-candidate header span{font-size:11px;font-weight:950}.baloot-project-candidate header b{color:var(--gold);font-size:14px}.baloot-project-candidate header small{grid-column:1/-1;color:var(--muted);font-size:7px;font-weight:900}.baloot-project-candidate>div{display:flex;gap:4px;overflow-x:auto;padding:0 9px 9px}.baloot-project-card{flex:0 0 35px!important;width:35px!important;height:47px!important;border-width:1px!important;border-radius:7px!important;box-shadow:none!important}.baloot-project-card b{font-size:10px!important}.baloot-project-card i{font-size:12px!important}.baloot-project-wait{grid-column:1/-1;margin:0;padding:13px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:800;line-height:1.4}.baloot-project-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.baloot-project-choice{min-height:54px!important;padding:9px!important;text-align:center!important}.baloot-project-choice.pass{color:var(--muted);background:var(--surface)}
.baloot-hand-label{margin-top:2px}.baloot-hand{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.baloot-hand .playing-card{position:relative;width:100%;min-width:0;height:66px;flex:none;border-radius:10px}.baloot-hand .playing-card b{font-size:17px}.baloot-hand .playing-card i{font-size:19px}.baloot-hand .playing-card.playable{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff8dc);box-shadow:0 0 0 2px rgba(232,182,50,.15),0 6px 13px rgba(16,20,38,.1)}.baloot-hand .playing-card.selected{opacity:1;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(32,184,204,.19)}.baloot-hand .playing-card.can-ekka::after,.baloot-hand .playing-card.can-baloot::after{position:absolute;right:-3px;top:-5px;padding:2px 4px;border-radius:6px;background:var(--cyan);color:#fff;font-size:5px;font-weight:950;letter-spacing:.04em;content:"EKKA"}.baloot-hand .playing-card.can-baloot::after{background:var(--pink);content:"BALOOT"}.baloot-play-variants{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.baloot-play-variants>small{grid-column:1/-1;color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.08em}.baloot-variant{min-height:54px!important;display:flex!important;flex-direction:column;justify-content:center;gap:2px;padding:8px!important;border-left-color:var(--gold)!important;text-align:center!important}.baloot-variant b{font-size:11px}.baloot-variant span{color:var(--muted);font-size:8px;line-height:1.1}.baloot-variant.variant-ekka{border-left-color:var(--cyan)!important}.baloot-variant.variant-baloot{border-left-color:var(--pink)!important}.baloot-choice.locked,.baloot-hand .playing-card.locked{opacity:1!important;border-color:var(--green)!important;box-shadow:0 0 0 3px rgba(21,159,112,.17)!important}.baloot-revealed-projects{display:grid;grid-template-columns:1fr;gap:4px;padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.baloot-revealed-projects>small{color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.1em}.baloot-revealed-projects>span{display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:800}.baloot-revealed-projects b{overflow:hidden;text-overflow:ellipsis}.baloot-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}
.baloot-result{display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.baloot-result-mark{color:var(--gold);font-size:42px;line-height:1}.baloot-result>small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.12em}.baloot-result>b{font-size:22px}.baloot-result>span{color:var(--muted);font-size:11px;font-weight:800}.baloot-result.match_complete{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.11),#fff)}.baloot-result.match_complete .baloot-result-mark{color:var(--green)}.baloot-result-scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.baloot-result-score{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.baloot-result-score.team-1{border-top-color:var(--cyan)}.baloot-result-score span{font-size:10px;font-weight:950}.baloot-result-score b{font-size:16px}.baloot-result-score small{grid-column:1/-1;color:var(--muted);font-size:7px;font-weight:900}.baloot-result-score.winner{box-shadow:0 0 0 2px var(--gold)}.baloot-result-ledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.baloot-result-ledger span{display:flex;min-width:0;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);font-size:6px;font-weight:950}.baloot-result-ledger b{max-width:100%;overflow:hidden;color:var(--ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}

/* Baloot Majlis — ten-foot TV table */
.baloot-show{display:grid;grid-template-columns:minmax(590px,1.27fr) minmax(310px,.73fr);align-items:center;gap:clamp(22px,3vw,48px);min-height:0}.baloot-table{position:relative;width:100%;height:100%;min-height:390px;overflow:hidden;border:4px solid rgba(232,182,50,.78);border-radius:45% 45% 28% 28%;background:radial-gradient(circle at 50% 49%,rgba(32,184,204,.18),transparent 34%),linear-gradient(145deg,#122c27,#0f181f);box-shadow:inset 0 0 120px rgba(232,182,50,.09),0 24px 55px rgba(16,20,38,.22);color:#fff;isolation:isolate}.baloot-table.contract-sun{background:radial-gradient(circle at 50% 48%,rgba(255,197,74,.21),transparent 35%),linear-gradient(145deg,#2d2530,#151724)}.baloot-table-pattern{position:absolute;inset:0;z-index:-1;opacity:.18;background-image:radial-gradient(circle at 50% 50%,transparent 0 29%,rgba(232,182,50,.35) 29.4% 29.8%,transparent 30.2%),repeating-linear-gradient(45deg,transparent 0 26px,rgba(255,255,255,.04) 27px 28px)}.baloot-contract-badge{position:absolute;left:3%;top:4%;z-index:5;display:grid;grid-template-columns:auto auto;gap:1px 8px;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:13px;background:rgba(16,20,38,.72);box-shadow:0 8px 16px rgba(0,0,0,.18)}.baloot-contract-badge span{font-size:9px;font-weight:950;letter-spacing:.08em}.baloot-contract-badge b{grid-row:1/3;grid-column:2;color:var(--gold);font-size:23px}.baloot-contract-badge small{color:rgba(255,255,255,.62);font-size:7px;font-weight:900}.baloot-table-center{position:absolute;left:50%;top:50%;z-index:3;display:grid;place-items:center;width:54%;height:52%;translate:-50% -46%}
.baloot-seat{position:absolute;z-index:4;min-width:118px;max-width:160px;display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:7px 9px;border:1px solid rgba(255,255,255,.18);border-top:4px solid var(--pink);border-radius:12px;background:rgba(16,20,38,.76);box-shadow:0 7px 16px rgba(0,0,0,.18)}.baloot-seat small{grid-column:1/-1;color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.08em}.baloot-seat span{overflow:hidden;font-size:11px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.baloot-seat>b{font-size:8px}.baloot-seat.team-1{border-top-color:var(--cyan)}.baloot-seat.active{background:rgba(232,182,50,.22);box-shadow:0 0 0 2px var(--gold),0 8px 18px rgba(0,0,0,.2)}.baloot-seat.declarer small::after{content:" · CALLER"}.baloot-seat.winner{box-shadow:0 0 0 3px var(--gold);animation:baloot-winner-pulse .7s ease-in-out infinite alternate}.baloot-seat.seat-0{left:50%;top:4%;translate:-50% 0}.baloot-seat.seat-1{right:2%;top:50%;translate:0 -50%}.baloot-seat.seat-2{left:50%;bottom:3%;translate:-50% 0}.baloot-seat.seat-3{left:2%;top:50%;translate:0 -50%}
.baloot-auction-center,.baloot-multiplier-center,.baloot-opening,.baloot-pass-out,.baloot-deal-result,.baloot-celebration{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center}.baloot-auction-center>small,.baloot-multiplier-center>small,.baloot-opening>small,.baloot-deal-result>small{color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.12em}.baloot-auction-center>.tv-playing-card{width:64px;height:88px}.baloot-auction-center>.tv-playing-card b{font-size:22px}.baloot-auction-center>.tv-playing-card i{font-size:25px}.baloot-auction-center>b{font-size:17px}.baloot-auction-center>em,.baloot-multiplier-center>em{color:rgba(255,255,255,.62);font-size:7px;font-style:normal;font-weight:900;letter-spacing:.06em}.baloot-card-back{display:grid;place-items:center;width:64px;height:88px;border:2px solid var(--gold);border-radius:11px;background:var(--pink);color:#fff;font-size:27px}.baloot-multiplier-center>b{color:var(--gold);font-size:58px;line-height:.9}.baloot-multiplier-center>span{font-size:18px;font-weight:950}.baloot-opening>b{color:var(--gold);font-size:62px;line-height:1}.baloot-opening>span{font-size:14px;font-weight:900}.baloot-pass-out>b,.baloot-celebration>b{color:var(--gold);font-size:65px;line-height:.9}.baloot-pass-out>span,.baloot-celebration>span{font-size:21px;font-weight:950;letter-spacing:.08em}.baloot-pass-out>small,.baloot-celebration>small{color:rgba(255,255,255,.7);font-size:10px;font-weight:850}.baloot-deal-result{width:100%;padding:15px;border:2px solid var(--gold);border-radius:18px;background:rgba(232,182,50,.12)}.baloot-deal-result.set{border-color:var(--pink);background:rgba(255,79,123,.1)}.baloot-deal-result>b{font-size:24px}.baloot-deal-result>span{font-size:12px;font-weight:850}.baloot-celebration{animation:baloot-winner-pulse .75s ease-in-out infinite alternate}
.baloot-trick{display:flex;align-items:center;justify-content:center;gap:8px}.baloot-play{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;animation:baloot-card-land .3s cubic-bezier(.2,.8,.25,1) both}.baloot-play:nth-child(2){animation-delay:.05s}.baloot-play:nth-child(3){animation-delay:.1s}.baloot-play:nth-child(4){animation-delay:.15s}.baloot-play .tv-playing-card{width:61px;height:84px}.baloot-play .tv-playing-card b{font-size:20px}.baloot-play .tv-playing-card i{font-size:23px}.baloot-play.team-0 .tv-playing-card{border-color:var(--pink)}.baloot-play.team-1 .tv-playing-card{border-color:var(--cyan)}.baloot-play>small{max-width:68px;overflow:hidden;font-size:8px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.baloot-ekka{position:absolute;right:-8px;top:-8px;padding:3px 5px;border-radius:7px;background:var(--cyan);color:#fff;font-size:6px;letter-spacing:.05em}.baloot-project-rail{position:absolute;right:2%;top:16%;z-index:4;display:grid;gap:3px;width:22%}.baloot-project-rail>span{display:grid;grid-template-columns:1fr auto;gap:1px 5px;padding:4px 6px;border:1px solid rgba(255,255,255,.13);border-left:4px solid var(--pink);border-radius:8px;background:rgba(16,20,38,.73)}.baloot-project-rail>span.team-1{border-left-color:var(--cyan)}.baloot-project-rail small{overflow:hidden;font-size:6px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.baloot-project-rail b{font-size:7px}.baloot-project-rail em{grid-column:1/-1;color:var(--gold);font-size:6px;font-style:normal}.baloot-project-rail .passed{opacity:.42}
.baloot-project-reveal{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.baloot-project-reveal>small{color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.1em}.baloot-project-reveal>div{width:100%;display:grid;gap:4px}.baloot-project-reveal article{display:grid;grid-template-columns:105px 1fr;align-items:center;gap:7px;padding:6px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(16,20,38,.74)}.baloot-project-reveal header{display:flex;flex-direction:column;gap:2px}.baloot-project-reveal header b{font-size:10px}.baloot-project-reveal header span{color:var(--gold);font-size:7px;font-weight:850}.baloot-project-reveal article>div{display:flex;overflow:hidden}.baloot-project-reveal .tv-playing-card{flex:0 0 34px;width:34px;height:47px;margin-left:-8px;border-width:1px;border-radius:6px;box-shadow:none}.baloot-project-reveal .tv-playing-card:first-child{margin-left:0}.baloot-project-reveal .tv-playing-card b{font-size:10px}.baloot-project-reveal .tv-playing-card i{font-size:12px}.baloot-project-reveal p{margin:0;color:rgba(255,255,255,.62);font-size:11px;font-weight:850}
.baloot-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px}.baloot-copy h1{margin:2px 0 3px;font-size:clamp(34px,3.8vw,58px);line-height:1}.baloot-copy .stage-copy{margin:0 0 3px;font-size:clamp(16px,1.4vw,23px);line-height:1.22}.baloot-bid-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.baloot-bid-rail>span{display:grid;grid-template-columns:1fr auto;gap:5px;padding:6px 8px;border:1px solid var(--line);border-left:4px solid var(--pink);border-radius:10px;background:var(--surface)}.baloot-bid-rail>span.team-1{border-left-color:var(--cyan)}.baloot-bid-rail small{overflow:hidden;color:var(--muted);font-size:7px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.baloot-bid-rail b{font-size:8px}.baloot-bid-rail .waiting{grid-column:1/-1;border-left-color:var(--gold)}.baloot-tv-multiplier{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:5px 5px 19px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.baloot-tv-multiplier>span{display:flex;min-height:39px;flex-direction:column;align-items:center;justify-content:center;border-radius:9px;color:var(--muted)}.baloot-tv-multiplier b{font-size:14px}.baloot-tv-multiplier small{font-size:5px;font-weight:950}.baloot-tv-multiplier .current{background:var(--table);color:var(--gold)}.baloot-tv-multiplier>em{position:absolute;left:0;right:0;bottom:4px;color:var(--muted);font-size:6px;font-style:normal;font-weight:950;letter-spacing:.12em;text-align:center}.baloot-call-history{display:flex;flex-wrap:wrap;gap:4px}.baloot-call-history>span{padding:5px 7px;border-left:4px solid var(--pink);border-radius:8px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:800}.baloot-call-history>span.team-1{border-left-color:var(--cyan)}.baloot-last-trick{display:flex;flex-wrap:wrap;gap:4px;padding:6px 8px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.baloot-last-trick>small{width:100%;color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.08em}.baloot-last-trick>span{font-size:7px;font-weight:800}.baloot-last-trick b{color:var(--ink)}.baloot-result-ledger-tv{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.baloot-result-ledger-tv>span{display:flex;min-width:0;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font-size:6px;font-weight:950}.baloot-result-ledger-tv b{color:var(--ink);font-size:10px}.baloot-scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.baloot-team{display:grid;grid-template-columns:1fr auto;gap:1px 7px;padding:8px 10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.baloot-team.team-1{border-top-color:var(--cyan)}.baloot-team>span{font-size:10px;font-weight:950}.baloot-team>b{font-size:18px}.baloot-team>small{grid-column:1/-1;color:var(--muted);font-size:7px;font-weight:900}.baloot-team>em{grid-column:1/-1;overflow:hidden;color:var(--muted);font-size:7px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.baloot-team.declarer{background:linear-gradient(145deg,#fff,#fff8df)}.baloot-team.winner{box-shadow:0 0 0 3px var(--gold)}
@keyframes baloot-card-land{from{opacity:0;transform:translateY(-18px) rotate(-3deg) scale(.85)}to{opacity:1;transform:none}}@keyframes baloot-winner-pulse{to{transform:scale(1.04);filter:drop-shadow(0 0 14px rgba(232,182,50,.45))}}
@media (max-width:900px){.baloot-show{grid-template-columns:1fr}.baloot-table{min-height:430px}.baloot-copy{text-align:center}.baloot-bid-rail,.baloot-tv-multiplier,.baloot-call-history,.baloot-last-trick,.baloot-result-ledger-tv,.baloot-scoreboard{width:min(640px,100%);margin-inline:auto}}
@media (max-height:800px) and (min-width:901px){.baloot-show{gap:22px}.baloot-table{min-height:385px}.baloot-copy{gap:4px}.baloot-copy h1{font-size:42px}.baloot-copy .stage-copy{font-size:17px}.baloot-seat{padding:5px 7px}.baloot-table-center{height:55%}.baloot-play .tv-playing-card{width:55px;height:75px}.baloot-last-trick{padding:4px 6px}.baloot-team{padding:6px 8px}.baloot-project-rail{top:18%}}
@media (max-width:360px){.controller-page.baloot-controller-active{display:block;padding:8px}.baloot-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.baloot-controller-active .controller-brand{margin-bottom:17px}.baloot-controller-active .brand-mark{width:34px;height:34px}.baloot-controller-active .controller-brand b{font-size:17px}.baloot-controller-active .prompt{margin:12px 0 16px!important;font-size:27px!important}.baloot-controller-active .controls{gap:8px}.baloot-controller-active .status{margin-top:11px;font-size:12px}.baloot-controller-active .mini-label{margin:7px 0 4px}}
@media (min-width:1920px){.baloot-stage-head .phase-pill,.baloot-stage-head .domna-target{font-size:clamp(20px,1.05vw,38px)}.baloot-seat{min-width:clamp(170px,11vw,360px);max-width:390px;padding:clamp(10px,.75vw,24px)}.baloot-seat small{font-size:clamp(9px,.48vw,17px)}.baloot-seat span{font-size:clamp(14px,.72vw,26px)}.baloot-seat>b{font-size:clamp(9px,.48vw,17px)}.baloot-contract-badge{padding:clamp(10px,.65vw,22px)}.baloot-contract-badge span{font-size:clamp(10px,.52vw,19px)}.baloot-contract-badge b{font-size:clamp(28px,1.45vw,52px)}.baloot-contract-badge small{font-size:clamp(8px,.42vw,15px)}.baloot-play .tv-playing-card{width:clamp(70px,4vw,145px);height:clamp(96px,5.5vw,198px)}.baloot-play .tv-playing-card b{font-size:clamp(23px,1.3vw,47px)}.baloot-play .tv-playing-card i{font-size:clamp(26px,1.5vw,54px)}.baloot-play>small{max-width:clamp(85px,5vw,180px);font-size:clamp(9px,.5vw,18px)}.baloot-auction-center>.tv-playing-card{width:clamp(80px,4.5vw,162px);height:clamp(110px,6.2vw,224px)}.baloot-auction-center>b,.baloot-multiplier-center>span{font-size:clamp(18px,1vw,36px)}.baloot-auction-center>small,.baloot-multiplier-center>small,.baloot-opening>small{font-size:clamp(10px,.55vw,20px)}.baloot-auction-center>em,.baloot-multiplier-center>em{font-size:clamp(8px,.44vw,16px)}.baloot-multiplier-center>b,.baloot-opening>b{font-size:clamp(70px,4vw,145px)}.baloot-project-reveal article{grid-template-columns:clamp(130px,8vw,290px) 1fr;padding:clamp(8px,.5vw,18px)}.baloot-project-reveal header b{font-size:clamp(12px,.7vw,25px)}.baloot-project-reveal header span{font-size:clamp(9px,.48vw,17px)}.baloot-project-reveal .tv-playing-card{flex-basis:clamp(45px,2.7vw,98px);width:clamp(45px,2.7vw,98px);height:clamp(62px,3.7vw,134px);margin-left:clamp(-22px,-.6vw,-8px)}.baloot-copy h1{font-size:clamp(58px,3.2vw,115px)}.baloot-copy .stage-copy{font-size:clamp(24px,1.35vw,49px)}.baloot-bid-rail>span,.baloot-team{padding:clamp(10px,.65vw,23px)}.baloot-bid-rail small,.baloot-bid-rail b,.baloot-call-history>span,.baloot-last-trick>span,.baloot-last-trick>small{font-size:clamp(9px,.48vw,17px)}.baloot-tv-multiplier>span{min-height:clamp(50px,3vw,108px)}.baloot-tv-multiplier b{font-size:clamp(18px,1vw,36px)}.baloot-tv-multiplier small,.baloot-tv-multiplier>em{font-size:clamp(7px,.4vw,14px)}.baloot-team>span{font-size:clamp(13px,.7vw,25px)}.baloot-team>b{font-size:clamp(24px,1.3vw,47px)}.baloot-team>small,.baloot-team>em{font-size:clamp(9px,.48vw,17px)}.baloot-result-ledger-tv>span{padding:clamp(8px,.5vw,18px);font-size:clamp(7px,.4vw,14px)}.baloot-result-ledger-tv b{font-size:clamp(12px,.65vw,23px)}}
@media (prefers-reduced-motion:reduce){.baloot-play,.baloot-celebration,.baloot-seat.winner,.baloot-choice,.baloot-hand .playing-card{animation:none!important;transition:none!important}}
.baloot-contract-badge{left:7%;top:22%}

/* Concan Gulf — private phone controller */
.concan-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.concan-private-meta>span{min-width:0;display:flex;min-height:59px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.07em;text-align:center}.concan-private-meta b{max-width:100%;overflow:hidden;color:var(--ink);font-size:16px;line-height:1.05;letter-spacing:0;text-overflow:ellipsis}.concan-private-meta small{max-width:100%;overflow:hidden;font-size:6px;white-space:nowrap;text-overflow:ellipsis}
.concan-draw-zone{display:grid;grid-template-columns:72px 72px minmax(0,1fr);align-items:stretch;gap:7px;padding:8px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#fff,#fff8e8)}
.concan-private-pile{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:5px;border-radius:11px;background:var(--table);color:#fff}
.concan-private-pile .hand-playing-card{width:38px;height:53px;flex-basis:auto;border-width:1px;border-radius:7px;box-shadow:none}
.concan-private-pile .hand-playing-card b{font-size:13px}.concan-private-pile .hand-playing-card i{font-size:15px}
.concan-private-pile>small{color:var(--gold);font-size:6px;font-weight:950;letter-spacing:.08em}.concan-private-pile>b{font-size:13px}
.concan-card-back{display:grid;place-items:center;width:38px;height:53px;border:1px solid var(--gold);border-radius:7px;background:linear-gradient(145deg,var(--pink),#d93d7d);color:#fff;font-size:18px;box-shadow:inset 0 0 0 3px rgba(255,255,255,.14)}
.concan-draw-actions{display:grid;gap:5px}
.concan-draw-choice:not(.concan-object-pile){min-height:44px!important;display:grid!important;grid-template-columns:25px 1fr;align-items:center;gap:4px;padding:6px 8px!important;border-left-color:var(--cyan)!important;text-align:left!important}
.concan-draw-choice.fire:not(.concan-object-pile){border-left-color:var(--pink)!important}
.concan-draw-choice:not(.concan-object-pile) b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(32,184,204,.1);color:var(--cyan);font-size:16px}
.concan-draw-choice.fire:not(.concan-object-pile) b{background:rgba(255,79,123,.1);color:var(--pink)}
.concan-draw-choice:not(.concan-object-pile) span{font-size:9px;line-height:1.1}
.concan-claim-card{position:relative;display:grid;grid-template-columns:1fr auto;gap:7px 12px;padding:11px 12px 15px;border:2px solid var(--gold);border-radius:17px;background:linear-gradient(145deg,#fff8dc,#fff);overflow:hidden}.concan-claim-card>div{display:flex;min-width:0;flex-direction:column;gap:2px}.concan-claim-card small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.1em}.concan-claim-card b{font-size:15px}.concan-claim-card span{color:var(--muted);font-size:9px;font-weight:800;line-height:1.3}.concan-claim-card>strong{align-self:center;color:var(--gold);font-size:26px}.concan-claim-card>i{position:absolute;left:0;bottom:0;width:var(--progress);height:5px;background:linear-gradient(90deg,var(--cyan),var(--gold));transition:width .25s ease}.concan-claim-card.declared{border-color:var(--cyan);background:linear-gradient(145deg,rgba(32,184,204,.1),#fff)}.concan-claim-action{grid-column:1/-1;min-height:48px!important;margin:3px 0 0!important}
.concan-private-table{display:grid;gap:6px}.concan-private-meld{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:4px;padding:7px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:var(--table);overflow:hidden}.concan-private-meld>small{color:var(--gold);font-size:7px;font-weight:900;line-height:1.2}.concan-private-meld>div{display:flex;min-width:0;overflow:hidden}.concan-private-meld .hand-playing-card{flex:0 0 33px;width:33px;height:46px;margin-left:-9px;border-width:1px;border-radius:6px;box-shadow:none}.concan-private-meld .hand-playing-card:first-child{margin-left:0}.concan-private-meld .hand-playing-card b{font-size:10px}.concan-private-meld .hand-playing-card i{font-size:12px}
.concan-hand-header{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:5px}.concan-hand-header>span{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.06em}.concan-hand-header>button{min-height:28px;padding:4px 7px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:900}.concan-hand{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.concan-hand .hand-playing-card{width:100%;min-width:0;height:61px;flex:none;border-radius:9px}.concan-hand .hand-playing-card b{font-size:15px}.concan-hand .hand-playing-card i{font-size:17px}.concan-hand .hand-playing-card.candidate{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff8dc)}.concan-hand .hand-playing-card.selected{translate:0 -3px}.concan-hand.needs-discard{padding:4px;border:2px solid var(--pink);border-radius:13px;animation:concan-nudge .45s ease-in-out 2 alternate}
.concan-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.concan-plan{min-height:56px!important;display:flex!important;flex-direction:column;justify-content:center;gap:2px;padding:8px!important;text-align:center!important}.concan-plan b{font-size:11px}.concan-plan small{color:var(--muted);font-size:7px}.concan-plan.opens{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff7d8)}.concan-layoff{border-left-color:var(--cyan)!important}.concan-joker-replacement{display:flex!important;flex-direction:column;justify-content:center;border-left-color:var(--gold)!important}.concan-joker-replacement b{font-size:10px}.concan-joker-replacement small{color:var(--muted);font-size:7px}.concan-discard-action{grid-column:1/-1;margin-top:0!important}.concan-other-actions .button:only-child{grid-column:1/-1}.concan-actions .locked,.concan-candidate.locked{opacity:1!important;border-color:var(--green)!important;box-shadow:0 0 0 3px rgba(21,159,112,.16)!important}
.concan-candidate-label{margin-top:4px}.concan-candidates{display:grid;gap:8px}.concan-candidate{width:100%;display:grid;gap:6px;padding:8px;border:2px solid var(--gold);border-radius:16px;background:linear-gradient(145deg,#fff9e6,#fff);color:var(--ink);text-align:left;cursor:pointer}.concan-candidate header{display:flex;align-items:center;justify-content:space-between;gap:8px}.concan-candidate header span{display:grid;place-items:center;min-width:46px;height:28px;padding:0 7px;border-radius:9px;background:var(--table);color:var(--gold);font-size:12px;font-weight:950}.concan-candidate header b{font-size:11px}.concan-candidate-rows{display:grid;gap:4px}.concan-candidate-rows>div{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:5px}.concan-candidate-rows>div>small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.07em}.concan-candidate-rows>div>span{display:flex;min-width:0;overflow:hidden}.concan-candidate-rows .hand-playing-card{flex:0 0 29px;width:29px;height:41px;margin-left:-8px;border-width:1px;border-radius:5px;box-shadow:none}.concan-candidate-rows .hand-playing-card:first-child{margin-left:0}.concan-candidate-rows .hand-playing-card b{font-size:8px}.concan-candidate-rows .hand-playing-card i{font-size:10px}.concan-candidate-rows .discard{padding-top:4px;border-top:1px solid var(--line)}.concan-candidate-rows .discard.pending>span{color:var(--pink);font-size:7px;font-weight:950;letter-spacing:.04em}.concan-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}
.concan-result{display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.concan-result-mark{color:var(--gold);font-size:42px;font-weight:950;line-height:1}.concan-result>small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.12em}.concan-result>b{font-size:22px}.concan-result>span{color:var(--muted);font-size:10px;font-weight:800}.concan-result.final{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.11),#fff)}.concan-result.final .concan-result-mark{color:var(--green)}.concan-result-scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.concan-result-score{display:grid;grid-template-columns:1fr auto;gap:2px 5px;padding:9px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:12px;background:var(--surface)}.concan-result-score.seat-1{border-top-color:var(--cyan)}.concan-result-score.seat-2{border-top-color:var(--gold)}.concan-result-score.seat-3{border-top-color:var(--green)}.concan-result-score span{overflow:hidden;font-size:9px;font-weight:950;white-space:nowrap;text-overflow:ellipsis}.concan-result-score b{font-size:15px}.concan-result-score small{grid-column:1/-1;color:var(--muted);font-size:6px;font-weight:900}.concan-result-score.winner{box-shadow:0 0 0 2px var(--gold)}

/* Concan Gulf — ten-foot TV table */
.concan-show{display:grid;grid-template-columns:minmax(590px,1.28fr) minmax(310px,.72fr);align-items:center;gap:clamp(22px,3vw,48px);min-height:0}.concan-table{position:relative;width:100%;height:100%;min-height:390px;overflow:hidden;border:4px solid rgba(232,182,50,.78);border-radius:32% 32% 24% 24%;background:radial-gradient(circle at 50% 58%,rgba(32,184,204,.2),transparent 36%),linear-gradient(145deg,#12312c,#101827);box-shadow:inset 0 0 120px rgba(232,182,50,.08),0 24px 55px rgba(16,20,38,.22);color:#fff;isolation:isolate}.concan-table-pattern{position:absolute;inset:0;z-index:-1;opacity:.16;background-image:radial-gradient(circle at 50% 51%,transparent 0 31%,rgba(232,182,50,.38) 31.4% 31.8%,transparent 32.2%),repeating-linear-gradient(45deg,transparent 0 28px,rgba(255,255,255,.045) 29px 30px)}.concan-table-title{position:absolute;left:8%;top:9%;z-index:6;display:grid;grid-template-columns:auto auto;align-items:end;gap:0 7px;padding:6px 9px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(16,20,38,.72)}.concan-table-title>b{font-size:12px;letter-spacing:.08em}.concan-table-title>span{color:var(--gold);font-size:13px;font-weight:950}.concan-table-title>small{grid-column:1/-1;color:rgba(255,255,255,.58);font-size:6px;font-weight:900;letter-spacing:.06em}.concan-stock,.concan-fire{position:absolute;bottom:20%;z-index:5;display:flex;flex-direction:column;align-items:center;gap:2px}.concan-stock{left:42%}.concan-fire{right:42%}.concan-stock .concan-card-back,.concan-fire .hand-tv-card{width:49px;height:68px;border-width:1px}.concan-stock>b{font-size:13px}.concan-stock small,.concan-fire small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.08em}.concan-card-placeholder{display:grid;place-items:center;width:49px;height:68px;border:1px dashed rgba(255,255,255,.35);border-radius:9px;color:rgba(255,255,255,.4)}.concan-table-center{position:absolute;inset:0;z-index:2}.concan-public-melds{position:absolute;left:7%;right:7%;top:13%;height:43%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px}.concan-tv-meld{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:4px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(16,20,38,.42)}.concan-tv-meld>small{max-width:100%;overflow:hidden;color:var(--gold);font-size:7px;font-weight:900;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap}.concan-tv-meld>div{display:flex;justify-content:center;width:100%;overflow:hidden}.concan-tv-meld .hand-tv-card{flex:0 0 36px;width:36px;height:50px;margin-left:-11px;border-width:1px;border-radius:6px;box-shadow:0 4px 8px rgba(0,0,0,.2);animation:concan-card-land .28s cubic-bezier(.2,.8,.25,1) both}.concan-tv-meld .hand-tv-card:first-child{margin-left:0}.concan-tv-meld .hand-tv-card b{font-size:10px}.concan-tv-meld .hand-tv-card i{font-size:12px}.concan-empty-table{position:absolute;inset:13% 7% 34%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gold);opacity:.42}.concan-empty-table b{font-size:52px}.concan-empty-table span{font-size:9px;font-weight:950;letter-spacing:.1em}.concan-seat-row{position:absolute;left:8%;right:8%;bottom:6%;z-index:6;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.concan-seat{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 5px;padding:6px 7px;border:1px solid rgba(255,255,255,.15);border-top:4px solid var(--pink);border-radius:10px;background:rgba(16,20,38,.74);color:#fff}.concan-seat.seat-1{border-top-color:var(--cyan)}.concan-seat.seat-2{border-top-color:var(--gold)}.concan-seat.seat-3{border-top-color:var(--green)}.concan-seat.seat-4{border-top-color:#a86aff}.concan-seat small{grid-column:1/-1;overflow:hidden;color:rgba(255,255,255,.62);font-size:6px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.concan-seat span{overflow:hidden;font-size:9px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.concan-seat>b{font-size:7px}.concan-seat.active{background:rgba(232,182,50,.2);box-shadow:0 0 0 2px var(--gold)}.concan-seat.claimed{box-shadow:0 0 0 2px var(--cyan);animation:concan-claim-pulse .7s ease-in-out infinite alternate}.concan-seat.winner{box-shadow:0 0 0 3px var(--gold);animation:concan-winner-pulse .7s ease-in-out infinite alternate}.concan-claim-rail{position:absolute;right:8%;top:9%;z-index:7;display:flex;max-width:42%;flex-wrap:wrap;justify-content:flex-end;gap:3px}.concan-claim-rail>small{width:100%;color:var(--gold);font-size:6px;font-weight:950;letter-spacing:.08em;text-align:right}.concan-claim-rail>span{padding:4px 6px;border:1px solid rgba(32,184,204,.55);border-radius:999px;background:rgba(16,20,38,.8);color:#fff;font-size:6px;font-weight:900}
.concan-reveal{position:absolute;left:5%;right:5%;top:8%;bottom:18%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.concan-reveal>small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.1em}.concan-reveal>h2{margin:0;font-size:24px}.concan-reveal-row{width:100%;display:grid;grid-template-columns:55px minmax(0,1fr);align-items:center;gap:5px;padding:5px 7px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(16,20,38,.66)}.concan-reveal-row>b{color:var(--gold);font-size:8px;letter-spacing:.06em}.concan-reveal-row>span{display:flex;justify-content:center;min-width:0;overflow:hidden}.concan-reveal-row .hand-tv-card{flex:0 0 35px;width:35px;height:49px;margin-left:-9px;border-width:1px;border-radius:6px;box-shadow:none;animation:concan-card-land .32s cubic-bezier(.2,.8,.25,1) both}.concan-reveal-row .hand-tv-card:first-child{margin-left:0}.concan-reveal-row .hand-tv-card b{font-size:10px}.concan-reveal-row .hand-tv-card i{font-size:12px}.concan-reveal-discard{display:flex;align-items:center;gap:6px}.concan-reveal-discard>small{color:rgba(255,255,255,.62);font-size:6px;font-weight:900}.concan-reveal-discard .hand-tv-card{width:34px;height:47px;border-width:1px;border-radius:6px;box-shadow:none}.concan-result-center{position:absolute;left:12%;right:12%;top:22%;bottom:24%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px solid var(--gold);border-radius:25px;background:rgba(232,182,50,.11);text-align:center}.concan-result-center>b{color:var(--gold);font-size:63px;line-height:.8}.concan-result-center>span{font-size:25px;font-weight:950}.concan-result-center>small{color:rgba(255,255,255,.66);font-size:9px;font-weight:900;letter-spacing:.06em}.concan-result-center.final{border-color:var(--green);background:rgba(21,159,112,.12)}
.concan-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px}.concan-copy h1{margin:2px 0 3px;font-size:clamp(34px,3.8vw,58px);line-height:1}.concan-copy .stage-copy{margin:0 0 3px;font-size:clamp(16px,1.4vw,23px);line-height:1.22}.concan-rule-strip{display:flex;flex-wrap:wrap;gap:4px}.concan-rule-strip>span{padding:5px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.concan-event{display:grid;grid-template-columns:27px 1fr;align-items:center;gap:7px;padding:7px 8px;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:11px;background:var(--surface)}.concan-event>b{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:rgba(232,182,50,.12);color:var(--gold);font-size:14px}.concan-event>span{font-size:8px;font-weight:850}.concan-deltas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.concan-deltas>span{display:flex;justify-content:space-between;gap:6px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:900}.concan-deltas b{color:var(--pink);font-size:9px}.concan-scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.concan-score{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 7px;padding:7px 9px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:12px;background:var(--surface)}.concan-score.seat-1{border-top-color:var(--cyan)}.concan-score.seat-2{border-top-color:var(--gold)}.concan-score.seat-3{border-top-color:var(--green)}.concan-score.seat-4{border-top-color:#a86aff}.concan-score>span{overflow:hidden;font-size:9px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.concan-score>b{font-size:16px}.concan-score>small{grid-column:1/-1;color:var(--muted);font-size:6px;font-weight:900}.concan-score.active{background:linear-gradient(145deg,#fff,#fff8dd)}.concan-score.winner{box-shadow:0 0 0 3px var(--gold)}
@keyframes concan-card-land{from{opacity:0;transform:translateY(-13px) rotate(-2deg) scale(.9)}to{opacity:1;transform:none}}@keyframes concan-claim-pulse{to{filter:drop-shadow(0 0 12px rgba(32,184,204,.55))}}@keyframes concan-winner-pulse{to{transform:scale(1.035);filter:drop-shadow(0 0 16px rgba(232,182,50,.5))}}@keyframes concan-nudge{to{transform:translateX(3px)}}
@media (max-width:900px){.concan-show{grid-template-columns:1fr}.concan-table{min-height:430px}.concan-copy{text-align:center}.concan-rule-strip{justify-content:center}.concan-scoreboard,.concan-deltas{width:min(650px,100%);margin-inline:auto}}
@media (max-height:800px) and (min-width:901px){.concan-show{gap:22px}.concan-table{min-height:385px}.concan-copy{gap:4px}.concan-copy h1{font-size:42px}.concan-copy .stage-copy{font-size:17px}.concan-score{padding:5px 7px}.concan-tv-meld .hand-tv-card{width:32px;height:44px;flex-basis:32px}.concan-reveal-row .hand-tv-card{width:32px;height:44px;flex-basis:32px}.concan-event{padding:5px 7px}.concan-rule-strip>span{padding:4px 6px}.concan-seat{padding:5px 6px}}
@media (max-width:360px){.controller-page.concan-controller-active{display:block;padding:8px}.concan-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.concan-controller-active .controller-brand{margin-bottom:17px}.concan-controller-active .brand-mark{width:34px;height:34px}.concan-controller-active .controller-brand b{font-size:17px}.concan-controller-active .prompt{margin:12px 0 15px!important;font-size:27px!important}.concan-controller-active .controls{gap:8px}.concan-controller-active .status{margin-top:10px;font-size:12px}.concan-controller-active .mini-label{margin:7px 0 4px}.concan-draw-zone{grid-template-columns:64px 64px minmax(0,1fr);padding:6px}.concan-hand .hand-playing-card{height:56px}.concan-candidate{padding:7px}}
@media (min-width:1920px){.concan-stage-head .phase-pill,.concan-stage-head .domna-target{font-size:clamp(20px,1.05vw,38px)}.concan-table-title{padding:clamp(9px,.6vw,21px)}.concan-table-title>b,.concan-table-title>span{font-size:clamp(15px,.85vw,30px)}.concan-table-title>small{font-size:clamp(8px,.42vw,15px)}.concan-seat{padding:clamp(9px,.65vw,22px)}.concan-seat small{font-size:clamp(8px,.43vw,15px)}.concan-seat span{font-size:clamp(12px,.67vw,24px)}.concan-seat>b{font-size:clamp(8px,.43vw,15px)}.concan-stock .concan-card-back,.concan-fire .hand-tv-card{width:clamp(68px,3.8vw,137px);height:clamp(94px,5.3vw,191px)}.concan-stock>b{font-size:clamp(17px,.9vw,32px)}.concan-stock small,.concan-fire small{font-size:clamp(9px,.48vw,17px)}.concan-tv-meld>small{font-size:clamp(9px,.48vw,17px)}.concan-tv-meld .hand-tv-card{flex-basis:clamp(48px,2.8vw,101px);width:clamp(48px,2.8vw,101px);height:clamp(67px,3.9vw,140px);margin-left:clamp(-25px,-.65vw,-10px)}.concan-tv-meld .hand-tv-card b,.concan-reveal-row .hand-tv-card b{font-size:clamp(13px,.75vw,27px)}.concan-tv-meld .hand-tv-card i,.concan-reveal-row .hand-tv-card i{font-size:clamp(15px,.86vw,31px)}.concan-reveal>small{font-size:clamp(10px,.55vw,20px)}.concan-reveal>h2{font-size:clamp(35px,2vw,72px)}.concan-reveal-row{grid-template-columns:clamp(80px,5vw,180px) 1fr;padding:clamp(8px,.55vw,20px)}.concan-reveal-row>b{font-size:clamp(10px,.58vw,21px)}.concan-reveal-row .hand-tv-card{flex-basis:clamp(48px,2.8vw,101px);width:clamp(48px,2.8vw,101px);height:clamp(67px,3.9vw,140px);margin-left:clamp(-25px,-.65vw,-10px)}.concan-result-center>b{font-size:clamp(85px,5vw,180px)}.concan-result-center>span{font-size:clamp(34px,2vw,72px)}.concan-result-center>small{font-size:clamp(12px,.7vw,25px)}.concan-copy h1{font-size:clamp(58px,3.2vw,115px)}.concan-copy .stage-copy{font-size:clamp(24px,1.35vw,49px)}.concan-rule-strip>span,.concan-event>span,.concan-deltas>span{font-size:clamp(9px,.48vw,17px)}.concan-event>b{width:clamp(34px,2vw,72px);height:clamp(34px,2vw,72px);font-size:clamp(18px,1vw,36px)}.concan-score{padding:clamp(10px,.65vw,23px)}.concan-score>span{font-size:clamp(13px,.7vw,25px)}.concan-score>b{font-size:clamp(23px,1.25vw,45px)}.concan-score>small{font-size:clamp(9px,.48vw,17px)}.concan-claim-rail>small,.concan-claim-rail>span{font-size:clamp(8px,.43vw,15px)}}
@media (prefers-reduced-motion:reduce){.concan-tv-meld .hand-tv-card,.concan-reveal-row .hand-tv-card,.concan-seat.claimed,.concan-seat.winner,.concan-hand.needs-discard,.concan-claim-card>i,.concan-candidate,.concan-draw-choice{animation:none!important;transition:none!important}}
.concan-hand .hand-playing-card:disabled{cursor:default}
@media (max-width:360px){.concan-candidate-rows .hand-playing-card{flex-basis:24px;width:24px;height:34px;margin-left:-8px}.concan-candidate-rows .hand-playing-card b{font-size:7px}.concan-candidate-rows .hand-playing-card i{font-size:8px}}
.concan-seat-row.count-4{grid-template-columns:repeat(4,minmax(0,1fr));left:12%;right:12%}.concan-seat-row.count-3{grid-template-columns:repeat(3,minmax(0,1fr));left:18%;right:18%}.concan-seat-row.count-2{grid-template-columns:repeat(2,minmax(0,1fr));left:26%;right:26%}
.concan-controller-active .locked{opacity:1!important;border-color:var(--green)!important;border-left-color:var(--green)!important;box-shadow:0 0 0 3px rgba(21,159,112,.18)!important}

/* Baraziliya Teams private phone table */
.baraziliya-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.baraziliya-private-meta>span{min-width:0;display:flex;min-height:64px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.08em;text-align:center}.baraziliya-private-meta b{max-width:100%;overflow:hidden;color:var(--ink);font-size:18px;letter-spacing:0;text-overflow:ellipsis}.baraziliya-private-meta span:nth-child(2) b{color:var(--gold)}.baraziliya-private-meta span:nth-child(3) b{color:var(--green)}.baraziliya-private-meta small{max-width:100%;overflow:hidden;font-size:6px;text-overflow:ellipsis;white-space:nowrap}
.baraziliya-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.baraziliya-progress>span{position:relative;display:flex;min-height:48px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:5px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--muted)}.baraziliya-progress>span:not(:last-child)::after{content:"";position:absolute;left:100%;top:50%;z-index:3;width:5px;height:2px;background:var(--line)}.baraziliya-progress b{display:grid;place-items:center;width:21px;height:21px;border-radius:8px;background:var(--line);color:var(--muted);font-size:10px}.baraziliya-progress small{font-size:6px;font-weight:950;letter-spacing:.06em}.baraziliya-progress .complete{border-color:rgba(21,159,112,.45);background:rgba(21,159,112,.08)}.baraziliya-progress .complete b{background:var(--green);color:#fff}.baraziliya-progress .current{border-color:var(--gold);box-shadow:0 0 0 2px rgba(232,182,50,.13)}.baraziliya-progress .current b{background:var(--gold);color:var(--ink)}
.baraziliya-private-table{display:grid;gap:7px;padding:8px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#f3fbf2,#fff)}.baraziliya-piles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.baraziliya-pile{min-width:0;display:flex;min-height:68px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:5px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:var(--table);color:#fff;text-align:center}.baraziliya-pile>i{display:grid;place-items:center;width:31px;height:42px;border:1px solid var(--gold);border-radius:7px;background:linear-gradient(145deg,var(--green),#0b7754);color:#fff;font-size:12px;font-style:normal;font-weight:950}.baraziliya-pile>small{max-width:100%;overflow:hidden;color:var(--gold);font-size:6px;font-weight:950;letter-spacing:.07em;text-overflow:ellipsis;white-space:nowrap}.baraziliya-pile>b{max-width:100%;overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.baraziliya-pile.fire{background:#2b1830}.baraziliya-pile.fire .game-context-card{width:31px;height:42px;flex:none;border-radius:7px}.baraziliya-pile.fire .game-context-card b{font-size:10px}.baraziliya-pile.fire .game-context-card i{font-size:11px}.baraziliya-pile.pot.state-taken{background:#173b31}.baraziliya-pile.pot.state-stock{opacity:.48}
.baraziliya-table-melds{display:grid;gap:5px}.baraziliya-table-meld{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:5px;min-width:0;padding:6px;border:1px solid var(--line);border-left:6px solid var(--pink);border-radius:11px;background:var(--surface)}.baraziliya-table-meld.team-1{border-left-color:var(--cyan)}.baraziliya-table-meld.project{box-shadow:inset 0 0 0 1px var(--gold)}.baraziliya-table-meld header{display:flex;min-width:0;flex-direction:column;gap:2px}.baraziliya-table-meld header small{overflow:hidden;color:var(--muted);font-size:6px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.baraziliya-table-meld header b{color:var(--green);font-size:8px}.baraziliya-table-meld>div{display:flex;min-width:0;overflow:hidden}.baraziliya-table-meld .game-context-card{flex:0 0 31px;width:31px;height:43px;margin-left:-8px;border-width:1px;border-radius:6px;box-shadow:none}.baraziliya-table-meld .game-context-card:first-child{margin-left:0}.baraziliya-table-meld .game-context-card b{font-size:9px}.baraziliya-table-meld .game-context-card i{font-size:10px}
.baraziliya-hand-header{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:5px}.baraziliya-hand-header>span{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.06em}.baraziliya-hand-header>button{min-height:28px;padding:4px 7px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:900}.baraziliya-hand{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.baraziliya-hand .hand-playing-card{width:100%;min-width:0;height:62px;flex:none;border-radius:9px}.baraziliya-hand .hand-playing-card b{font-size:15px}.baraziliya-hand .hand-playing-card i{font-size:17px}.baraziliya-hand .baraziliya-card.deuce{border-color:var(--gold);background:linear-gradient(145deg,#fff,#fff7d6)}.baraziliya-hand .baraziliya-card.selected{translate:0 -4px;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(32,184,204,.17)}
.baraziliya-actions{display:grid;gap:7px}.baraziliya-plan,.baraziliya-layoff{display:flex!important;min-height:61px!important;flex-direction:column;justify-content:center;gap:3px;border-left-color:var(--green)!important;background:linear-gradient(145deg,#fff,rgba(21,159,112,.07))!important}.baraziliya-layoff{border-left-color:var(--cyan)!important;background:linear-gradient(145deg,#fff,rgba(32,184,204,.07))!important}.baraziliya-plan b,.baraziliya-layoff b{font-size:11px}.baraziliya-plan small,.baraziliya-layoff small{overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.baraziliya-choice.fire{border-left-color:var(--pink);background:linear-gradient(145deg,#fff,rgba(255,79,123,.08))}.baraziliya-discard{margin-top:0!important}.baraziliya-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(21,159,112,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}
.baraziliya-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.baraziliya-result.final{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.12),#fff)}.baraziliya-result>div{font-size:42px}.baraziliya-result>small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.11em}.baraziliya-result>b{font-size:22px}.baraziliya-result>span{color:var(--muted);font-size:10px;font-weight:800}.baraziliya-result-scores{display:grid;grid-template-columns:1fr 1fr;gap:7px}.baraziliya-result-scores>span{display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.baraziliya-result-scores>span.team-1{border-top-color:var(--cyan)}.baraziliya-result-scores>span.winner{box-shadow:0 0 0 2px var(--gold)}.baraziliya-result-scores small{color:var(--muted);font-size:7px;font-weight:950}.baraziliya-result-scores b{font-size:15px}.baraziliya-result-scores em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}
@media(max-width:360px){.controller-page.baraziliya-controller-active{display:block;padding:8px}.baraziliya-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.baraziliya-controller-active .controller-brand{margin-bottom:17px}.baraziliya-controller-active .brand-mark{width:34px;height:34px}.baraziliya-controller-active .prompt{margin:12px 0 15px!important;font-size:27px!important}.baraziliya-piles{grid-template-columns:repeat(2,minmax(0,1fr))}.baraziliya-table-meld{grid-template-columns:72px minmax(0,1fr)}.baraziliya-hand .hand-playing-card{height:56px}}
@media(prefers-reduced-motion:reduce){.baraziliya-card,.baraziliya-progress .current{transition:none!important;animation:none!important}}

/* Baraziliya Teams — shared Pearl Green TV table */
.baraziliya-show{display:grid;grid-template-columns:minmax(590px,1.3fr) minmax(310px,.7fr);align-items:center;gap:clamp(22px,3vw,48px);min-height:0;flex:1 1 auto}.tv-live .baraziliya-show{width:100%;height:100%;min-height:0;align-self:stretch}.baraziliya-tv-table{position:relative;width:100%;height:100%;min-height:410px;overflow:hidden;border:4px solid rgba(232,182,50,.78);border-radius:34% 34% 25% 25%;background:radial-gradient(circle at 50% 48%,rgba(32,184,204,.16),transparent 36%),linear-gradient(145deg,#12372d,#0d1e1a);box-shadow:inset 0 0 120px rgba(232,182,50,.08),0 24px 55px rgba(16,20,38,.22);color:#fff;isolation:isolate}.baraziliya-tv-pattern{position:absolute;inset:0;z-index:-1;opacity:.17;background-image:radial-gradient(circle at 50% 50%,transparent 0 30%,rgba(232,182,50,.38) 30.4% 30.8%,transparent 31.2%),repeating-linear-gradient(45deg,transparent 0 27px,rgba(255,255,255,.045) 28px 29px)}.baraziliya-tv-piles{position:absolute;left:5%;right:5%;top:4%;z-index:6;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.baraziliya-tv-stock,.baraziliya-tv-fire,.baraziliya-tv-vault{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:0 7px;min-height:60px;padding:6px 9px;border:1px solid rgba(255,255,255,.16);border-top:4px solid var(--green);border-radius:12px;background:rgba(16,20,38,.72)}.baraziliya-tv-stock i,.baraziliya-tv-vault i{grid-row:1/3;display:grid;place-items:center;width:34px;height:44px;border:1px solid var(--gold);border-radius:8px;background:linear-gradient(145deg,var(--green),#0b7754);color:#fff;font-style:normal;font-weight:950}.baraziliya-tv-stock small,.baraziliya-tv-fire small,.baraziliya-tv-vault small{color:rgba(255,255,255,.62);font-size:7px;font-weight:950;letter-spacing:.08em}.baraziliya-tv-stock b,.baraziliya-tv-fire b,.baraziliya-tv-vault b{overflow:hidden;color:var(--gold);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.baraziliya-tv-fire{border-top-color:var(--pink)}.baraziliya-tv-fire>.baraziliya-tv-card,.baraziliya-tv-fire>i{grid-row:1/3;display:grid;place-items:center;width:34px;height:44px;border-radius:8px;background:var(--surface);color:var(--ink);font-style:normal}.baraziliya-tv-vault{border-top-color:var(--gold)}.baraziliya-tv-vault.state-taken{border-top-color:var(--cyan)}.baraziliya-tv-vault.state-stock{opacity:.54}.baraziliya-tv-center{position:absolute;left:5%;right:5%;top:22%;bottom:24%;z-index:3;display:grid}.baraziliya-tv-melds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:7px}.baraziliya-tv-meld{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:7px;border:1px solid rgba(255,255,255,.12);border-left:5px solid var(--gold);border-radius:12px;background:rgba(16,20,38,.54)}.baraziliya-tv-meld.team-1{border-left-color:var(--cyan)}.baraziliya-tv-meld.project{box-shadow:inset 0 0 0 2px rgba(232,182,50,.25)}.baraziliya-tv-meld.team-1.project{box-shadow:inset 0 0 0 2px rgba(32,184,204,.25)}.baraziliya-tv-meld header{display:flex;justify-content:space-between;gap:8px;color:rgba(255,255,255,.64);font-size:7px;font-weight:950;letter-spacing:.06em}.baraziliya-tv-meld header b{color:var(--gold)}.baraziliya-tv-meld.team-1 header b{color:var(--cyan)}.baraziliya-tv-meld>div{display:flex;align-items:center;overflow:hidden}.baraziliya-tv-card{flex:0 0 34px;display:flex;width:34px;height:47px;margin-left:-9px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--gold);border-radius:7px;background:var(--surface);color:var(--ink);box-shadow:0 4px 8px rgba(0,0,0,.18)}.baraziliya-tv-card:first-child{margin-left:0}.baraziliya-tv-card.red{color:var(--red)}.baraziliya-tv-card b{font-size:10px}.baraziliya-tv-card small{color:var(--cyan);font-size:6px;font-weight:950}.baraziliya-tv-empty{display:flex;grid-column:1/-1;flex-direction:column;align-items:center;justify-content:center;color:var(--gold);opacity:.42}.baraziliya-tv-empty b{font-size:48px}.baraziliya-tv-empty span{font-size:8px;font-weight:950;letter-spacing:.1em}.baraziliya-tv-result{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:2px solid var(--gold);border-radius:20px;background:rgba(232,182,50,.12);text-align:center}.baraziliya-tv-result>b{font-size:48px}.baraziliya-tv-result>span{font-size:22px;font-weight:950}.baraziliya-tv-result>div{display:flex;gap:14px}.baraziliya-tv-result small{padding:6px 10px;border-radius:9px;background:rgba(255,255,255,.08);font-size:10px;font-weight:850}.baraziliya-tv-seats{position:absolute;left:5%;right:5%;bottom:5%;z-index:6;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.baraziliya-tv-seat{display:grid;grid-template-columns:1fr auto;gap:1px 5px;padding:6px 8px;border:1px solid rgba(255,255,255,.14);border-top:4px solid var(--gold);border-radius:10px;background:rgba(16,20,38,.74)}.baraziliya-tv-seat.team-1{border-top-color:var(--cyan)}.baraziliya-tv-seat small{grid-column:1/-1;color:rgba(255,255,255,.58);font-size:6px;font-weight:950}.baraziliya-tv-seat span{overflow:hidden;font-size:10px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.baraziliya-tv-seat b{font-size:7px}.baraziliya-tv-seat.active{background:rgba(232,182,50,.2);box-shadow:0 0 0 2px var(--gold)}.baraziliya-tv-seat.team-1.active{box-shadow:0 0 0 2px var(--cyan)}.baraziliya-tv-copy{display:flex;min-width:0;flex-direction:column;gap:9px}.baraziliya-tv-copy h1{margin:0;font-size:clamp(38px,4vw,64px)}.baraziliya-tv-copy .stage-copy{margin:0}.baraziliya-rule-strip{display:flex;flex-wrap:wrap;gap:6px}.baraziliya-rule-strip span{padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:8px;font-weight:950}.baraziliya-team-rail{display:grid;gap:7px}.baraziliya-team-score{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:9px 11px;border:1px solid var(--line);border-left:7px solid var(--gold);border-radius:14px;background:var(--surface)}.baraziliya-team-score.team-1{border-left-color:var(--cyan)}.baraziliya-team-score>span{display:flex;min-width:0;flex-direction:column;font-size:10px;font-weight:950}.baraziliya-team-score>span small{overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.baraziliya-team-score>b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px}.baraziliya-team-score>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.baraziliya-team-score.winner{border-width:3px;background:rgba(232,182,50,.12)}.baraziliya-tv-event{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:13px;background:rgba(21,159,112,.10);color:var(--green)}.baraziliya-tv-event b{font-size:18px}.baraziliya-tv-event span{font-size:9px;font-weight:850}
@media(max-width:900px),(max-height:600px){.baraziliya-show{grid-template-columns:minmax(420px,1.4fr) minmax(210px,.6fr);gap:12px}.baraziliya-tv-table{min-height:285px;border-width:3px}.baraziliya-tv-piles{gap:4px}.baraziliya-tv-stock,.baraziliya-tv-fire,.baraziliya-tv-vault{min-height:42px;padding:3px 5px}.baraziliya-tv-stock i,.baraziliya-tv-vault i,.baraziliya-tv-fire>.baraziliya-tv-card,.baraziliya-tv-fire>i{width:24px;height:31px}.baraziliya-tv-center{top:23%;bottom:25%}.baraziliya-tv-meld{padding:4px}.baraziliya-tv-card{flex-basis:24px;width:24px;height:32px}.baraziliya-tv-card b{font-size:7px}.baraziliya-tv-seats{gap:3px}.baraziliya-tv-seat{padding:3px 5px}.baraziliya-tv-copy{gap:4px}.baraziliya-tv-copy h1{font-size:30px}.baraziliya-rule-strip span{padding:4px 6px;font-size:6px}.baraziliya-team-score{padding:5px 7px}.baraziliya-tv-event{padding:5px 7px}}
@media(min-width:1920px){.baraziliya-show{grid-template-columns:minmax(1100px,1.3fr) minmax(550px,.7fr);gap:70px}.baraziliya-tv-table{min-height:760px;border-width:8px}.baraziliya-tv-piles{gap:14px}.baraziliya-tv-stock,.baraziliya-tv-fire,.baraziliya-tv-vault{min-height:110px;padding:14px 18px;border-top-width:8px;border-radius:24px}.baraziliya-tv-stock i,.baraziliya-tv-vault i,.baraziliya-tv-fire>.baraziliya-tv-card,.baraziliya-tv-fire>i{width:66px;height:88px;border-radius:15px}.baraziliya-tv-stock small,.baraziliya-tv-fire small,.baraziliya-tv-vault small{font-size:14px}.baraziliya-tv-stock b,.baraziliya-tv-fire b,.baraziliya-tv-vault b{font-size:24px}.baraziliya-tv-melds{gap:14px}.baraziliya-tv-meld{gap:8px;padding:14px;border-left-width:10px;border-radius:24px}.baraziliya-tv-meld header{font-size:14px}.baraziliya-tv-card{flex-basis:66px;width:66px;height:92px;margin-left:-18px;border-radius:13px}.baraziliya-tv-card b{font-size:20px}.baraziliya-tv-card small{font-size:12px}.baraziliya-tv-seat{padding:13px 16px;border-top-width:8px;border-radius:20px}.baraziliya-tv-seat small{font-size:12px}.baraziliya-tv-seat span{font-size:20px}.baraziliya-tv-seat b{font-size:14px}.baraziliya-tv-copy{gap:18px}.baraziliya-tv-copy h1{font-size:86px}.baraziliya-rule-strip{gap:12px}.baraziliya-rule-strip span{padding:14px 18px;font-size:16px}.baraziliya-team-rail{gap:14px}.baraziliya-team-score{padding:18px 22px;border-left-width:14px;border-radius:28px}.baraziliya-team-score>span{font-size:20px}.baraziliya-team-score>span small,.baraziliya-team-score>em{font-size:14px}.baraziliya-team-score>b{font-size:30px}.baraziliya-tv-event{padding:18px 22px;border-radius:26px}.baraziliya-tv-event b{font-size:36px}.baraziliya-tv-event span{font-size:18px}}
@media(prefers-reduced-motion:reduce){.baraziliya-tv-table,.baraziliya-tv-meld,.baraziliya-tv-seat{animation:none!important;transition:none!important}}

/* Carrom Diwaniya — private browser striker console */
.carrom-private-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.carrom-private-meta>span{min-width:0;display:flex;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.08em;text-align:center}.carrom-private-meta b{max-width:100%;overflow:hidden;color:var(--ink);font-size:18px;letter-spacing:0;text-overflow:ellipsis}.carrom-private-meta span:nth-child(2) b{color:var(--gold)}.carrom-private-meta span:nth-child(3) b{color:var(--cyan);font-size:13px}.carrom-private-meta small{max-width:100%;overflow:hidden;font-size:6px;text-overflow:ellipsis;white-space:nowrap}.carrom-controller-board{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:20px;background:#9a6233;box-shadow:0 12px 26px rgba(16,20,38,.15)}.carrom-shot-panel{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,#fff,#fff7e7)}.carrom-range{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:7px}.carrom-range>span{color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.07em}.carrom-range input{width:100%;accent-color:var(--cyan)}.carrom-range.range-power input{accent-color:var(--gold)}.carrom-range.range-spin input{accent-color:var(--pink)}.carrom-readout{margin:1px 0;padding:7px;border-radius:10px;background:var(--table);color:var(--gold);font-size:8px;font-weight:950;text-align:center}.carrom-shoot{min-height:58px!important;border-left:1px solid transparent!important;text-align:center!important}.carrom-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.carrom-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.carrom-result.final{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.12),#fff)}.carrom-result>div{color:#9a6233;font-size:46px;line-height:1}.carrom-result>small{color:var(--muted);font-size:8px;font-weight:950;letter-spacing:.11em}.carrom-result>b{font-size:22px}.carrom-result>span{color:var(--muted);font-size:10px;font-weight:800}.carrom-result-scores{display:grid;grid-template-columns:1fr 1fr;gap:7px}.carrom-result-scores>span{display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:13px;background:var(--surface)}.carrom-result-scores>span.team-1{border-top-color:var(--cyan)}.carrom-result-scores>span.winner{box-shadow:0 0 0 2px var(--gold)}.carrom-result-scores small{color:var(--muted);font-size:7px;font-weight:950}.carrom-result-scores b{font-size:16px}.carrom-result-scores em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}@media(max-width:360px){.controller-page.carrom-controller-active{display:block;padding:8px}.carrom-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.carrom-controller-active .controller-brand{margin-bottom:17px}.carrom-controller-active .brand-mark{width:34px;height:34px}.carrom-controller-active .prompt{margin:12px 0 15px!important;font-size:27px!important}.carrom-range{grid-template-columns:76px minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.carrom-controller-board,.carrom-shoot{transition:none!important;animation:none!important}}

.carrom-shoot{background:var(--pink)!important;color:#fff!important}.carrom-shoot:disabled{background:var(--table)!important;color:rgba(255,255,255,.58)!important}

.royal-square.locked{box-shadow:inset 0 0 0 4px var(--green)!important}.royal-square.locked:before{position:absolute;z-index:8;right:3px;top:3px;display:grid;width:17px;aspect-ratio:1;place-items:center;border-radius:50%;background:var(--green);color:#fff;content:"✓";font-size:9px;font-weight:950}

/* Royal Chess — phone controller and result */
.royal-private-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px}.royal-private-meta>span{display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:9px 10px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:14px;background:var(--surface)}.royal-private-meta>span.black{border-top-color:var(--cyan)}.royal-private-meta>span.active{background:var(--table);color:#fff;box-shadow:0 0 0 2px var(--gold)}.royal-private-meta small{font-size:7px;font-weight:950;letter-spacing:.11em}.royal-private-meta b{font-size:17px}.royal-private-meta em{grid-column:1/-1;overflow:hidden;color:var(--muted);font-size:7px;font-style:normal;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.royal-private-meta>span.active em{color:rgba(255,255,255,.62)}
.royal-controller-board{display:grid;width:100%;aspect-ratio:1;grid-template-columns:repeat(8,1fr);overflow:hidden;border:12px solid var(--ink);border-radius:22px;background:var(--table);box-shadow:inset 0 0 0 3px var(--gold),0 14px 28px rgba(16,20,38,.19)}.royal-square{position:relative;display:grid;min-width:0;min-height:0;place-items:center;padding:0;border:0;border-radius:0;background:#fff6e7;color:var(--ink)}.royal-square.shade-1{background:#bbdde1}.royal-square.last{box-shadow:inset 0 0 0 999px rgba(232,182,50,.34)}.royal-square.selected{z-index:2;box-shadow:inset 0 0 0 4px var(--pink)}.royal-square.destination:after{position:absolute;z-index:4;width:22%;aspect-ratio:1;border-radius:50%;background:rgba(255,79,123,.72);content:""}.royal-square.destination.capture:after{width:78%;border:4px solid var(--pink);background:transparent}.royal-square.checked{box-shadow:inset 0 0 0 999px rgba(255,79,123,.34)}.royal-square:disabled{opacity:1}.royal-piece{position:relative;z-index:3;display:grid;width:76%;aspect-ratio:1;place-items:center;border:2px solid #a6712a;border-radius:50%;background:#fffdf5;box-shadow:0 4px 7px rgba(16,20,38,.25);color:var(--ink)}.royal-piece.black{border-color:var(--cyan);background:var(--table);color:#fff}.royal-piece b{font-size:clamp(10px,4.1vw,18px);font-weight:1000}.royal-piece i{position:absolute;top:3%;color:var(--gold);font-size:8px;font-style:normal;font-weight:950}.royal-piece.pawn{width:65%}.royal-square small{position:absolute;z-index:5;color:rgba(16,20,38,.55);font-size:6px;font-weight:950}.royal-square .rank{left:2px;top:1px}.royal-square .file{right:2px;bottom:1px}.royal-promotion{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:9px;border:2px solid var(--gold);border-radius:15px;background:var(--surface)}.royal-promotion>small{grid-column:1/-1;color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.11em}.royal-promotion-choice{display:flex;min-height:48px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:11px;background:var(--table);color:#fff}.royal-promotion-choice b{color:var(--gold);font-size:19px}.royal-promotion-choice span{font-size:6px;font-weight:900}.royal-move-info{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.royal-move-info>span{display:flex;min-width:0;min-height:50px;flex-direction:column;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.royal-move-info small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.09em}.royal-move-info b{max-width:100%;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.royal-match-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.royal-match-actions .button{min-height:45px!important;margin:0!important;padding:8px!important;text-align:center!important}.royal-match-actions .accept,.royal-match-actions .claim{border-left-color:var(--green)!important}.royal-match-actions .resign{border-left-color:var(--pink)!important;color:var(--pink)}.royal-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.royal-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.royal-result>div{color:var(--gold);font-size:46px;line-height:1}.royal-result>small{color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.11em}.royal-result>b{font-size:22px}.royal-result>span{color:var(--muted);font-size:10px;font-weight:800}.royal-result.winner{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.11),#fff)}@media(max-width:360px){.controller-page.royal-chess-controller-active{display:block;padding:8px}.royal-chess-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.royal-controller-board{border-width:9px}.royal-piece b{font-size:11px}.royal-piece i{font-size:6px}.royal-chess-controller-active .prompt{font-size:27px!important}}@media(prefers-reduced-motion:reduce){.royal-piece,.royal-square,.royal-result{transition:none!important;animation:none!important}}

/* World Draughts — 10×10 phone board */
.world-draughts-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px}.world-draughts-meta>span{display:grid;grid-template-columns:1fr auto;gap:2px 7px;padding:8px 9px;border:1px solid var(--line);border-top:5px solid var(--pink);border-radius:14px;background:var(--surface)}.world-draughts-meta>span.black{border-top-color:var(--cyan)}.world-draughts-meta>span.active{background:var(--table);color:#fff;box-shadow:0 0 0 2px var(--gold)}.world-draughts-meta small{font-size:7px;font-weight:950;letter-spacing:.1em}.world-draughts-meta b{font-size:16px}.world-draughts-meta em{grid-column:1/-1;overflow:hidden;color:var(--muted);font-size:6px;font-style:normal;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.world-draughts-meta>span.active em{color:rgba(255,255,255,.62)}
.world-draughts-board{display:grid;width:100%;aspect-ratio:1;grid-template-columns:repeat(10,1fr);overflow:hidden;border:10px solid var(--ink);border-radius:20px;background:var(--table);box-shadow:inset 0 0 0 3px var(--gold),0 14px 28px rgba(16,20,38,.19)}.world-draughts-square{position:relative;display:grid;min-width:0;min-height:0;place-items:center;padding:0;border:0;border-radius:0;background:#fff4e3;color:var(--ink)}.world-draughts-square.active{background:#b9dce0}.world-draughts-square.last{box-shadow:inset 0 0 0 999px rgba(232,182,50,.36)}.world-draughts-square.selected{z-index:2;box-shadow:inset 0 0 0 3px var(--pink)}.world-draughts-square.destination:after{position:absolute;z-index:4;width:28%;aspect-ratio:1;border-radius:50%;background:rgba(232,182,50,.82);content:""}.world-draughts-square.destination.capture:after{width:78%;border:3px solid var(--pink);background:transparent}.world-draughts-square:disabled{opacity:1}.world-draughts-square>small{position:absolute;left:1px;top:0;z-index:5;color:rgba(16,20,38,.5);font-size:5px;font-weight:950}.world-draughts-piece{position:relative;z-index:3;display:grid;width:74%;aspect-ratio:1;place-items:center;border:2px solid #a9782d;border-radius:50%;background:var(--surface);box-shadow:0 3px 6px rgba(16,20,38,.26);color:var(--ink)}.world-draughts-piece.black{border-color:var(--cyan);background:var(--table);color:#fff}.world-draughts-piece.king{width:82%}.world-draughts-piece b{font-size:clamp(7px,2.8vw,12px);font-weight:1000}.world-draughts-piece i{position:absolute;top:-7%;color:var(--gold);font-size:7px;font-style:normal;font-weight:950}.world-draughts-sequences{display:grid;gap:6px;padding:9px;border:2px solid var(--gold);border-radius:15px;background:var(--surface)}.world-draughts-sequences>small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.09em}.world-draughts-sequence{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:0;border-left:5px solid var(--pink);border-radius:10px;background:var(--table);color:#fff;text-align:left}.world-draughts-sequence b{font-size:10px}.world-draughts-sequence span{color:var(--gold);font-size:7px;font-weight:950}.world-draughts-info{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.world-draughts-info>span{display:flex;min-width:0;min-height:49px;flex-direction:column;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.world-draughts-info small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.08em}.world-draughts-info b{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.world-draughts-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.world-draughts-actions .button{min-height:45px!important;margin:0!important;padding:8px!important;text-align:center!important}.world-draughts-actions .accept{border-left-color:var(--green)!important}.world-draughts-actions .resign{border-left-color:var(--pink)!important;color:var(--pink)}.world-draughts-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(32,184,204,.08);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.world-draughts-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.world-draughts-result>div{color:var(--gold);font-size:46px;line-height:1}.world-draughts-result>small{color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.1em}.world-draughts-result>b{font-size:22px}.world-draughts-result>span{color:var(--muted);font-size:10px;font-weight:800}.world-draughts-result.winner{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.11),#fff)}@media(max-width:360px){.controller-page.world-draughts-controller-active{display:block;padding:8px}.world-draughts-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.world-draughts-board{border-width:8px}.world-draughts-piece{border-width:1px}.world-draughts-piece b{font-size:7px}.world-draughts-controller-active .prompt{font-size:26px!important}}@media(prefers-reduced-motion:reduce){.world-draughts-piece,.world-draughts-square,.world-draughts-result{transition:none!important;animation:none!important}}

/* Carrom Diwaniya — original Kuwait wood-and-pearl TV board */
.carrom-show{display:grid;grid-template-columns:minmax(600px,1.32fr) minmax(310px,.68fr);align-items:center;gap:clamp(22px,3vw,48px);width:100%;height:100%;min-height:0}.carrom-tv-board{position:relative;width:min(100%,720px);aspect-ratio:1;margin:auto;overflow:hidden;border:clamp(25px,3.4vw,55px) solid #9a6233;border-radius:7%;background:#f3e1bd;box-shadow:inset 0 0 0 7px #c58b4e,inset 0 0 55px rgba(154,98,51,.18),0 24px 55px rgba(16,20,38,.22);isolation:isolate}.carrom-tv-pattern{position:absolute;inset:0;z-index:-1;opacity:.19;background-image:radial-gradient(circle at 50% 50%,transparent 0 11%,rgba(255,79,123,.35) 11.3% 11.8%,transparent 12.2% 23%,rgba(232,182,50,.45) 23.3% 23.8%,transparent 24.2%),repeating-linear-gradient(45deg,transparent 0 28px,rgba(154,98,51,.16) 29px 30px)}.carrom-pocket{position:absolute;z-index:2;width:10.5%;aspect-ratio:1;border:4px solid var(--gold);border-radius:50%;background:var(--table);translate:-50% -50%;box-shadow:inset 0 0 12px #000}.carrom-pocket.p0{left:0;top:0}.carrom-pocket.p1{left:100%;top:0}.carrom-pocket.p2{left:0;top:100%}.carrom-pocket.p3{left:100%;top:100%}.carrom-centre-art{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:23%;aspect-ratio:1;translate:-50% -50%;border:3px solid rgba(232,182,50,.48);border-radius:50%;color:rgba(255,79,123,.24);font-size:clamp(36px,4vw,70px)}.carrom-tv-piece{position:absolute;z-index:5;left:var(--x);top:var(--y);display:grid;place-items:center;width:4.6%;aspect-ratio:1;translate:-50% -50%;border:2px solid #b78342;border-radius:50%;background:#fffdf5;color:var(--muted);box-shadow:0 5px 9px rgba(16,20,38,.23);font-style:normal;transition:left .032s linear,top .032s linear,opacity .16s ease}.carrom-tv-piece b{font-size:clamp(6px,.55vw,11px)}.carrom-tv-piece.black{background:var(--table);color:#fff}.carrom-tv-piece.queen{background:var(--pink);color:#fff}.carrom-tv-piece.striker{width:6.2%;border:4px solid var(--gold);background:var(--cyan);color:#fff}.carrom-tv-seat{position:absolute;z-index:7;display:flex;min-width:126px;max-width:180px;flex-direction:column;gap:1px;padding:7px 9px;border:1px solid rgba(16,20,38,.14);border-top:5px solid var(--pink);border-radius:11px;background:rgba(255,255,255,.88);box-shadow:0 6px 14px rgba(16,20,38,.12);backdrop-filter:blur(8px)}.carrom-tv-seat.team-1{border-top-color:var(--cyan)}.carrom-tv-seat small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.07em}.carrom-tv-seat>b{overflow:hidden;color:var(--ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.carrom-tv-seat em{color:var(--muted);font-size:7px;font-style:normal;font-weight:850}.carrom-tv-seat.active{background:#fff8df;box-shadow:0 0 0 3px var(--gold),0 6px 18px rgba(232,182,50,.28)}.carrom-tv-seat.seat-0{left:50%;bottom:2%;translate:-50% 0}.carrom-tv-seat.seat-1{right:2%;top:50%;translate:0 -50%}.carrom-tv-seat.seat-2{left:50%;top:2%;translate:-50% 0}.carrom-tv-seat.seat-3{left:2%;top:50%;translate:0 -50%}.carrom-tv-result{position:absolute;left:50%;top:50%;z-index:9;display:flex;width:56%;min-height:32%;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:14px;translate:-50% -50%;border:3px solid var(--gold);border-radius:20px;background:rgba(16,20,38,.93);color:#fff;text-align:center}.carrom-tv-result>b{color:var(--gold);font-size:48px;line-height:.8}.carrom-tv-result>span{font-size:20px;font-weight:950}.carrom-tv-result>small{color:rgba(255,255,255,.68);font-size:9px;font-weight:850}.carrom-tv-result.final{border-color:var(--green);animation:winner-pulse .7s ease-in-out infinite alternate}.carrom-tv-copy{display:flex;min-width:0;flex-direction:column;gap:8px}.carrom-tv-copy h1{margin:2px 0 5px;font-size:clamp(38px,4vw,64px)}.carrom-tv-copy .stage-copy{margin:0 0 5px;font-size:clamp(17px,1.45vw,24px)}.carrom-rule-strip{display:flex;flex-wrap:wrap;gap:5px}.carrom-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.carrom-tv-event{padding:8px 10px;border:1px solid rgba(255,79,123,.22);border-radius:12px;background:rgba(255,79,123,.07);color:var(--pink);font-size:9px;font-weight:950}.carrom-tv-queen{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:12px;background:var(--table);color:var(--gold);font-size:9px;font-weight:950}.carrom-tv-queen span{color:var(--cyan)}.carrom-tv-scoreboard{display:grid;gap:6px}.carrom-tv-team{display:grid;grid-template-columns:1fr auto;gap:1px 8px;padding:8px 10px;border:1px solid var(--line);border-left:7px solid var(--pink);border-radius:12px;background:var(--surface)}.carrom-tv-team.team-1{border-left-color:var(--cyan)}.carrom-tv-team>span{display:flex;min-width:0;flex-direction:column;font-size:10px;font-weight:950}.carrom-tv-team>span small{overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.carrom-tv-team>b{font-size:16px}.carrom-tv-team>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.carrom-tv-team.winner{border-width:3px;background:rgba(232,182,50,.12)}@media(max-height:800px) and (min-width:901px){.carrom-show{gap:20px}.carrom-tv-board{width:min(100%,535px)}.carrom-tv-copy{gap:4px}.carrom-tv-copy h1{font-size:43px}.carrom-tv-copy .stage-copy{font-size:17px}.carrom-tv-seat{min-width:95px;padding:4px 6px}.carrom-tv-team{padding:5px 7px}}@media(max-width:900px){.carrom-show{grid-template-columns:1fr}.carrom-tv-board{width:min(540px,90vw)}.carrom-tv-copy{text-align:center}.carrom-rule-strip{justify-content:center}}@media(min-width:2560px){.carrom-show{grid-template-columns:minmax(1150px,1.32fr) minmax(550px,.68fr);gap:70px}.carrom-tv-board{width:min(100%,1450px);border-width:100px}.carrom-tv-seat{min-width:250px;max-width:360px;padding:16px 20px;border-top-width:10px;border-radius:22px}.carrom-tv-seat small,.carrom-tv-seat em{font-size:14px}.carrom-tv-seat>b{font-size:22px}.carrom-tv-copy{gap:16px}.carrom-tv-copy h1{font-size:84px}.carrom-tv-copy .stage-copy{font-size:34px}.carrom-rule-strip span{padding:12px 16px;font-size:14px}.carrom-tv-event,.carrom-tv-queen{padding:16px 20px;border-radius:24px;font-size:18px}.carrom-tv-team{padding:16px 20px;border-left-width:14px;border-radius:24px}.carrom-tv-team>span{font-size:20px}.carrom-tv-team>span small,.carrom-tv-team>em{font-size:14px}.carrom-tv-team>b{font-size:32px}.carrom-tv-result{padding:28px;border-width:6px;border-radius:40px}.carrom-tv-result>b{font-size:96px}.carrom-tv-result>span{font-size:40px}.carrom-tv-result>small{font-size:18px}}@media(prefers-reduced-motion:reduce){.carrom-tv-piece{transition:none!important}.carrom-tv-result.final{animation:none!important}}

/* Royal Chess — original pearl-and-midnight broadcast table */
.royal-tv-show{display:grid;grid-template-columns:minmax(590px,1.28fr) minmax(330px,.72fr);align-items:center;gap:clamp(24px,3vw,52px);width:100%;height:100%;min-height:0}.royal-tv-board{position:relative;display:grid;width:min(100%,720px);aspect-ratio:1;margin:auto;grid-template-columns:repeat(8,1fr);overflow:hidden;border:clamp(24px,2.7vw,48px) solid var(--ink);border-radius:5.5%;background:var(--table);box-shadow:inset 0 0 0 6px var(--gold),0 25px 56px rgba(16,20,38,.24)}.royal-tv-square{position:relative;display:grid;place-items:center;background:#fff6e7}.royal-tv-square.shade-1{background:#bbdde1}.royal-tv-square.last{box-shadow:inset 0 0 0 999px rgba(232,182,50,.34)}.royal-tv-square.checked{box-shadow:inset 0 0 0 999px rgba(255,79,123,.38);animation:royal-check-pulse .62s ease-in-out infinite alternate}.royal-tv-square>em{position:absolute;z-index:5;color:rgba(16,20,38,.53);font-size:clamp(6px,.48vw,10px);font-style:normal;font-weight:950}.royal-tv-square>.rank{left:3px;top:2px}.royal-tv-square>.file{right:3px;bottom:2px}.royal-tv-piece{position:relative;display:grid;width:76%;aspect-ratio:1;place-items:center;border:clamp(2px,.25vw,5px) solid #a6712a;border-radius:50%;background:#fffdf5;box-shadow:0 7px 13px rgba(16,20,38,.28);color:var(--ink);font-style:normal;animation:royal-piece-land .26s cubic-bezier(.2,.8,.25,1) both}.royal-tv-piece.black{border-color:var(--cyan);background:var(--table);color:#fff}.royal-tv-piece.pawn{width:65%}.royal-tv-piece>b{font-size:clamp(17px,1.8vw,34px);font-weight:1000}.royal-tv-piece>small{position:absolute;top:2%;color:var(--gold);font-size:clamp(8px,.75vw,15px);font-weight:950}.royal-tv-result{position:absolute;left:50%;top:50%;z-index:12;display:flex;width:62%;min-height:36%;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px;translate:-50% -50%;border:4px solid var(--gold);border-radius:24px;background:rgba(16,20,38,.94);color:#fff;text-align:center;box-shadow:0 20px 55px rgba(16,20,38,.38)}.royal-tv-result>b{color:var(--gold);font-size:62px;line-height:.8}.royal-tv-result>span{font-size:22px;font-weight:950}.royal-tv-result>small{color:rgba(255,255,255,.68);font-size:10px;font-weight:850}.royal-tv-result.winner{border-color:var(--green);animation:winner-pulse .7s ease-in-out infinite alternate}.royal-tv-copy{display:flex;min-width:0;flex-direction:column;gap:8px}.royal-tv-copy h1{margin:2px 0 4px;font-size:clamp(38px,4vw,66px)}.royal-tv-copy .stage-copy{margin:0 0 3px;font-size:clamp(17px,1.45vw,24px)}.royal-rule-strip{display:flex;flex-wrap:wrap;gap:5px}.royal-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.royal-tv-clocks{display:grid;gap:7px}.royal-tv-clock{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:10px 12px;border:1px solid var(--line);border-left:8px solid var(--pink);border-radius:14px;background:var(--surface)}.royal-tv-clock.black{border-left-color:var(--cyan)}.royal-tv-clock>span{display:flex;min-width:0;flex-direction:column}.royal-tv-clock small{color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.1em}.royal-tv-clock span>b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.royal-tv-clock>strong{font-size:22px}.royal-tv-clock>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.royal-tv-clock.active{border-color:var(--gold);background:var(--table);color:#fff;box-shadow:0 0 0 2px var(--gold)}.royal-tv-clock.active small,.royal-tv-clock.active>em{color:rgba(255,255,255,.61)}.royal-tv-clock.winner{border-width:3px;background:rgba(21,159,112,.1)}.royal-tv-ledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.royal-tv-ledger>span{display:flex;min-width:0;min-height:54px;flex-direction:column;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-align:center}.royal-tv-ledger small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.08em}.royal-tv-ledger b{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.royal-tv-offer{padding:9px 11px;border:2px solid var(--gold);border-radius:12px;background:#fff8d8;color:#8c6315;font-size:9px;font-weight:950;text-align:center;letter-spacing:.08em}@keyframes royal-piece-land{from{opacity:.35;transform:translateY(-8px) scale(.88)}to{opacity:1;transform:none}}@keyframes royal-check-pulse{from{filter:saturate(.8)}to{filter:saturate(1.5)}}@media(max-height:800px) and (min-width:901px){.royal-tv-show{gap:20px}.royal-tv-board{width:min(100%,520px);border-width:24px}.royal-tv-copy{gap:4px}.royal-tv-copy h1{font-size:42px}.royal-tv-copy .stage-copy{font-size:16px}.royal-tv-clock{padding:6px 8px}.royal-tv-clock>strong{font-size:17px}.royal-tv-ledger>span{min-height:42px}}@media(max-width:900px){.royal-tv-show{grid-template-columns:1fr}.royal-tv-board{width:min(540px,90vw)}.royal-tv-copy{text-align:center}.royal-rule-strip{justify-content:center}}@media(min-width:2560px){.royal-tv-show{grid-template-columns:minmax(1120px,1.28fr) minmax(600px,.72fr);gap:76px}.royal-tv-board{width:min(100%,1450px);border-width:96px}.royal-tv-piece>b{font-size:66px}.royal-tv-piece>small{font-size:30px}.royal-tv-copy{gap:16px}.royal-tv-copy h1{font-size:88px}.royal-tv-copy .stage-copy{font-size:34px}.royal-rule-strip span{padding:12px 16px;font-size:14px}.royal-tv-clock{padding:20px 24px;border-left-width:16px;border-radius:28px}.royal-tv-clock small,.royal-tv-clock>em{font-size:14px}.royal-tv-clock span>b{font-size:22px}.royal-tv-clock>strong{font-size:44px}.royal-tv-ledger{gap:10px}.royal-tv-ledger>span{min-height:108px;border-radius:22px}.royal-tv-ledger small{font-size:12px}.royal-tv-ledger b{font-size:24px}.royal-tv-offer{padding:18px 22px;border-radius:24px;font-size:18px}.royal-tv-result{padding:36px;border-width:8px;border-radius:48px}.royal-tv-result>b{font-size:124px}.royal-tv-result>span{font-size:44px}.royal-tv-result>small{font-size:20px}}@media(prefers-reduced-motion:reduce){.royal-tv-piece,.royal-tv-square.checked,.royal-tv-result.winner{animation:none!important}}

/* World Draughts — 10×10 broadcast table */
.world-draughts-tv-show{display:grid;grid-template-columns:minmax(590px,1.28fr) minmax(330px,.72fr);align-items:center;gap:clamp(24px,3vw,52px);width:100%;height:100%;min-height:0}.world-draughts-tv-board{position:relative;display:grid;width:min(100%,720px);aspect-ratio:1;margin:auto;grid-template-columns:repeat(10,1fr);overflow:hidden;border:clamp(24px,2.7vw,48px) solid var(--ink);border-radius:5.5%;background:var(--table);box-shadow:inset 0 0 0 6px var(--gold),0 25px 56px rgba(16,20,38,.24)}.world-draughts-tv-square{position:relative;display:grid;place-items:center;background:#fff4e3}.world-draughts-tv-square.active{background:#b9dce0}.world-draughts-tv-square.last{box-shadow:inset 0 0 0 999px rgba(232,182,50,.36)}.world-draughts-tv-square>em{position:absolute;left:2px;top:1px;z-index:5;color:rgba(16,20,38,.53);font-size:clamp(5px,.4vw,9px);font-style:normal;font-weight:950}.world-draughts-tv-piece{position:relative;display:grid;width:74%;aspect-ratio:1;place-items:center;border:clamp(2px,.22vw,4px) solid #a9782d;border-radius:50%;background:var(--surface);box-shadow:0 6px 11px rgba(16,20,38,.27);color:var(--ink);font-style:normal;animation:royal-piece-land .26s cubic-bezier(.2,.8,.25,1) both}.world-draughts-tv-piece.black{border-color:var(--cyan);background:var(--table);color:#fff}.world-draughts-tv-piece.king{width:82%}.world-draughts-tv-piece>b{font-size:clamp(12px,1.35vw,27px);font-weight:1000}.world-draughts-tv-piece>small{position:absolute;top:-6%;color:var(--gold);font-size:clamp(7px,.63vw,13px);font-weight:950}.world-draughts-tv-result{position:absolute;left:50%;top:50%;z-index:12;display:flex;width:64%;min-height:36%;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px;translate:-50% -50%;border:4px solid var(--gold);border-radius:24px;background:rgba(16,20,38,.94);color:#fff;text-align:center;box-shadow:0 20px 55px rgba(16,20,38,.38)}.world-draughts-tv-result>b{color:var(--gold);font-size:62px;line-height:.8}.world-draughts-tv-result>span{font-size:20px;font-weight:950}.world-draughts-tv-result>small{color:rgba(255,255,255,.68);font-size:10px;font-weight:850}.world-draughts-tv-result.winner{border-color:var(--green);animation:winner-pulse .7s ease-in-out infinite alternate}.world-draughts-tv-copy{display:flex;min-width:0;flex-direction:column;gap:8px}.world-draughts-tv-copy h1{margin:2px 0 4px;font-size:clamp(38px,4vw,66px)}.world-draughts-tv-copy .stage-copy{margin:0 0 3px;font-size:clamp(17px,1.45vw,24px)}.world-draughts-rule-strip{display:flex;flex-wrap:wrap;gap:5px}.world-draughts-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.world-draughts-tv-clocks{display:grid;gap:7px}.world-draughts-tv-clock{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:10px 12px;border:1px solid var(--line);border-left:8px solid var(--pink);border-radius:14px;background:var(--surface)}.world-draughts-tv-clock.black{border-left-color:var(--cyan)}.world-draughts-tv-clock>span{display:flex;min-width:0;flex-direction:column}.world-draughts-tv-clock small{color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.1em}.world-draughts-tv-clock span>b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.world-draughts-tv-clock>strong{font-size:22px}.world-draughts-tv-clock>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.world-draughts-tv-clock.active{border-color:var(--gold);background:var(--table);color:#fff;box-shadow:0 0 0 2px var(--gold)}.world-draughts-tv-clock.active small,.world-draughts-tv-clock.active>em{color:rgba(255,255,255,.61)}.world-draughts-tv-clock.winner{border-width:3px;background:rgba(21,159,112,.1)}.world-draughts-tv-ledger{display:grid;grid-template-columns:1fr 1fr;gap:5px}.world-draughts-tv-ledger>span{display:flex;min-width:0;min-height:54px;flex-direction:column;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-align:center}.world-draughts-tv-ledger small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.08em}.world-draughts-tv-ledger b{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.world-draughts-tv-offer{padding:9px 11px;border:2px solid var(--gold);border-radius:12px;background:#fff8d8;color:#8c6315;font-size:9px;font-weight:950;text-align:center;letter-spacing:.08em}@media(max-height:800px) and (min-width:901px){.world-draughts-tv-show{gap:20px}.world-draughts-tv-board{width:min(100%,430px);border-width:20px}.world-draughts-tv-copy{gap:4px}.world-draughts-tv-copy h1{font-size:42px}.world-draughts-tv-copy .stage-copy{font-size:16px}.world-draughts-tv-clock{padding:6px 8px}.world-draughts-tv-clock>strong{font-size:17px}.world-draughts-tv-ledger>span{min-height:42px}}@media(max-width:900px){.world-draughts-tv-show{grid-template-columns:1fr}.world-draughts-tv-board{width:min(540px,90vw)}.world-draughts-tv-copy{text-align:center}.world-draughts-rule-strip{justify-content:center}}@media(min-width:2560px){.world-draughts-tv-show{grid-template-columns:minmax(1120px,1.28fr) minmax(600px,.72fr);gap:76px}.world-draughts-tv-board{width:min(100%,1450px);border-width:96px}.world-draughts-tv-piece>b{font-size:52px}.world-draughts-tv-piece>small{font-size:26px}.world-draughts-tv-copy{gap:16px}.world-draughts-tv-copy h1{font-size:88px}.world-draughts-tv-copy .stage-copy{font-size:34px}.world-draughts-rule-strip span{padding:12px 16px;font-size:14px}.world-draughts-tv-clock{padding:20px 24px;border-left-width:16px;border-radius:28px}.world-draughts-tv-clock small,.world-draughts-tv-clock>em{font-size:14px}.world-draughts-tv-clock span>b{font-size:22px}.world-draughts-tv-clock>strong{font-size:44px}.world-draughts-tv-ledger>span{min-height:108px;border-radius:22px}.world-draughts-tv-ledger small{font-size:12px}.world-draughts-tv-ledger b{font-size:24px}.world-draughts-tv-offer{padding:18px 22px;border-radius:24px;font-size:18px}.world-draughts-tv-result{padding:36px;border-width:8px;border-radius:48px}.world-draughts-tv-result>b{font-size:124px}.world-draughts-tv-result>span{font-size:40px}.world-draughts-tv-result>small{font-size:20px}}@media(prefers-reduced-motion:reduce){.world-draughts-tv-piece,.world-draughts-tv-result.winner{animation:none!important}}

/* Spades Teams — unified broadcast table */
.spades-show{display:grid;grid-template-columns:minmax(610px,1.32fr) minmax(310px,.68fr);align-items:center;gap:clamp(22px,3vw,48px);width:100%;height:100%;min-height:0}.spades-tv-table{position:relative;width:100%;height:100%;min-height:410px;overflow:hidden;border:4px solid rgba(232,182,50,.74);border-radius:38% 38% 25% 25%;background:radial-gradient(circle at 50% 48%,rgba(32,184,204,.18),transparent 37%),linear-gradient(145deg,#11182b,#080b18);box-shadow:inset 0 0 115px rgba(32,184,204,.11),0 24px 55px rgba(16,20,38,.22);color:#fff;isolation:isolate}.spades-tv-pattern{position:absolute;inset:0;z-index:-1;opacity:.2;background-image:radial-gradient(circle at 50% 50%,transparent 0 31%,rgba(232,182,50,.31) 31.4% 31.8%,transparent 32.2%),repeating-linear-gradient(45deg,transparent 0 27px,rgba(255,255,255,.035) 28px 29px)}.spades-tv-contract{position:absolute;left:50%;top:15px;z-index:5;display:flex;gap:6px;translate:-50% 0}.spades-tv-contract span{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.07);font-size:8px;font-weight:950;letter-spacing:.07em;white-space:nowrap}.spades-tv-contract b{color:var(--gold);font-size:14px}.spades-tv-contract span:first-child b{color:var(--pink)}.spades-tv-contract span:last-child b{color:var(--cyan)}.spades-tv-center{position:absolute;left:50%;top:50%;z-index:3;display:grid;place-items:center;width:58%;height:54%;translate:-50% -46%}.spades-tv-seat{position:absolute;z-index:4;display:flex;min-width:126px;max-width:180px;flex-direction:column;gap:2px;padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-top:4px solid var(--pink);border-radius:12px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.spades-tv-seat.team-1{border-top-color:var(--cyan)}.spades-tv-seat small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.08em}.spades-tv-seat span{overflow:hidden;font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.spades-tv-seat>b{color:rgba(255,255,255,.58);font-size:7px;letter-spacing:.04em}.spades-tv-seat.active{background:rgba(232,182,50,.2);box-shadow:0 0 0 2px var(--gold),0 0 28px rgba(232,182,50,.25)}.spades-tv-seat.nil{box-shadow:inset 0 0 0 1px var(--pink)}.spades-tv-seat.seat-0{left:50%;top:62px;translate:-50% 0}.spades-tv-seat.seat-1{right:15px;top:50%;translate:0 -50%}.spades-tv-seat.seat-2{left:50%;bottom:14px;translate:-50% 0}.spades-tv-seat.seat-3{left:15px;top:50%;translate:0 -50%}.spades-tv-trick{display:flex;align-items:center;justify-content:center;gap:8px}.spades-tv-play{display:flex;flex-direction:column;align-items:center;gap:4px;animation:spades-card-land .3s cubic-bezier(.2,.8,.25,1) both}.spades-tv-play:nth-child(2){animation-delay:.05s}.spades-tv-play:nth-child(3){animation-delay:.1s}.spades-tv-play:nth-child(4){animation-delay:.15s}.spades-tv-play .tv-playing-card{width:clamp(55px,4.5vw,105px);height:clamp(76px,6.2vw,145px);border-color:var(--pink)}.spades-tv-play.team-1 .tv-playing-card{border-color:var(--cyan)}.spades-tv-play .tv-playing-card b{font-size:clamp(19px,1.6vw,36px)}.spades-tv-play .tv-playing-card i{font-size:clamp(22px,1.9vw,42px)}.spades-tv-play small{max-width:88px;overflow:hidden;font-size:clamp(7px,.65vw,14px);font-weight:900;text-overflow:ellipsis;white-space:nowrap}.spades-tv-auction,.spades-tv-opening,.spades-tv-celebration{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.spades-tv-auction>small,.spades-tv-opening>small{color:rgba(255,255,255,.58);font-size:8px;font-weight:950;letter-spacing:.12em}.spades-tv-auction>b{color:var(--gold);font-size:58px;line-height:.9}.spades-tv-auction>span,.spades-tv-opening>span{font-size:11px;font-weight:950;letter-spacing:.09em}.spades-tv-auction>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:9px}.spades-tv-auction i{display:flex;min-width:62px;flex-direction:column;gap:2px;padding:6px;border:1px solid rgba(255,255,255,.15);border-bottom:4px solid var(--pink);border-radius:9px;background:rgba(255,255,255,.05);font-style:normal}.spades-tv-auction i.team-1{border-bottom-color:var(--cyan)}.spades-tv-auction i.open{opacity:.48}.spades-tv-auction strong{overflow:hidden;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.spades-tv-auction em{color:var(--gold);font-size:14px;font-style:normal;font-weight:950}.spades-tv-opening>b,.spades-tv-celebration>b{color:var(--gold);font-size:76px;line-height:.82}.spades-tv-celebration{gap:6px;color:var(--gold);animation:winner-pulse .7s ease-in-out infinite alternate}.spades-tv-celebration>span{font-size:24px;font-weight:950;letter-spacing:.1em}.spades-tv-celebration>small{color:#fff;font-size:11px;font-weight:800}.spades-tv-hand-result{width:min(100%,420px);padding:14px;border:2px solid var(--gold);border-radius:19px;background:rgba(232,182,50,.1);text-align:center}.spades-tv-hand-result>small{color:rgba(255,255,255,.58);font-size:8px;font-weight:950;letter-spacing:.11em}.spades-tv-hand-result>b{display:block;margin:4px 0 8px;color:var(--gold);font-size:21px}.spades-tv-hand-result>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.spades-tv-hand-result>div>span{display:grid;grid-template-columns:1fr auto;gap:2px 5px;padding:7px;border:1px solid rgba(255,255,255,.13);border-top:4px solid var(--pink);border-radius:10px;background:rgba(255,255,255,.06);text-align:left}.spades-tv-hand-result>div>span.team-1{border-top-color:var(--cyan)}.spades-tv-hand-result strong{font-size:8px}.spades-tv-hand-result em{color:var(--gold);font-size:10px;font-style:normal;font-weight:950}.spades-tv-hand-result i{grid-column:1/-1;color:rgba(255,255,255,.58);font-size:7px;font-style:normal;font-weight:850}.spades-tv-copy{display:flex;min-width:0;flex-direction:column;gap:7px}.spades-tv-copy h1{margin:3px 0 5px;font-size:clamp(38px,4vw,64px)}.spades-tv-copy .stage-copy{margin:0 0 5px;font-size:clamp(17px,1.45vw,24px)}.spades-rule-strip{display:flex;flex-wrap:wrap;gap:5px}.spades-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.spades-last-trick{display:grid;gap:2px;padding:7px 9px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.spades-last-trick small{color:var(--gold);font-size:7px;font-weight:950;letter-spacing:.09em}.spades-last-trick span{color:var(--muted);font-size:8px;font-weight:850}.spades-tv-nils{display:grid;gap:3px;padding:7px 9px;border:1px solid rgba(255,79,123,.22);border-radius:11px;background:rgba(255,79,123,.06)}.spades-tv-nils>small{color:var(--pink);font-size:7px;font-weight:950;letter-spacing:.1em}.spades-tv-nils>span{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:8px;font-weight:850}.spades-tv-nils b{color:var(--ink)}.spades-tv-scoreboard{display:grid;gap:5px}.spades-tv-team{display:grid;grid-template-columns:1fr auto;gap:1px 8px;padding:7px 9px;border:1px solid var(--line);border-left:7px solid var(--pink);border-radius:12px;background:var(--surface)}.spades-tv-team.team-1{border-left-color:var(--cyan)}.spades-tv-team>span{display:flex;min-width:0;flex-direction:column;font-size:10px;font-weight:950}.spades-tv-team>span small{overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.spades-tv-team>b{font-size:15px}.spades-tv-team>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.spades-tv-team.winner{border-width:3px;background:rgba(232,182,50,.12);animation:winner-pulse .7s ease-in-out infinite alternate}@keyframes spades-card-land{from{opacity:0;transform:translateY(-20px) rotate(-4deg) scale(.82)}to{opacity:1;transform:none}}
@media(max-width:900px){.spades-show{grid-template-columns:1fr}.spades-tv-table{min-height:410px}.spades-tv-copy{text-align:center}.spades-rule-strip{justify-content:center}}
@media(max-height:800px) and (min-width:901px){.spades-show{gap:20px}.spades-tv-table{min-height:380px}.spades-tv-copy h1{font-size:43px}.spades-tv-copy .stage-copy{font-size:17px}.spades-tv-play .tv-playing-card{width:60px;height:82px}.spades-tv-copy{gap:4px}.spades-tv-team{padding:5px 7px}.spades-tv-seat{padding:6px 8px}.spades-tv-hand-result{padding:10px}.spades-tv-auction>b{font-size:48px}}
@media(min-width:2560px){.spades-show{grid-template-columns:minmax(1100px,1.32fr) minmax(560px,.68fr);gap:70px}.spades-tv-table{min-height:760px;border-width:8px}.spades-tv-contract{top:30px;gap:12px}.spades-tv-contract span{padding:14px 20px;border-radius:999px;font-size:16px}.spades-tv-contract b{font-size:28px}.spades-tv-seat{min-width:250px;max-width:360px;padding:16px 20px;border-top-width:8px;border-radius:24px}.spades-tv-seat small{font-size:14px}.spades-tv-seat span{font-size:22px}.spades-tv-seat>b{font-size:14px}.spades-tv-seat.seat-0{top:124px}.spades-tv-seat.seat-1{right:30px}.spades-tv-seat.seat-2{bottom:28px}.spades-tv-seat.seat-3{left:30px}.spades-tv-auction>small,.spades-tv-opening>small,.spades-tv-hand-result>small{font-size:16px}.spades-tv-auction>b{font-size:116px}.spades-tv-auction>span,.spades-tv-opening>span{font-size:22px}.spades-tv-auction i{min-width:124px;padding:12px;border-bottom-width:8px;border-radius:18px}.spades-tv-auction strong{font-size:14px}.spades-tv-auction em{font-size:28px}.spades-tv-play .tv-playing-card{width:140px;height:194px}.spades-tv-play .tv-playing-card b{font-size:48px}.spades-tv-play .tv-playing-card i{font-size:56px}.spades-tv-play small{max-width:150px;font-size:18px}.spades-tv-opening>b,.spades-tv-celebration>b{font-size:150px}.spades-tv-celebration>span{font-size:48px}.spades-tv-celebration>small{font-size:22px}.spades-tv-hand-result{max-width:840px;padding:28px;border-width:4px;border-radius:38px}.spades-tv-hand-result>b{font-size:42px}.spades-tv-hand-result strong,.spades-tv-hand-result i{font-size:15px}.spades-tv-hand-result em{font-size:20px}.spades-tv-copy{gap:14px}.spades-tv-copy h1{font-size:84px}.spades-tv-copy .stage-copy{font-size:34px}.spades-rule-strip{gap:10px}.spades-rule-strip span{padding:12px 16px;font-size:14px}.spades-last-trick,.spades-tv-nils{padding:14px 18px;border-radius:22px}.spades-last-trick small,.spades-tv-nils>small,.spades-last-trick span,.spades-tv-nils>span{font-size:14px}.spades-tv-team{padding:14px 18px;border-left-width:14px;border-radius:24px}.spades-tv-team>span{font-size:20px}.spades-tv-team>span small,.spades-tv-team>em{font-size:14px}.spades-tv-team>b{font-size:30px}}
@media(prefers-reduced-motion:reduce){.spades-tv-play,.spades-tv-celebration,.spades-tv-team.winner{animation:none!important}}

@media(max-height:800px) and (min-width:901px){.carrom-tv-board{width:min(100%,430px)}}

@media(max-height:800px) and (min-width:901px){.royal-tv-board{width:min(100%,430px);border-width:20px}}

/* Full-height TV composition for the shared fragment renderers.
   Board-specific stages already own their geometry; these rules only apply to
   older live fragments so unusual TV/AirPlay viewports cannot pin them to the
   lower third of the screen. */
.tv-live-fragment{width:100%;height:100%;min-width:0;min-height:0;align-self:stretch;display:grid;gap:clamp(8px,1.4vh,18px);overflow:hidden}
.tv-live-fragment>*{min-width:0;min-height:0}
.tv-live-fragment .stage-head,.tv-live-fragment .scorebar,.tv-live-fragment .answer-grid,.tv-live-fragment .bluff-grid,.tv-live-fragment .survey-grid,.tv-live-fragment .vote-bars,.tv-live-fragment .result-list,.tv-live-fragment .response-meter,.tv-live-fragment .name-cloud{margin:0}
.tv-fragment-prompt{display:grid;align-content:center;gap:clamp(5px,.8vh,12px)}
.tv-fragment-prompt .eyebrow,.tv-fragment-prompt h1{margin:0}

.tv-domna-fragment{grid-template-rows:auto auto minmax(150px,1fr) auto}
.tv-domna-fragment .domna-heading{height:100%}
.tv-domna-fragment .domna-heading .eyebrow,.tv-domna-fragment .domna-heading h1,.tv-domna-fragment .domna-heading .stage-copy{margin-top:0;margin-bottom:clamp(4px,.7vh,10px)}
.tv-domna-fragment .domna-table{height:100%;min-height:0;padding-block:clamp(14px,2.2vh,30px)}
.tv-domna-fragment .domna-scores{align-self:end}

.tv-trivia-fragment{grid-template-rows:auto auto auto minmax(145px,1fr) auto}
.tv-trivia-fragment .answer-grid{height:100%;grid-auto-rows:minmax(0,1fr)}
.tv-trivia-fragment .answer-tile{height:100%;min-height:0}

.tv-bluff-fragment{grid-template-rows:auto auto minmax(150px,1fr) auto}
.tv-bluff-body{display:flex;min-height:0;flex-direction:column;justify-content:center;gap:clamp(8px,1.2vh,16px)}
.tv-bluff-body>.stage-copy{margin:0;align-self:center;text-align:center}
.tv-bluff-body .bluff-question{margin:0}
.tv-bluff-body .bluff-grid{flex:1;grid-auto-rows:minmax(72px,1fr)}
.tv-bluff-body .bluff-grid.count-2,.tv-bluff-body .bluff-grid.count-3,.tv-bluff-body .bluff-grid.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.tv-bluff-body .bluff-grid.count-3 .bluff-option:last-child{grid-column:1/-1}
.tv-bluff-body .bluff-option{height:100%;min-height:0}

.tv-survey-fragment{grid-template-rows:auto auto minmax(180px,1fr) auto}
.tv-survey-fragment .survey-grid{height:100%}
.tv-survey-fragment .survey-choice{height:100%;min-height:0}

.tv-group-vote-fragment{grid-template-rows:auto auto minmax(150px,1fr) auto}
.tv-group-vote-body{display:grid;min-height:0;place-items:center}
.tv-group-vote-body>.stage-copy{margin:0;text-align:center}
.tv-group-vote-body .vote-bars{width:100%;height:100%;grid-auto-rows:minmax(0,1fr)}
.tv-group-vote-body .vote-bar{display:flex;min-height:0;flex-direction:column;justify-content:center}

.tv-secret-role-fragment{grid-template-rows:auto minmax(0,1fr)}
.tv-secret-role-body{display:grid;min-height:0;grid-template-rows:auto auto auto minmax(0,1fr);align-content:center;justify-items:center;gap:clamp(8px,1.4vh,20px);text-align:center}
.tv-secret-role-body .secret-stage-icon,.tv-secret-role-body h1,.tv-secret-role-body .stage-copy,.tv-secret-role-body .name-cloud{margin:0}
.tv-secret-role-body .name-cloud{align-content:center;justify-content:center}

.tv-results-fragment{width:min(1500px,100%);grid-template-rows:auto minmax(0,1fr);justify-self:center}
.tv-results-fragment .result-list{height:100%;grid-auto-rows:minmax(0,1fr)}
.tv-results-fragment .result-row{align-items:center;min-height:0}

.tv-intermission-fragment{height:100%;align-items:stretch}
.tv-intermission-fragment>div:first-child{display:flex;min-height:0;flex-direction:column;justify-content:center}
.tv-intermission-fragment .party-intro-card{display:grid;grid-template-rows:auto auto auto auto auto;align-content:center;gap:clamp(7px,1.1vh,13px);overflow:hidden}
.tv-intermission-fragment .party-intro-card>.eyebrow,.tv-intermission-fragment .party-intro-card>h1,.tv-intermission-fragment .party-intro-card>.stage-copy{margin:0}
.tv-intermission-fragment .party-intro-card>h1{font-size:clamp(34px,3.7vw,58px)}
.tv-intermission-fragment .party-beat{padding:clamp(9px,1.4vh,13px) 14px}
.tv-intermission-fragment .switch-countdown{width:clamp(82px,14vh,118px);height:clamp(82px,14vh,118px);margin-top:0;border-width:clamp(6px,1vh,8px);font-size:clamp(42px,7vh,58px)}
.tv-intermission-fragment .party-mini-board{align-content:center}
.party-team-copy{display:grid;gap:3px}.party-team-copy strong{font:inherit}.party-team-copy small{max-width:32ch;overflow:hidden;color:var(--muted);font-size:clamp(11px,1vw,15px);font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.tv-party-scores-fragment{width:min(1500px,100%);height:100%;grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch;justify-self:center;margin:0 auto}
.tv-party-scores-fragment .party-podium{height:100%;margin:0;grid-auto-rows:minmax(0,1fr);align-content:stretch}
.tv-party-scores-fragment .party-score-row{min-height:0}
.tv-party-scores-fragment .party-podium .party-score-row:last-child:nth-child(even){grid-column:1/-1}
.tv-party-scores-fragment .party-history{margin:0}

@media (min-width:1920px){
  .tv-live-fragment{gap:clamp(16px,1.3vh,30px)}
  .tv-live-fragment h1{max-width:2200px;font-size:clamp(82px,4.1vw,158px)}
  .tv-live-fragment .eyebrow,.tv-live-fragment .phase-pill,.tv-live-fragment .domna-target{font-size:clamp(24px,1.15vw,44px)}
  .tv-live-fragment .phase-pill{padding:clamp(13px,.8vw,28px) clamp(20px,1.2vw,44px)}
  .tv-live-fragment .stage-copy,.tv-live-fragment .response-meter,.tv-live-fragment .bluff-question{max-width:2200px;font-size:clamp(32px,1.55vw,60px)}
  .tv-live-fragment .timer{width:clamp(132px,7vw,250px);height:clamp(132px,7vw,250px);border-width:clamp(8px,.45vw,16px);font-size:clamp(52px,2.8vw,100px)}
  .tv-live-fragment .team-score{padding:clamp(24px,1.3vw,48px);font-size:clamp(36px,1.7vw,66px)}
  .tv-trivia-fragment .answer-tile{padding:clamp(24px,1.4vw,50px);border-radius:clamp(22px,1.2vw,44px);font-size:clamp(34px,1.7vw,66px)}
  .tv-bluff-body .bluff-option{padding:clamp(24px,1.4vw,50px);border-radius:clamp(22px,1.2vw,44px)}
  .tv-bluff-body .bluff-option b{font-size:clamp(32px,1.55vw,60px)}
  .tv-bluff-body .bluff-option small{font-size:clamp(20px,1vw,38px)}
  .tv-survey-fragment .survey-choice{padding:clamp(38px,2vw,76px);border-radius:clamp(30px,1.8vw,66px)}
  .tv-survey-fragment .survey-choice small{font-size:clamp(34px,1.6vw,62px)}
  .tv-survey-fragment .survey-choice b{font-size:clamp(48px,2.5vw,96px)}
  .tv-survey-fragment .survey-choice strong{font-size:clamp(72px,3.8vw,145px)}
  .tv-group-vote-body .vote-bar{padding:clamp(18px,1vw,38px) clamp(24px,1.4vw,52px);border-radius:clamp(18px,1vw,38px)}
  .tv-group-vote-body .vote-bar>div{font-size:clamp(26px,1.25vw,48px)}
  .tv-group-vote-body .vote-bar i{height:clamp(9px,.45vw,17px)}
  .tv-secret-role-body .secret-stage-icon{font-size:clamp(100px,6vw,220px)}
  .tv-secret-role-body .name-cloud span{padding:clamp(16px,.9vw,34px) clamp(24px,1.3vw,48px);font-size:clamp(28px,1.35vw,52px)}
  .tv-results-fragment,.tv-party-scores-fragment{width:min(2400px,100%)}
  .tv-results-fragment .result-row,.tv-party-scores-fragment .party-score-row{padding:clamp(25px,1.3vw,50px) clamp(30px,1.7vw,64px);border-radius:clamp(22px,1.3vw,48px);font-size:clamp(34px,1.65vw,64px)}
  .tv-intermission-fragment{gap:clamp(70px,4vw,150px)}
  .tv-intermission-fragment .switch-countdown{width:clamp(180px,9vw,340px);height:clamp(180px,9vw,340px);border-width:clamp(10px,.6vw,22px);font-size:clamp(82px,4vw,155px)}
  .tv-domna-fragment .domna-boneyard{flex-basis:clamp(180px,9vw,340px);padding:clamp(20px,1.2vw,44px);border-radius:clamp(22px,1.3vw,50px)}
  .tv-domna-fragment .domna-boneyard span{font-size:clamp(52px,2.5vw,96px)}
  .tv-domna-fragment .domna-boneyard b{font-size:clamp(42px,2.1vw,82px)}
  .tv-domna-fragment .domna-boneyard small{font-size:clamp(14px,.7vw,27px)}
  .tv-domna-fragment .domna-table{border-radius:clamp(36px,2vw,76px)}
  .tv-domna-fragment .tv-domino{width:clamp(150px,7.4vw,285px);height:clamp(84px,4.2vw,162px);padding:clamp(10px,.6vw,22px);border-radius:clamp(17px,1vw,38px)}
  .tv-domna-fragment .tv-domino>b{height:72%;width:clamp(3px,.15vw,6px)}
  .tv-domna-fragment .pip-face{width:clamp(48px,2.5vw,96px);height:clamp(48px,2.5vw,96px)}
  .tv-domna-fragment .pip-face i{width:clamp(9px,.48vw,18px);height:clamp(9px,.48vw,18px)}
  .tv-domna-fragment .domna-player{padding:clamp(18px,1vw,38px) clamp(22px,1.2vw,46px);border-radius:clamp(20px,1.2vw,44px)}
  .tv-domna-fragment .domna-player span,.tv-domna-fragment .domna-player b{font-size:clamp(25px,1.25vw,48px)}
  .tv-domna-fragment .domna-player small{font-size:clamp(18px,.9vw,35px)}
}

@media (min-width:2560px){
  .tv-intermission-fragment .party-intro-card{gap:clamp(22px,1.5vh,36px)}
  .tv-intermission-fragment .party-intro-card>h1{font-size:clamp(116px,4.2vw,170px);line-height:1.02}
  .tv-intermission-fragment .party-intro-card>.eyebrow{font-size:clamp(36px,1.1vw,46px)}
  .tv-intermission-fragment .party-intro-card>.stage-copy{font-size:clamp(52px,1.45vw,62px)}
  .tv-intermission-fragment .party-beat{gap:14px;padding:clamp(28px,1.4vw,54px);border-radius:34px}
  .tv-intermission-fragment .party-beat span{font-size:clamp(25px,.75vw,32px)}
  .tv-intermission-fragment .party-beat b{font-size:clamp(42px,1.25vw,54px)}
  .tv-intermission-fragment .party-event-details{gap:18px}
  .tv-intermission-fragment .party-event-details span{padding:18px 28px;font-size:clamp(28px,.85vw,36px)}
  .tv-intermission-fragment .party-mini-board{gap:24px}
  .tv-intermission-fragment .party-score-row{min-height:190px;padding:38px 48px;font-size:clamp(48px,1.45vw,62px)}
  .tv-intermission-fragment .party-team-copy small,.tv-intermission-fragment .party-team-copy em{font-size:clamp(25px,.72vw,31px)}
}

@media (max-height:800px) and (min-width:901px){
  .tv-live-fragment{gap:7px}
  .tv-live-fragment .stage-head{margin:0}
  .tv-trivia-fragment{grid-template-rows:auto auto auto minmax(132px,1fr) auto}
  .tv-bluff-fragment{grid-template-rows:auto auto minmax(138px,1fr) auto}
  .tv-survey-fragment{grid-template-rows:auto auto minmax(165px,1fr) auto}
  .tv-group-vote-fragment{grid-template-rows:auto auto minmax(138px,1fr) auto}
  .tv-domna-fragment{grid-template-rows:auto auto minmax(145px,1fr) auto}
}

/* Mancala Sands TV */
.mancala-tv-show{display:grid;grid-template-columns:minmax(650px,1.3fr) minmax(320px,.7fr);align-items:center;gap:clamp(24px,3vw,52px);width:100%;height:100%;min-height:0}.mancala-tv-board{position:relative;display:grid;width:min(100%,790px);min-height:440px;grid-template-columns:95px minmax(0,1fr) 95px;align-items:stretch;gap:14px;padding:35px;border:clamp(24px,2.7vw,48px) solid var(--ink);border-radius:7%;background:linear-gradient(135deg,#e6b966,#f5dda8);box-shadow:inset 0 0 0 6px var(--gold),0 25px 56px rgba(16,20,38,.24)}.mancala-tv-houses{display:grid;gap:15px}.mancala-tv-houses>div{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.mancala-tv-house{position:relative;display:grid;min-width:0;aspect-ratio:.8;place-items:center;border:3px solid rgba(83,59,31,.58);border-radius:45%;background:#fff1d2;box-shadow:inset 0 10px 20px rgba(94,63,28,.18)}.mancala-tv-house.last{background:#fff0b6}.mancala-tv-house.captured{background:rgba(21,159,112,.2);box-shadow:0 0 0 5px rgba(21,159,112,.17)}.mancala-tv-house>small{position:absolute;left:4px;top:3px;color:var(--muted);font-size:8px;font-weight:950}.mancala-tv-house>em{position:absolute;inset:16%}.mancala-tv-house>b{position:relative;z-index:3;font-size:24px}.mancala-tv-house .seed{position:absolute;width:18%;aspect-ratio:1;border-radius:50%;box-shadow:0 2px 4px rgba(16,20,38,.22)}.mancala-tv-house .seed-0{left:10%;top:16%;background:var(--pink)}.mancala-tv-house .seed-1{right:11%;top:37%;background:var(--cyan)}.mancala-tv-house .seed-2{left:39%;bottom:10%;background:var(--gold)}.mancala-tv-store{display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px solid var(--pink);border-radius:999px;background:rgba(255,75,120,.13)}.mancala-tv-store.saffron{border-color:var(--cyan);background:rgba(32,184,204,.13)}.mancala-tv-store small{font-size:9px;font-weight:950;writing-mode:vertical-rl}.mancala-tv-store b{font-size:42px}.mancala-tv-result{position:absolute;left:50%;top:50%;z-index:12;display:flex;width:58%;min-height:45%;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:22px;translate:-50% -50%;border:4px solid var(--green);border-radius:28px;background:rgba(16,20,38,.94);color:#fff;text-align:center}.mancala-tv-result>b{color:var(--gold);font-size:68px}.mancala-tv-result>span{font-size:22px;font-weight:950}.mancala-tv-result>small{color:rgba(255,255,255,.68);font-size:11px;font-weight:850}.mancala-tv-copy{display:flex;min-width:0;flex-direction:column;gap:8px}.mancala-tv-copy h1{margin:2px 0 4px;font-size:clamp(38px,4vw,66px)}.mancala-tv-copy .stage-copy{margin:0;font-size:clamp(17px,1.45vw,24px)}.mancala-rule-strip{display:flex;flex-wrap:wrap;gap:5px}.mancala-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.mancala-tv-clocks{display:grid;gap:7px}.mancala-tv-clock{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 12px;border:1px solid var(--line);border-left:8px solid var(--pink);border-radius:14px;background:var(--surface)}.mancala-tv-clock.saffron{border-left-color:var(--cyan)}.mancala-tv-clock>span{display:flex;flex-direction:column}.mancala-tv-clock small{color:var(--muted);font-size:7px;font-weight:950}.mancala-tv-clock span>b{font-size:11px}.mancala-tv-clock>strong{font-size:22px}.mancala-tv-clock>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.mancala-tv-clock.active{border-color:var(--gold);background:var(--table);color:#fff}.mancala-tv-clock.active small,.mancala-tv-clock.active>em{color:rgba(255,255,255,.61)}.mancala-tv-clock.winner{border-width:3px;background:rgba(21,159,112,.1)}.mancala-tv-ledger{display:grid;grid-template-columns:1fr 1fr;gap:5px}.mancala-tv-ledger>span{display:flex;min-height:54px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.mancala-tv-ledger small{color:var(--muted);font-size:6px;font-weight:950}.mancala-tv-ledger b{font-size:12px}.mancala-tv-alert{padding:9px;border:2px solid var(--gold);border-radius:12px;background:#fff8d8;color:#8c6315;font-size:9px;font-weight:950;text-align:center}@media(max-height:800px) and (min-width:901px){.mancala-tv-show{gap:20px}.mancala-tv-board{width:min(100%,650px);min-height:350px;padding:26px;border-width:20px}.mancala-tv-copy{gap:4px}.mancala-tv-copy h1{font-size:42px}.mancala-tv-copy .stage-copy{font-size:16px}.mancala-tv-clock{padding:6px 8px}}@media(min-width:2560px){.mancala-tv-show{grid-template-columns:minmax(1300px,1.3fr) minmax(620px,.7fr);gap:80px}.mancala-tv-board{width:min(100%,1580px);min-height:880px;grid-template-columns:190px 1fr 190px;gap:28px;padding:70px;border-width:96px}.mancala-tv-houses{gap:30px}.mancala-tv-houses>div{gap:18px}.mancala-tv-house>b{font-size:48px}.mancala-tv-store b{font-size:84px}.mancala-tv-copy h1{font-size:88px}.mancala-tv-copy .stage-copy{font-size:34px}.mancala-rule-strip span{padding:12px 16px;font-size:14px}.mancala-tv-clock{padding:20px 24px;border-left-width:16px}.mancala-tv-clock small,.mancala-tv-clock>em{font-size:14px}.mancala-tv-clock span>b{font-size:22px}.mancala-tv-clock>strong{font-size:44px}.mancala-tv-ledger>span{min-height:108px}.mancala-tv-ledger small{font-size:12px}.mancala-tv-ledger b{font-size:24px}.mancala-tv-result{padding:40px;border-width:8px}.mancala-tv-result>b{font-size:136px}.mancala-tv-result>span{font-size:44px}}@media(prefers-reduced-motion:reduce){.mancala-tv-result,.mancala-tv-house{animation:none!important}}

/* Mancala Sands controller */
.mancala-board{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:stretch;gap:7px;padding:10px;border:9px solid var(--ink);border-radius:24px;background:linear-gradient(135deg,#e8bd72,#f5daa6);box-shadow:inset 0 0 0 3px var(--gold),0 14px 28px rgba(16,20,38,.2)}.mancala-houses{display:grid;gap:7px}.mancala-row{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.mancala-house{position:relative;display:grid;min-width:0;aspect-ratio:.78;place-items:center;padding:3px;border:2px solid rgba(83,59,31,.58);border-radius:45%;background:#fff1d2;color:var(--ink);box-shadow:inset 0 5px 10px rgba(94,63,28,.18)}.mancala-house:disabled{opacity:1}.mancala-house.legal{border:3px solid var(--pink);box-shadow:0 0 0 3px rgba(255,75,120,.18),inset 0 5px 10px rgba(94,63,28,.18)}.mancala-house.last{background:#fff0b6}.mancala-house.captured{background:rgba(21,159,112,.18)}.mancala-house>small{position:absolute;left:3px;top:2px;color:var(--muted);font-size:6px;font-weight:950}.mancala-house>span{position:absolute;inset:15%;display:block}.mancala-house>b{position:relative;z-index:3;font-size:15px}.mancala-house .seed{position:absolute;width:18%;aspect-ratio:1;border-radius:50%;background:var(--gold);box-shadow:0 1px 2px rgba(16,20,38,.25)}.mancala-house .seed-0{left:12%;top:18%;background:var(--pink)}.mancala-house .seed-1{right:12%;top:35%;background:var(--cyan)}.mancala-house .seed-2{left:38%;bottom:12%;background:var(--gold)}.mancala-store{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;border:2px solid var(--pink);border-radius:999px;background:rgba(255,75,120,.12)}.mancala-store.saffron{border-color:var(--cyan);background:rgba(32,184,204,.12)}.mancala-store small{font-size:5px;font-weight:950;writing-mode:vertical-rl}.mancala-store b{font-size:18px}.mancala-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mancala-meta>span{display:flex;min-width:0;min-height:54px;flex-direction:column;justify-content:center;padding:7px 9px;border:1px solid var(--line);border-top:4px solid var(--pink);border-radius:12px;background:var(--surface)}.mancala-meta>span.saffron{border-top-color:var(--cyan)}.mancala-meta>span.active{border-color:var(--gold);background:var(--table);color:#fff}.mancala-meta small{color:var(--muted);font-size:6px;font-weight:950}.mancala-meta b{font-size:17px}.mancala-meta em{overflow:hidden;color:var(--muted);font-size:6px;font-style:normal;font-weight:850;white-space:normal}.mancala-meta>span.active small,.mancala-meta>span.active em{color:rgba(255,255,255,.62)}.mancala-info{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mancala-info>span{display:flex;min-height:48px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.mancala-info small{color:var(--muted);font-size:6px;font-weight:950}.mancala-info b{font-size:12px}.mancala-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.mancala-actions .button{min-height:45px!important;margin:0!important;padding:8px!important}.mancala-actions .resign{color:var(--pink)}.mancala-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(232,182,50,.12);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.mancala-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.mancala-result>div{color:var(--gold);font-size:46px}.mancala-result>small{color:var(--gold);font-size:8px;font-weight:950}.mancala-result>b{font-size:22px}.mancala-result>span{color:var(--muted);font-size:10px;font-weight:800}.mancala-result.winner{border-color:var(--green)}@media(max-width:360px){.controller-page.mancala-controller-active{padding:8px}.mancala-controller-active .controller-shell{width:100%;padding:17px}.mancala-board{grid-template-columns:38px 1fr 38px;padding:7px;border-width:8px}.mancala-row{gap:3px}.mancala-house>b{font-size:12px}}

.mancala-board{min-height:180px}.mancala-houses{grid-template-rows:1fr 1fr}.mancala-house{aspect-ratio:auto}

/* Nine Stones TV · broadcast-scale pearl-inlaid heritage board */
.nine-tv-show{display:grid;grid-template-columns:minmax(590px,1.28fr) minmax(330px,.72fr);align-items:center;gap:clamp(24px,3vw,52px);width:100%;height:100%;min-height:0}.nine-tv-board{position:relative;width:min(100%,720px);aspect-ratio:1;margin:auto;overflow:hidden;border:clamp(24px,2.7vw,48px) solid var(--ink);border-radius:6%;background:radial-gradient(circle at 16% 20%,rgba(255,75,120,.17),transparent 29%),radial-gradient(circle at 84% 77%,rgba(32,184,204,.18),transparent 31%),#f8ecd3;box-shadow:inset 0 0 0 6px var(--gold),0 25px 56px rgba(16,20,38,.24)}.nine-tv-board>svg{position:absolute;inset:5%;width:90%;height:90%;overflow:visible}.nine-tv-board>svg line{stroke:#29354a;stroke-width:1.3;stroke-linecap:round}.nine-tv-node{position:absolute;z-index:3;display:grid;width:9.6%;aspect-ratio:1;place-items:center;left:var(--x);top:var(--y);translate:-50% -50%}.nine-tv-node>small{position:absolute;left:50%;top:91%;translate:-50% 0;color:rgba(16,20,38,.52);font-size:clamp(5px,.4vw,9px);font-weight:950}.nine-tv-node>em{display:block;width:31%;aspect-ratio:1;border:clamp(2px,.18vw,4px) solid #31445a;border-radius:50%;background:#b8dce0}.nine-tv-piece{position:relative;display:grid;width:88%;aspect-ratio:1;place-items:center;border:clamp(3px,.27vw,5px) solid #a9782d;border-radius:50%;background:var(--surface);box-shadow:0 7px 13px rgba(16,20,38,.31);color:var(--ink);font-style:normal;animation:royal-piece-land .26s cubic-bezier(.2,.8,.25,1) both}.nine-tv-piece.black{border-color:var(--cyan);background:var(--table);color:#fff}.nine-tv-piece>b{font-size:clamp(12px,1.35vw,27px);font-weight:1000}.nine-tv-node.last:after,.nine-tv-node.mill:after{position:absolute;inset:-8%;z-index:-1;border-radius:50%;background:rgba(32,184,204,.26);content:""}.nine-tv-node.mill:after{inset:-18%;background:rgba(232,182,50,.38);box-shadow:0 0 24px rgba(232,182,50,.32)}.nine-tv-result{position:absolute;left:50%;top:50%;z-index:12;display:flex;width:64%;min-height:36%;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px;translate:-50% -50%;border:4px solid var(--gold);border-radius:24px;background:rgba(16,20,38,.94);color:#fff;text-align:center;box-shadow:0 20px 55px rgba(16,20,38,.38)}.nine-tv-result>b{color:var(--gold);font-size:62px;line-height:.8}.nine-tv-result>span{font-size:20px;font-weight:950}.nine-tv-result>small{color:rgba(255,255,255,.68);font-size:10px;font-weight:850}.nine-tv-result.winner{border-color:var(--green);animation:winner-pulse .7s ease-in-out infinite alternate}.nine-tv-copy{display:flex;min-width:0;flex-direction:column;gap:8px}.nine-tv-copy h1{margin:2px 0 4px;font-size:clamp(38px,4vw,66px)}.nine-tv-copy .stage-copy{margin:0 0 3px;font-size:clamp(17px,1.45vw,24px)}.nine-rule-strip{display:flex;flex-wrap:wrap;gap:5px}.nine-rule-strip span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:7px;font-weight:950}.nine-tv-clocks{display:grid;gap:7px}.nine-tv-clock{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:10px 12px;border:1px solid var(--line);border-left:8px solid var(--pink);border-radius:14px;background:var(--surface)}.nine-tv-clock.black{border-left-color:var(--cyan)}.nine-tv-clock>span{display:flex;min-width:0;flex-direction:column}.nine-tv-clock small{color:var(--muted);font-size:7px;font-weight:950;letter-spacing:.1em}.nine-tv-clock span>b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.nine-tv-clock>strong{font-size:22px}.nine-tv-clock>em{grid-column:1/-1;color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.nine-tv-clock.active{border-color:var(--gold);background:var(--table);color:#fff;box-shadow:0 0 0 2px var(--gold)}.nine-tv-clock.active small,.nine-tv-clock.active>em{color:rgba(255,255,255,.61)}.nine-tv-clock.winner{border-width:3px;background:rgba(21,159,112,.1)}.nine-tv-ledger{display:grid;grid-template-columns:1fr 1fr;gap:5px}.nine-tv-ledger>span{display:flex;min-width:0;min-height:54px;flex-direction:column;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-align:center}.nine-tv-ledger small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.08em}.nine-tv-ledger b{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.nine-tv-offer{padding:9px 11px;border:2px solid var(--gold);border-radius:12px;background:#fff8d8;color:#8c6315;font-size:9px;font-weight:950;text-align:center;letter-spacing:.08em}@media(max-height:800px) and (min-width:901px){.nine-tv-show{gap:20px}.nine-tv-board{width:min(100%,430px);border-width:20px}.nine-tv-copy{gap:4px}.nine-tv-copy h1{font-size:42px}.nine-tv-copy .stage-copy{font-size:16px}.nine-tv-clock{padding:6px 8px}.nine-tv-clock>strong{font-size:17px}.nine-tv-ledger>span{min-height:42px}}@media(max-width:900px){.nine-tv-show{grid-template-columns:1fr}.nine-tv-board{width:min(540px,90vw)}.nine-tv-copy{text-align:center}.nine-rule-strip{justify-content:center}}@media(min-width:2560px){.nine-tv-show{grid-template-columns:minmax(1120px,1.28fr) minmax(600px,.72fr);gap:76px}.nine-tv-board{width:min(100%,1450px);border-width:96px}.nine-tv-piece>b{font-size:52px}.nine-tv-copy{gap:16px}.nine-tv-copy h1{font-size:88px}.nine-tv-copy .stage-copy{font-size:34px}.nine-rule-strip span{padding:12px 16px;font-size:14px}.nine-tv-clock{padding:20px 24px;border-left-width:16px;border-radius:28px}.nine-tv-clock small,.nine-tv-clock>em{font-size:14px}.nine-tv-clock span>b{font-size:22px}.nine-tv-clock>strong{font-size:44px}.nine-tv-ledger>span{min-height:108px;border-radius:22px}.nine-tv-ledger small{font-size:12px}.nine-tv-ledger b{font-size:24px}.nine-tv-offer{padding:18px 22px;border-radius:24px;font-size:18px}.nine-tv-result{padding:36px;border-width:8px;border-radius:48px}.nine-tv-result>b{font-size:124px}.nine-tv-result>span{font-size:40px}.nine-tv-result>small{font-size:20px}}@media(prefers-reduced-motion:reduce){.nine-tv-piece,.nine-tv-result.winner{animation:none!important}}

.nine-tv-board>svg,.nine-stones-board>svg{inset:0!important;width:100%!important;height:100%!important}
.nine-stones-meta em{white-space:normal;line-height:1.08}

/* Nine Stones · original pearl-inlaid heritage board */
.nine-stones-board{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border:10px solid var(--ink);border-radius:24px;background:radial-gradient(circle at 18% 20%,rgba(255,75,120,.16),transparent 28%),radial-gradient(circle at 82% 76%,rgba(32,184,204,.16),transparent 30%),#f8ecd3;box-shadow:inset 0 0 0 3px var(--gold),0 14px 30px rgba(16,20,38,.2)}.nine-stones-board>svg{position:absolute;inset:6%;width:88%;height:88%;overflow:visible}.nine-stones-board>svg line{stroke:#29354a;stroke-width:1.3;stroke-linecap:round}.nine-stones-node{position:absolute;z-index:2;display:grid;width:10.5%;aspect-ratio:1;place-items:center;padding:0;translate:-50% -50%;left:var(--x);top:var(--y);border:0;border-radius:50%;background:transparent;color:var(--ink)}.nine-stones-node:disabled{opacity:1}.nine-stones-node>i{display:block;width:34%;aspect-ratio:1;border:2px solid #31445a;border-radius:50%;background:#b8dce0;box-shadow:0 1px 0 #fff}.nine-stones-node>small{position:absolute;left:50%;top:91%;translate:-50% 0;color:rgba(16,20,38,.55);font-size:6px;font-weight:950}.nine-stones-piece{position:relative;display:grid;width:86%;aspect-ratio:1;place-items:center;border:3px solid #a9782d;border-radius:50%;background:var(--surface);box-shadow:0 5px 9px rgba(16,20,38,.3);color:var(--ink);transition:scale .18s ease,box-shadow .18s ease}.nine-stones-piece.black{border-color:var(--cyan);background:var(--table);color:#fff}.nine-stones-piece b{font-size:clamp(9px,3vw,14px);font-weight:1000}.nine-stones-node.target>i{width:48%;border-color:var(--gold);background:var(--gold);box-shadow:0 0 0 5px rgba(232,182,50,.2)}.nine-stones-node.removable .nine-stones-piece{box-shadow:0 0 0 4px var(--pink),0 5px 9px rgba(16,20,38,.3);animation:winner-pulse .55s ease-in-out infinite alternate}.nine-stones-node.selected .nine-stones-piece{box-shadow:0 0 0 4px var(--gold),0 5px 9px rgba(16,20,38,.3);scale:1.08}.nine-stones-node.destination>i{width:56%;border-color:var(--gold);background:var(--gold);box-shadow:0 0 0 6px rgba(232,182,50,.2)}.nine-stones-node.last:after,.nine-stones-node.mill:after{position:absolute;inset:-7%;z-index:-1;border-radius:50%;background:rgba(32,184,204,.25);content:""}.nine-stones-node.mill:after{inset:-15%;background:rgba(232,182,50,.34)}.nine-stones-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px}.nine-stones-meta>span{display:flex;min-width:0;min-height:55px;flex-direction:column;justify-content:center;padding:7px 9px;border:1px solid var(--line);border-top:4px solid var(--pink);border-radius:12px;background:var(--surface)}.nine-stones-meta>span.black{border-top-color:var(--cyan)}.nine-stones-meta>span.active{border-color:var(--gold);background:var(--table);color:#fff}.nine-stones-meta small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.08em}.nine-stones-meta>span.active small,.nine-stones-meta>span.active em{color:rgba(255,255,255,.62)}.nine-stones-meta b{font-size:17px}.nine-stones-meta em{overflow:hidden;color:var(--muted);font-size:6px;font-style:normal;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.nine-stones-info{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.nine-stones-info>span{display:flex;min-width:0;min-height:48px;flex-direction:column;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.nine-stones-info small{color:var(--muted);font-size:6px;font-weight:950;letter-spacing:.08em}.nine-stones-info b{max-width:100%;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.nine-stones-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.nine-stones-actions .button{min-height:45px!important;margin:0!important;padding:8px!important;text-align:center!important}.nine-stones-actions .accept{border-left-color:var(--green)!important}.nine-stones-actions .resign{border-left-color:var(--pink)!important;color:var(--pink)}.nine-stones-help{margin:0;padding:9px 11px;border-radius:13px;background:rgba(232,182,50,.11);color:var(--muted);font-size:10px;font-weight:750;line-height:1.38}.nine-stones-result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;border:2px solid var(--gold);border-radius:20px;background:linear-gradient(145deg,#fff9e8,#fff);text-align:center}.nine-stones-result>div{color:var(--gold);font-size:46px;line-height:1}.nine-stones-result>small{color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.1em}.nine-stones-result>b{font-size:22px}.nine-stones-result>span{color:var(--muted);font-size:10px;font-weight:800}.nine-stones-result.winner{border-color:var(--green);background:linear-gradient(145deg,rgba(21,159,112,.11),#fff)}@media(max-width:360px){.controller-page.nine-stones-controller-active{display:block;padding:8px}.nine-stones-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:17px;border-radius:22px}.nine-stones-board{border-width:8px}.nine-stones-piece{border-width:2px}.nine-stones-piece b{font-size:8px}}@media(prefers-reduced-motion:reduce){.nine-stones-piece,.nine-stones-node,.nine-stones-node.removable .nine-stones-piece{transition:none!important;animation:none!important}}

/* Tawla phone controller — direct source-to-destination touch table. */
.controller-tawla-hud{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.controller-tawla-faces{display:flex;align-items:center;gap:7px;min-width:0}.controller-tawla-faces .tawla-die{width:42px;height:42px;padding:6px;border-radius:10px;box-shadow:none}.controller-tawla-ready{font-size:16px;letter-spacing:.08em}
.controller-tawla-stats{display:grid;grid-template-columns:repeat(2,56px);gap:6px}.controller-tawla-stats>i{display:flex;min-height:42px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:10px;background:var(--cream);font-style:normal}.controller-tawla-stats small{color:var(--muted);font-size:7px;font-weight:900;letter-spacing:.08em}.controller-tawla-stats b{font-size:17px;line-height:1.1}
.controller-tawla-guide{min-height:20px;margin:0;padding:9px 11px;border-radius:10px;background:rgba(232,182,50,.12);color:var(--muted);font-size:11px;font-weight:800;line-height:1.35}
.controller-tawla-playfield{display:grid;gap:8px;padding:9px;border:3px solid var(--ink);border-radius:20px;background:#f2dfbf;overflow:hidden}
.controller-tawla-board.interactive{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,clamp(76px,21vw,96px));gap:2px;min-height:0;padding:0;border:0;border-radius:12px;background:transparent;box-shadow:none;overflow:hidden}
button.controller-tawla-point{min-width:0;margin:0;padding:4px 1px;border:0;border-radius:0;background:transparent;color:var(--ink);appearance:none;touch-action:manipulation}.controller-tawla-point:disabled{opacity:1;cursor:default}.controller-tawla-point-number{position:absolute;left:50%;z-index:3;translate:-50% 0;color:rgba(16,20,38,.6);font-size:7px;font-weight:900;line-height:1}.controller-tawla-point.top .controller-tawla-point-number{bottom:3px}.controller-tawla-point.bottom .controller-tawla-point-number{top:3px}
.controller-tawla-board.interactive .controller-tawla-point::before{transition:background-color .14s ease,filter .14s ease}.controller-tawla-point.legal-source{cursor:pointer}.controller-tawla-point.legal-source .controller-tawla-checker{box-shadow:0 0 0 3px var(--gold)}.controller-tawla-point.selected-source::before{background:#f2c35e!important;filter:brightness(1.04)}.controller-tawla-point.selected-source .controller-tawla-checker{box-shadow:0 0 0 4px var(--ink);translate:0 1px}
.controller-tawla-point.legal-target::after{position:absolute;left:50%;top:50%;z-index:4;width:15px;aspect-ratio:1;translate:-50% -50%;border:3px solid #fff;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(21,159,112,.25);content:""}.controller-tawla-point.hit-target::after{display:grid;place-items:center;background:var(--pink);color:#fff;content:"×";font-size:13px;font-weight:950;line-height:1}
.controller-tawla-specials{display:grid;grid-template-columns:1fr 1fr;gap:7px}.controller-tawla-special{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:0 9px;min-height:56px;padding:7px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left}.controller-tawla-special:disabled{opacity:.66}.controller-tawla-special small{grid-column:1;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em}.controller-tawla-special b{grid-column:1;grid-row:2;font-size:20px}.controller-tawla-special span{grid-column:2;grid-row:1/3;color:var(--muted);font-size:8px;font-weight:900;text-align:right}.controller-tawla-special.legal-source,.controller-tawla-special.legal-target{border:3px solid var(--gold);padding:5px 8px;opacity:1;cursor:pointer}.controller-tawla-special.legal-target{border-color:var(--green);background:rgba(21,159,112,.1)}.controller-tawla-special.selected-source{border-color:var(--ink);background:var(--gold);color:var(--ink)}
.controller-tawla-die-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px;border:1px solid var(--gold);border-radius:12px;background:var(--cream)}.controller-tawla-die-picker>small{grid-column:1/-1;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em}.tawla-die-choice{min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-weight:900}.tawla-die-choice.hit{border-color:var(--pink);color:var(--pink)}
.controller-tawla-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.controller-tawla-actions .tawla-table-action{margin:0!important;text-align:center!important}.controller-tawla-actions .tawla-table-action:only-child{grid-column:1/-1}.controller-tawla-actions .danger{color:var(--pink)}.controller-tawla-actions .fallback{grid-column:1/-1;min-height:46px!important;font-size:11px!important}
@media(max-width:360px){.controller-page.tawla-controller-active{padding:8px}.tawla-controller-active .controller-shell{width:100%;min-height:calc(100vh - 16px);padding:15px}.controller-tawla-board.interactive{grid-template-rows:repeat(2,72px)}.controller-tawla-playfield{padding:7px}.controller-tawla-checker{width:14px;height:14px}.controller-tawla-stats{grid-template-columns:repeat(2,48px)}}
@media(prefers-reduced-motion:reduce){.controller-tawla-board.interactive .controller-tawla-point::before{transition:none!important}}

/* Baraz receiving: readable card decisions, physical order in either locale. */
.baraziliya-hand,.baraziliya-plan small,.baraziliya-layoff small{direction:ltr;unicode-bidi:isolate}
.baraziliya-hand-header>span{font-size:11px;letter-spacing:0}
.baraziliya-hand-header>button{min-height:44px;min-width:44px;font-size:11px;padding:7px 9px}
.baraziliya-private-meta>span{font-size:10px;letter-spacing:0;min-height:76px}
.baraziliya-private-meta small{font-size:10px;white-space:normal;line-height:1.35;overflow-wrap:anywhere}
.baraziliya-progress small{font-size:10px;letter-spacing:0}
.baraziliya-plan,.baraziliya-layoff{min-height:72px!important}
.baraziliya-plan b,.baraziliya-layoff b{font-size:16px;line-height:1.35}
.baraziliya-plan small,.baraziliya-layoff small{font-size:13px;white-space:normal;overflow:visible;line-height:1.5}
.baraziliya-pile>small,.baraziliya-pile>b{font-size:11px;white-space:normal;line-height:1.3}
.baraziliya-help{font-size:13px;line-height:1.5}

/* Direct card composition uses the same private-table material as the app. */
.baraz-touch{display:grid;gap:12px;padding:14px;border:1px solid var(--gold);border-radius:18px;background:var(--table);color:#fff;min-width:0}
.baraz-touch h2,.baraz-touch h3,.baraz-touch p{margin:0;line-height:1.4}
.baraz-touch h2{font-size:22px}.baraz-touch h3{font-size:14px}.baraz-touch-round{font-size:13px}
.baraz-touch-dock{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
html #controls .baraz-object-pile{display:block;min-width:44px;min-height:160px;padding:12px;border:2px solid var(--primary);border-radius:16px;background:var(--surface);color:var(--ink);opacity:1;cursor:pointer;transition:transform .12s ease-out,background-color .12s ease-out}
.baraz-pile-content{display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr);grid-template-rows:86px auto auto;gap:6px;place-items:center;pointer-events:none}
html #controls .baraz-object-pile:disabled{border-color:var(--line);opacity:1;cursor:default}
html #controls .baraz-object-pile strong{font-size:15px;line-height:1.3;color:var(--ink);font-weight:700;text-align:center;max-width:100%;min-width:0}
html #controls .baraz-object-pile small{font-size:13px;line-height:1.3;color:var(--muted);text-align:center;letter-spacing:0;max-width:100%;min-width:0}
.baraz-pile-material{display:grid;place-items:center;width:56px;height:80px;pointer-events:none;direction:ltr}.baraz-pile-material svg{display:block;width:100%;height:100%}.baraz-empty-pile{font-size:32px;color:var(--muted)}
html #controls .baraz-object-pile:active:not(:disabled){transform:scale(.97);background:var(--primary-soft)}
@media(prefers-reduced-motion:reduce){html #controls .baraz-object-pile{transition:none}html #controls .baraz-object-pile:active:not(:disabled){transform:none}}
.baraz-touch .button{margin:0!important;min-height:48px;white-space:normal;overflow-wrap:anywhere;font-size:15px;text-align:center;padding:10px 12px}
.baraz-touch .baraziliya-hand-header>span{color:#fff}.baraz-touch .baraziliya-hand-header button{font-size:12px}
.baraz-touch-hand{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;direction:ltr}
.baraz-touch-hand .hand-playing-card{height:auto;aspect-ratio:.7;min-height:76px;border:2px solid transparent;transition:transform .12s ease-out,border-color .12s ease-out}
@media(max-width:360px){.baraz-touch-hand{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:600px){.baraz-touch-hand{grid-template-columns:repeat(7,minmax(0,1fr))}}
.baraz-touch-hand .hand-playing-card.selected{border-color:var(--gold);box-shadow:none;translate:0 -3px}
.baraz-touch-hand .hand-playing-card:is(.selected,.staged)::after{content:'✓';position:absolute;right:1px;top:1px;border-radius:50%;background:var(--gold);color:#fff;font-size:12px;line-height:18px;width:18px;height:18px}
html #controls .baraz-touch-hand .hand-playing-card:disabled{opacity:1}
.baraz-touch-hand .hand-playing-card.staged{opacity:1;border-color:var(--gold)}.baraz-touch-selection{font-size:14px}
.baraz-touch .baraziliya-help{background:rgba(255,255,255,.1);color:#fff;font-size:14px}
.baraz-touch-meld{display:grid;gap:6px;padding:9px;border:1px solid rgba(255,255,255,.25);border-radius:12px;min-width:0}
.baraz-touch-faces{display:flex;gap:4px;overflow-x:auto;min-width:0;direction:ltr;padding:2px}
.baraz-touch-faces .hand-playing-card{flex:0 0 44px;width:44px;min-width:44px;height:64px;min-height:64px}
.baraz-touch-assignment{position:absolute;bottom:0;left:0;right:0;padding:2px;background:var(--canvas);color:var(--ink);text-align:center;font-size:12px;line-height:1.2;direction:ltr}
.baraz-touch-meaning{font-size:12px}
.baraz-touch-groups{display:flex;gap:8px;overflow-x:auto;direction:ltr;padding:2px;min-width:0}
.baraz-touch-group{flex:0 0 172px;width:172px;min-height:142px;display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--canvas);color:var(--ink);text-align:start}
.baraz-touch-group[aria-expanded="true"]{border:2px solid var(--gold)}
.baraz-touch-group strong{font-size:14px}.baraz-touch-group small{font-size:12px}
.baraz-touch-fan{display:block;position:relative;width:144px;height:64px;direction:ltr}
.baraz-touch-fan .hand-playing-card{position:absolute;top:0;width:44px;min-width:44px;height:64px;min-height:64px}
.baraz-touch-detail:not([hidden]){display:grid;gap:8px}

.baraz-modern .diwaniya-cast{display:none!important}
.baraz-broadcast{height:100%;min-height:0;display:grid;grid-template-rows:auto auto auto auto minmax(100px,1fr) auto auto auto;gap:8px;color:var(--ink)}
.baraz-broadcast-supplies{margin:0;font-size:clamp(12px,1.2vw,28px);line-height:1.3;unicode-bidi:plaintext}
.baraz-broadcast-caption,.baraz-broadcast-status,.baraz-broadcast-roster,.baraz-broadcast-page{margin:0;font-size:clamp(14px,1.35vw,32px);line-height:1.3}
.baraz-broadcast h1{font-size:clamp(26px,3vw,68px);margin:0;line-height:1.1}.baraz-broadcast h2{font-size:clamp(14px,1.4vw,34px);margin:0;line-height:1.2}
.baraz-broadcast-table{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;min-height:0}
.baraz-broadcast-meld{display:grid;grid-template-rows:auto minmax(24px,1fr) auto;gap:3px;min-height:0;padding:8px;background:var(--table);color:#fff;border:1px solid var(--line);border-radius:14px;text-align:center}
.baraz-broadcast-meld p{margin:0;font-size:clamp(12px,1.1vw,26px)}
.baraz-broadcast-cards{display:flex;justify-content:center;gap:3px;min-height:0;direction:ltr}
.baraz-broadcast-card{height:100%;aspect-ratio:7/10;min-width:0;max-width:7%;position:relative;display:block}.baraz-broadcast-card svg{width:100%;height:100%;display:block}.baraz-broadcast-card small{position:absolute;bottom:0;left:0;right:0;font-size:clamp(11px,.95vw,24px);background:var(--canvas);color:var(--ink)}
.baraz-broadcast-scores{display:grid;grid-template-columns:1fr 1fr;gap:8px}.baraz-broadcast-scores article{padding:6px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-align:center}.baraz-broadcast-scores strong{font-size:clamp(22px,2.5vw,58px)}.baraz-broadcast-scores p{margin:0;font-size:clamp(13px,1.2vw,28px)}.baraz-broadcast-scores .winner{border-color:var(--primary);color:var(--primary)}
.baraz-broadcast-empty{font-size:clamp(24px,3vw,64px);text-align:center;align-self:center;margin:0}.baraz-broadcast-meld.accepted-meld{animation:baraz-accepted .24s ease-out}@keyframes baraz-accepted{from{opacity:.5}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.baraz-broadcast-meld.accepted-meld{animation:none}}
/* The TV uses its bounded stage, not the physical display's width, for type.
   Compact results must reserve two real card rows before decorative spacing. */
html .host-page #stage:has(>.baraz-broadcast){padding:clamp(8px,1.2cqw,28px);container-type:size}
html .host-page #stage .baraz-broadcast{gap:clamp(3px,.7cqh,10px);grid-template-rows:auto auto auto auto minmax(0,1fr) auto auto auto}
html .host-page #stage .baraz-broadcast h1{font-size:clamp(22px,3.2cqw,72px);line-height:1.1;max-width:none}
html .host-page #stage .baraz-broadcast h2{font-size:clamp(12px,1.45cqw,34px);line-height:1.2}
html .host-page #stage :is(.baraz-broadcast-caption,.baraz-broadcast-status,.baraz-broadcast-roster,.baraz-broadcast-page){font-size:clamp(12px,1.4cqw,32px);line-height:1.2}
html .host-page #stage .baraz-broadcast-supplies{font-size:clamp(11px,1.25cqw,28px);line-height:1.2}
html .host-page #stage .baraz-broadcast-meld{padding:clamp(3px,.6cqh,8px)}
html .host-page #stage .baraz-broadcast-meld{background:var(--dw-ink,#183e46)}
html .host-page #stage .baraz-broadcast-table:has(>.baraz-broadcast-meld:only-child){grid-template-rows:minmax(0,1fr)}
html .host-page #stage .baraz-broadcast-meld p{font-size:clamp(11px,1.15cqw,26px);line-height:1.2}
html .host-page #stage .baraz-broadcast-scores article{padding:3px 8px}
html .host-page #stage .baraz-broadcast-scores strong{font-size:clamp(20px,2.4cqw,58px);line-height:1.1}
html .host-page #stage .baraz-broadcast-scores p{font-size:clamp(11px,1.25cqw,28px);line-height:1.2}
@media(max-height:540px){
 html body.host-page.baraz-modern #narratorRail{min-height:24px;max-height:32px;padding:3px 8px}
 html .host-page #stage .baraz-broadcast{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto minmax(0,1fr) auto auto}
 html .host-page #stage .baraz-broadcast-caption{grid-area:1/1}
 html .host-page #stage .baraz-broadcast>h1{grid-area:1/2;font-size:22px}
 html .host-page #stage .baraz-broadcast-status{grid-area:2/1/3/-1}
 html .host-page #stage .baraz-broadcast-supplies{grid-area:3/1/4/-1}
 html .host-page #stage .baraz-broadcast-table{grid-area:4/1/5/-1}
 html .host-page #stage .baraz-broadcast-scores{grid-area:5/1/6/-1}
 html .host-page #stage .baraz-broadcast-roster{grid-area:6/1;font-size:10.5px}
 html .host-page #stage .baraz-broadcast-page{grid-area:6/2;font-size:10.5px}
 html .baraz-modern .host-brand>span{display:none}
 html .baraz-modern .host-topbar{flex-wrap:nowrap;gap:8px}
 html .baraz-modern .tv-narrator{min-height:24px;max-height:32px;padding:4px 8px;grid-template-columns:auto minmax(0,1fr);overflow:hidden}
 html .baraz-modern .tv-narrator b{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
 html .baraz-modern .tv-narrator small{display:none}
}
.baraz-touch-score,.baraz-touch-scores{font-size:15px;font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.baraz-touch-hand .hand-playing-card{transition:none!important;translate:none!important}}
