/* CARD DECK — gold arena. Card suits retain their distinct colors. */
:root{color-scheme:dark;--gold:#f4cc72;--ink:#f3efe5;--muted:#aaa99f;--line:#38362e;--green:#f4cc72;background:#0b0c0e;color:var(--ink)}
body{background:radial-gradient(ellipse at 50% 0,#bc8b2514,transparent 55%),#0b0c0e;color:var(--ink)}
header{height:82px;background:#101113;border-image:none;border-top:3px solid #d9af56;border-bottom:1px solid #383125}
.brand{color:#fff4d8}.brand-icon{background:linear-gradient(145deg,#ffe8a7,#c39435);color:#15130d;box-shadow:3px 3px 0 #6e5427}.brand small{color:var(--gold)}
.header-note,.connection{color:#b4b4a8}.connection:before{background:#cbe797}.eyebrow{color:#c9ad71}
h1,h2,h3{color:#f6f2e8}button{font-weight:650}button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#ffe4a0}
.primary,#deal{background:linear-gradient(110deg,#ffe3a0,#e9ba51);color:#17140d;border:1px solid #ffe2a0;box-shadow:0 4px 18px #d7a43620}
.secondary{background:#232321;color:#f3d79a;border-color:#635333}.quiet{color:#e7c681}.primary:hover:not(:disabled),#deal:hover:not(:disabled){filter:brightness(1.1)}
input,textarea,select{background:#141517;border-color:#454237;color:#f4efdf;color-scheme:dark}input:focus,textarea:focus,select:focus{outline-color:#edc66d}input::placeholder,textarea::placeholder{color:#95968e}
.tabs{border-color:#38362e}.tabs button.active{color:var(--gold);border-color:var(--gold)}.entry{gap:58px;margin-top:36px}.entry-form{background:linear-gradient(135deg,#1d1d1a,#111214);border:1px solid #4c4029;border-radius:22px;padding:30px;box-shadow:0 20px 60px #0004}
.entry-art{background:radial-gradient(ellipse at 50% 65%,#51432a,#191a19 62%,#0f1012);border:1px solid #68512d;box-shadow:inset 0 0 0 7px #ffffff03,0 20px 50px #0004}
.entry-art:before{content:'♠';position:absolute;right:12px;top:10px;font-size:230px;line-height:1;color:#eec46508;pointer-events:none}.entry-art h1{font-size:48px;letter-spacing:-2px;color:#fff2d2}.entry-art p{color:#c4beb0}.entry-art .eyebrow{color:var(--gold)}.entry-art .suit-legend>span{background:#fff5dd}.small-rule{border-color:#6a5634;color:#d1ac60}.small-rule b{color:#f5e3bd}
.workspace{margin-top:24px}.room-bar h1{font-weight:850;letter-spacing:-1px}.room-code{background:#181917;border:1px solid #685431;box-shadow:inset 0 1px 0 #eac66d13}.room-code strong{color:#ffe0a0}.room-code>span{color:#c2b28f}.steps{margin:20px 0 16px;border-color:#37342b}.steps span{color:#96978e}.steps .current{color:#f4d38c}.steps b{border-color:#555044}.steps .current b{background:#e8c069;color:#17140e;border-color:#e8c069}
.qr-disclosure{background:#151618;border-color:#38362e;padding:10px 15px}.qr-disclosure summary{color:#d9bd80}.room-qr{background:#191a1b;border-color:#4e4431}.qr-image{border-radius:12px;overflow:hidden;background:white}.room-qr p{color:#b8b5aa}.room-qr a,.room-qr strong{color:#f1ce82}
.game-pulse{background:linear-gradient(100deg,#1f201c,#141517);border-color:#48412f;box-shadow:0 6px 24px #0002;padding:12px 18px;margin-bottom:18px}.game-pulse strong{color:#ffe1a0}.game-pulse .suit-legend>span{background:#fff3d7}.game-pulse .active-rule{border-color:#4b412d}.active-rule b{color:#ebd5a7}
.table-panel,.results-panel,.rule-panel{background:#17181a;border-color:#3d392f;box-shadow:0 8px 28px #0002}.compact-host .table-panel{background:radial-gradient(ellipse at top,#30291c55,transparent 70%),#151618;border:1px solid #51432d}.section-heading .eyebrow{color:#c7a661}.badge{background:#383022;color:#f9d98e}
.compact-host>.deal-panel{background:linear-gradient(110deg,#27251d,#191a1b);border:1px solid #8e6c32;box-shadow:0 8px 24px #0008;backdrop-filter:blur(12px)}.compact-host #deal{background:linear-gradient(110deg,#ffe3a0,#e9ba51);color:#17140d;border-color:#ffe0a0;box-shadow:0 3px 15px #e8ba5125}.deal-panel{background:#1c1d1b;border-color:#52452b}.deal-panel .eyebrow{color:#d1af6b}.deck-count strong{color:#f5d38b}.deck-count span{color:#c2b7a0}.count-choices button{background:#131416;border-color:#5e5239;color:#d9c393}.count-choices .active{background:#f2cd79!important;border-color:#f2cd79!important;color:#17140d!important;box-shadow:0 0 0 2px #f2cd7920}.add-deck{background:#d6be78;color:#19160f}.rule-panel>.eyebrow{color:var(--gold)}.draft-note{color:#ffbd75}
.compact-host .team-tile{--team-color:#caab69;background:linear-gradient(140deg,#272723,#1a1b1d);border-color:#484438;border-top-color:#8d7441;box-shadow:inset 0 1px 0 #ffffff05}.compact-host .team-tile:nth-child(4n+2),.compact-host .team-tile:nth-child(4n+3),.compact-host .team-tile:nth-child(4n+4){--team-color:#caab69;background:linear-gradient(140deg,#272723,#1a1b1d)}.compact-host .team-tile:hover:not(:disabled){border-color:#d1ad61;background:#302c22}.compact-host .team-tile.selected{background:linear-gradient(145deg,#504126,#2b261a);border-color:#f3cf7a;box-shadow:inset 0 0 0 1px #f3cf7a,0 0 18px #e5b34c16}.compact-host .team-tile h3{color:#f5eddc}.compact-host .tile-bottom strong{color:#efd089}.compact-host .online-label{color:#b9b9aa}.compact-host .selection-dot{border-color:#76603a;color:#d2b674}.compact-host .selected .selection-dot{background:#f4ce7b;color:#1b170f;border-color:#f4ce7b}.tile-bottom>span,.event p{color:#c0bdaf}.history h3{color:#e0c389}.event{border-color:#343229}.event time{color:#aba083}.rule-panel select{background:#111315}.form-hint,.muted{color:#aaa99f}
.personal-total strong,.music-controls>span{color:#f4d08b}.standing-list>div{border-color:#3d382d}.locked-selection{background:#302b20;color:#f0d18d}.empty-state>span{color:#b49352}.card{color-scheme:light;background:#fffdf7;border-color:#ded3b8;box-shadow:0 5px 14px #0004}.card.picked{border-color:#ffc84f;box-shadow:0 0 0 2px #ffc84f,0 8px 24px #0007}.check{background:#e9c164;color:#17140d}.joker{background:linear-gradient(135deg,#fffef9,#f4e8cb)}.deck-tag{color:#796b53}
.arena-board{background:radial-gradient(ellipse at center,#363021,#1a1b19 70%);border:6px solid #55472d;box-shadow:inset 0 0 0 2px #caa65e45,inset 0 0 90px #0008,0 18px 48px #0005}.arena-heading .eyebrow{color:#dfbd76}.arena-heading h2{color:#ffe5ac}.arena-heading p{color:#baae93}.arena-seat{background:#10111285;border-color:#8e774c70}.arena-seat.on-table{background:linear-gradient(140deg,#50422a65,#161719aa);border-color:#dcb86c;box-shadow:0 0 20px #e9b85109}.arena-seat-title>span{color:#ebc774}.arena-help{background:#24221b;border:1px solid #635032;color:#c7bea9}.arena-help h2{color:#efd398}
.winner-banner{background:radial-gradient(ellipse at top,#79603355,#1c1b17 60%,#0f1113);border-color:#eac46d;box-shadow:inset 0 0 60px #d5a3480b,0 14px 45px #0005}.winner-banner h2{color:#ffdf91;text-shadow:0 3px 28px #f4c45b25}.winner-banner p{color:#cebd98}.results-panel{border-top-color:#e8c169}.result{background:#1c1d1b;border-color:#3f3b30}.result.winner{background:linear-gradient(110deg,#504125,#24211a);border-color:#e6bd60;box-shadow:0 8px 28px #0003}.result.winner .result-name div>span{color:#ffda81}.result-total{color:#edc775}.medal-rank-2{background:linear-gradient(110deg,#30343a,#1c1e20);border-color:#88939c}.medal-rank-3{background:linear-gradient(110deg,#3e2e23,#201b18);border-color:#aa774b}.wildcard-note{color:#c2b49b}
.workspace>.invite-box{background:#171819;border-color:#463e2d}.pin-list>div{background:#25241f}.pin-list code{color:#ffe0a1}.rules{border-color:#3d382c;color:#c2b9a5}.rules summary{color:#dbbf85}.saved-sessions{border-color:#453c2c}.room-found{background:#302a1d;color:#f3d08b}footer{color:#8e8d80}#notice{background:#f1d28e;color:#16140e;border:1px solid #ffe7b0}dialog{background:#1b1c1c;color:#ddd3bf;border:1px solid #9d7b3d;box-shadow:0 24px 100px #0008}dialog h2{color:#f5d38e}dialog::backdrop{background:#000b}
@media(max-width:780px){header{min-height:78px;height:auto}.entry{gap:24px;margin-top:24px}.entry-form{padding:22px}.entry-art{padding:26px}.entry-art h1{font-size:36px}.workspace{margin-top:18px}.arena-board{border-width:4px}.game-pulse{padding:12px}.compact-host>.deal-panel{background:#222119}.winner-banner{padding:30px 16px}}
/* Bright team identities remain consistent when the arena is ranked. */
[data-team-color="0"]{--team-tint:#fff0c4;--team-accent:#916214}
[data-team-color="1"]{--team-tint:#e0efff;--team-accent:#225ba3}
[data-team-color="2"]{--team-tint:#e2f5e7;--team-accent:#236d45}
[data-team-color="3"]{--team-tint:#ffe4eb;--team-accent:#a03658}
[data-team-color="4"]{--team-tint:#ede5ff;--team-accent:#6943a5}
[data-team-color="5"]{--team-tint:#ffead7;--team-accent:#a45821}
.compact-host .team-tile[data-team-color]{background:linear-gradient(140deg,#fff9,var(--team-tint));background-color:var(--team-tint);border:1px solid var(--team-accent);border-top:3px solid var(--team-accent);box-shadow:0 3px 9px #0002;color:#202832}
.compact-host .team-tile[data-team-color]:hover:not(:disabled){background:var(--team-tint);filter:brightness(1.04)}
.compact-host .team-tile[data-team-color].selected{background:var(--team-tint);border-color:#ffdb79;box-shadow:inset 0 0 0 2px var(--team-accent),0 0 0 2px #ffdb79}
.compact-host .team-tile[data-team-color] h3,.compact-host .team-tile[data-team-color] .tile-bottom strong{color:var(--team-accent)}
.compact-host .team-tile[data-team-color] .online-label{color:#4d5760}
.compact-host .team-tile[data-team-color] .selection-dot{border-color:var(--team-accent);color:var(--team-accent);background:#fff8}
.compact-host .team-tile[data-team-color].selected .selection-dot{background:var(--team-accent);color:white;border-color:var(--team-accent)}
.compact-host .team-tile .mini-hand{display:flex;position:absolute;right:10px;bottom:9px;height:26px;padding:0;pointer-events:none}
.compact-host .team-tile .mini-back{display:block;width:19px;height:26px;margin-left:-10px;background:url('/money.png') center/cover;border:1px solid #f6ebc8;border-radius:3px;transform:rotate(7deg);box-shadow:0 1px 3px #0004}
.compact-host .team-tile .empty-hand{display:none}
.arena-seat[data-team-color],.arena-seat[data-team-color].on-table{background:linear-gradient(145deg,#ffffffc0,var(--team-tint));background-color:var(--team-tint);border:2px solid var(--team-accent);box-shadow:0 6px 20px #0003;color:#283139}
.arena-seat[data-team-color] h3,.arena-seat[data-team-color] .arena-seat-title>span{color:var(--team-accent)}
.arena-seat[data-team-color].on-table{box-shadow:0 0 0 1px #efd083,0 6px 20px #0003}
