*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f7f5ff;background:#080817;font-synthesis:none;--ink: #f7f5ff;--muted: #9d9aae;--panel: rgba(23, 22, 43, .82);--line: rgba(255, 255, 255, .1);--coral: #ff4f67;--amber: #ffc63d;--mint: #38e6a1;--violet: #9a6cff;--focus: #fff2a8}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 50% 0%,#211847 0,#0c0b1d 42%,#070713)}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button:disabled{cursor:not-allowed}.app{min-height:100vh}.eyebrow{margin:0 0 .55rem;color:#aaa6c3;font-size:.68rem;font-weight:900;letter-spacing:.19em}.ambient{position:fixed;width:36rem;height:36rem;border-radius:50%;filter:blur(90px);opacity:.2;pointer-events:none}.ambient-one{left:-16rem;top:-12rem;background:var(--violet)}.ambient-two{right:-15rem;bottom:-16rem;background:var(--coral)}.landing-shell{position:relative;display:grid;place-items:center;min-height:100vh;padding:clamp(1.25rem,5vw,4rem);isolation:isolate}.landing-shell:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.28;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(circle,#000,transparent 76%);mask-image:radial-gradient(circle,#000,transparent 76%)}.entry-stage{display:grid;gap:clamp(1.6rem,4vh,2.8rem);width:min(34rem,100%)}.site-wordmark{margin:0;text-align:center;font-size:clamp(3.5rem,10vw,6rem);font-weight:950;letter-spacing:-.075em;line-height:.9}.site-wordmark span{color:var(--coral)}.entry-card{position:relative;width:100%;padding:.85rem;border:1px solid rgba(255,255,255,.14);border-radius:2rem;background:linear-gradient(145deg,#23203ef0,#100f20f5);box-shadow:0 2.5rem 7rem #0000006b,inset 0 1px #ffffff14}.entry-card form{padding:2rem 1.4rem 1.35rem}.entry-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;padding:.3rem;border-radius:1.25rem;background:#00000045}.entry-tabs button{min-height:3.35rem;padding:.85rem;border:0;border-radius:.95rem;color:var(--muted);font-size:.95rem;font-weight:850;background:transparent;cursor:pointer}.entry-tabs button.active{color:var(--ink);background:#ffffff17;box-shadow:0 5px 16px #0003}.field{display:grid;gap:.55rem;margin-bottom:1.25rem}.field span{color:#c2bece;font-size:.78rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.field input,.rule-fields input,.rule-fields select{min-height:3.65rem;width:100%;padding:0 1rem;border:1px solid rgba(255,255,255,.12);border-radius:1rem;color:var(--ink);background:#06061099;transition:border-color .2s,box-shadow .2s}.field input:focus{border-color:var(--violet);box-shadow:0 0 0 4px #9a6cff21;outline:0}.room-code-input{letter-spacing:.22em;font-size:1.3rem!important;font-weight:900;text-transform:uppercase}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:3.35rem;padding:0 1.3rem;border:0;border-radius:1rem;color:#0b0817;font-weight:950;background:linear-gradient(135deg,#d9cbff,#a57aff 57%,#ff6e85);box-shadow:0 .55rem #50347e,0 1rem 2rem #673ea847;cursor:pointer;transition:transform .15s,filter .15s}.primary-button:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px)}.primary-button:active:not(:disabled){transform:translateY(.35rem);box-shadow:0 .2rem #50347e}.primary-button:disabled{opacity:.38;filter:grayscale(.4);box-shadow:0 .35rem #2d2940}.entry-submit{width:100%;margin-top:.4rem}.entry-submit span{margin-left:auto;font-size:1.4rem}.topbar,.game-topbar{display:flex;align-items:center;gap:1.25rem;min-height:4rem}.mini-brand{display:inline-flex;align-items:center;color:var(--ink);text-decoration:none;font-size:1.2rem;font-weight:950;letter-spacing:-.055em}.mini-brand span:first-letter{color:var(--coral)}.ghost-button{min-height:2.6rem;padding:0 1rem;border:1px solid var(--line);border-radius:.8rem;background:#ffffff0a;cursor:pointer}.ghost-button:hover{background:#ffffff17}.ghost-button.danger{color:#ff9baa}.connection-pill{margin-left:auto;padding:.45rem .75rem;border:1px solid var(--line);border-radius:999px;color:#aaa6b8;font-size:.72rem}.online-dot{display:inline-block;width:.5rem;height:.5rem;margin-right:.35rem;border-radius:50%;background:var(--mint);box-shadow:0 0 .7rem var(--mint)}.panel{border:1px solid var(--line);border-radius:1.7rem;background:var(--panel);box-shadow:0 1.5rem 4rem #0003;backdrop-filter:blur(16px)}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem 1.5rem;border-bottom:1px solid var(--line)}.panel-title h2{margin:0;font-size:1.55rem;letter-spacing:-.025em}.lobby-shell{width:min(1360px,100%);min-height:100vh;margin:auto;padding:1.2rem clamp(1rem,3vw,3rem) 3rem}.room-strip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(1rem,3vw,2.5rem);margin:clamp(1.5rem,4vh,3rem) 0 1.3rem;padding:1.05rem 1.2rem;border:1px solid var(--line);border-radius:1.35rem;background:#1210229e}.room-identity{display:flex;align-items:baseline;gap:.8rem}.room-identity .eyebrow{margin:0}.room-identity h1{margin:0;font-size:1.8rem;letter-spacing:.18em;line-height:1}.room-capacity{margin:0;color:var(--muted);font-size:.82rem}.room-capacity span{margin:0 .4rem;color:#575365}.invite-code{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:2.9rem;padding:0 1rem;border:1px solid rgba(154,108,255,.3);border-radius:.85rem;color:#c9b9ff;font-weight:800;background:#9a6cff14;cursor:pointer}.invite-code span{font-size:.76rem}.invite-code i{font-size:1rem;font-style:normal}.invite-code:hover{border-color:var(--violet);background:#9a6cff24}.lobby-grid{display:grid;grid-template-columns:minmax(19rem,.62fr) minmax(34rem,1.5fr);align-items:start;gap:1.25rem}.panel-count{display:grid;justify-items:end;gap:.35rem}.panel-count strong{font-size:.9rem}.capacity-dots{display:flex;gap:.28rem}.capacity-dots i{width:.55rem;height:.55rem;border-radius:50%;background:#ffffff1f}.capacity-dots i.filled{background:var(--mint)}.player-list{display:grid;gap:.65rem;padding:1.1rem}.lobby-player{position:relative;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.8rem;min-height:4.5rem;padding:.6rem .75rem;border:1px solid transparent;border-radius:1rem;background:#ffffff09}.lobby-player.is-me{border-color:#9a6cff59;background:#9a6cff14}.avatar{display:grid;flex:0 0 auto;place-items:center;width:2.8rem;height:2.8rem;border-radius:.9rem;color:#0a0915;font-weight:950;background:var(--violet);box-shadow:inset 0 0 0 2px #ffffff40}.avatar-0,.avatar-me{background:var(--coral)}.avatar-1{background:var(--amber)}.avatar-2{background:var(--mint)}.avatar-3{background:var(--violet)}.lobby-player div{min-width:0}.lobby-player strong,.lobby-player small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lobby-player small{margin-top:.2rem;color:var(--muted);font-size:.7rem}.ready-state{padding:.32rem .55rem;border-radius:.55rem;color:#9b97a9;font-size:.68rem;font-weight:900;background:#ffffff0f}.ready-state.ready{color:var(--mint);background:#38e6a11c}.kick-button{border:0;color:#8e899c;font-size:1.35rem;background:transparent;cursor:pointer}.kick-button:hover{color:var(--coral)}.empty-seat{display:flex;align-items:center;gap:.8rem;min-height:4.2rem;padding:.6rem .75rem;border:1px dashed rgba(255,255,255,.13);border-radius:1rem;color:#706c80}.empty-seat>span{display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:.8rem;font-size:1.4rem;background:#ffffff09}.empty-seat p{margin:0;font-size:.8rem}.empty-seat small{color:#5b5867}.lobby-actions{padding:.5rem 1.1rem 1.3rem}.ready-button{display:flex;align-items:center;justify-content:center;gap:.65rem;width:100%;min-height:3.2rem;border:1px solid var(--line);border-radius:.9rem;font-weight:850;background:#ffffff0a;cursor:pointer}.ready-button.active{color:var(--mint);border-color:#38e6a159;background:#38e6a114}.ready-button span{font-size:1.3rem}.start-button{width:100%;margin-top:1rem}.start-reason,.start-ok{margin:1rem 0 0;color:#8f8a9d;font-size:.72rem;text-align:center}.start-ok{color:var(--mint)}.lock-badge{color:#aaa6b7;font-size:.7rem}.settings-panel{overflow:hidden}.rules-panel{padding:1.25rem}.preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}.preset-card{display:grid;grid-template-columns:auto 1fr;align-content:center;-moz-column-gap:.65rem;column-gap:.65rem;min-height:6.4rem;padding:.9rem;border:1px solid var(--line);border-radius:1rem;text-align:left;background:#ffffff06;cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.preset-card>span{grid-row:1 / 3;display:grid;place-items:center;width:2.15rem;height:2.15rem;border-radius:.65rem;color:#d8ccff;font-size:1.15rem;background:#9a6cff1f}.preset-card strong,.preset-card small{display:block}.preset-card strong{align-self:end;font-size:.95rem}.preset-card small{align-self:start;margin-top:.26rem;color:var(--muted);font-size:.68rem;line-height:1.35}.preset-card:hover:not(:disabled){transform:translateY(-.12rem);border-color:#9a6cff80}.preset-card.active{border-color:var(--violet);background:#9a6cff1f;box-shadow:inset 0 0 0 1px #9a6cff38}.preset-card.active>span{color:#110c1d;background:#c8b6ff}.preset-card:disabled{cursor:default}.saved-rules-note{display:flex;align-items:center;gap:.5rem;margin:1rem 0 0;padding:.65rem .8rem;border:1px solid rgba(56,230,161,.2);border-radius:.8rem;color:#afeed5;font-size:.72rem;background:#38e6a112}.saved-rules-note span{display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;color:#0b1913;font-weight:950;background:var(--mint)}.rules-section-label{margin:1.35rem 0 .7rem;color:#c6c1d2;font-size:.75rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.rule-fields{display:grid;gap:.8rem}.rule-fields-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.rule-fields-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.rule-fields label{display:grid;gap:.42rem}.rule-fields label span{color:#aaa6b8;font-size:.74rem;font-weight:800}.rule-fields input,.rule-fields select{min-height:3.25rem;padding:0 .85rem;font-size:.9rem}.rule-groups{display:grid;gap:.7rem;margin-top:1rem}.rule-group{border:1px solid var(--line);border-radius:1rem;background:#ffffff05;overflow:hidden}.rule-group summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.25rem;padding:.8rem 1rem;cursor:pointer;list-style:none}.rule-group summary::-webkit-details-marker{display:none}.rule-group summary span,.rule-group summary strong,.rule-group summary small{display:block}.rule-group summary strong{font-size:.92rem}.rule-group summary small{margin-top:.2rem;color:var(--muted);font-size:.68rem}.rule-group summary>i{color:#b9a8ed;font-size:1.25rem;font-style:normal;transition:transform .2s}.rule-group[open] summary{border-bottom:1px solid var(--line)}.rule-group[open] summary>i{transform:rotate(180deg)}.toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;padding:.8rem}.toggle-rule{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.8rem;min-height:4.85rem;padding:.75rem .85rem;border:1px solid transparent;border-radius:.9rem;background:#ffffff08;transition:border-color .18s,background .18s}.toggle-rule:hover{border-color:#9a6cff40;background:#ffffff0e}.toggle-rule input{position:absolute;opacity:0;pointer-events:none}.toggle-rule:has(input:disabled){opacity:.5}.toggle-track{position:relative;width:2.25rem;height:1.3rem;border-radius:1rem;background:#373445;transition:background .2s}.toggle-track i{position:absolute;top:.18rem;left:.18rem;width:.94rem;height:.94rem;border-radius:50%;background:#aaa5b7;transition:transform .2s}.toggle-rule input:checked+.toggle-track{background:var(--violet)}.toggle-rule input:checked+.toggle-track i{background:#fff;transform:translate(.95rem)}.toggle-rule input:focus-visible+.toggle-track{outline:3px solid var(--focus)}.rule-label{position:relative;min-width:0}.toggle-rule strong,.toggle-rule small{display:block}.toggle-rule strong{font-size:.84rem}.toggle-rule small{margin-top:.24rem;color:#858092;font-size:.66rem;line-height:1.38}.rule-summary{display:flex;flex-wrap:wrap;gap:.35rem}.rule-summary span{padding:.35rem .55rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.65rem}.game-card{--card-color: #222;position:relative;display:block;width:clamp(5.8rem,7.8vw,8.5rem);aspect-ratio:.68;padding:0;overflow:hidden;border:.22rem solid #eeeafd;border-radius:1rem;color:#fff;background:var(--card-color);box-shadow:0 .7rem 1.2rem #00000054,inset 0 0 0 2px #00000038;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .2s cubic-bezier(.2,.75,.25,1.15),filter .2s,box-shadow .2s,border-color .2s}.game-card:before{content:"";position:absolute;width:130%;height:58%;left:-15%;top:21%;border-radius:50%;background:#fff3;transform:rotate(-27deg);box-shadow:inset 0 0 2rem #ffffff21}.card-coral{--card-color: var(--coral)}.card-amber{--card-color: #e9a909}.card-mint{--card-color: #17b87a}.card-violet{--card-color: var(--violet)}.card-wild{--card-color: #171522;background:conic-gradient(from 20deg,var(--coral),var(--amber),var(--mint),var(--violet),var(--coral))}.card-corner{position:absolute;z-index:2;top:.42rem;left:.48rem;display:grid;justify-items:center;line-height:.8;text-shadow:0 2px 2px rgba(0,0,0,.2)}.card-corner b{font-size:clamp(.9rem,1.5vw,1.3rem)}.card-corner i{margin-top:.25rem;font-size:.58rem;font-style:normal}.card-corner-bottom{inset:auto .48rem .42rem auto;transform:rotate(180deg)}.card-orbit{position:absolute;z-index:2;inset:0;display:grid;place-content:center;justify-items:center;text-shadow:0 .2rem .2rem rgba(0,0,0,.24)}.card-orbit b{font-size:clamp(2rem,4.2vw,4.25rem);letter-spacing:-.08em}.card-orbit i{margin-top:.15rem;font-size:clamp(.65rem,1.3vw,1rem);font-style:normal}.game-card.is-compact{width:clamp(4rem,5.2vw,5.6rem);border-radius:.72rem;border-width:.17rem}.game-card.is-playable{cursor:pointer;filter:saturate(1.1)}.game-card.is-blocked{filter:saturate(.25) brightness(.58)}.hand .game-card:hover,.hand .game-card:focus-visible{z-index:30;border-color:#fff9c9;transform:translateY(-.7rem) scale(1.025);box-shadow:0 1.4rem 2.4rem #0000007a,0 0 0 .18rem #ffffff21}.hand .game-card.is-playable:hover,.hand .game-card.is-playable:focus-visible,.game-card.is-playable.is-selected{z-index:32;filter:saturate(1.22) brightness(1.13);border-color:#fff8ad;transform:translateY(-1.15rem) rotate(-1deg) scale(1.045);box-shadow:0 1.7rem 2.8rem #00000085,0 0 0 .2rem #fff6a83d,0 0 1.8rem #fff6a86b}.game-card:disabled{cursor:not-allowed}.card-back{display:grid;place-items:center;background:#111020}.card-back:before{inset:.3rem;width:auto;height:auto;border:2px solid rgba(255,255,255,.16);border-radius:.5rem;background:repeating-linear-gradient(45deg,transparent 0 7px,rgba(154,108,255,.22) 7px 12px);transform:none}.card-back strong{z-index:2;display:grid;place-items:center;width:58%;aspect-ratio:1;border-radius:50%;color:#13101d;font-size:clamp(.85rem,1.5vw,1.25rem);background:linear-gradient(135deg,var(--amber),var(--coral),var(--violet));transform:rotate(-9deg)}.back-count{position:absolute;z-index:3;right:-.3rem;bottom:-.3rem;display:grid;place-items:center;min-width:1.55rem;height:1.55rem;padding:.2rem;border:2px solid #0d0c19;border-radius:999px;color:#0b0914;font-weight:950;background:#fff}.game-shell{position:relative;display:grid;grid-template-rows:auto auto minmax(21rem,1fr) auto;min-height:100vh;padding:.8rem 1.2rem max(1rem,env(safe-area-inset-bottom));overflow:hidden;background:radial-gradient(ellipse at 50% 43%,#35275bb3,#0d0c1ceb 50%,#080713 83%);animation:table-arrival .5s both}.game-shell:before{content:"";position:absolute;inset:4.4rem 1rem 10rem;border:1px solid rgba(255,255,255,.045);border-radius:45%;background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:21px 21px;pointer-events:none}.action-effect{position:fixed;z-index:8;inset:0;overflow:hidden;pointer-events:none}.action-effect>b{position:absolute;left:50%;top:48%;display:grid;place-items:center;width:5rem;height:5rem;border:1px solid rgba(255,255,255,.22);border-radius:1.25rem;color:#ffffffb8;font-size:2.6rem;background:#0d0a1c99;box-shadow:0 1.2rem 3rem #0000004d;animation:event-symbol .82s ease-out both}.action-effect:before,.action-effect:after{content:"";position:absolute;left:50%;top:48%;width:8rem;height:8rem;border:2px solid rgba(255,255,255,.18);border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(.3);animation:table-ripple .82s ease-out both}.action-effect:after{animation-delay:.1s}.effect-turn:before,.effect-turn:after{border-color:#ffc63d61}.effect-draw:before,.effect-draw:after{border-color:#9a6cff94}.effect-penalty{background:radial-gradient(circle at 50% 48%,rgba(255,79,103,.2),transparent 48%);animation:penalty-flash .65s both}.effect-penalty>b{color:var(--coral);border-color:#ff4f678c}.effect-penalty:before,.effect-penalty:after{border-color:#ff4f67b3}.effect-call>b{color:var(--amber)}.effect-call:before,.effect-call:after{border-color:#ffc63dcc;box-shadow:0 0 2rem #ffc63d40}.effect-swap>b{color:var(--mint)}.effect-swap:before,.effect-swap:after{width:13rem;height:13rem;border-style:dashed;border-color:#38e6a1a6;animation-name:swap-ripple}.effect-win{background:radial-gradient(circle at 50% 48%,rgba(255,198,61,.25),transparent 55%);animation:victory-flash 1.2s both}.effect-win>b{color:var(--amber)}.effect-disconnect{background:linear-gradient(90deg,rgba(255,79,103,.08),transparent 20% 80%,rgba(255,79,103,.08));animation:penalty-flash .7s both}.game-topbar{position:relative;z-index:10;border-bottom:1px solid var(--line)}.match-meta{display:flex;gap:1rem;color:var(--muted);font-size:.7rem}.match-meta b{color:var(--ink);letter-spacing:.12em}.game-menu{display:flex;gap:.5rem;margin-left:auto}.opponents{position:relative;z-index:3;display:flex;justify-content:center;gap:clamp(.4rem,2vw,1.3rem);padding:.65rem 3rem}.opponent{position:relative;display:grid;grid-template-columns:auto minmax(3rem,1fr) auto;align-items:center;gap:.55rem;min-width:min(15rem,18vw);padding:.45rem .6rem;border:1px solid var(--line);border-radius:1rem;background:#121022bd;transition:border-color .2s,box-shadow .2s,transform .2s;animation:opponent-arrival .34s both}.opponent.active{border-color:var(--amber);box-shadow:0 0 0 2px #ffc63d21,0 0 1.5rem #ffc63d1c;transform:translateY(.2rem)}.opponent.active:after{content:"";position:absolute;inset:-.18rem;z-index:-1;border:1px solid rgba(255,198,61,.45);border-radius:1.1rem;animation:active-player-pulse 1.15s infinite alternate}.opponent.offline{opacity:.45;filter:grayscale(1)}.opponent .avatar{width:2.25rem;height:2.25rem;border-radius:.65rem}.opponent div:nth-child(2){min-width:0}.opponent strong,.opponent small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.opponent strong{font-size:.76rem}.opponent small{margin-top:.12rem;color:var(--muted);font-size:.58rem}.opponent-cards{position:relative;display:flex;align-items:center}.opponent-cards .game-card{width:1.8rem;border-width:1px;border-radius:.28rem;box-shadow:none}.opponent-cards .game-card strong{font-size:.4rem}.opponent-cards b{margin-left:.35rem;font-size:1.1rem}.card-count-bump{animation:count-bump .34s both}.forgot-call{position:absolute;top:100%;left:50%;z-index:5;padding:.25rem .45rem;border-radius:.4rem;color:#15090b;font-size:.55rem;font-weight:900;white-space:nowrap;background:var(--coral);transform:translate(-50%,-.1rem)}.catch-button{position:absolute;z-index:7;top:-.65rem;right:-.65rem;display:grid;place-items:center;width:2.2rem;height:2.2rem;padding:0;border:2px solid #fff4f6;border-radius:50%;color:#17070a;font-size:1.25rem;font-weight:950;background:var(--coral);box-shadow:0 .5rem 1.3rem #ff4f6773;cursor:pointer;animation:catch-attention .52s infinite alternate}.table-zone{position:relative;z-index:2;display:grid;align-content:center;justify-items:center;min-height:20rem}.action-cue{position:absolute;z-index:9;top:clamp(.2rem,4vh,2rem);left:50%;max-width:min(28rem,calc(100vw - 2rem));padding:.55rem .85rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#f7f5ff;font-size:.72rem;font-weight:850;text-align:center;background:#18142aeb;box-shadow:0 .8rem 2rem #0000004d;pointer-events:none;animation:action-cue-in 1.35s both}.cue-penalty{color:#190a0d;border-color:var(--coral);background:var(--coral)}.cue-call{color:#150f02;border-color:var(--amber);background:var(--amber)}.cue-win{color:#150f02;background:var(--amber)}.turn-banner{display:flex;align-items:center;gap:.65rem;min-width:15rem;padding:.45rem .65rem;border:1px solid rgba(255,255,255,.11);border-radius:1rem;background:#0a0916b8;animation:turn-shift .38s both}.turn-banner>div{display:grid}.turn-banner small{color:var(--muted);font-size:.55rem;font-weight:900;letter-spacing:.12em}.turn-banner strong{font-size:.82rem}.color-beacon{display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:.72rem;color:#0b0915;font-weight:950;animation:color-pop .4s both}.beacon-coral{background:var(--coral)}.beacon-amber{background:var(--amber)}.beacon-mint{background:var(--mint)}.beacon-violet{background:var(--violet)}.turn-timer{position:relative;display:grid;place-items:center;width:2.4rem;height:2.4rem;margin-left:auto;border:2px solid #514c63;border-radius:50%;font-size:.75rem;font-weight:900}.turn-timer.urgent{color:var(--coral);border-color:var(--coral);animation:pulse-warning .7s infinite alternate}.table-center{display:flex;align-items:center;justify-content:center;gap:clamp(1.5rem,4vw,4rem);margin-top:1rem}.draw-pile{display:grid;justify-items:center;padding:0;border:0;background:transparent;cursor:pointer}.draw-pile>span:last-child,.discard-pile>span{margin-top:.55rem;color:var(--muted);font-size:.62rem;font-weight:800}.draw-card-motion,.played-card-motion{display:block}.draw-card-motion.is-drawing{animation:deck-draw .52s both}.draw-pile:disabled{opacity:.55;cursor:not-allowed}.draw-pile:not(:disabled):hover .game-card{filter:brightness(1.12);transform:translateY(-.45rem) rotate(2deg);box-shadow:0 1rem 1.6rem #0006,0 0 1.2rem #9a6cff57}.draw-pile kbd{margin-left:.3rem}.discard-pile{display:grid;justify-items:center}.discard-pile .game-card{transform:rotate(3deg)}.played-card-motion{animation:card-play-from-opponent .52s cubic-bezier(.18,.82,.24,1.15) both}.played-card-motion.from-me{animation-name:card-play-from-me}.direction-indicator{display:grid;justify-items:center;gap:.15rem;color:#b0abba}.direction-indicator span{font-size:2.2rem;transition:transform .45s;animation:direction-flip .58s both}.direction-indicator span.reverse{transform:scaleX(-1) rotate(45deg)}.direction-indicator small{font-size:.55rem}.status-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.7rem}.status-row>span{padding:.34rem .55rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.62rem;background:#0000002e}.text-coral{color:var(--coral)}.text-amber{color:var(--amber)}.text-mint{color:var(--mint)}.text-violet{color:var(--violet)}.penalty-chip{animation:penalty-hit .5s both}.penalty-chip b{color:var(--coral);font-size:.8rem}.action-log{position:absolute;z-index:4;top:8.2rem;left:1.2rem;width:min(13rem,18vw);padding:.75rem;border-left:1px solid var(--line)}.action-log p:not(.eyebrow){margin:.35rem 0;color:#898596;font-size:.6rem;line-height:1.35;animation:log-in .28s both}.action-log p:first-of-type{color:#d7d2e2}.action-log .log-win,.action-log .log-penalty{color:var(--amber)!important}.my-zone{position:relative;z-index:10;display:grid;grid-template-columns:minmax(8rem,13rem) minmax(0,1fr) minmax(7rem,10rem);align-items:end;gap:1rem;min-height:12.5rem;padding:0;overflow:visible}.my-player{display:flex;align-items:center;gap:.65rem;padding-bottom:.8rem}.my-player strong,.my-player small{display:block}.my-player small{color:var(--muted);font-size:.62rem}.hand{position:relative;display:flex;align-items:end;justify-content:center;min-width:0;height:clamp(12.5rem,22vh,15rem);padding:1.4rem 2.5rem .25rem;overflow-x:auto;overflow-y:hidden;scroll-padding-inline:2.5rem;scrollbar-width:thin}.hand>div{position:relative;z-index:calc(var(--card-index) + 1);flex:0 0 auto;margin-left:clamp(-2.4rem,-2.5vw,-1rem);transform-origin:50% 110%;animation:deal-in .4s both;animation-delay:calc(var(--card-index) * 45ms)}.hand>div:hover,.hand>div:focus-within{z-index:100}.hand>div:first-child{margin-left:0}.hand .game-card{width:clamp(5.3rem,7.3vw,7.8rem)}.call-button{justify-self:end;min-width:7.5rem;padding:.8rem;border:1px solid rgba(255,255,255,.1);border-radius:1.1rem;color:#716d7d;background:#ffffff09;transition:filter .2s,box-shadow .2s,transform .2s}.call-button span,.call-button b,.call-button small{display:block}.call-button span{font-size:1.4rem}.call-button b{font-size:.8rem;letter-spacing:.1em}.call-button small{margin-top:.2rem;font-size:.55rem}.call-button.available{color:#160b0d;border-color:var(--coral);background:var(--coral);box-shadow:0 0 1.5rem #ff4f674d;cursor:pointer;animation:call-attention .6s infinite alternate}.call-button.available:hover{filter:brightness(1.15);transform:translateY(-.18rem)}.opponent.player-action-play{animation:opponent-play .5s both}.opponent.player-action-draw,.opponent.player-action-penalty{animation:opponent-draw .55s both}.opponent.player-action-call{animation:opponent-call .65s both}.opponent.player-action-swap{animation:opponent-swap .72s both}.turn-timer{border-color:transparent;background:linear-gradient(#0e0c1c,#0e0c1c) padding-box,conic-gradient(var(--amber) calc(var(--timer-progress) * 1turn),#514c63 0) border-box}.turn-timer.urgent{border-color:transparent;background:linear-gradient(#0e0c1c,#0e0c1c) padding-box,conic-gradient(var(--coral) calc(var(--timer-progress) * 1turn),#514c63 0) border-box}.my-zone{min-height:14rem}.my-zone.my-action-play{animation:hand-play .48s both}.my-zone.my-action-draw{animation:hand-draw .55s both}.my-zone.my-action-penalty{animation:hand-penalty .62s both}.my-zone.my-action-call{animation:hand-call .62s both}.my-zone.my-action-swap{animation:hand-swap .72s both}.hand{height:clamp(14rem,24vh,16rem);padding:1.85rem 3rem .65rem;scroll-padding-inline:3rem}.modal-backdrop{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:1rem;background:#05040dad;backdrop-filter:blur(9px)}.game-modal{width:min(31rem,100%);padding:1.5rem;border:1px solid rgba(255,255,255,.15);border-radius:1.6rem;text-align:center;background:linear-gradient(145deg,#282143,#12101f);box-shadow:0 2rem 6rem #0000008c;animation:modal-in .22s both}.game-modal h2{margin:0 0 1.1rem;font-size:1.8rem;letter-spacing:-.035em}.modal-copy{color:var(--muted);font-size:.84rem;line-height:1.55}.modal-actions{display:flex;justify-content:center;gap:.75rem;margin-top:1.2rem}.color-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.color-choice{display:grid;gap:.3rem;min-height:7rem;place-content:center;border:2px solid rgba(255,255,255,.18);border-radius:1rem;color:#0c0a16;cursor:pointer}.color-choice span{font-size:1.8rem}.color-choice b{font-size:.67rem}.choice-coral{background:var(--coral)}.choice-amber{background:var(--amber)}.choice-mint{background:var(--mint)}.choice-violet{background:var(--violet)}.color-choice:hover{transform:translateY(-.3rem)}.player-picker{display:grid;gap:.5rem}.player-picker button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.55rem;border:1px solid var(--line);border-radius:.9rem;text-align:left;background:#ffffff0a;cursor:pointer}.player-picker button:hover{border-color:var(--violet)}.player-picker small{color:var(--muted)}.winner-burst{margin:.3rem auto;color:var(--amber);font-size:4rem;text-shadow:0 0 2rem var(--amber);animation:winner-spin 2s infinite linear}.winner-line{font-size:1rem}.winner-line b{color:var(--amber)}.score-table{margin:1rem 0;border-top:1px solid var(--line)}.score-table p{display:flex;justify-content:space-between;margin:0;padding:.65rem .2rem;border-bottom:1px solid var(--line)}.rematch-status{margin:.9rem 0;color:var(--muted);font-size:.75rem}.rematch-button{width:100%}.rematch-button.is-ready{min-height:3.35rem;color:#ffabb8;border-color:#ff4f674d;background:#ff4f6714}.rules-drawer{position:fixed;z-index:40;top:0;right:0;width:min(38rem,100%);height:100vh;padding:1.5rem;overflow:auto;border-left:1px solid var(--line);background:#11101f;box-shadow:-2rem 0 5rem #00000073}.rules-drawer>button{float:right;border:0;font-size:1.8rem;background:none;cursor:pointer}.rules-drawer .rules-panel{max-height:none;padding:0}.rules-drawer .preset-grid,.rules-drawer .rule-fields{grid-template-columns:1fr 1fr}.result-actions{display:grid;grid-template-columns:1fr auto;gap:.7rem}.result-actions .home-button{min-height:3.35rem;padding-inline:1.2rem}.accessibility-button{position:fixed;z-index:80;right:1rem;bottom:1rem;display:grid;place-items:center;width:2.8rem;height:2.8rem;border:1px solid var(--line);border-radius:50%;color:#d9d4e5;font-size:1.15rem;background:#110f1fe6;box-shadow:0 .5rem 1.5rem #0000004d;cursor:pointer}.accessibility-popover{position:fixed;z-index:79;right:1rem;bottom:4.4rem;width:min(23rem,calc(100vw - 2rem));padding:1.1rem;border:1px solid var(--line);border-radius:1.2rem;background:#171426;box-shadow:0 1.4rem 4rem #00000073}.accessibility-popover>div{display:flex;justify-content:space-between}.accessibility-popover>div button{border:0;font-size:1.25rem;background:none;cursor:pointer}.accessibility-popover label{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.accessibility-popover label input{position:relative;flex:0 0 auto;width:2.5rem;height:1.4rem;margin:0;border:0;border-radius:999px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#3d394a;cursor:pointer;transition:background .2s}.accessibility-popover label input:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1rem;height:1rem;border-radius:50%;background:#bbb6c8;transition:transform .2s,background .2s}.accessibility-popover label input:checked{background:var(--violet)}.accessibility-popover label input:checked:after{background:#fff;transform:translate(1.1rem)}.accessibility-popover label input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.accessibility-popover b,.accessibility-popover small{display:block}.accessibility-popover b{font-size:.9rem}.accessibility-popover small{margin-top:.2rem;color:var(--muted);font-size:.7rem}.keyboard-hint{color:var(--muted);font-size:.68rem;line-height:1.8}kbd{padding:.12rem .3rem;border:1px solid #524e60;border-radius:.25rem;color:#d9d5df;font:inherit;background:#292637}.toast{position:fixed;z-index:100;left:50%;bottom:1rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;width:min(31rem,calc(100% - 2rem));padding:.75rem;border:1px solid rgba(255,79,103,.38);border-radius:1rem;background:#28141d;box-shadow:0 1rem 3rem #0006;transform:translate(-50%)}.toast>span{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;color:#18070b;font-weight:950;background:var(--coral)}.toast p{margin:0;font-size:.78rem}.toast button{border:0;font-size:1.2rem;background:transparent;cursor:pointer}.offline-banner{position:fixed;z-index:90;top:.8rem;left:50%;padding:.55rem .8rem;border-radius:.7rem;color:#170c06;font-size:.72rem;font-weight:900;background:var(--amber);transform:translate(-50%)}.loading-screen{display:grid;min-height:100vh;place-content:center;justify-items:center;gap:1rem}.loader-logo{display:grid;place-items:center;width:5rem;height:5rem;border-radius:1.2rem;color:#0a0814;font-size:1.6rem;font-weight:950;background:linear-gradient(135deg,var(--amber),var(--coral),var(--violet));animation:loader 1s infinite alternate}.loading-screen p{color:var(--muted)}html[data-color-assist=on] .game-card:after{content:"";position:absolute;z-index:1;inset:0;opacity:.22;pointer-events:none}.game-card.card-coral:after{background:repeating-linear-gradient(0deg,transparent 0 8px,#000 8px 10px)}.game-card.card-amber:after{background:repeating-linear-gradient(45deg,transparent 0 8px,#000 8px 10px)}.game-card.card-mint:after{background:radial-gradient(#000 1.5px,transparent 2px);background-size:10px 10px}.game-card.card-violet:after{background:repeating-linear-gradient(90deg,transparent 0 8px,#000 8px 10px)}@keyframes deal-in{0%{opacity:0;transform:translateY(5rem) rotate(12deg)}to{opacity:1;transform:none}}@keyframes card-play-from-me{0%{opacity:0;transform:translateY(8rem) rotate(-13deg) scale(.68)}72%{opacity:1;transform:translate(.2rem,-.4rem) rotate(3deg) scale(1.07)}to{transform:none}}@keyframes card-play-from-opponent{0%{opacity:0;transform:translateY(-7rem) rotate(14deg) scale(.68)}72%{opacity:1;transform:translate(-.2rem,.3rem) rotate(-3deg) scale(1.07)}to{transform:none}}@keyframes deck-draw{0%{transform:none}45%{transform:translate(-1.1rem,1.35rem) rotate(-7deg) scale(1.09);filter:brightness(1.28)}to{transform:none}}@keyframes action-cue-in{0%{opacity:0;transform:translate(-50%,-.8rem) scale(.9)}14%,72%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-.25rem) scale(.98)}}@keyframes turn-shift{0%{opacity:.25;transform:translateY(-.55rem) scale(.97)}}@keyframes color-pop{0%{transform:scale(.55) rotate(-15deg);filter:brightness(1.6)}70%{transform:scale(1.15) rotate(4deg)}}@keyframes direction-flip{0%{opacity:.3;scale:.55}70%{opacity:1;scale:1.18}}@keyframes count-bump{0%{transform:scale(.7);color:var(--amber)}70%{transform:scale(1.28);color:var(--amber)}}@keyframes penalty-hit{0%{opacity:.2;transform:scale(.7);background:#ff4f678c}70%{transform:scale(1.12)}}@keyframes catch-attention{to{filter:brightness(1.16);box-shadow:0 .6rem 2rem #ff4f67c7,0 0 0 .28rem #ff4f6724}}@keyframes log-in{0%{opacity:0;transform:translate(-.5rem)}}@keyframes table-arrival{0%{opacity:0;filter:brightness(.72)}}@keyframes opponent-arrival{0%{opacity:0;transform:translateY(-1rem) scale(.95)}}@keyframes active-player-pulse{to{opacity:.25;transform:scale(1.035)}}@keyframes table-ripple{0%{opacity:.85;transform:translate(-50%,-50%) scale(.25)}to{opacity:0;transform:translate(-50%,-50%) scale(3.8)}}@keyframes event-symbol{0%{opacity:0;transform:translate(-50%,-35%) scale(.45) rotate(-10deg)}28%{opacity:.95;transform:translate(-50%,-50%) scale(1.08) rotate(2deg)}72%{opacity:.8;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-65%) scale(.88)}}@keyframes swap-ripple{0%{opacity:.85;transform:translate(-50%,-50%) scale(.35) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(2.8) rotate(120deg)}}@keyframes penalty-flash{0%{opacity:0}25%{opacity:1}to{opacity:0}}@keyframes victory-flash{0%{opacity:0}25%,55%{opacity:1}to{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:scale(.92) translateY(1rem)}}@keyframes winner-spin{to{transform:rotate(360deg)}}@keyframes call-attention{to{box-shadow:0 0 2.1rem #ff4f678c;filter:brightness(1.08)}}@keyframes pulse-warning{to{transform:scale(1.08)}}@keyframes opponent-play{0%{transform:translateY(-.8rem) scale(.96)}65%{transform:translateY(.35rem) scale(1.03)}}@keyframes opponent-draw{0%,to{transform:none}35%{transform:translate(-.35rem) rotate(-1deg);border-color:var(--violet)}68%{transform:translate(.25rem) rotate(1deg)}}@keyframes opponent-call{0%{filter:brightness(1.7);box-shadow:0 0 2.4rem #ffc63d80}}@keyframes opponent-swap{0%{transform:rotateY(0)}50%{transform:rotateY(90deg) scale(.92)}to{transform:rotateY(0)}}@keyframes hand-play{0%{transform:translateY(.25rem)}55%{transform:translateY(-.3rem)}}@keyframes hand-draw{0%{transform:translate(-.35rem)}55%{transform:translate(.25rem)}}@keyframes hand-penalty{0%,to{transform:none}28%{transform:translate(-.45rem);filter:brightness(1.35)}55%{transform:translate(.35rem)}78%{transform:translate(-.15rem)}}@keyframes hand-call{0%{filter:drop-shadow(0 0 1.8rem rgba(255,198,61,.65));transform:scale(.98)}60%{transform:scale(1.015)}}@keyframes hand-swap{0%{opacity:.4;transform:translate(-2rem) scale(.95)}62%{opacity:1;transform:translate(.35rem) scale(1.01)}}@keyframes loader{to{transform:rotate(8deg) scale(1.08)}}html[data-motion=reduced] *,html[data-motion=reduced] *:before,html[data-motion=reduced] *:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(max-width:1000px){.landing-shell{padding:2rem}.lobby-grid{grid-template-columns:1fr}.rule-fields-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.action-log{display:none}.opponent{min-width:0;flex:1 1 0}.opponent .avatar{display:none}.opponents{padding-inline:0}.my-zone{grid-template-columns:8rem 1fr 8rem}}@media(max-width:680px){.landing-shell{align-content:center;padding:1.3rem 1rem 5rem}.site-wordmark{font-size:clamp(3.4rem,18vw,5rem)}.entry-card{border-radius:1.4rem}.entry-card form{padding:1.5rem .7rem .8rem}.topbar .connection-pill{display:none}.room-strip{grid-template-columns:1fr auto}.room-capacity{grid-column:1 / -1;grid-row:2}.invite-code{min-width:2.9rem;padding:0 .8rem}.invite-code span{display:none}.lobby-grid{grid-template-columns:minmax(0,1fr)}.panel{border-radius:1.2rem}.preset-grid,.rule-fields-primary,.rule-fields-secondary{grid-template-columns:1fr 1fr}.toggle-grid{grid-template-columns:1fr}.rule-tooltip{position:static;display:block;width:auto;margin-top:.25rem;padding:0;border:0;color:#858092;background:transparent;box-shadow:none}.rule-help{display:none}.lobby-player{grid-template-columns:auto 1fr auto}.kick-button{position:absolute;right:.2rem;top:-.2rem}.ready-state{grid-column:3}.game-shell{grid-template-rows:auto auto minmax(17rem,1fr) auto;padding:.5rem .6rem 4.5rem;overflow-y:auto}.game-shell:before{inset:4rem .4rem 11rem}.match-meta span:last-child,.game-menu .ghost-button:first-child{display:none}.game-topbar .mini-brand{font-size:1rem}.game-menu{gap:.2rem}.game-menu .ghost-button{padding:0 .6rem}.opponents{overflow-x:auto;justify-content:start;padding-top:.85rem}.opponent{flex:0 0 8.7rem;grid-template-columns:1fr auto}.opponent div:nth-child(2){grid-column:1}.opponent-cards{grid-column:2;grid-row:1}.catch-button{top:-.45rem;right:-.35rem;width:2rem;height:2rem}.table-zone{min-height:17rem}.action-cue{top:.2rem}.table-center{gap:1rem}.table-center .game-card{width:4.9rem}.direction-indicator span{font-size:1.5rem}.turn-banner{min-width:13rem}.my-zone{grid-template-columns:1fr auto;align-items:center;min-height:13.5rem}.my-player{grid-column:1;grid-row:1;padding:0}.call-button{grid-column:2;grid-row:1;min-width:5.7rem;padding:.55rem}.hand{grid-column:1 / -1;grid-row:2;justify-content:start;height:12rem;padding:1.45rem 1.5rem .2rem;scroll-padding-inline:1.5rem}.hand>div{margin-left:-1.8rem}.hand .game-card{width:5.6rem}.color-picker{grid-template-columns:1fr 1fr}.color-choice{min-height:5.2rem}.game-modal{padding:1.2rem}.accessibility-button{bottom:.8rem}.rules-drawer .toggle-grid{grid-template-columns:1fr}.game-shell{grid-template-rows:auto auto minmax(16rem,1fr) auto}.my-zone{min-height:12.5rem}.hand{height:12rem;padding:1.7rem 2rem .6rem;scroll-padding-inline:2rem}.result-actions{grid-template-columns:1fr}}
