:root{--felt: #1a3a2f;--felt-deep: #0f241c;--wood: #c4a574;--wood-hot: #e0c089;--cream: #f3ebe0;--cream-dim: #c9bba8;--ink: #14201a;--danger: #d45c4a;--ok: #6fbf8a;--line: rgba(196, 165, 116, .28);--radius: 12px;--font-display: "Libre Baskerville", Georgia, serif;--font-ui: "Figtree", system-ui, sans-serif;--nav-h: 64px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-ui);font-size:16px;line-height:1.45;color:var(--cream);background:radial-gradient(120% 80% at 50% -10%,#2a5244 0%,transparent 55%),radial-gradient(90% 60% at 100% 100%,#163028 0%,transparent 45%),var(--felt);background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");z-index:0}#root{position:relative;z-index:1}a{color:var(--wood-hot);text-decoration:none}button,input,textarea{font:inherit}h1,h2,.brand{font-family:var(--font-display);font-weight:700;letter-spacing:.01em}.app-shell{min-height:100dvh;display:flex;flex-direction:column;max-width:28rem;margin:0 auto;padding:0 1rem calc(var(--nav-h) + 1rem)}.app-shell.no-nav{padding-bottom:1.5rem}.app-shell.app-shell-play{max-width:none;width:100%;margin:0;padding:0;height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}.app-shell.app-shell-play>.play-workspace{flex:1 1 auto;min-height:0;height:auto}.page{flex:1;display:flex;flex-direction:column;gap:1rem;padding-top:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1.1rem;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;font-weight:600;transition:background .15s ease,border-color .15s ease,transform .12s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--wood);color:var(--ink)}.btn-primary:hover{background:var(--wood-hot)}.btn-ghost{background:transparent;border-color:var(--wood);color:var(--cream)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}.confirm-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1rem;background:#08120eb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-modal{width:min(100%,24rem);padding:1.15rem 1.2rem 1.1rem;border-radius:calc(var(--radius) + 2px);border:1px solid var(--line);background:linear-gradient(165deg,#243e34fa,#0f241cfa);box-shadow:0 18px 48px #0006}.confirm-modal h2{margin:0 0 .45rem;font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:var(--cream)}.confirm-modal p{margin:0 0 1.1rem;color:var(--cream-dim);font-size:.95rem;line-height:1.45}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:.35rem}.field label{color:var(--cream-dim);font-size:.875rem;font-weight:500}.field input,.field textarea{min-height:44px;padding:.65rem .85rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--felt-deep);color:var(--cream)}.field input:focus,.field textarea:focus{outline:2px solid var(--wood);outline-offset:1px}.error{color:var(--danger);font-size:.9rem}.muted{color:var(--cream-dim);font-size:.9rem}.panel{background:#0f241cb8;border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);padding:.9rem}.list{display:flex;flex-direction:column;gap:.55rem}.list-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;border-radius:var(--radius);border:1px solid var(--line);background:#0f241c8c;min-height:48px}.stack{display:flex;flex-direction:column;gap:.75rem}.row{display:flex;gap:.5rem;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--line);font-size:.75rem;color:var(--wood-hot)}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translate(-50%);width:min(28rem,100%);height:var(--nav-h);display:grid;grid-template-columns:repeat(3,1fr);background:#0f241cf0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;padding-bottom:env(safe-area-inset-bottom)}.app-shell-play+.bottom-nav,.app-shell.app-shell-play .bottom-nav{left:0;transform:none;width:100%;max-width:none}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;color:var(--cream-dim);font-size:.75rem;font-weight:600}.bottom-nav a.active{color:var(--wood-hot);box-shadow:inset 0 2px 0 var(--wood)}.auth-page{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;gap:1.25rem;max-width:24rem;margin:0 auto;padding:2rem 1.25rem}.auth-brand{font-family:var(--font-display);font-size:2.75rem;margin:0;animation:brand-up .55s ease both}.auth-tag{margin:0;color:var(--cream-dim);animation:brand-up .55s ease .08s both}@keyframes brand-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.auth-brand,.auth-tag,.msg-enter{animation:none!important}}.chat-log{flex:1;min-height:220px;max-height:45dvh;overflow-y:auto;display:flex;flex-direction:column;gap:.55rem;padding:.25rem}.msg{padding:.55rem .7rem;border-radius:10px;background:#0f241ca6;border:1px solid transparent}.msg.mine{border-color:var(--line);background:#c4a5741f}.msg-enter{animation:msg-in .25s ease both}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.msg-meta{font-size:.75rem;color:var(--wood-hot);margin-bottom:.15rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem}.msg-time{margin-left:auto;color:var(--muted, rgba(232, 220, 198, .55));font-variant-numeric:tabular-nums;font-weight:400}.composer{display:flex;gap:.5rem;align-items:flex-end}.composer textarea{flex:1;min-height:44px;max-height:120px;resize:none;padding:.65rem .85rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--felt-deep);color:var(--cream)}.game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.game-tile{min-height:104px;border-radius:var(--radius);border:1px solid var(--line);background:#0f241c99;color:var(--cream);font-weight:600;cursor:default;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.28rem;padding:.7rem .5rem;text-align:center;transition:border-color .15s ease,background .15s ease,color .15s ease}.game-tile-icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;opacity:.95}.game-tile-icon img{display:block;width:2rem;height:2rem;object-fit:contain}.game-tile.status-coming_soon .game-tile-icon{opacity:.7}.game-tile.selectable:hover .game-tile-icon,.game-tile.selected .game-tile-icon{opacity:1}.game-tile.selectable{cursor:pointer}.game-tile.selectable:hover{border-color:var(--wood);background:#c4a5741a}.game-tile.selected{border-color:var(--wood);background:#c4a5742e}.game-tile-name{font-size:.95rem}.game-status-badge{font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.15rem .45rem;border-radius:999px;border:1px solid var(--line);color:var(--cream-dim)}.game-status-badge.coming_soon{color:var(--cream-dim);border-color:#c9bba859}.game-status-badge.available{color:var(--ok);border-color:#6fbf8a73}.game-tile .tally{font-size:.8rem;color:var(--wood-hot);transition:transform .2s ease}.game-players-meta{font-size:.72rem;font-weight:500;color:var(--cream-dim)}.sound-toggle{display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0;border:1px solid var(--line);background:#0f241c8c;color:var(--cream);border-radius:999px;padding:.35rem .7rem .35rem .55rem;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.sound-toggle:hover{border-color:#e0c0898c;background:#143026bf}.sound-toggle.on{color:var(--wood-hot);border-color:#e0c08973}.sound-toggle-icon{width:1.15rem;height:1.15rem;display:block}.sound-toggle-label{font-size:.78rem;font-weight:600;letter-spacing:.02em}@media(max-width:420px){.sound-toggle-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.sound-toggle{padding:.4rem;border-radius:50%}}.c4-root{position:relative;display:flex;flex-direction:column;gap:.85rem;height:100%;min-height:0;align-items:stretch;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease;overflow:hidden}.c4-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.c4-toolbar .c4-banner{flex:1;min-width:0}.c4-actions{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:auto;padding-bottom:.25rem}.c4-forfeit-hint{margin:0;font-size:.78rem;text-align:center}.c4-outcome-win{background:radial-gradient(120% 80% at 50% 0%,rgba(111,191,138,.55),transparent 55%),radial-gradient(90% 70% at 50% 100%,rgba(143,212,168,.28),transparent 50%),#1c48308c;box-shadow:inset 0 0 0 1px #8fd4a859;animation:c4-win-pulse 1.1s ease-out 1}.c4-outcome-lose{background:radial-gradient(120% 80% at 50% 0%,rgba(212,92,74,.42),transparent 55%),radial-gradient(90% 70% at 50% 100%,rgba(90,42,38,.45),transparent 50%),#2a12108c;box-shadow:inset 0 0 0 1px #d45c4a66;animation:c4-lose-shake .55s ease-out 1}.c4-outcome-draw{background:radial-gradient(120% 80% at 50% 0%,rgba(224,192,137,.35),transparent 55%),#28241866}@keyframes c4-win-pulse{0%{filter:brightness(1)}35%{filter:brightness(1.18)}to{filter:brightness(1)}}@keyframes c4-lose-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@media(prefers-reduced-motion:reduce){.c4-outcome-win,.c4-outcome-lose{animation:none}.c4-confetti{display:none!important}}.c4-fx{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:2}.c4-confetti{position:absolute;top:-12px;border-radius:2px;opacity:.95;animation-name:c4-confetti-burst;animation-timing-function:cubic-bezier(.2,.7,.3,1);animation-fill-mode:forwards;transform:rotate(var(--spin, 0deg))}.c4-confetti-fall{border-radius:50%;opacity:.75;animation-name:c4-ash-fall}@keyframes c4-confetti-burst{0%{transform:translateZ(0) rotate(var(--spin, 0deg)) scale(.6);opacity:0}12%{opacity:1}to{transform:translate3d(var(--drift, 0px),110vh,0) rotate(calc(var(--spin, 0deg) + 420deg)) scale(1);opacity:0}}@keyframes c4-ash-fall{0%{transform:translate3d(0,-10%,0) scale(.8);opacity:0}15%{opacity:.85}to{transform:translate3d(var(--drift, 0px),105vh,0) scale(.4);opacity:0}}.c4-banner{position:relative;z-index:3;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.6rem,3.5vw,2.4rem);letter-spacing:.04em;color:var(--wood-hot);line-height:1.15;transition:color .35s ease,text-shadow .35s ease,transform .35s ease}.c4-banner[data-turn=yes]{color:var(--cream);text-shadow:0 0 18px rgba(224,192,137,.35)}.c4-banner[data-outcome=win]{color:#d8ffe6;font-size:clamp(1.9rem,4.2vw,2.85rem);text-shadow:0 0 24px rgba(111,191,138,.75),0 2px 0 rgba(0,0,0,.25);animation:c4-banner-pop .45s ease-out 1}.c4-banner[data-outcome=lose]{color:#ffc4bc;font-size:clamp(1.9rem,4.2vw,2.85rem);text-shadow:0 0 22px rgba(212,92,74,.7),0 2px 0 rgba(0,0,0,.3);animation:c4-banner-drop .5s ease-out 1}.c4-banner[data-outcome=draw]{color:var(--wood-hot);font-size:clamp(1.8rem,4vw,2.6rem)}@keyframes c4-banner-pop{0%{transform:scale(.85);opacity:.4}60%{transform:scale(1.06)}to{transform:scale(1);opacity:1}}@keyframes c4-banner-drop{0%{transform:translateY(-8px);opacity:.3}to{transform:translateY(0);opacity:1}}.c4-scores{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.c4-score-card{display:flex;align-items:center;gap:.55rem;padding:.45rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:#0f241c8c}.c4-chip-sm{width:1.1rem;height:1.1rem;border-radius:50%;border:2px solid rgba(243,235,224,.35);flex-shrink:0}.c4-pick-row.selected{border-color:var(--wood);background:#c4a57429}.c4-board-wrap{display:flex;flex-direction:column;gap:.35rem;max-width:28rem;width:100%;margin:0 auto;flex:1;min-height:0}.c4-columns,.c4-board{display:grid;gap:.35rem}.c4-col-btn{border:0;background:transparent;padding:.15rem;min-height:44px;display:flex;align-items:center;justify-content:center;cursor:default}.c4-col-btn.active{cursor:pointer}.c4-col-btn.active:hover .c4-drop-chip{opacity:.95;transform:translateY(2px)}.c4-drop-chip{width:2.1rem;height:2.1rem;border-radius:50%;opacity:.45;border:2px solid rgba(243,235,224,.35);transition:opacity .15s ease,transform .15s ease}.c4-drop-spacer{width:2.1rem;height:2.1rem}.c4-board{background:linear-gradient(180deg,#2f6fbf,#1e4f96);border:1px solid rgba(180,210,255,.35);border-radius:calc(var(--radius) + 4px);padding:.55rem;box-shadow:inset 0 1px #ffffff1f}.c4-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center}.c4-hole{width:84%;height:84%;border-radius:50%;background:#081630e0;box-shadow:inset 0 2px 4px #0006}.c4-chip{width:84%;height:84%;border-radius:50%;border:2px solid rgba(243,235,224,.28);box-shadow:0 2px 6px #00000059}.game-table{align-items:stretch;text-align:left;justify-content:flex-start;height:100%;min-height:0}.game-table-header{flex-shrink:0}.game-table-header .muted{margin:.35rem 0 0}.game-table-grid{flex:1;min-height:0;overflow-y:auto;align-content:start;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}.admin-shell{max-width:40rem;margin:0 auto;padding:1rem 1rem 2rem}.admin-bar{display:flex;gap:.75rem;align-items:center;border-bottom:1px solid var(--line);padding-bottom:.75rem;margin-bottom:1rem}.admin-bar a{font-weight:600;color:var(--cream-dim)}.admin-bar a.active{color:var(--wood-hot)}.admin-setting-block{gap:.75rem}.admin-mode-row{display:flex;flex-wrap:wrap;gap:.55rem}.ok-msg{margin:0;color:var(--ok);font-weight:600}.play-workspace{display:grid;grid-template-columns:minmax(13rem,17rem) minmax(18rem,28rem) minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:100%;min-height:0;padding-bottom:var(--nav-h);box-sizing:border-box;transition:grid-template-columns .2s ease}.play-workspace.rooms-collapsed{grid-template-columns:3rem minmax(18rem,28rem) minmax(0,1fr)}.play-mobile-tabs{display:none;grid-column:1 / -1;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:#0f241cf0}.play-mobile-tabs button{min-height:44px;border:0;background:transparent;color:var(--cream-dim);font-weight:600;cursor:pointer}.play-mobile-tabs button.active{color:var(--wood-hot);box-shadow:inset 0 -2px 0 var(--wood)}.play-sidebar,.play-chat,.play-game{min-height:0;height:100%;max-height:100%;display:flex;flex-direction:column;align-self:stretch}.play-sidebar{border-right:1px solid var(--line);background:#0f241ceb;padding:.85rem .75rem;gap:.75rem;overflow:hidden}.play-sidebar-brand{display:flex;align-items:flex-start;justify-content:space-between;gap:.35rem;padding:0 .15rem .35rem}.play-sidebar-brand-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.play-sidebar-brand .brand{font-size:1.35rem}.sidebar-collapse-btn{flex-shrink:0;width:2.25rem;height:2.25rem;min-height:44px;min-width:44px;border-radius:var(--radius);border:1px solid var(--line);background:#0f241ca6;color:var(--wood-hot);font-size:1.1rem;line-height:1;cursor:pointer;font-weight:700}.sidebar-collapse-btn:hover{border-color:var(--wood);background:#c4a5741f}.play-sidebar-body{display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0;overflow:hidden}.play-workspace.rooms-collapsed .play-sidebar{padding:.5rem .25rem;align-items:center}.play-workspace.rooms-collapsed .play-sidebar-brand{flex-direction:column;align-items:center;padding:0;width:100%}.play-workspace.rooms-collapsed .play-sidebar-brand-text,.play-workspace.rooms-collapsed .play-sidebar-body{display:none}.play-workspace.rooms-collapsed .sidebar-collapse-btn{width:100%}.play-sidebar-section h3,.play-create-room label{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--cream-dim)}.play-room-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem;min-height:0}.room-nav-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem .75rem;border-radius:var(--radius);color:var(--cream);border:1px solid transparent;min-height:44px}.room-nav-item:hover{background:#c4a57414}.room-nav-item.active{border-color:var(--line);background:#c4a57424}.room-nav-item strong{display:block}.room-nav-label{display:flex;align-items:center;gap:.45rem;min-width:0}.room-unread-dot{width:.55rem;height:.55rem;border-radius:50%;background:#3ecf7a;box-shadow:0 0 0 2px #3ecf7a38;flex-shrink:0;animation:room-unread-pulse 1.8s ease-in-out infinite}@keyframes room-unread-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.92)}}@media(prefers-reduced-motion:reduce){.room-unread-dot{animation:none}}.room-meta{display:block;font-size:.75rem}.sidebar-invite{display:flex;flex-direction:column;gap:.45rem;padding:.65rem;border:1px solid var(--line);border-radius:var(--radius);background:#0f241c8c}.play-create-room{margin-top:auto;padding-top:.5rem;border-top:1px solid var(--line)}.play-create-room input{min-height:40px;padding:.55rem .7rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--felt-deep);color:var(--cream)}.play-chat{border-right:1px solid var(--line);background:#0f241c8c;padding:.85rem;gap:.65rem;overflow:hidden}.play-chat-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.play-chat-header h1{margin:0;font-size:1.25rem}.play-chat-header p{margin:.2rem 0 0}.play-error{margin:0}.people-toggle{white-space:nowrap}.play-people-panel{flex-shrink:0;max-height:30%;overflow-y:auto;padding:.65rem .75rem}.play-members{display:flex;flex-wrap:wrap;gap:.4rem}.member-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .55rem;border-radius:999px;border:1px solid var(--line);font-size:.8rem;color:var(--cream-dim)}.kick-btn{border:0;background:transparent;color:var(--danger);cursor:pointer;font-size:.75rem;font-weight:600;padding:0}.play-invite-pop{max-height:40%;overflow:auto}.play-chat-log{flex:1;max-height:none;min-height:0}.play-composer{flex-shrink:0}.play-game{background:radial-gradient(80% 60% at 70% 20%,rgba(196,165,116,.1),transparent 55%),#0a1c16b8;padding:1rem;overflow:auto;min-width:0}.game-panel-inner{min-height:100%;display:flex;flex-direction:column;gap:.85rem}.game-panel-idle,.game-panel-active{align-items:center;justify-content:center;text-align:center;padding:1.5rem}.game-panel-title{margin:0;font-size:1.35rem}.play-game-jump{display:none}@media(max-width:900px){.play-workspace,.play-workspace.rooms-collapsed{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);padding-bottom:var(--nav-h)}.play-workspace.rooms-collapsed .play-sidebar-brand-text,.play-workspace.rooms-collapsed .play-sidebar-body{display:flex}.play-workspace.rooms-collapsed .play-sidebar{padding:.85rem .75rem;align-items:stretch}.play-workspace.rooms-collapsed .sidebar-collapse-btn{display:none}.play-mobile-tabs{display:grid;grid-row:1}.play-sidebar,.play-chat,.play-game{display:none}.play-sidebar.mobile-show,.play-chat.mobile-show,.play-game.mobile-show{display:flex;grid-column:1;grid-row:2;border-right:0;height:100%;max-height:none}.play-game-jump{display:inline-flex}}@media(min-width:901px){.play-mobile-tabs{display:none!important}.play-sidebar,.play-chat,.play-game{grid-row:1;height:100%}}.uno-root{position:relative;display:flex;flex-direction:column;gap:.75rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.uno-must-play{margin:0;text-align:center;color:var(--wood-hot);font-weight:600}.uno-root.uno-your-turn{box-shadow:inset 0 0 0 2px #e0c0898c;border-radius:calc(var(--radius) + 4px);background:radial-gradient(120% 70% at 50% 0%,rgba(224,192,137,.18),transparent 55%)}.uno-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.uno-banner{flex:1;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.35rem,3.2vw,2rem);letter-spacing:.04em;color:var(--wood-hot);line-height:1.2}.uno-banner[data-turn=yes]{color:var(--cream);text-shadow:0 0 18px rgba(224,192,137,.45);animation:uno-turn-pulse 1.1s ease-in-out infinite}@keyframes uno-turn-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.uno-table{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;gap:.75rem;overflow:hidden}.uno-piles{display:flex;gap:1.25rem;align-items:flex-start;justify-content:center}.uno-draw-pile,.uno-discard-pile{display:flex;flex-direction:column;align-items:center;gap:.35rem;background:none;border:0;color:inherit;padding:0}.uno-draw-pile:disabled{opacity:.55;cursor:default}.uno-draw-pile:not(:disabled){cursor:pointer}.uno-pile-label{font-size:.75rem;color:var(--cream-dim);display:inline-flex;align-items:center;gap:.35rem}.uno-color-pip{width:.7rem;height:.7rem;border-radius:50%;border:1px solid rgba(243,235,224,.35)}.uno-hand{display:flex;flex-wrap:nowrap;gap:.35rem;overflow-x:auto;max-width:100%;padding:.5rem .25rem .75rem;min-height:6.5rem;align-items:flex-end}.uno-hand.active{padding-bottom:.35rem}.uno-hand.active .uno-card.playable{transform:translateY(-10px);box-shadow:0 6px 16px #00000059,0 0 0 2px #e0c089a6}.uno-card{position:relative;border:2px solid rgba(243,235,224,.35);border-radius:.55rem;flex-shrink:0;color:#f7f3ea;font-weight:800;box-shadow:0 3px 8px #0000004d;transition:transform .15s ease,box-shadow .15s ease}button.uno-card{cursor:pointer;padding:0}button.uno-card:disabled{cursor:default}.uno-card-md{width:3.4rem;height:5rem}.uno-card-lg{width:4.4rem;height:6.4rem}.uno-card-sm{width:2.4rem;height:3.5rem}.uno-card-corner{position:absolute;top:.25rem;left:.3rem;font-size:.7rem}.uno-card-corner.bottom{top:auto;left:auto;right:.3rem;bottom:.25rem;transform:rotate(180deg)}.uno-card-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:1.25rem}.uno-card-lg .uno-card-center{font-size:1.6rem}.uno-red{background:linear-gradient(160deg,#e74c3c,#c0392b)}.uno-yellow{background:linear-gradient(160deg,#f1c40f,#d4ac0d);color:#1a1a1a}.uno-green{background:linear-gradient(160deg,#2ecc71,#1e8449)}.uno-blue{background:linear-gradient(160deg,#3498db,#1f618d)}.uno-wild{background:conic-gradient(#e74c3c,#f1c40f,#2ecc71,#3498db,#e74c3c);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.55)}.uno-back,.uno-card.face-down{background:linear-gradient(145deg,#1b3a2e,#0f241c);color:var(--wood-hot)}.uno-card-back-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:.85rem;letter-spacing:.06em}.uno-color-pick{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:min(100%,22rem)}.uno-color-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;width:100%}.uno-color-btn{border:1px solid rgba(243,235,224,.3);border-radius:var(--radius);min-height:2.6rem;text-transform:capitalize;font-weight:700;color:#fff;cursor:pointer}.uno-color-btn.uno-yellow{color:#1a1a1a}.uno-actions{display:flex;justify-content:center;flex-shrink:0}.uno-spec-note{margin:0}.uno-turn-strip{flex-shrink:0;border-top:1px solid var(--line);background:#0a1c16e0;padding:.55rem .4rem .65rem;margin:0 -.15rem}.uno-turn-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem;padding:0 .25rem;font-size:.78rem}.uno-dir{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;border:1px solid var(--line);color:var(--wood-hot);font-weight:700}.uno-turn-list{list-style:none;margin:0;padding:0;display:flex;gap:.4rem;overflow-x:auto}.uno-turn-seat{display:flex;align-items:center;gap:.4rem;min-width:7.5rem;padding:.45rem .55rem;border-radius:10px;border:1px solid transparent;background:#0f241ca6}.uno-turn-seat.is-me{border-color:#e0c08959}.uno-turn-seat.is-turn{border-color:var(--wood-hot);background:#c4a5742e;box-shadow:0 0 0 1px #e0c08940;animation:uno-seat-glow 1.2s ease-in-out infinite}.uno-turn-seat.is-out{opacity:.45}@keyframes uno-seat-glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}.uno-turn-dot{width:.7rem;height:.7rem;border-radius:50%;flex-shrink:0}.uno-turn-text{display:flex;flex-direction:column;min-width:0;font-size:.78rem;line-height:1.2}.uno-turn-text strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uno-turn-count{color:var(--cream-dim);font-size:.7rem}.uno-uno-tag{color:var(--wood-hot);font-size:.68rem}.uno-turn-badge{margin-left:auto;font-size:.65rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);background:var(--wood-hot);border-radius:999px;padding:.15rem .4rem}@media(prefers-reduced-motion:reduce){.uno-banner[data-turn=yes],.uno-turn-seat.is-turn{animation:none}}.cr-root{position:relative;display:flex;flex-direction:column;gap:.7rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.cr-root.cr-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.16),transparent 55%)}.cr-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.cr-banner{flex:1;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.2rem,3vw,1.85rem);letter-spacing:.03em;color:var(--wood-hot);line-height:1.2}.cr-meta{display:flex;flex-wrap:wrap;gap:.5rem .85rem;justify-content:center;align-items:center;font-size:.82rem;color:var(--cream-dim)}.cr-wild-pill{border:1px solid rgba(224,192,137,.45);color:var(--wood-hot);border-radius:999px;padding:.15rem .55rem;font-weight:700;font-size:.75rem}.cr-table{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;gap:.65rem;overflow:hidden}.cr-piles{display:flex;gap:1.1rem;justify-content:center}.cr-pile-btn{display:flex;flex-direction:column;align-items:center;gap:.3rem;background:none;border:0;color:inherit;padding:0;cursor:pointer}.cr-pile-btn:disabled{opacity:.5;cursor:default}.cr-pile-label{font-size:.75rem;color:var(--cream-dim)}.cr-go-out-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:center}.cr-hand{display:flex;flex-wrap:nowrap;gap:.3rem;overflow-x:auto;max-width:100%;padding:.4rem .2rem .65rem;min-height:6.2rem;align-items:flex-end}.cr-hand.active .cr-card:not(:disabled){cursor:pointer}.cr-hand.active .cr-card:not(:disabled):hover{transform:translateY(-8px)}.cr-card{position:relative;flex-shrink:0;border:2px solid rgba(243,235,224,.35);border-radius:.5rem;background:linear-gradient(165deg,#f7f1e6,#e8dcc8);color:#1a1510;font-weight:800;box-shadow:0 3px 8px #00000047;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}button.cr-card{padding:0;cursor:pointer}button.cr-card:disabled{cursor:default}.cr-card-md{width:3.2rem;height:4.7rem}.cr-card-lg{width:4.2rem;height:6.1rem}.cr-card-sm{width:2.3rem;height:3.4rem}.cr-card-rank{position:absolute;top:.25rem;left:.3rem;font-size:.78rem}.cr-card-suit{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:1.35rem}.cr-card-wild-tag{position:absolute;right:.2rem;bottom:.2rem;font-size:.62rem;font-weight:800;color:#7a4e00}.cr-suit-hearts,.cr-suit-diamonds{color:#a63d40}.cr-suit-clubs,.cr-suit-spades{color:#1a1510}.cr-suit-stars{color:#8a6a12}.cr-suit-joker,.cr-wild{background:linear-gradient(165deg,#f3e0a8,#d4b45a)}.cr-card.selected{box-shadow:0 0 0 2px var(--wood-hot),0 6px 14px #00000059;transform:translateY(-10px)}.cr-card.dimmed{opacity:.4}.cr-card-back{background:linear-gradient(145deg,#3a2a12,#1a1208);color:var(--wood-hot)}.cr-card-back-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:.72rem;letter-spacing:.04em}.cr-scoring{max-width:22rem;margin:0 auto}.cr-score-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.cr-score-list li{display:flex;justify-content:space-between;gap:.75rem}.cr-score-card{position:absolute;right:.55rem;bottom:4.75rem;z-index:6;width:max-content;max-width:min(15.5rem,calc(100% - 1.1rem));max-height:min(42%,13.5rem);display:flex;flex-direction:column;padding:.5rem .6rem .55rem;border-radius:12px;border:1px solid rgba(196,165,116,.42);background:linear-gradient(165deg,#2a3a2cf5,#0f241cf0);box-shadow:0 10px 28px #00000059,inset 0 1px #e0c0891f}.cr-score-card-title{flex-shrink:0;font-family:var(--font-display);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--wood-hot);margin-bottom:.3rem}.cr-score-card-scroll{overflow:auto;min-height:0}.cr-score-card-table{width:100%;border-collapse:collapse;font-size:.72rem;text-align:center}.cr-score-card-table th,.cr-score-card-table td{padding:.14rem .35rem;white-space:nowrap}.cr-score-card-table thead th{font-weight:600;color:#e8dcc4e0}.cr-score-card-table tbody th{text-align:left;font-weight:500;color:#e8dcc49e}.cr-score-card-total th,.cr-score-card-total td{border-top:1px solid var(--line);font-weight:700;padding-top:.3rem}.cr-scoreboard{display:flex;gap:.4rem;overflow-x:auto;flex-shrink:0;border-top:1px solid var(--line);padding-top:.5rem}.cr-score-seat{display:flex;align-items:center;gap:.4rem;min-width:7.2rem;padding:.4rem .5rem;border-radius:10px;border:1px solid transparent;background:#0f241ca6;font-size:.78rem}.cr-score-seat.is-me{border-color:#e0c08959}.cr-score-seat.is-turn{border-color:var(--wood-hot);background:#c4a5742e}.cr-turn-dot{width:.65rem;height:.65rem;border-radius:50%;flex-shrink:0}.cr-actions{display:flex;justify-content:center;flex-shrink:0}.cr-pick{overflow:auto}.yz-root{position:relative;display:flex;flex-direction:column;gap:.6rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.yz-root.yz-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.16),transparent 55%)}.yz-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.yz-banner{flex:1;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.2rem,3vw,1.85rem);letter-spacing:.03em;color:var(--wood-hot);line-height:1.2}.yz-pick{overflow:auto}.yz-dice-row{display:flex;justify-content:center;gap:.45rem;flex-shrink:0}.yz-die{position:relative;width:clamp(2.6rem,13vw,3.4rem);aspect-ratio:1;border-radius:14%;border:1px solid rgba(20,32,26,.55);background:linear-gradient(160deg,#f8f2e7,#ded1bb);box-shadow:0 3px #00000047,inset 0 1px #ffffffb3;padding:0;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,border-color .2s ease}.yz-die:disabled{cursor:default}.yz-die.is-blank{background:#0f241c99;border-color:var(--line);box-shadow:none}.yz-die.is-held{border-color:var(--wood-hot);transform:translateY(3px);box-shadow:0 0 0 2px var(--wood-hot),inset 0 1px #fff9}.yz-pip{position:absolute;width:18%;height:18%;border-radius:50%;background:#14201a;transform:translate(-50%,-50%)}.yz-hold-tag{position:absolute;left:50%;bottom:.12rem;transform:translate(-50%);padding:0 .22rem;border-radius:4px;background:#14201ae0;font-size:.5rem;font-weight:700;letter-spacing:.08em;color:var(--wood-hot)}.yz-roll-row{display:flex;justify-content:center;flex-shrink:0;padding-top:.3rem}.yz-roll-btn{min-width:12rem}.yz-sheet-tabs{display:flex;gap:.35rem;overflow-x:auto;flex-shrink:0}.yz-tab{display:flex;align-items:center;gap:.35rem;white-space:nowrap;padding:.3rem .55rem;border-radius:999px;border:1px solid transparent;background:#0f241ca6;color:inherit;font-size:.76rem;cursor:pointer}.yz-tab.is-active{border-color:#e0c08980;background:#c4a57429}.yz-tab.is-turn{box-shadow:0 0 0 1px var(--wood-hot)}.yz-turn-dot{width:.6rem;height:.6rem;border-radius:50%;flex-shrink:0}.yz-scorecard{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:1fr;gap:.5rem;align-content:start}@media(min-width:30rem){.yz-scorecard{grid-template-columns:1fr 1fr}}.yz-section{display:flex;flex-direction:column;gap:.15rem;border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:#0f241cb8;padding:.45rem}.yz-section-title{font-family:var(--font-display);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--wood-hot);padding:0 .15rem .15rem}.yz-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.3rem .4rem;border-radius:8px;border:1px solid transparent;background:none;color:inherit;font-size:.82rem;text-align:left;cursor:default}.yz-row-label{color:var(--cream-dim)}.yz-row-value{font-variant-numeric:tabular-nums;font-weight:600}.yz-row.is-filled .yz-row-value{color:var(--cream)}.yz-row.is-legal{border-color:#e0c0894d}.yz-row.is-playable{cursor:pointer;background:#c4a5741f;border-color:var(--wood-hot)}.yz-row.is-playable .yz-row-label{color:var(--cream)}.yz-preview{color:var(--ok)}.yz-row-static{border-top:1px solid var(--line);border-radius:0;margin-top:.15rem}.yz-row-static .yz-row-label{font-size:.76rem}.yz-grand .yz-row-label,.yz-grand .yz-row-value{color:var(--wood-hot);font-weight:700}.yz-actions{display:flex;justify-content:center;flex-shrink:0}.ca-root{position:relative;display:flex;flex-direction:column;gap:.65rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.ca-root.ca-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.16),transparent 55%)}.ca-root.ca-frozen{box-shadow:inset 0 0 0 2px #64a0dc73}.ca-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.ca-banner{flex:1;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.1rem,2.8vw,1.7rem);letter-spacing:.03em;color:var(--wood-hot);line-height:1.2}.ca-meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;justify-content:center;font-size:.8rem;color:var(--cream-dim)}.ca-freeze-pill{border:1px solid rgba(120,170,230,.55);color:#9ec5ef;border-radius:999px;padding:.12rem .5rem;font-weight:700;font-size:.72rem}.ca-table{flex:1;min-height:0;display:flex;flex-direction:column;gap:.55rem;overflow:hidden}.ca-piles{display:flex;gap:1rem;justify-content:center;flex-shrink:0}.ca-pile-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:none;border:0;color:inherit;padding:0;cursor:pointer}.ca-pile-btn:disabled{opacity:.5;cursor:default}.ca-pile-btn.is-frozen .ca-card{box-shadow:0 0 0 2px #78aae6b3}.ca-pile-label{font-size:.72rem;color:var(--cream-dim)}.ca-melds{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;min-height:0;overflow:auto;flex:1}.ca-meld-team{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:#0f241cb8;padding:.4rem;min-height:0}.ca-meld-team-head{display:flex;justify-content:space-between;gap:.4rem;font-size:.78rem;margin-bottom:.3rem}.ca-meld-empty{margin:0;font-size:.75rem}.ca-meld-list{display:flex;flex-direction:column;gap:.3rem}.ca-meld{display:flex;flex-direction:column;gap:.2rem;width:100%;text-align:left;padding:.3rem;border-radius:8px;border:1px solid transparent;background:#0000002e;color:inherit;cursor:pointer}.ca-meld.is-target{border-color:var(--wood-hot)}.ca-meld.is-canasta{background:#c4a57424}.ca-meld-rank{font-size:.72rem;font-weight:700;color:var(--wood-hot)}.ca-meld-cards{display:flex;flex-wrap:wrap;gap:.15rem}.ca-hand-actions{display:flex;justify-content:center;gap:.45rem;flex-shrink:0}.ca-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem;overflow:auto;flex-shrink:0;max-height:7.5rem;padding:.2rem}.ca-hand.active .ca-card:not(:disabled){cursor:pointer}.ca-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;border-radius:8px;border:1px solid rgba(20,32,26,.45);background:linear-gradient(165deg,#f7f1e6,#ddd2be);color:#14201a;padding:.25rem .2rem;box-shadow:0 2px #00000040}button.ca-card{cursor:pointer}button.ca-card:disabled{cursor:default}.ca-card-md{width:2.55rem;height:3.5rem;font-size:.78rem}.ca-card-lg{width:3.2rem;height:4.4rem;font-size:.9rem}.ca-card-sm{width:1.55rem;height:2.15rem;font-size:.55rem;padding:.1rem}.ca-card-rank{font-weight:700;line-height:1}.ca-card-suit{font-size:1.05em;line-height:1}.ca-card-wild-tag{position:absolute;right:.15rem;bottom:.1rem;font-size:.55rem;font-weight:800;color:#8a5a12}.ca-suit-hearts,.ca-suit-diamonds,.ca-red-three{color:#b33a2b}.ca-suit-clubs,.ca-suit-spades{color:#14201a}.ca-suit-joker,.ca-wild{color:#6b4c16}.ca-card.selected{outline:2px solid var(--wood-hot);outline-offset:1px}.ca-card.dimmed{opacity:.4}.ca-card-back{background:linear-gradient(145deg,#2f5d50,#1a3a2f);color:var(--wood-hot);border-color:#e0c08959}.ca-card-back-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:.62rem;letter-spacing:.04em}.ca-scoring{max-width:22rem;margin:0 auto;flex-shrink:0}.ca-score-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.ca-score-list li{display:flex;justify-content:space-between;gap:.75rem}.ca-scoreboard{display:flex;gap:.4rem;overflow-x:auto;flex-shrink:0;border-top:1px solid var(--line);padding-top:.45rem}.ca-score-seat{display:flex;align-items:center;gap:.4rem;min-width:7rem;padding:.35rem .45rem;border-radius:10px;border:1px solid transparent;background:#0f241ca6;font-size:.76rem}.ca-score-seat.is-me{border-color:#e0c08959}.ca-score-seat.is-turn{border-color:var(--wood-hot);background:#c4a5742e}.ca-turn-dot{width:.6rem;height:.6rem;border-radius:50%;flex-shrink:0}.ca-actions{display:flex;justify-content:center;flex-shrink:0}.ca-pick{overflow:auto}.sp-root{position:relative;display:flex;flex-direction:column;gap:.6rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.sp-root.sp-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.16),transparent 55%)}.sp-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.sp-banner{flex:1;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.1rem,2.8vw,1.7rem);letter-spacing:.03em;color:var(--wood-hot);line-height:1.2}.sp-meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;justify-content:center;font-size:.8rem;color:var(--cream-dim)}.sp-broken-pill{border:1px solid rgba(224,192,137,.55);color:var(--wood-hot);border-radius:999px;padding:.12rem .5rem;font-weight:700;font-size:.72rem}.sp-score-strip{display:flex;gap:.45rem;justify-content:center;flex-shrink:0}.sp-team-chip{display:flex;flex-direction:column;gap:.1rem;min-width:8rem;padding:.35rem .55rem;border-radius:10px;border:1px solid var(--line);background:#0f241cb8;font-size:.78rem}.sp-bidding{max-width:26rem;margin:0 auto;flex-shrink:0}.sp-bid-status{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.sp-bid-seat{display:flex;align-items:center;gap:.35rem;font-size:.8rem}.sp-bid-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}.sp-bid-btn{padding:.35rem .2rem;font-size:.85rem;min-width:0}.sp-table{flex:1;min-height:0;display:flex;flex-direction:column;gap:.5rem;overflow:hidden}.sp-trick{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:.4rem;max-width:18rem;margin:0 auto;flex-shrink:0}.sp-trick-slot{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem;border-radius:10px;border:1px solid transparent;background:#0f241c8c}.sp-trick-slot.is-turn{border-color:var(--wood-hot)}.sp-slot-name{font-size:.7rem;color:var(--cream-dim)}.sp-slot-empty{width:2.55rem;height:3.5rem;border-radius:8px;border:1px dashed var(--line)}.sp-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:.28rem;overflow:auto;flex-shrink:0;max-height:7.5rem;padding:.2rem}.sp-hand.active .sp-card:not(:disabled){cursor:pointer}.sp-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;border-radius:8px;border:1px solid rgba(20,32,26,.45);background:linear-gradient(165deg,#f7f1e6,#ddd2be);color:#14201a;padding:.25rem .2rem;box-shadow:0 2px #00000040}button.sp-card{cursor:pointer}button.sp-card:disabled{cursor:default}.sp-card-md{width:2.55rem;height:3.5rem;font-size:.78rem}.sp-card-lg{width:3.2rem;height:4.4rem;font-size:.9rem}.sp-card-sm{width:1.55rem;height:2.15rem;font-size:.55rem;padding:.1rem}.sp-card-rank{font-weight:700;line-height:1}.sp-card-suit{font-size:1.05em;line-height:1}.sp-suit-hearts,.sp-suit-diamonds{color:#b33a2b}.sp-suit-clubs{color:#14201a}.sp-suit-spades,.sp-trump{color:#0d1a14}.sp-trump{box-shadow:0 0 0 1px #2c3e5059,0 2px #00000040}.sp-card.selected{outline:2px solid var(--wood-hot);outline-offset:1px}.sp-card.dimmed{opacity:.35}.sp-card-back{background:linear-gradient(145deg,#1a2a38,#0f1a24);color:var(--wood-hot);border-color:#e0c08959}.sp-card-back-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:1.4rem}.sp-scoring{max-width:24rem;margin:0 auto;flex-shrink:0}.sp-score-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.sp-score-list li{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.sp-scoreboard{display:flex;gap:.4rem;overflow-x:auto;flex-shrink:0;border-top:1px solid var(--line);padding-top:.45rem}.sp-score-seat{display:flex;align-items:center;gap:.4rem;min-width:7.5rem;padding:.35rem .45rem;border-radius:10px;border:1px solid transparent;background:#0f241ca6;font-size:.76rem}.sp-score-seat.is-me{border-color:#e0c08959}.sp-score-seat.is-turn{border-color:var(--wood-hot);background:#c4a5742e}.sp-turn-dot{width:.6rem;height:.6rem;border-radius:50%;flex-shrink:0}.sp-actions{display:flex;justify-content:center;flex-shrink:0}.sp-pick{overflow:auto}.ht-root{position:relative;display:flex;flex-direction:column;gap:.6rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.ht-root.ht-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.16),transparent 55%)}.ht-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.ht-banner{flex:1;margin:0;text-align:center;font-family:var(--font-display);font-size:clamp(1.1rem,2.8vw,1.7rem);letter-spacing:.03em;color:var(--wood-hot);line-height:1.2}.ht-meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;justify-content:center;font-size:.8rem;color:var(--cream-dim)}.ht-broken-pill{border:1px solid rgba(196,80,70,.55);color:#e8a39a;border-radius:999px;padding:.12rem .5rem;font-weight:700;font-size:.72rem}.ht-score-strip{display:flex;gap:.4rem;justify-content:center;flex-shrink:0;overflow-x:auto}.ht-seat-chip{display:flex;flex-direction:column;gap:.08rem;min-width:5.5rem;padding:.3rem .5rem;border-radius:10px;border:1px solid var(--line);background:#0f241cb8;font-size:.76rem}.ht-passing{max-width:24rem;margin:0 auto;flex-shrink:0}.ht-pass-status{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.ht-pass-seat{display:flex;align-items:center;gap:.35rem;font-size:.8rem}.ht-table{flex:1;min-height:0;display:flex;flex-direction:column;gap:.5rem;overflow:hidden}.ht-trick{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;max-width:18rem;margin:0 auto;flex-shrink:0}.ht-trick-slot{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem;border-radius:10px;border:1px solid transparent;background:#0f241c8c}.ht-trick-slot.is-turn{border-color:var(--wood-hot)}.ht-slot-name{font-size:.7rem;color:var(--cream-dim)}.ht-slot-empty{width:2.55rem;height:3.5rem;border-radius:8px;border:1px dashed var(--line)}.ht-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:.28rem;overflow:auto;flex-shrink:0;max-height:7.5rem;padding:.2rem}.ht-hand.active .ht-card:not(:disabled){cursor:pointer}.ht-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;border-radius:8px;border:1px solid rgba(20,32,26,.45);background:linear-gradient(165deg,#f7f1e6,#ddd2be);color:#14201a;padding:.25rem .2rem;box-shadow:0 2px #00000040}button.ht-card{cursor:pointer}button.ht-card:disabled{cursor:default}.ht-card-md{width:2.55rem;height:3.5rem;font-size:.78rem}.ht-card-lg{width:3.2rem;height:4.4rem;font-size:.9rem}.ht-card-sm{width:1.55rem;height:2.15rem;font-size:.55rem;padding:.1rem}.ht-card-rank{font-weight:700;line-height:1}.ht-card-suit{font-size:1.05em;line-height:1}.ht-suit-hearts,.ht-suit-diamonds,.ht-penalty{color:#b33a2b}.ht-suit-clubs,.ht-suit-spades{color:#14201a}.ht-qs{box-shadow:0 0 0 1px #b33a2b8c,0 2px #00000040}.ht-card.selected{outline:2px solid var(--wood-hot);outline-offset:1px}.ht-card.dimmed{opacity:.35}.ht-scoring{max-width:24rem;margin:0 auto;flex-shrink:0}.ht-score-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.ht-score-list li{display:flex;justify-content:space-between;gap:.75rem}.ht-scoreboard{display:flex;gap:.4rem;overflow-x:auto;flex-shrink:0;border-top:1px solid var(--line);padding-top:.45rem}.ht-score-seat{display:flex;align-items:center;gap:.4rem;min-width:7.2rem;padding:.35rem .45rem;border-radius:10px;border:1px solid transparent;background:#0f241ca6;font-size:.76rem}.ht-score-seat.is-me{border-color:#e0c08959}.ht-score-seat.is-turn{border-color:var(--wood-hot);background:#c4a5742e}.ht-turn-dot{width:.6rem;height:.6rem;border-radius:50%;flex-shrink:0}.ht-actions{display:flex;justify-content:center;flex-shrink:0}.ht-pick{overflow:auto}.ck-root{position:relative;display:flex;flex-direction:column;gap:.6rem;height:100%;min-height:0;overflow:hidden;border-radius:calc(var(--radius) + 4px);transition:background .55s ease,box-shadow .55s ease}.ck-root.ck-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.16),transparent 55%)}.ck-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;flex-shrink:0}.ck-banner{flex:1;margin:0;text-align:center}.ck-scores{display:flex;gap:.5rem;justify-content:center;flex-shrink:0}.ck-score-card{display:flex;align-items:center;gap:.45rem;min-width:8.5rem;padding:.35rem .55rem;border-radius:10px;border:1px solid var(--line);background:#0f241cb8;font-size:.8rem}.ck-score-card.is-me{border-color:#e0c08959}.ck-score-card.is-turn{border-color:var(--wood-hot);background:#c4a5742e}.ck-chip-sm{width:.85rem;height:.85rem;border-radius:50%;flex-shrink:0;border:1px solid rgba(243,235,224,.3)}.ck-board-wrap{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:.15rem}.ck-board{display:grid;width:min(100%,28rem);aspect-ratio:1;max-height:100%;border-radius:10px;overflow:hidden;border:3px solid #3a2418;box-shadow:0 8px 24px #00000059,inset 0 0 0 1px #e0c08926}.ck-square{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:none;padding:0;cursor:default;position:relative}.ck-square.is-light{background:#d8c4a0}.ck-square.is-dark{background:#5a3a28}.ck-square.is-last.is-dark{box-shadow:inset 0 0 0 2px #e0c0898c}.ck-square.is-selected{box-shadow:inset 0 0 0 3px var(--wood-hot)}.ck-square.is-target.is-dark{background:#6e4a32}.ck-square.is-movable{cursor:pointer}.ck-square:not(:disabled).is-target,.ck-square:not(:disabled).is-movable{cursor:pointer}.ck-square:disabled{cursor:default}.ck-piece{width:78%;height:78%;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid rgba(243,235,224,.35);box-shadow:0 2px 5px #0006,inset 0 2px 4px #ffffff2e}.ck-piece.is-king{box-shadow:0 2px 5px #0006,inset 0 0 0 3px #e0c089b3}.ck-crown{font-size:clamp(.7rem,3.2vw,1.05rem);line-height:1;color:#f0d78c;text-shadow:0 1px 1px rgba(0,0,0,.55)}.ck-target-dot{width:28%;height:28%;border-radius:50%;background:#e0c089d9;box-shadow:0 0 0 2px #14201a40}.ck-actions{display:flex;flex-direction:column;align-items:center;gap:.25rem;flex-shrink:0}.ck-forfeit-hint{margin:0;font-size:.75rem}.ck-pick{overflow:auto}.mo-root{position:relative;display:flex;flex-direction:column;gap:.5rem;height:100%;min-height:0;overflow:auto;border-radius:calc(var(--radius) + 4px)}.mo-root.mo-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(120% 70% at 50% 0%,rgba(201,162,39,.14),transparent 55%)}.mo-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;flex-shrink:0}.mo-banner{flex:1;margin:0;text-align:center}.mo-cash-strip{display:flex;gap:.35rem;overflow-x:auto;flex-shrink:0}.mo-cash-chip{display:flex;align-items:center;gap:.35rem;min-width:6.5rem;padding:.3rem .45rem;border-radius:10px;border:1px solid var(--line);background:#0f241cb8;font-size:.75rem}.mo-cash-chip.is-turn{border-color:var(--wood-hot)}.mo-cash-chip.is-me{border-color:#e0c08966}.mo-cash-chip.is-out{opacity:.45}.mo-token{width:.75rem;height:.75rem;border-radius:50%;flex-shrink:0;border:1px solid rgba(243,235,224,.35)}.mo-token.sm{width:.55rem;height:.55rem}.mo-dice{margin:0;text-align:center;font-size:.8rem}.mo-board-wrap{display:flex;justify-content:center;flex-shrink:0}.mo-board{display:grid;grid-template-columns:repeat(11,1fr);grid-template-rows:repeat(11,1fr);width:min(100%,26rem);aspect-ratio:1;border:3px solid #3a2418;border-radius:8px;overflow:hidden;background:#2a4a3c}.mo-cell{position:relative;background:#d8c4a0;border:1px solid rgba(20,32,26,.2);font-size:.42rem;line-height:1.1;padding:.1rem;overflow:hidden;display:flex;flex-direction:column;min-width:0;min-height:0}.mo-cell.is-focus{outline:2px solid var(--wood-hot);outline-offset:-2px;z-index:1}.mo-center{background:#1a3a2fd9}.mo-empty{background:transparent}.mo-color-bar{display:block;height:.28rem;width:100%;border-radius:1px;flex-shrink:0}.mo-cell-name{color:#14201a;font-weight:600;overflow:hidden}.mo-owner-dot{position:absolute;top:.15rem;right:.15rem;width:.35rem;height:.35rem;border-radius:50%}.mo-houses{color:#1a5c2e;font-size:.4rem;letter-spacing:-.05em}.mo-tokens{display:flex;flex-wrap:wrap;gap:.08rem;margin-top:auto}.mo-card-overlay,.mo-buy,.mo-build{max-width:22rem;margin:0 auto}.mo-build-list{display:flex;flex-direction:column;gap:.3rem}.mo-props{font-size:.75rem;text-align:center}.mo-forfeit{display:flex;justify-content:center;flex-shrink:0}.mo-pick{overflow:auto}@media(min-width:640px){.mo-cell{font-size:.55rem}.mo-color-bar{height:.4rem}}.sv-root{display:flex;flex-direction:column;gap:.55rem;height:100%;min-height:0;overflow:auto}.sv-root.sv-your-turn{box-shadow:inset 0 0 0 2px #e0c08980}.sv-toolbar{display:flex;justify-content:space-between;gap:.5rem}.sv-banner{flex:1;margin:0;text-align:center}.sv-pot{text-align:center;font-family:var(--font-display);color:var(--wood-hot)}.sv-chips{display:flex;gap:.35rem;overflow-x:auto}.sv-chip-card{display:flex;align-items:center;gap:.3rem;padding:.3rem .45rem;border-radius:10px;border:1px solid var(--line);background:#0f241cb8;font-size:.78rem}.sv-chip-card.is-turn{border-color:var(--wood-hot)}.sv-chip-card.is-fold{opacity:.45}.sv-dot{width:.6rem;height:.6rem;border-radius:50%}.sv-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;align-items:flex-end}.sv-card{width:3.2rem;height:4.4rem;border-radius:8px;background:linear-gradient(165deg,#f7f1e6,#ddd2be);color:#14201a;display:flex;flex-direction:column;justify-content:space-between;padding:.25rem;font-size:.7rem;border:1px solid rgba(20,32,26,.35)}.sv-card.sylop{background:linear-gradient(165deg,#e8d5a3,#c9a227)}.sv-rank{font-weight:700}.sv-suit{font-size:.55rem;text-transform:uppercase;opacity:.75}.sv-val{font-weight:700;align-self:flex-end}.sv-total{width:100%;text-align:center;font-size:.85rem}.sv-actions{flex-wrap:wrap}.sv-forfeit,.sv-pick{display:flex;justify-content:center}.sv-reveal{max-width:24rem;margin:0 auto}.eu-root{display:flex;flex-direction:column;gap:.65rem;height:100%;min-height:0;overflow:auto;padding:.1rem}.eu-root.eu-your-turn{box-shadow:inset 0 0 0 2px #e0c08980}.eu-toolbar,.eu-actions,.eu-meta,.eu-score{display:flex;align-items:center;justify-content:center;gap:.55rem}.eu-toolbar{justify-content:space-between}.eu-banner{flex:1;margin:0;text-align:center}.eu-score{padding:.45rem .6rem;border-block:1px solid var(--line)}.eu-score>div{display:flex;align-items:baseline;gap:.45rem;color:var(--cream-dim)}.eu-score>div.is-mine{color:var(--cream)}.eu-score strong{color:var(--wood-hot);font:700 1.5rem var(--font-display)}.eu-score-target{color:var(--cream-dim);font-size:.72rem}.eu-meta{flex-wrap:wrap;color:var(--cream-dim);font-size:.82rem}.eu-trump{padding:.2rem .55rem;border:1px solid currentColor;border-radius:999px}.eu-table{min-height:13.5rem;padding:.65rem;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at center,rgba(111,191,138,.12),transparent 62%),#0f241cb8}.eu-seats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.eu-seat{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.35rem;padding:.35rem .5rem;border:1px solid transparent;border-radius:10px;font-size:.78rem}.eu-seat.is-turn{border-color:var(--wood-hot);background:#e0c08914}.eu-seat.is-sitting{opacity:.45}.eu-seat small{grid-column:2;color:var(--cream-dim)}.eu-player-dot{width:.65rem;height:.65rem;border-radius:50%}.eu-center{display:grid;min-height:8.5rem;place-items:center}.eu-trick{display:flex;align-items:end;justify-content:center;gap:.35rem}.eu-trick-play,.eu-upcard{display:flex;flex-direction:column;align-items:center;gap:.2rem;color:var(--cream-dim)}.eu-card{display:flex;flex-direction:column;justify-content:space-between;flex:0 0 auto;padding:.35rem;border:1px solid rgba(20,32,26,.32);border-radius:9px;background:linear-gradient(155deg,#fffaf0,#ded2bd);box-shadow:0 5px 12px #040c0947;color:#18241e;font-family:var(--font-display);font-weight:700}button.eu-card{cursor:pointer;text-align:left}button.eu-card:not(:disabled):hover,button.eu-card:not(:disabled):focus-visible{translate:0 -.3rem;border-color:var(--wood-hot)}button.eu-card:disabled{cursor:default;opacity:.58}.eu-card-sm{width:2.4rem;height:3.35rem;font-size:.72rem}.eu-card-md{width:3rem;height:4.15rem}.eu-card-lg{width:3.55rem;height:5rem;font-size:1rem}.eu-card span:last-child{align-self:flex-end;font-size:1.25em}.eu-suit-hearts,.eu-suit-diamonds{color:#ad302b}.eu-suit-clubs,.eu-suit-spades{color:#18241e}.eu-trump.eu-suit-clubs,.eu-trump.eu-suit-spades{color:var(--cream)}.eu-hand{display:flex;justify-content:center;gap:.3rem;padding:.45rem .25rem .15rem;overflow-x:auto}.eu-hand.active{padding-top:.7rem}.eu-auction{display:flex;flex-direction:column;align-items:center;gap:.6rem}.eu-alone{display:flex;align-items:center;gap:.45rem;color:var(--cream-dim)}.eu-actions{flex-wrap:wrap}.eu-actions .eu-suit-hearts,.eu-actions .eu-suit-diamonds{color:#7c1f1c}.eu-pick,.eu-hand-over{max-width:28rem;margin-inline:auto}.eu-pick>.muted,.eu-hand-over p{margin:0}.eu-forfeit{display:flex;justify-content:center;margin-top:auto}@media(min-width:720px){.eu-seats{grid-template-columns:repeat(4,minmax(0,1fr))}.eu-table{min-height:15rem}.eu-card-lg{width:4rem;height:5.6rem}}.bj-root{display:flex;flex-direction:column;gap:.65rem;min-height:100%;color:var(--cream)}.bj-root.bj-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;border-radius:calc(var(--radius) + 4px)}.bj-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.bj-banner{margin:0;color:var(--wood-hot);font-size:clamp(1.25rem,3vw,2rem);line-height:1.15}.bj-table-meta,.bj-intro,.bj-error{margin:.25rem 0 0}.bj-pick{width:min(100%,30rem);margin:auto;max-height:100%;overflow:auto}.bj-stack-strip{display:flex;gap:.4rem;overflow-x:auto;padding:.1rem 0 .3rem}.bj-stack{display:grid;grid-template-columns:auto auto;align-items:center;gap:.1rem .35rem;min-width:7rem;padding:.35rem .5rem;border:1px solid var(--line);border-radius:10px;background:#0f241cc7;font-size:.75rem}.bj-stack.is-turn{border-color:var(--wood-hot);background:#c4a57429}.bj-stack.is-me{box-shadow:inset 0 0 0 1px #e0c08947}.bj-stack.is-out{opacity:.42}.bj-seat-dot{width:.65rem;height:.65rem;border-radius:50%;grid-row:1 / 3}.bj-stack-name,.bj-wager{color:var(--cream-dim);white-space:nowrap}.bj-wager{font-size:.68rem}.bj-table{position:relative;display:flex;flex:1;min-height:23rem;flex-direction:column;justify-content:space-between;gap:1rem;padding:1rem clamp(.6rem,2.5vw,1.5rem);overflow:auto;border:1px solid rgba(196,165,116,.3);border-radius:48% 48% 18px 18px/20% 20% 18px 18px;background:radial-gradient(ellipse at 50% 42%,rgba(51,111,81,.62),transparent 64%),linear-gradient(165deg,#194838,#0f3025);box-shadow:0 12px 28px #00000047,inset 0 0 0 5px #47291859,inset 0 0 42px #00000052}.bj-dealer,.bj-player{display:flex;flex-direction:column;align-items:center;gap:.35rem}.bj-player{min-width:7.4rem;padding:.35rem;border-radius:12px;border:1px solid transparent}.bj-player.is-turn{border-color:#e0c08994;background:#e0c08914}.bj-player-hands{display:flex;align-items:flex-start;justify-content:center;gap:.45rem;overflow-x:auto;padding-bottom:.2rem}.bj-hand-label{display:flex;align-items:baseline;gap:.45rem;font-size:.76rem}.bj-hand-label span{color:#d7cbbb;font-size:.68rem}.bj-hand{display:flex;justify-content:center;min-height:4.5rem}.bj-card{position:relative;width:3.05rem;height:4.35rem;flex:0 0 auto;margin-left:-.7rem;border:1px solid rgba(20,32,26,.45);border-radius:7px;background:linear-gradient(155deg,#fffaf0,#dfd3bd);color:#14201a;box-shadow:0 3px 8px #0000004d}.bj-card:first-child{margin-left:0}.bj-card-red{color:#a63d40}.bj-card-corner{position:absolute;top:.18rem;left:.28rem;font-family:var(--font-display);font-size:.73rem;font-weight:700}.bj-card-corner-bottom{inset:auto .28rem .18rem auto;transform:rotate(180deg)}.bj-card-suit{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:1.15rem;font-weight:700}.bj-card-back{display:grid;place-items:center;overflow:hidden;color:var(--wood-hot);background:repeating-linear-gradient(45deg,transparent 0 4px,rgba(224,192,137,.15) 4px 5px),linear-gradient(145deg,#173b30,#0b2119);border:2px solid #d8c6a8}.bj-card-weave{display:grid;place-items:center;width:2rem;height:2.8rem;border:1px solid rgba(224,192,137,.55);font-family:var(--font-display);font-size:.65rem}.bj-rule-arc{display:flex;justify-content:center;gap:clamp(.6rem,4vw,2rem);color:#e0c089b3;font-family:var(--font-display);font-size:clamp(.55rem,1.4vw,.72rem);letter-spacing:.08em;text-align:center}.bj-result{padding:.12rem .45rem;border-radius:999px;font-size:.68rem;font-weight:700}.bj-result.is-win,.bj-result.is-blackjack{color:#c8f0d6;border:1px solid rgba(111,191,138,.55)}.bj-result.is-lose{color:#f0b3aa;border:1px solid rgba(212,92,74,.52)}.bj-result.is-push{color:var(--wood-hot);border:1px solid var(--line)}.bj-bet-rail,.bj-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem}.bj-bet-rail{padding:.55rem;border-top:1px solid var(--line)}.bj-chip-btn{width:2.8rem;height:2.8rem;border:5px double rgba(243,235,224,.55);border-radius:50%;background:#8e342d;color:#fff7e8;font-weight:800;cursor:pointer}.bj-chip-btn:nth-child(2){background:#2f6b54}.bj-chip-btn:nth-child(3){background:#345a83}.bj-chip-btn:nth-child(4){background:#2c2925}.bj-chip-btn.is-selected{transform:translateY(-3px);box-shadow:0 5px 10px #00000059}.bj-chip-btn:disabled{opacity:.35;cursor:not-allowed}.bj-custom-bet{display:flex;align-items:center;gap:.3rem;color:var(--cream-dim);font-size:.75rem}.bj-custom-bet input{width:4.7rem;min-height:44px;padding:.45rem;border:1px solid var(--line);border-radius:8px;background:var(--felt-deep);color:var(--cream)}.bj-leave{display:flex;justify-content:center;margin-top:auto}@media(max-width:600px){.bj-table{min-height:20rem;border-radius:32% 32% 14px 14px/12% 12% 14px 14px}.bj-player-hands{justify-content:flex-start}.bj-card{width:2.65rem;height:3.8rem}.bj-player{min-width:6.5rem}}@media(prefers-reduced-motion:reduce){.bj-chip-btn.is-selected{transform:none}}.ch-root{--ch-light: #d8c39f;--ch-dark: #466451;--ch-ink: #17251d;position:relative;min-height:100%;display:flex;flex-direction:column;gap:.85rem;padding:1rem;background:radial-gradient(75% 45% at 50% 0%,rgba(224,192,137,.12),transparent 70%),var(--felt-deep);transition:box-shadow .18s ease-out}.ch-root.ch-your-turn{box-shadow:inset 0 0 0 2px #e0c0897a}.ch-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.ch-header h2{margin:0;font-size:clamp(1.35rem,3vw,1.8rem)}.ch-status{margin:.15rem 0 0;color:var(--cream-dim);font-weight:600}.ch-turn-mark{flex:0 0 auto;padding:.35rem .65rem;border:1px solid var(--line);border-radius:999px;color:var(--cream);font-size:.78rem;font-weight:700}.ch-turn-mark.is-check{border-color:var(--danger);color:#f2a89e}.ch-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.ch-player{display:flex;align-items:center;gap:.55rem;min-width:0;padding:.5rem .65rem;border:1px solid var(--line);border-radius:10px;background:#1a3a2f94}.ch-player.is-turn{border-color:var(--wood);background:#4c6350a6}.ch-player-piece{font-family:Georgia,Times New Roman,serif;font-size:1.7rem;line-height:1}.ch-player-piece.is-seat-1{color:#fff8e8;text-shadow:0 1px 2px rgba(0,0,0,.75)}.ch-player-piece.is-seat-2{color:#121b16;text-shadow:0 1px 0 rgba(255,255,255,.28)}.ch-player span:last-child{min-width:0}.ch-player strong,.ch-player small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-player small{color:var(--cream-dim);font-size:.72rem}.ch-error{margin:0}.ch-pick{width:min(100%,32rem);margin:auto}.ch-pick>.muted{margin:0}.ch-pick-row{color:var(--cream);text-align:left;cursor:pointer}.ch-pick-row.selected{border-color:var(--wood);background:#c4a57424}.ch-board-shell{width:min(100%,34rem);margin:auto;padding:clamp(.35rem,1.5vw,.7rem);border:1px solid rgba(224,192,137,.55);background:#172d24;box-shadow:0 12px 30px #020a0761}.ch-board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;aspect-ratio:1;border:1px solid rgba(20,32,26,.8)}.ch-square{position:relative;min-width:0;min-height:0;padding:0;border:0;border-radius:0;color:var(--ch-ink);cursor:default}.ch-square.is-light{background:var(--ch-light)}.ch-square.is-dark{background:var(--ch-dark)}.ch-square.is-last{box-shadow:inset 0 0 0 100px #e0c0894d}.ch-square.is-movable{cursor:pointer}.ch-square.is-movable:hover,.ch-square.is-movable:focus-visible{box-shadow:inset 0 0 0 3px #fff8e89e;outline:none}.ch-square.is-selected{box-shadow:inset 0 0 0 4px #f1ca68}.ch-square.is-target{cursor:pointer}.ch-square.is-capture:after{content:"";position:absolute;top:6%;right:6%;bottom:6%;left:6%;border:clamp(2px,.7vw,4px) solid rgba(242,168,158,.78);border-radius:50%}.ch-piece{position:relative;z-index:2;display:grid;place-items:center;width:100%;height:100%;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,7.2vw,3.6rem);line-height:1;-webkit-user-select:none;user-select:none;transform:translateY(-1%)}.ch-piece.is-seat-1{color:#fff7df;text-shadow:0 1px 0 #6d604e,0 2px 3px rgba(0,0,0,.62)}.ch-piece.is-seat-2{color:#111b16;text-shadow:0 1px 0 rgba(255,255,255,.22)}.ch-target-dot{position:absolute;z-index:3;top:50%;left:50%;width:22%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:#14201a7a}.ch-file,.ch-rank{position:absolute;z-index:4;font-size:clamp(.5rem,1.7vw,.7rem);font-weight:800;line-height:1;pointer-events:none}.ch-file{right:3px;bottom:2px}.ch-rank{top:3px;left:3px}.ch-square.is-dark .ch-file,.ch-square.is-dark .ch-rank{color:var(--ch-light)}.ch-square.is-light .ch-file,.ch-square.is-light .ch-rank{color:var(--ch-dark)}.ch-note{max-width:34rem;margin:-.35rem auto 0;color:var(--cream-dim);font-size:.75rem;text-align:center}.ch-actions{display:flex;justify-content:center;gap:.55rem;margin-top:auto}@media(max-width:600px){.ch-root{padding:.7rem}.ch-header{align-items:center}.ch-players{gap:.4rem}.ch-player{padding:.4rem .5rem}.ch-player-piece{font-size:1.4rem}}@media(prefers-reduced-motion:reduce){.ch-root{transition:none}}.rm-root{display:flex;flex-direction:column;gap:.7rem;min-height:100%;color:var(--cream)}.rm-root.rm-your-turn{border-radius:calc(var(--radius) + 4px);box-shadow:inset 0 0 0 2px #e0c0897a}.rm-toolbar,.rm-hand-heading,.rm-meld-label,.rm-end-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.rm-banner{margin:0;color:var(--wood-hot);font-family:var(--font-display);font-size:clamp(1.15rem,3vw,1.85rem);line-height:1.2;text-wrap:balance}.rm-rules{max-width:70ch;margin:0;color:var(--cream-dim);line-height:1.5}.rm-player-picker{display:grid;gap:.4rem}.rm-player-option{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:.65rem .8rem;border:1px solid var(--line);border-radius:10px;background:#0f241cb8;color:var(--cream);text-align:left}.rm-player-option.is-selected{border-color:var(--wood-hot);background:#c4a57421}.rm-score-strip{display:flex;gap:.45rem;padding-bottom:.15rem;overflow-x:auto;scrollbar-width:thin}.rm-score{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:.4rem;min-width:7.7rem;padding:.45rem .55rem;border:1px solid var(--line);border-radius:10px;background:#0f241ca6;font-size:.75rem}.rm-score.is-turn{border-color:var(--wood-hot);background:#c4a5741f}.rm-score .muted{grid-column:2}.rm-seat-dot{grid-row:span 2;width:.55rem;height:.55rem;border-radius:50%}.rm-table{display:grid;grid-template-columns:minmax(8.5rem,.28fr) minmax(0,1fr);gap:.8rem;min-height:15rem;padding:.8rem;border:1px solid rgba(196,165,116,.32);border-radius:22px;background:radial-gradient(circle at 54% 42%,rgba(54,116,88,.45),transparent 55%),linear-gradient(145deg,#173b2d,#10271e);box-shadow:0 14px 28px #050f0b42}.rm-piles{display:flex;align-items:center;justify-content:center;gap:.5rem;border-right:1px solid var(--line)}.rm-stock,.rm-discard{display:flex;flex-direction:column;align-items:center;gap:.35rem;min-width:4.7rem;padding:.25rem;border:0;background:transparent;color:var(--cream-dim);font:inherit;font-size:.7rem}.rm-stock-pattern,.rm-card{width:3.6rem;height:5.1rem;border-radius:7px}.rm-stock-pattern{display:grid;place-items:center;border:3px double rgba(243,235,224,.72);background:repeating-linear-gradient(45deg,rgba(243,235,224,.12) 0 3px,transparent 3px 7px),#793b32;color:#fff8eb;font-family:var(--font-display);font-size:.8rem}.rm-stock:disabled,.rm-discard:disabled{opacity:.52;cursor:not-allowed}.rm-meld-field{display:flex;align-content:flex-start;flex-wrap:wrap;gap:.75rem;min-width:0}.rm-meld{min-width:8rem}.rm-meld-label{margin-bottom:.3rem;color:var(--cream-dim);font-size:.7rem}.rm-layoff{min-height:32px;padding:.25rem .45rem;border:1px solid var(--wood);border-radius:7px;background:var(--wood);color:var(--ink);font:inherit;font-size:.7rem;font-weight:700}.rm-meld-cards,.rm-hand{display:flex;min-width:0}.rm-meld-cards .rm-card+.rm-card{margin-left:-1.85rem}.rm-empty-table{align-self:center;max-width:30ch;margin:auto;color:var(--cream-dim);text-align:center}.rm-card{position:relative;flex:0 0 auto;padding:.3rem;border:1px solid rgba(20,32,26,.28);background:#fffaf0;color:#172019;box-shadow:0 4px 9px #050f0b40;font-family:var(--font-display);text-align:left;transition:transform .16s cubic-bezier(.22,1,.36,1),box-shadow .16s ease}button.rm-card{cursor:pointer}.rm-card.is-red{color:#a82e2b}.rm-card.is-selected{z-index:2;transform:translateY(-.75rem);box-shadow:0 10px 18px #050f0b6b}.rm-card-rank,.rm-card-suit{display:block;line-height:1}.rm-card-rank{font-size:.85rem;font-weight:800}.rm-card-suit{margin-top:.1rem;font-size:1rem}.rm-hand-zone,.rm-hand-result{padding:.65rem;border:1px solid var(--line);border-radius:12px;background:#0f241cc2}.rm-hand-zone.is-active{border-color:var(--wood-hot)}.rm-hand-heading{margin-bottom:.7rem;color:var(--cream-dim);font-size:.78rem}.rm-hand{min-height:5.9rem;padding:.8rem .2rem 0;overflow-x:auto;overflow-y:hidden}.rm-hand .rm-card+.rm-card{margin-left:-1.15rem}.rm-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.65rem}.rm-hand-result{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1rem}.rm-hand-result .btn{margin-left:auto}.rm-forfeit{align-self:center}@media(max-width:650px){.rm-table{grid-template-columns:1fr}.rm-piles{justify-content:flex-start;padding-bottom:.65rem;border-right:0;border-bottom:1px solid var(--line)}.rm-meld-field{flex-wrap:nowrap;overflow-x:auto}.rm-meld{flex:0 0 auto}.rm-end-actions{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){.rm-card{transition:none}}.sy-root,.pa-root{display:flex;flex-direction:column;gap:.65rem;height:100%;min-height:0;overflow:auto;border-radius:calc(var(--radius) + 4px)}.sy-root.sy-your-turn,.pa-root.pa-your-turn{box-shadow:inset 0 0 0 2px #e0c08980;background:radial-gradient(110% 65% at 50% 0%,rgba(201,162,39,.15),transparent 58%)}.sy-banner,.pa-banner{margin:0;text-align:center;color:var(--wood-hot);font-family:var(--font-display);font-size:clamp(1.1rem,2.8vw,1.7rem);letter-spacing:.03em}.sy-pick,.pa-pick{overflow:auto}.sy-status,.pa-status{display:flex;align-items:center;justify-content:center;gap:.75rem}.sy-draw,.pa-roll{min-width:8.5rem}.sy-board,.pa-board{position:relative;width:min(100%,31rem);aspect-ratio:1;margin:0 auto;flex:0 1 auto;border:3px solid #3a2418;border-radius:18px;background:linear-gradient(135deg,rgba(217,71,63,.13) 0 25%,transparent 25% 75%,rgba(66,118,201,.13) 75%),linear-gradient(45deg,rgba(229,197,69,.12) 0 25%,transparent 25% 75%,rgba(57,154,98,.13) 75%),#d8c9a8;box-shadow:0 8px 24px #00000059}.sy-home,.pa-home{position:absolute;top:35%;right:35%;bottom:35%;left:35%;display:grid;place-items:center;border:2px solid rgba(58,36,24,.55);border-radius:50%;background:#f7f1e6d1;color:#3a2418;font-family:var(--font-display);font-weight:800;letter-spacing:.08em}.sy-space,.pa-space{position:absolute;width:2.7%;aspect-ratio:1;border:1px solid rgba(58,36,24,.5);border-radius:50%;background:#f3ebe0;transform:translate(-50%,-50%)}.pa-space.is-safe{width:3.5%;background:#c9a227;box-shadow:0 0 0 2px #f3ebe0cc}.sy-pawn,.pa-pawn{position:absolute;z-index:2;display:grid;place-items:center;width:clamp(1rem,5.2%,1.65rem);aspect-ratio:1;border:2px solid rgba(255,255,255,.8);border-radius:50%;color:#fff;font-size:clamp(.5rem,1.6vw,.7rem);font-weight:800;text-shadow:0 1px 2px #000;box-shadow:0 2px 5px #0000008c}.sy-players,.pa-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.sy-player,.pa-player{display:flex;align-items:center;gap:.4rem;min-width:0;padding:.35rem .5rem;border:1px solid var(--line);border-radius:10px;background:#0f241cb3;font-size:.75rem}.sy-player.is-turn,.pa-player.is-turn{border-color:var(--wood-hot)}.sy-dot,.pa-dot{width:.7rem;aspect-ratio:1;flex:0 0 auto;border-radius:50%}.sy-moves,.pa-moves{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem}.sy-actions,.pa-actions{display:flex;justify-content:center;gap:.5rem}@media(max-width:560px){.sy-players,.pa-players{grid-template-columns:1fr}}.pi-root{min-height:100%;padding:1rem;display:flex;flex-direction:column;gap:.8rem;background:radial-gradient(circle at 50% 35%,#315c45 0,#17382b 70%);color:#f7f0de;border-radius:1rem}.pi-root .muted{color:#d5ddcf}.pi-banner,.sg-banner{margin:0;text-align:center;letter-spacing:.12em}.pi-your-turn{box-shadow:inset 0 0 0 3px #d7b56d}.pi-score,.pi-meta,.pi-actions,.pi-hand-over{display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap}.pi-score>div{min-width:7rem;padding:.55rem .8rem;display:flex;justify-content:space-between;background:#fff1;border:1px solid #fff3;border-radius:.7rem}.pi-score>div.mine{border-color:#d7b56d}.pi-score strong{font-size:1.45rem}.pi-meta{font-size:.86rem}.pi-table{min-height:13rem;padding:.8rem;display:grid;grid-template-columns:minmax(8rem,.8fr) 1.4fr;gap:1rem;background:#071e1680;border:1px solid #ffffff20;border-radius:1rem}.pi-seats{display:grid;gap:.4rem}.pi-seats>div{padding:.45rem .6rem;display:flex;flex-direction:column;border-radius:.55rem;background:#fff1}.pi-seats>div.active{outline:2px solid #d7b56d}.pi-seats small,.pi-trick small{color:#d5ddcf}.pi-trick{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.pi-trick>div{display:grid;justify-items:center;gap:.2rem}.pi-card{width:3.7rem;aspect-ratio:.7;padding:.35rem;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;border:0;border-radius:.45rem;background:#fffaf0;color:#17211b;box-shadow:0 4px 10px #0005;font-size:1.05rem}.pi-card span{align-self:center;font-size:1.6rem}.pi-card.pi-diamonds,.pi-card.pi-hearts{color:#b42e31}.pi-card:enabled:hover{transform:translateY(-.35rem)}.pi-card:disabled{opacity:.72}.pi-hand{min-height:6rem;display:flex;justify-content:center;align-items:flex-end;overflow-x:auto;padding-top:.5rem}.pi-hand .pi-card+.pi-card{margin-left:-.7rem}.pi-meld{display:grid;grid-template-columns:repeat(2,minmax(8rem,1fr));gap:.4rem;color:var(--ink)}.pi-meld>div{display:flex;justify-content:space-between}.sg-root{min-height:100%;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#f5efe3;background:linear-gradient(145deg,#23323b,#141c21);border-radius:1rem}.sg-your-turn{box-shadow:inset 0 0 0 3px #d3a84d}.sg-players{width:min(100%,42rem);display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.sg-players>div{display:grid;grid-template-columns:auto 1fr;column-gap:.5rem;padding:.55rem;background:#fff1;border-radius:.6rem;border:1px solid #fff2}.sg-players>div.active{border-color:#d3a84d}.sg-players i{grid-row:span 2;width:.8rem;border-radius:1rem}.sg-players small{color:#bbc7cc}.sg-setup{width:min(100%,45rem)}.sg-reserve{display:grid;grid-template-columns:repeat(6,1fr);gap:.3rem}.sg-reserve button{min-width:0;padding:.35rem;display:flex;flex-direction:column;border:1px solid #ffffff2b;border-radius:.4rem;background:#ffffff12;color:inherit}.sg-reserve button strong{font-size:.78rem;line-height:1.2;font-weight:600}.sg-rank{color:#d3a84d;font-variant-numeric:tabular-nums}.sg-reserve button.selected{border-color:#d3a84d;background:#d3a84d25}.sg-actions{margin-top:.5rem;display:flex;justify-content:center;gap:.5rem}.sg-board{width:min(100%,42rem);aspect-ratio:1;display:grid;grid-template-columns:repeat(10,1fr);border:4px solid #76532e;background:#a98c5f;box-shadow:0 10px 24px #0007}.sg-square{min-width:0;padding:2px;border:1px solid #6d5738;background:#b99a69;display:grid;place-items:center;position:relative}.sg-square:nth-child(odd){background:#ad8d5b}.sg-square.lake{background:repeating-linear-gradient(135deg,#315b70,#315b70 5px,#3f7186 5px,#3f7186 10px)}.sg-square.selected{outline:3px solid #ffd76d;z-index:1}.sg-square.last{box-shadow:inset 0 0 0 3px #f5d47b88}.sg-square.target:after,.sg-square>i{content:"";width:26%;aspect-ratio:1;border-radius:50%;background:#1f714f;position:absolute}.sg-square>i.attack{width:62%;background:#a6313188;border:2px solid #f4b7a7}.sg-piece{width:88%;aspect-ratio:.78;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:.3rem;color:#fff;box-shadow:inset 0 0 0 2px #ffffff30,0 2px 4px #0005;font-size:clamp(.55rem,1.6vw,1rem)}.sg-piece.seat-1{background:#315b87}.sg-piece.seat-2{background:#a33d36}.sg-piece.hidden{background:#252b30}.sg-piece small{max-width:100%;overflow:hidden;font-size:clamp(.35rem,1vw,.65rem);text-transform:capitalize}.sg-battle{padding:.5rem .8rem;background:#0004;border-radius:2rem;text-transform:capitalize}@media(max-width:600px){.pi-root,.sg-root{padding:.6rem}.pi-table{grid-template-columns:1fr}.sg-reserve{grid-template-columns:repeat(4,1fr)}.sg-piece small{display:none}}.he-root{min-height:100%;display:flex;flex-direction:column;gap:.75rem;padding:.8rem;border-radius:18px;background:radial-gradient(circle at 50% 42%,#285d48 0,#163d2f 52%,#0d281f);box-shadow:inset 0 0 0 1px #d7ad5240,inset 0 -30px 70px #06181188}.he-root.he-your-turn{box-shadow:inset 0 0 0 2px var(--wood-hot),inset 0 -30px 70px #06181188}.he-header,.he-actions,.he-raise,.he-blinds,.he-hole,.he-showdown,.he-mini-hand{display:flex;align-items:center}.he-header{justify-content:space-between;gap:.7rem}.he-header p{margin:.15rem 0 0;color:#d9cbb8;font-size:.8rem;text-transform:capitalize}.he-banner{margin:0;color:#f0d18e;font:700 clamp(1.15rem,4vw,1.8rem)/1.2 var(--font-display)}.he-blinds{padding:.35rem .65rem;border:1px solid #d7ad5266;border-radius:999px;color:#f0d18e;font-size:.75rem;white-space:nowrap}.he-seats{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.2rem,1fr));gap:.35rem}.he-seat{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:.1rem .35rem;align-items:center;padding:.4rem .5rem;border:1px solid #c4a57433;border-radius:10px;background:#0d281fcc;font-size:.77rem}.he-seat.is-turn{border-color:#f0d18e;background:#6a542436}.he-seat.is-me{box-shadow:inset 0 0 0 1px #f3ebe026}.he-seat.is-folded{opacity:.5}.he-seat.is-out{filter:grayscale(1);opacity:.35}.he-seat-color{width:.55rem;height:.55rem;border-radius:50%}.he-seat small{grid-column:2 / 4;color:#cbbca7}.he-stack{color:#f0d18e;font-variant-numeric:tabular-nums}.he-mini-hand{position:absolute;z-index:2;top:100%;left:50%;transform:translate(-50%) scale(.62);transform-origin:top}.he-table{position:relative;flex:1;min-height:18rem;display:grid;place-content:center;gap:1.2rem;border:2px solid #9c7a4555;border-radius:45%/28%;background:radial-gradient(ellipse,#25634a,#174332 72%);box-shadow:inset 0 0 30px #071b14aa,0 8px 22px #0006}.he-pot{text-align:center;color:#f0d18e}.he-pot span{display:block;font-size:.62rem;letter-spacing:.16em}.he-pot strong{font-size:1.45rem}.he-board,.he-hole>div{display:flex;justify-content:center;gap:clamp(.25rem,1.5vw,.55rem)}.he-card,.he-card-slot{position:relative;width:clamp(2.75rem,12vw,4rem);aspect-ratio:.7;flex-shrink:0;border-radius:7px}.he-card{display:flex;flex-direction:column;justify-content:space-between;padding:.28rem;border:1px solid #fff;background:linear-gradient(145deg,#fffdf8,#dfd5c4);color:#18211c;box-shadow:0 4px 8px #0006;font-style:normal}.he-card b{font-size:clamp(.78rem,3vw,1.15rem)}.he-card i{align-self:center;font-size:clamp(1.15rem,5vw,1.8rem);font-style:normal}.he-card.is-red{color:#a83238}.he-card.is-back{justify-content:center;align-items:center;border:3px double #d7ad52;background:repeating-linear-gradient(45deg,#172b24 0,#172b24 4px,#28483b 4px,#28483b 8px);color:#e2bd6e;font:700 .7rem var(--font-display)}.he-card-slot{border:1px dashed #f3ebe034;background:#081d1640}.he-hole{flex-direction:column;gap:.3rem;color:#d9cbb8;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.he-showdown{position:absolute;right:8%;bottom:8%;flex-direction:column;align-items:flex-start;padding:.5rem .7rem;border-radius:9px;background:#0d281fe8;color:#d9cbb8;font-size:.72rem}.he-actions{justify-content:center;flex-wrap:wrap;gap:.45rem}.he-raise{gap:.35rem;padding:.2rem .25rem .2rem .6rem;border:1px solid #c4a57455;border-radius:12px;font-size:.75rem}.he-raise input{width:5rem;min-height:40px;border:0;border-radius:7px;background:#0b241b;color:var(--cream);padding:.4rem}.rk-root{min-height:100%;display:flex;flex-direction:column;gap:.65rem;padding:.8rem;border-radius:18px;background:linear-gradient(160deg,#182d27,#0e211b);box-shadow:inset 0 0 0 1px #c4a57440}.rk-root.rk-your-turn{box-shadow:inset 0 0 0 2px var(--wood-hot)}.rk-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem}.rk-header p{margin:.12rem 0 0;color:#cbbca7;font-size:.75rem;text-transform:capitalize}.rk-banner{margin:0;color:#e4c378;font:700 clamp(1.1rem,4vw,1.65rem)/1.2 var(--font-display)}.rk-phase-track{display:flex;gap:.2rem}.rk-phase-track i{padding:.3rem .45rem;border-radius:6px;color:#9faea7;background:#091b15;font-size:.62rem;font-style:normal}.rk-phase-track i.active{background:#c4a574;color:#14201a;font-weight:800}.rk-commanders{display:flex;gap:.35rem;overflow-x:auto}.rk-commanders>div{display:grid;grid-template-columns:auto auto;gap:.05rem .35rem;min-width:8rem;padding:.35rem .45rem;border:1px solid #c4a57426;border-radius:8px;background:#0a1d17aa;font-size:.72rem}.rk-commanders>div.is-turn{border-color:#e4c378}.rk-commanders>div.is-out{opacity:.35}.rk-commanders i{width:.55rem;height:.55rem;margin-top:.18rem;border-radius:50%}.rk-commanders span{grid-column:2;color:#b9c4bd;font-size:.62rem}.rk-map-wrap{flex:1;min-height:21rem;display:grid;grid-template-columns:1fr auto;gap:.5rem}.rk-map{position:relative;min-height:21rem;overflow:hidden;border:2px solid #9c7a4559;border-radius:25px 12px 28px 14px;background:radial-gradient(circle at 45% 45%,#315a48,#17372b 75%);box-shadow:inset 0 0 45px #061a12aa}.rk-map:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.14;background-image:radial-gradient(#e8d8bb 1px,transparent 1px);background-size:13px 13px}.rk-map svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.rk-map line{stroke:#d8c3954f;stroke-width:.55;stroke-dasharray:1.6 1.2}.rk-territory{--owner: #666;position:absolute;z-index:2;transform:translate(-50%,-50%);width:clamp(2.4rem,8vw,3.5rem);min-height:clamp(2.4rem,8vw,3.5rem);padding:.18rem;border:2px solid color-mix(in srgb,var(--owner) 75%,white);border-radius:50%;background:color-mix(in srgb,var(--owner) 60%,#122a20);color:#fff;box-shadow:0 3px 8px #0007,inset 0 1px #fff3;cursor:pointer}.rk-territory:hover:not(:disabled),.rk-territory:focus-visible{z-index:4;transform:translate(-50%,-50%) scale(1.12)}.rk-territory.is-selected{z-index:5;box-shadow:0 0 0 3px #f3df9e,0 7px 16px #0008}.rk-territory span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:clamp(.4rem,1.3vw,.62rem);white-space:nowrap}.rk-territory b{display:block;font-size:clamp(.85rem,2.5vw,1.15rem)}.rk-continents{display:flex;flex-direction:column;gap:.25rem;width:6.4rem;padding:.35rem;border:1px solid #c4a57433;border-radius:9px;background:#091b15aa}.rk-continents span{display:flex;align-items:center;gap:.3rem;color:#d1c4b1;font-size:.63rem}.rk-continents i{width:.5rem;height:.5rem;flex-shrink:0;border-radius:50%;background:#c4a574}.rk-orders{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.45rem;padding:.45rem;border:1px solid #c4a57440;border-radius:11px;background:#0a1d17cc}.rk-orders label{display:flex;align-items:center;gap:.4rem;color:#d6c8b4;font-size:.72rem}.rk-orders input,.rk-orders select{width:5rem;min-height:40px;border:1px solid #c4a57455;border-radius:7px;background:#102a21;color:var(--cream);padding:.35rem}.rk-selection{color:#e4c378;font-size:.72rem}.rk-battle{display:flex;justify-content:space-between;gap:.5rem;padding:.4rem .6rem;border-radius:8px;background:#0a1d17;color:#cbbca7;font-size:.68rem}@media(max-width:600px){.he-root,.rk-root{padding:.55rem}.he-table{min-height:16rem;border-radius:30%/18%}.he-seats{grid-template-columns:repeat(2,1fr)}.rk-map-wrap{grid-template-columns:1fr}.rk-continents{width:auto;flex-direction:row;flex-wrap:wrap}.rk-phase-track i{display:none}.rk-phase-track i.active{display:block}.rk-territory{width:2.35rem;min-height:2.35rem}}.tv-root{min-height:100%;padding:clamp(.7rem,2vw,1.3rem);display:flex;flex-direction:column;gap:1rem;color:#f7f0df;border-radius:1rem;background:radial-gradient(circle at 50% 10%,#315e50,#102b22 68%)}.tv-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;border-bottom:1px solid #d7b56d55;padding-bottom:.9rem}.tv-header h2{margin:0;font-family:Libre Baskerville,serif;font-size:clamp(1.35rem,4vw,2.2rem)}.tv-header p{margin:.3rem 0 0;color:#d9d1bd}.tv-leader{min-width:6rem;text-align:right}.tv-leader span,.tv-leader strong{display:block}.tv-leader span{color:#d7b56d;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.tv-picker{width:min(100%,35rem);margin:auto}.tv-scores{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.45rem}.tv-score{padding:.55rem .65rem;display:grid;grid-template-columns:1fr auto;border:1px solid #ffffff22;background:#071c1680;border-radius:.7rem}.tv-score.mine{border-color:#d7b56d}.tv-score.locked{background:#285943}.tv-score strong{font-size:1.35rem}.tv-score small{grid-column:1 / -1;color:#d9d1bd}.tv-question{width:min(100%,46rem);margin:auto;display:grid;gap:1rem}.tv-category{width:fit-content;padding:.25rem .6rem;color:#17251e;background:#d7b56d;border-radius:2rem;font-weight:800;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.tv-question h3{margin:0;font-family:Libre Baskerville,serif;font-size:clamp(1.4rem,4vw,2.45rem);line-height:1.25;text-wrap:balance}.tv-choices{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.tv-choices button{min-height:4.4rem;padding:.8rem;display:flex;align-items:center;gap:.7rem;text-align:left;color:inherit;background:#ffffff0d;border:1px solid #ffffff30;border-radius:.8rem;font:inherit}.tv-choices button:enabled:hover,.tv-choices button:focus-visible{border-color:#d7b56d;background:#ffffff18}.tv-choices button span{width:2rem;height:2rem;display:grid;place-items:center;flex:0 0 auto;color:#17251e;background:#d7b56d;border-radius:50%;font-weight:900}.tv-choices button.selected{border-color:#d7b56d;box-shadow:0 8px 20px #0004}.tv-choices button.correct{border-color:#74cf91;background:#28633f}.tv-choices button.wrong{border-color:#e47666;background:#71352f}.tv-wait{margin:0;text-align:center;color:#d9d1bd}.tv-finish{justify-content:center}.tv-forfeit,.cl-forfeit{align-self:center;margin-top:auto}.cl-root{min-height:100%;padding:clamp(.7rem,2vw,1.2rem);display:flex;flex-direction:column;gap:.9rem;color:#f1eadb;border-radius:1rem;background:linear-gradient(145deg,#27322f,#151c1a 70%)}.cl-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;border-bottom:1px solid #b69b7040;padding-bottom:.75rem}.cl-header h2{margin:0;font-family:Libre Baskerville,serif;font-size:clamp(1.3rem,3vw,2rem)}.cl-header p{margin:.25rem 0 0;color:#cfc7b6}.cl-envelope{padding:.45rem .7rem;transform:rotate(2deg);display:grid;color:#6a241f;background:#e5d8ba;border:1px solid #ac9974;box-shadow:0 6px 15px #0005;text-align:center}.cl-envelope span{font-size:.57rem;letter-spacing:.12em}.cl-picker{width:min(100%,35rem);margin:auto}.cl-investigators{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.4rem}.cl-investigators>div{padding:.45rem;display:grid;grid-template-columns:auto 1fr;column-gap:.45rem;border:1px solid #ffffff1c;border-radius:.55rem;background:#ffffff09}.cl-investigators>div.active{border-color:#d7b56d;background:#d7b56d16}.cl-investigators>div.eliminated{opacity:.46;text-decoration:line-through}.cl-investigators i{grid-row:span 3;width:.7rem;border-radius:1rem}.cl-investigators span,.cl-investigators small{color:#cfc7b6;font-size:.74rem}.cl-layout{display:grid;grid-template-columns:minmax(18rem,1.55fr) minmax(14rem,.8fr);gap:.8rem;align-items:start}.cl-board{aspect-ratio:1.12;padding:.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;background:#6e563b;border:4px solid #91724d;box-shadow:0 12px 24px #0007}.cl-board button{min-width:0;padding:.45rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;color:#302a22;background:#c9bea5;border:1px solid #8d7d62;font-family:Libre Baskerville,serif}.cl-board button:nth-child(2n){background:#b7c2b0}.cl-board button.mine{box-shadow:inset 0 0 0 3px #9b3a34}.cl-board button.reachable{cursor:pointer;outline:3px solid #e0bc65;outline-offset:-4px}.cl-board button span{min-height:.8rem;display:flex;gap:.2rem}.cl-board button i{width:.72rem;height:.72rem;border:1px solid #fff9;border-radius:50%}.cl-notebook{display:grid;gap:.65rem}.cl-notebook>div,.cl-hand,.cl-solution{padding:.75rem;color:#332c23;background:#e6ddc9;border:1px solid #b8aa8b;border-radius:.35rem;box-shadow:0 7px 17px #0004}.cl-shown,.cl-last{display:grid;gap:.2rem}.cl-shown span,.cl-solution span{color:#8e302d;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.cl-last p{margin:.3rem 0}.cl-form{display:grid;gap:.55rem}.cl-form h3,.cl-hand h3{margin:0;font-family:Libre Baskerville,serif}.cl-form p{margin:0;font-size:.85rem}.cl-form label{display:grid;gap:.2rem;font-size:.76rem;font-weight:800}.cl-form select{width:100%;background:#fffaf0;color:#28231d}.cl-proof{min-height:3.3rem;padding:.5rem;display:grid;text-align:left;color:#332c23;background:#f8f1e2;border:1px solid #9f8b69;border-radius:.3rem}.cl-proof span{font-size:.68rem;text-transform:uppercase}.cl-hand>div{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.cl-hand>div>div{display:flex;flex-direction:column;gap:.18rem}.cl-hand span{color:#8e302d;font-size:.7rem;font-weight:900;text-transform:uppercase}.cl-hand strong{font-size:.82rem}.cl-hand em{color:#756d60;font-size:.82rem}.cl-solution{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;font-family:Libre Baskerville,serif}.cl-solution .row{width:100%;justify-content:center}@media(max-width:700px){.tv-choices,.cl-layout{grid-template-columns:1fr}.tv-header,.cl-header{align-items:center}.cl-board{aspect-ratio:1}.cl-hand>div{grid-template-columns:1fr}}
