.clean-game-shell{min-height:calc(100svh - var(--game-shell-top-offset,4.5rem));color:#fff;font-family:var(--font-sans);background:#0f0f17;flex:1;place-items:start center;padding:clamp(1rem,2vw,1.75rem) clamp(1rem,3vw,3rem);display:grid;position:relative;overflow:auto}.clean-game-glow{display:none}.clean-game-layout{grid-template-columns:minmax(0,min(58vw,900px,max(12rem,100dvh - 9rem))) minmax(320px,min(34vw,580px,64.4dvh - 5.8rem));justify-content:center;align-items:start;gap:clamp(1.25rem,3vw,3rem);width:min(100%,1540px);display:grid;position:relative}.clean-game-layout[data-game-match-layout]:not([data-game-viewport-active]){display:none!important}.clean-game-shell .clean-game-layout:fullscreen{isolation:isolate;background:#0f0f17;grid-template-columns:minmax(0,min(58vw,900px)) minmax(400px,min(34vw,580px));justify-content:center;align-items:center;gap:clamp(1.25rem,3vw,3.75rem);width:100%;max-width:none;min-height:100dvh;padding:clamp(1rem,2.5vw,2.5rem);overflow:hidden}.clean-game-shell .clean-game-layout:fullscreen .clean-board-stage{width:100%;height:calc(100dvh - clamp(2rem,5vw,5rem));min-height:0}.clean-game-shell .clean-game-layout:fullscreen .clean-match-panel{overscroll-behavior:contain;scrollbar-color:#ffffff29 transparent;scrollbar-width:thin;width:100%;max-height:calc(100dvh - clamp(2rem,5vw,5rem));overflow-y:auto}.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame:not(.clean-board-frame--hex){--clean-board-max-width:900px;--clean-board-height-reserve:7rem}.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame--hex{--clean-board-max-width:1050px;--clean-board-height-reserve:5rem}.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame--connect4 .connect4-board-shell{width:100%}.clean-game-shell .connect4-board__cell .connect4-board__disc{width:96%}.clean-game-shell .connect4-board__disc--preview-rail{width:calc(96% / var(--connect4-columns))}.clean-game-layout--tutorial{grid-template-columns:minmax(0,min(700px,max(12rem,100dvh - 9rem))) 390px;width:fit-content;max-width:100%}.clean-game-shell.clean-game-shell--tutorial{overflow:clip visible}.clean-game-shell--tutorial .clean-board-stage:before{display:none}html:has(.clean-game-shell--tutorial){scrollbar-width:none}html:has(.clean-game-shell--tutorial)::-webkit-scrollbar{display:none}.clean-board-stage{isolation:isolate;place-items:center;width:100%;min-width:0;min-height:min(72svh,720px);display:grid;position:relative}@media (min-width:901px) and (min-height:601px){.clean-game-layout[data-game-match-layout]:not(:fullscreen):not(:has(.clean-setup-ticket-panel)):not(:has(.clean-board-frame--connect4)) .clean-board-stage{translate:0 var(--board-alignment-shift,0px);place-items:start center;padding-block-start:2.15rem}}@media (min-width:901px) and (max-width:1050px){.clean-game-layout[data-game-match-layout]:not(:fullscreen):has(.clean-board-frame--hex) .clean-board-stage{padding-block-start:0}}.clean-board-stage:before{z-index:-1;content:"";filter:blur(55px);pointer-events:none;background:radial-gradient(#c6ff3414,#c6ff3406 38%,#0000 70%);position:absolute;inset:-40%}.game-setup-lobby .clean-game-layout{align-items:start}@media (min-width:901px){.game-setup-lobby .clean-game-layout{grid-template-columns:minmax(0,min(58vw,900px,max(12rem,100dvh - 9rem))) minmax(440px,490px)}}.game-setup-lobby .clean-board-stage{place-items:start center;min-height:min(72svh,720px)}.game-setup-lobby .clean-board-stage [data-game-id]{justify-content:flex-start}.clean-board-stage.has-board-extras{grid-template-rows:auto minmax(0,1fr) auto;align-items:center;gap:.75rem}.clean-board-topline{justify-content:space-between;align-self:start;align-items:center;gap:1rem;width:100%;min-height:2.25rem;display:flex}.clean-board-stage:has(:fullscreen)>.clean-board-topline{display:none}.clean-board-frame{--clean-board-max-width:900px;--clean-board-height-reserve:12rem;--board-glow-x:50%;--board-glow-y:0px;--board-glow-strength:.18;--board-glow-soft:.06;width:min(100%, var(--clean-board-max-width), max(12rem, calc(100svh - var(--clean-board-height-reserve))));width:min(100%, var(--clean-board-max-width), max(12rem, calc(100dvh - var(--clean-board-height-reserve))));direction:ltr;max-width:100%;margin-inline:auto;container-type:inline-size}.clean-board-frame--connect4,.clean-board-frame--reversi{--clean-board-max-width:900px;--clean-board-height-reserve:9rem}.clean-board-frame--connect4 .connect4-board-shell__hover-rail{height:1rem}.clean-board-frame--dots,.clean-board-frame--chess{--clean-board-max-width:900px}.clean-board-frame--gomoku,.clean-board-frame--morris{--clean-board-max-width:900px;--clean-board-height-reserve:11rem}.clean-board-frame--mancala{--clean-board-max-width:980px;--clean-board-height-reserve:8rem;width:min(100%, var(--clean-board-max-width))}.clean-board-frame--backgammon{--clean-board-max-width:1040px;--clean-board-height-reserve:11rem;width:min(100%, var(--clean-board-max-width))}.clean-board-frame--chinese-checkers{--clean-board-max-width:860px;width:min(100%, var(--clean-board-max-width), 78svh);width:min(100%, var(--clean-board-max-width), 78dvh)}.clean-board-frame--fanorona{--clean-board-max-width:980px;--clean-board-height-reserve:10rem;width:min(100%, var(--clean-board-max-width));border-radius:1.75rem}.clean-board-frame--checkers{--clean-board-max-width:840px;--clean-board-height-reserve:9rem}.clean-board-frame--kings-valley{--clean-board-max-width:820px;--clean-board-height-reserve:15rem}.clean-board-frame--agon,.clean-board-frame--hell-dance{--clean-board-max-width:780px;--clean-board-height-reserve:10rem;width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.579svh - 8.658rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.579dvh - 8.658rem)))}.clean-board-frame--abalone{--clean-board-max-width:720px;--clean-board-height-reserve:11rem;width:min(100%,720px,92dvh)}@media (min-width:1101px){.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame--agon,.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame--hell-dance{width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.579dvh - 4.329rem)))}}.clean-board-frame--slimetrail{--clean-board-max-width:820px;--clean-board-height-reserve:15rem}.clean-board-frame--amazons{--clean-board-max-width:760px;--clean-board-height-reserve:12rem}.clean-board-frame--go{--clean-board-max-width:900px;--clean-board-height-reserve:11rem}.clean-board-frame--pentago,.clean-board-frame--orbit-four{--clean-board-max-width:900px;--clean-board-height-reserve:9rem}.clean-board-frame--chy{--clean-board-max-width:900px;--clean-board-height-reserve:12rem}.clean-board-frame--triggle{--clean-board-max-width:780px;--clean-board-height-reserve:10rem;width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.874svh - 8.6874rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.874dvh - 8.6874rem)))}@media (min-width:1101px){.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame--triggle{width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.874dvh - 4.3437rem)))}}.clean-board-frame--ultimate-tic-tac-toe,.clean-board-frame--wall-go,.clean-board-frame--quoridor{--clean-board-max-width:900px;--clean-board-height-reserve:10rem}.clean-board-frame--fox-and-geese{--clean-board-max-width:860px;--clean-board-height-reserve:12rem}.clean-board-frame--surakarta{--clean-board-max-width:820px;--clean-board-height-reserve:10rem}.clean-game-shell .clean-game-layout:fullscreen .clean-board-frame--kings-valley{--clean-board-max-width:820px;--clean-board-height-reserve:9rem}.morris-shell{background:radial-gradient(ellipse at 50% 0%, #ffffff16, transparent 36%) padding-box, radial-gradient(circle at 84% 84%, #fff0f20a, #82935306 28%, transparent 54%) padding-box, repeating-linear-gradient(94deg, #ffffff03 0 1px, transparent 1px 12px) padding-box, linear-gradient(145deg, #483c3e 0%, #2f2629 46%, #22241e 100%) padding-box, radial-gradient(260px circle at var(--board-glow-x) var(--board-glow-y), rgba(216, 255, 107, var(--board-glow-strength)), rgba(216, 255, 107, var(--board-glow-soft)) 48%, #ffffff17 78%) border-box;border:1px solid #0000;border-radius:1.25rem;width:100%;padding:clamp(.4rem,1.7cqi,.7rem);box-shadow:inset 0 1px #ffffff1f,inset 0 -14px 34px #0000007a,0 30px 70px #00000094,0 0 18px #d8ff6b12,0 0 42px #7e973909}.morris-turnbar{align-items:center;gap:clamp(.45rem,2cqi,.8rem);min-height:clamp(2.75rem,9cqi,3.55rem);padding:clamp(.3rem,1.1cqi,.45rem) clamp(.4rem,1.6cqi,.65rem) clamp(.4rem,1.6cqi,.65rem);display:flex}.morris-turnbar__piece{aspect-ratio:1;border-radius:50%;flex:none;width:clamp(1.45rem,5cqi,2rem);height:auto}.morris-turnbar div{gap:.14rem;display:grid}.morris-turnbar strong{color:#fff;letter-spacing:-.01em;font-size:.8rem;font-weight:750}.morris-turnbar small{color:#fff6;font-size:.65rem;font-weight:600}.morris-board{aspect-ratio:1;width:100%;box-shadow:none;background:0 0;border:0;border-radius:.8rem;position:relative;overflow:hidden}.morris-board:before{content:none}.morris-board__lines{z-index:1;fill:none;stroke:#030203d1;stroke-width:.3px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 .7px #ffffff12)drop-shadow(0 1px 1px #000000b8);width:100%;height:100%;position:absolute;inset:0}.morris-board__lines .morris-board__mill-line{stroke:#d3ff5a;stroke-width:.3px;filter:drop-shadow(0 .7px #daff743d)drop-shadow(0 1px 1px #000000b8);animation:.42s ease-out both morris-mill-trace}.morris-point{z-index:3;left:var(--point-x);top:var(--point-y);aspect-ratio:1;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:10.5%;padding:0;display:grid;position:absolute;translate:-50% -50%}.morris-point:disabled{cursor:default}.morris-point:focus-visible{outline-offset:2px;outline:2px solid #ffffffeb}.morris-point__node{z-index:1;aspect-ratio:1;background:radial-gradient(circle at 44% 62%,#382a2d 0%,#20191b 58%,#130f13 100%);border:1px solid #ffffff16;border-radius:50%;width:94%;position:absolute;box-shadow:inset 0 4px 8px #000000d6,inset 0 -1px 2px #ffffff0e,0 1px #ffffff16}.morris-piece{z-index:2;aspect-ratio:1;width:78%;transform-style:preserve-3d;border:0;border-radius:50%;animation:.2s cubic-bezier(.2,.9,.3,1.25) both morris-piece-land;display:block;position:relative;box-shadow:0 clamp(.18rem,.8cqi,.42rem) clamp(.28rem,1.25cqi,.7rem) #000000a8,inset 0 0 0 1px #ffffff1f}.morris-piece--red{background:radial-gradient(circle at 34% 25%,#ffe2e2eb,#0000 22%),radial-gradient(circle at 58% 82%,#4e621757,#0000 36%),linear-gradient(#98b947 0%,#7fa82b 42%,#5b781e 74%,#2c3d12 100%)}.morris-piece--white{background:radial-gradient(circle at 31% 24%,#fff 0 10%,#0000 24%),radial-gradient(circle at 55% 72%,#d9d1c3,#0000 68%),linear-gradient(145deg,#fffef9 0%,#eee8dd 55%,#aaa298 100%)}.morris-point__destination{z-index:2;aspect-ratio:1;background:#c6ff3438;border:1px solid #daff76;border-radius:50%;width:32%;position:relative;box-shadow:0 0 12px #cbff3b8c}.morris-point.is-selected:after,.morris-point.is-removable:after,.morris-point.is-last:after{content:"";z-index:1;border:2px solid #d8ff6cd9;border-radius:50%;position:absolute;inset:2%;box-shadow:0 0 16px #cbff3b7a}.morris-point.is-last:after{opacity:.55;border-width:1px;inset:12%}.morris-point.is-removable:after{border-style:dashed;border-color:#ff464bf0;animation:.8s ease-in-out infinite alternate morris-capture-pulse;box-shadow:0 0 16px #ef232894}.morris-point.is-mill .morris-point__node{border-color:#e1ff8fad;box-shadow:inset 0 4px 8px #000000d6,inset 0 -1px 2px #ffffff0e,0 1px #ffffff16,0 0 0 2px #d8ff6b29,0 0 24px #d8ff6b47}.morris-point.is-tutorial-rejected .morris-piece{will-change:opacity, transform;animation:.48s ease-in-out both tutorial-rejected-disc}@media (hover:hover){.morris-point:not(:disabled):hover .morris-piece{filter:brightness(1.12);scale:1.08}.morris-point:not(:disabled):hover .morris-point__destination{background:#d0ff4f61;scale:1.3}}@keyframes morris-piece-land{0%{opacity:0;translate:0 -18%;scale:1.35}to{opacity:1;translate:0;scale:1}}@keyframes morris-capture-pulse{to{opacity:.62;scale:1.12}}@keyframes morris-mill-trace{0%{opacity:0;stroke-dasharray:3 5}to{opacity:1;stroke-dasharray:100 0}}.gomoku-board-shell{--gomoku-coordinate-column:clamp(1rem, 4cqi, 1.55rem);--gomoku-coordinate-row:clamp(.9rem, 3.5cqi, 1.35rem);grid-template-columns:var(--gomoku-coordinate-column) minmax(0, 1fr);grid-template-rows:var(--gomoku-coordinate-row) minmax(0, 1fr);aspect-ratio:1;background:radial-gradient(ellipse at 50% 0%, #ffffff16, transparent 36%) padding-box, radial-gradient(circle at 84% 84%, #fff0f20a 0%, #82935306 28%, transparent 54%) padding-box, repeating-linear-gradient(94deg, #ffffff03 0 1px, transparent 1px 12px) padding-box, linear-gradient(145deg, #483c3e 0%, #2f2629 46%, #22241e 100%) padding-box, radial-gradient(260px circle at var(--gomoku-glow-x) var(--gomoku-glow-y), rgba(216, 255, 107, var(--gomoku-glow-strength)), rgba(216, 255, 107, var(--gomoku-glow-soft)) 48%, #ffffff17 78%) border-box;border:1px solid #0000;border-radius:1rem;width:100%;padding:clamp(.35rem,1.4cqi,.55rem) clamp(.45rem,1.9cqi,.75rem) clamp(.45rem,1.9cqi,.75rem) clamp(.2rem,.9cqi,.35rem);display:grid;position:relative;box-shadow:inset 0 1px #ffffff1f,inset 0 -14px 34px #0000007a,0 30px 70px #00000094,0 0 18px #d8ff6b12,0 0 42px #7e973909}.gomoku-coordinates{color:#ffffff7a;-webkit-user-select:none;user-select:none;font-size:clamp(.38rem,1.45cqi,.58rem);font-weight:800;line-height:1;display:grid}.gomoku-coordinates--top{text-align:center;grid-column:2;grid-template-columns:repeat(15,1fr);align-items:center}.gomoku-coordinates--left{grid-row:2;grid-template-rows:repeat(15,1fr);place-items:center}.gomoku-board{--gomoku-groove-shadow:#030203b8;--gomoku-groove-highlight:#ffffff0f;grid-area:2/2;grid-template-columns:repeat(var(--gomoku-size), 1fr);grid-template-rows:repeat(var(--gomoku-size), 1fr);box-shadow:none;background:0 0;border:0;border-radius:0;display:grid;position:relative;overflow:hidden}.gomoku-intersection{z-index:auto;cursor:pointer;background:0 0;border:0;place-items:center;min-width:0;min-height:0;padding:0;transition:background-color .15s;display:grid;position:relative}.gomoku-intersection:before,.gomoku-intersection:after{content:"";z-index:0;pointer-events:none;position:absolute}.gomoku-intersection:before{background:linear-gradient(180deg, var(--gomoku-groove-shadow) 0 50%, var(--gomoku-groove-highlight) 50% 100%);height:2px;top:50%;left:0;right:0}.gomoku-intersection:after{background:linear-gradient(90deg, var(--gomoku-groove-shadow) 0 50%, var(--gomoku-groove-highlight) 50% 100%);width:2px;top:0;bottom:0;left:50%}.gomoku-intersection:nth-child(-n+15):after{top:50%}.gomoku-intersection:nth-child(n+211):after{bottom:50%}.gomoku-intersection:nth-child(15n+1):before{left:50%}.gomoku-intersection:nth-child(15n):before{right:50%}.gomoku-intersection:disabled{cursor:default}.gomoku-intersection:not(:disabled):focus-visible{outline-offset:-2px;border-radius:50%;outline:2px solid #ffffffe6}.gomoku-stone{z-index:3;aspect-ratio:1;width:82%;transform-style:preserve-3d;border-radius:50%;animation:.22s cubic-bezier(.2,.9,.3,1.25) both gomoku-stone-land;display:block;position:relative;box-shadow:0 12px 18px #0000003d,inset 0 0 0 1px #d8c18d29}.gomoku-stone--black{background:radial-gradient(circle at 34% 25%,#ffe2e2eb,#0000 22%),radial-gradient(circle at 58% 82%,#4e621757,#0000 36%),linear-gradient(#98b947 0%,#7fa82b 42%,#5b781e 74%,#2c3d12 100%)}.gomoku-stone--white{background:radial-gradient(circle at 31% 24%,#fff 0 10%,#0000 24%),radial-gradient(circle at 55% 72%,#d9d1c3,#0000 68%),linear-gradient(145deg,#fffef9 0%,#eee8dd 55%,#aaa298 100%)}.gomoku-stone--preview{opacity:.38;animation:none;scale:.86}.gomoku-stone--rejected{will-change:opacity, transform;animation:.48s ease-in-out both tutorial-rejected-disc}.gomoku-threat-marker{z-index:5;aspect-ratio:1;pointer-events:none;background:#c6ff3433;border:2px solid #c6ff34e6;border-radius:999px;width:44%;animation:1.1s ease-in-out 2 both tutorial-threat-pulse;position:absolute}.gomoku-intersection.is-last .gomoku-stone:after{content:"";box-shadow:none;border-radius:50%;position:absolute;inset:37%}.gomoku-intersection.is-last .gomoku-stone--black:after{background:#fff;border:1px solid #fffffff2}.gomoku-intersection.is-last .gomoku-stone--white:after{background:#c6ff34;border:1px solid #708f1b6b}.gomoku-winning-line{--gomoku-win-line:#fffffffa;--gomoku-win-node:#fff;z-index:8;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.gomoku-winning-line--white{--gomoku-win-line:#c6ff34f5;--gomoku-win-node:#c6ff34}.gomoku-winning-line line{stroke-dasharray:1;stroke-dashoffset:1px;stroke-linecap:round;animation:.62s cubic-bezier(.2,.9,.24,1) forwards gomoku-winning-line-draw}.gomoku-winning-line__core{stroke:var(--gomoku-win-line);stroke-width:.055px}.gomoku-winning-line__node{fill:var(--gomoku-win-node);stroke:none;opacity:0;transform-box:fill-box;transform-origin:50%;animation:.18s ease-out .36s forwards gomoku-winning-node-show}.gomoku-star{z-index:1;left:calc((var(--star-col) + .5) * 100% / var(--gomoku-size));top:calc((var(--star-row) + .5) * 100% / var(--gomoku-size));aspect-ratio:1;background:radial-gradient(circle at 44% 62%,#382a2d 0%,#20191b 58%,#130f13 100%);border:1px solid #ffffff16;border-radius:50%;width:clamp(9px,1.5cqi,16px);position:absolute;translate:-50% -50%;box-shadow:inset 0 4px 8px #000000d6,inset 0 -1px 2px #ffffff0e,0 1px #ffffff16}@keyframes gomoku-stone-land{0%{opacity:0;translate:0 -24%;scale:1.35}to{opacity:1;translate:0;scale:1}}@keyframes gomoku-winning-line-draw{to{stroke-dashoffset:0}}@keyframes gomoku-winning-node-show{0%{opacity:0;scale:.55}to{opacity:1;scale:1}}.clean-match-panel{--ticket-notch-y:49%;border-radius:var(--radius-2xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #0000;align-content:start;gap:1rem;width:100%;padding:2.15rem clamp(1.75rem,3vw,3.15rem);display:grid;overflow:hidden;box-shadow:0 30px 90px #000000b8,0 0 55px #7e973914}.clean-match-panel.clean-setup-ticket-panel{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;padding:0;overflow:visible}.clean-setup-ticket-stack{align-content:start;gap:.65rem;width:100%;display:grid}.clean-setup-board-controls-slot{z-index:10;justify-content:center;align-items:center;width:100%;min-height:3rem;padding:.15rem .5rem;display:flex;position:relative}.clean-local-card{background:#ffffff06;border:1px solid #ffffff17;border-radius:.9rem;padding:1.05rem}.clean-local-summary{background:radial-gradient(circle at 92% 0,#b4dc4524,#0000 48%),#ffffff06}.clean-local-summary__header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.clean-local-eyebrow{color:#fff6;letter-spacing:.16em;text-transform:none;font-size:.68rem;font-weight:700;display:block}.clean-local-summary h1{color:#fff;letter-spacing:-.03em;margin-top:.38rem;font-size:1.85rem;font-weight:800;line-height:1.1}.clean-local-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:1.35rem;padding-block:1rem;display:grid}.clean-local-metric{align-content:center;gap:.35rem;min-width:0;padding-inline:1rem;display:grid;position:relative}.clean-local-metric:first-child{padding-left:0}.clean-local-metric:last-child{padding-right:0}.clean-local-summary--centered .clean-local-metric{text-align:center;justify-items:center;padding-inline:1rem}.clean-local-metric:not(:last-child):after{content:"";background:linear-gradient(#0000,#ffffff1f,#0000);width:1px;height:2.65rem;position:absolute;top:50%;right:0;translate:0 -50%}.clean-local-metric span{color:#ffffff5c;letter-spacing:.1em;text-overflow:ellipsis;text-transform:none;white-space:nowrap;font-size:.63rem;font-weight:700;overflow:hidden}.clean-local-metric strong{color:#ffffffe6;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:780;overflow:hidden}.clean-local-metric.is-emphasized{background:#7e973917;border-color:#d8ff6b24}.clean-local-metric.is-emphasized strong{color:#fff}.clean-local-summary__meta{color:#ffffff52;align-items:center;gap:.35rem;margin-top:.85rem;font-size:.68rem;display:flex}.clean-local-summary__waiting{color:#fbbf24b3;margin-top:.7rem;font-size:.6rem;line-height:1.45}.clean-local-card__header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.9rem;display:flex}.clean-local-card__header>div{color:#ffffffc7;letter-spacing:.02em;align-items:center;gap:.55rem;min-width:0;font-size:.8rem;font-weight:750;display:flex}.clean-local-card__header svg{width:1rem;height:1rem}.clean-local-card__header small{color:#ffffff4d;text-overflow:ellipsis;white-space:nowrap;max-width:62%;font-size:.65rem;overflow:hidden}.clean-local-player-list{gap:.65rem;display:grid}.clean-local-player{background:#ffffff05;border:1px solid #ffffff0f;border-radius:.85rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:4.85rem;padding:.75rem .8rem;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.clean-local-player.is-active{background:#7e97391f;border-color:#d8ff6b3d;box-shadow:inset 2px 0 #d8ff6bb8}.clean-local-player.is-waiting{color:#ffffff52;place-items:center;font-size:.72rem;display:grid}.clean-local-player__avatar{color:#ffffffa3;background:linear-gradient(145deg,#27272a,#111113);border:1px solid #ffffff1a;border-radius:50%;place-items:center;width:2.7rem;height:2.7rem;font-size:.68rem;font-weight:800;display:grid}.clean-local-player__avatar svg{width:1.1rem;height:1.1rem}.clean-local-player__avatar [data-slot=avatar-fallback]{color:#ffffffa3;background:linear-gradient(145deg,#27272a,#111113);font-size:.65rem;font-weight:800}.clean-local-player__identity{min-width:0}.clean-local-player__identity strong{color:#ffffffdb;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;display:block;overflow:hidden}.clean-local-player__identity strong em{color:#ffffff5c;text-transform:none;background:#ffffff0f;border-radius:999px;margin-left:.4rem;padding:.14rem .34rem;font-size:.5rem;font-style:normal;font-weight:750;display:inline-block}.clean-local-player__identity small{color:#ffffff57;align-items:center;gap:.35rem;margin-top:.3rem;font-size:.68rem;display:flex}.clean-local-piece{border-radius:50%;flex:none;width:.65rem;height:.65rem;box-shadow:0 0 12px}.clean-local-piece.is-red{color:#7fa82b80;background:#7fa82b}.clean-local-piece.is-black{color:#ffffff29;background:#090708;border:1px solid #ffffff52}.clean-local-piece.is-white{color:#ffffff4d;background:radial-gradient(circle at 31% 24%,#fff 0 10%,#0000 24%),radial-gradient(circle at 55% 72%,#d9d1c3,#0000 68%),linear-gradient(145deg,#fffef9 0%,#eee8dd 55%,#aaa298 100%);border:1px solid #ffffffb8}.clean-local-player__score{justify-items:end;gap:.08rem;display:grid}.clean-local-player__score small{color:#ecffb8;letter-spacing:.08em;text-transform:none;font-size:.62rem;font-weight:750}.clean-local-player__score strong{color:#ffffffb8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;font-weight:800}html[dir=rtl] .clean-local-player__score strong,html[dir=rtl] .clean-practice-move-number{font-family:var(--font-sans);font-variant-numeric:normal;letter-spacing:normal}.clean-local-player__score span{color:#ffffff47;font-size:.62rem}.clean-local-match-panel{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding-inline:0;overflow:visible}.clean-local-overview{gap:.9rem;display:grid}.clean-local-summary-surface{background:#ffffff09;border-radius:1rem;padding:1rem 1.15rem}.clean-local-summary-surface .clean-local-metrics{grid-template-columns:max-content minmax(.75rem,1fr) max-content minmax(.75rem,1fr) max-content minmax(.75rem,1fr) max-content;justify-content:stretch;align-items:center;margin-top:1.35rem;padding-block:.45rem}.clean-local-summary-surface .clean-local-metric{text-align:center;justify-items:center;gap:.42rem;padding-inline:.5rem}.clean-local-summary-surface .clean-local-metric:first-child{text-align:left;justify-items:start;padding-left:0}.clean-local-summary-surface .clean-local-metric:last-child{text-align:right;justify-items:end;padding-right:0}.clean-local-summary-surface .clean-local-metric:after{content:none}.clean-local-metric-divider{place-items:center;width:100%;height:2.5rem;display:grid}.clean-local-metric-divider:before{content:"";background:linear-gradient(#0000,#ffffff24,#0000);width:1px;height:2rem}.clean-local-information{background:#ffffff09;border-radius:1rem;display:grid;overflow:hidden}.clean-local-information>.clean-local-card{background:0 0;border:0;border-radius:0;padding:1.5rem;position:relative}.clean-local-information>.clean-local-card+.clean-local-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff17 14% 86%,#0000);height:1px;position:absolute;top:0;left:1.5rem;right:1.5rem}.clean-local-information .clean-local-player-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;position:relative}.clean-local-information .clean-local-player{text-align:center;grid-template-columns:minmax(0,1fr);align-content:center;justify-items:center;gap:.4rem;min-height:8.75rem;padding:.7rem .85rem .65rem;position:relative}.clean-local-information .clean-local-player.is-active{background:radial-gradient(at 50% 112%,#b4dc451a,#0000 56%),#ffffff05;border-color:#ffffff14;box-shadow:0 14px 34px #7e97390d}.clean-local-information .clean-local-player.is-active:after{background:linear-gradient(90deg, transparent, color-mix(in oklch, var(--primary) 30%, transparent) 20%, color-mix(in oklch, var(--primary) 55%, transparent) 50%, color-mix(in oklch, var(--primary) 30%, transparent) 80%, transparent);height:1.5px;box-shadow:0 -4px 10px color-mix(in oklch, var(--primary) 20%, transparent), 0 2px 7px color-mix(in oklch, var(--primary) 10%, transparent);content:"";pointer-events:none;border-radius:999px;position:absolute;bottom:-1px;left:.8rem;right:.8rem}.clean-local-player-profile{align-items:center;gap:.8rem;width:100%;min-width:0;padding-inline:.25rem;display:flex}.clean-local-avatar-wrap{flex:none;position:relative}.clean-local-information .clean-local-player__avatar{width:3.2rem;height:3.2rem}.clean-local-avatar-wrap .clean-local-piece{border:2px solid #111113;width:1.1rem;height:1.1rem;position:absolute;bottom:-.14rem;right:-.14rem;box-shadow:0 0 6px}.clean-local-information .clean-local-player__identity{text-align:left;min-width:0}.clean-local-information .clean-local-player__score{background:linear-gradient(90deg,#0000,#ffffff14 14% 86%,#0000) top/100% 1px no-repeat;justify-items:center;width:100%;margin-top:.15rem;padding-top:.7rem}.clean-local-information .clean-local-player__score small{color:#fff;background:#2a3312;border:1px solid #d8ff6bb8;border-radius:999px;width:max-content;padding:.18rem .55rem;font-size:.5625rem;line-height:1;position:absolute;top:-.55rem;left:50%;translate:-50%}.clean-local-information .clean-local-player__score strong{font-size:1.75rem;line-height:1}.clean-local-versus{z-index:3;color:#ffffffe0;letter-spacing:.04em;background:#09090a;border:1px solid #ffffff1f;border-radius:50%;place-items:center;width:2.1rem;height:2.1rem;font-size:.625rem;font-weight:800;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 8px 22px #0000007a}.clean-practice-summary-surface{padding-inline:clamp(2rem,10%,3rem)}.clean-practice-summary-surface .clean-local-metrics{grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr) 1px minmax(0,1fr);margin-top:0;padding-block:.45rem}.clean-practice-summary-surface .clean-local-metric:first-child,.clean-practice-summary-surface .clean-local-metric:last-child{text-align:center;justify-items:center;padding-inline:.5rem}.clean-practice-winner-metric strong{color:var(--primary);font-size:1rem;font-weight:850}.clean-practice-information>.clean-local-card:first-child{padding-bottom:1.15rem}.clean-practice-information>.clean-local-card+.clean-local-card{padding-top:1.15rem}.clean-practice-move-history{min-height:7rem}.clean-practice-move-navigation{align-items:center;gap:.25rem;display:flex}.clean-practice-move-navigation small{text-align:right;min-width:2.8rem;margin-right:.2rem}html[dir=rtl] .clean-practice-move-navigation button:first-of-type{order:1}.clean-practice-move-navigation button{color:#ffffff80;cursor:pointer;background:#ffffff06;border:1px solid #ffffff12;border-radius:.48rem;place-items:center;width:1.65rem;height:1.65rem;transition:border-color .15s,background .15s,color .15s;display:grid}.clean-practice-move-navigation button:hover:not(:disabled),.clean-practice-move-navigation button:focus-visible{color:#fff;background:#7e973924;border-color:#d8ff6b40;outline:none}.clean-practice-move-navigation button:focus-visible{border-color:var(--ring);outline:2px solid var(--ring);outline-offset:2px}.clean-practice-move-navigation button:disabled{opacity:.24;cursor:not-allowed}.clean-practice-move-navigation svg{width:.85rem;height:.85rem}.clean-practice-move-history__empty{color:#ffffff45;text-align:center;align-content:center;place-items:center;gap:.4rem;min-height:4.5rem;font-size:.75rem;display:grid}.clean-practice-move-history__empty svg{width:1rem;height:1rem}.clean-practice-move-list{overscroll-behavior-y:contain;scrollbar-color:#ffffff1f transparent;scrollbar-width:thin;gap:.25rem;max-height:9rem;padding-right:.15rem;display:grid;overflow-y:auto}.clean-practice-move-list li{border-radius:.58rem}.clean-practice-move-list li>button{width:100%;min-height:2.15rem;color:inherit;text-align:left;cursor:pointer;background:#ffffff06;border:1px solid #0000;border-radius:.58rem;grid-template-columns:1.25rem .72rem minmax(0,1fr) auto;align-items:center;gap:.48rem;padding:.35rem .45rem;transition:border-color .15s,background .15s;display:grid}.clean-practice-move-list li>button:hover:not(:disabled),.clean-practice-move-list li>button:focus-visible,.clean-practice-move-list li.is-selected>button{background:#7e973921;border-color:#d8ff6b33;outline:none}.clean-practice-move-list li>button:focus-visible{border-color:var(--ring);outline:2px solid var(--ring);outline-offset:2px}.clean-practice-move-list li>button:disabled{cursor:not-allowed;opacity:.5}.clean-practice-move-list .clean-local-piece{width:.72rem;height:.72rem}.clean-practice-move-list li>button>div{gap:.08rem;min-width:0;display:grid}html[dir=rtl] .clean-practice-move-list li>button>div{text-align:right}.clean-practice-move-list strong,.clean-practice-move-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clean-practice-move-list strong{color:#ffffffd1;font-size:.7rem}.clean-practice-move-list small,.clean-practice-move-list time{color:#ffffff4d;font-size:.6rem}.clean-practice-move-number{color:#ffffff54;background:#ffffff0b;border-radius:.35rem;place-items:center;width:1.25rem;height:1.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.625rem;font-weight:750;display:grid}.clean-practice-history-frame{pointer-events:none;-webkit-user-select:none;user-select:none;display:contents}@media (max-width:480px){.clean-practice-move-navigation button{width:2.75rem;height:2.75rem}.clean-practice-move-list li>button{min-height:2.75rem}}.clean-practice-notice{color:#fee2e2c7;text-align:center;background:#7e97391c;border:1px solid #d8ff6b29;border-radius:.75rem;padding:.65rem .8rem;font-size:.7rem}.clean-practice-actions{z-index:5;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid;position:sticky;bottom:3.35rem}.clean-server-practice-actions{gap:.9rem;margin-inline:1.5rem}.clean-practice-actions button{width:100%;min-height:2.5rem;font-size:.875rem}.clean-practice-actions svg{width:1rem;height:1rem}.clean-practice-board-controls-slot{z-index:6;justify-content:center;align-items:center;min-height:3rem;padding:.25rem .35rem;display:flex;position:sticky;bottom:0}@media (min-width:1101px){.clean-game-layout:has(.clean-practice-overview){grid-template-columns:minmax(0,1fr) minmax(480px,500px);width:min(100%,76rem)}.clean-local-match-panel:has(.clean-practice-overview){padding-inline:0}}.clean-local-settings{gap:.9rem;display:grid}.clean-local-settings .clean-local-card__header{margin-bottom:0}.clean-settings-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0e0e0beb;border:1px solid #ffffff17;border-radius:1.4rem;gap:1.35rem;padding:1.4rem;display:grid;box-shadow:0 28px 80px #0000006b}.clean-settings-card__eyebrow,.clean-setting__label{color:#ffffff61;letter-spacing:.14em;text-transform:none;margin-bottom:.6rem;font-size:.72rem;font-weight:700;display:block}.clean-game-list{gap:.35rem;display:grid}.clean-game-list button{color:#ffffff6b;text-align:left;cursor:pointer;background:0 0;border-radius:.7rem;padding:.7rem .8rem;font-size:.83rem;font-weight:650;transition:all .18s}.clean-game-list button:hover{color:#fffc;background:#ffffff09}.clean-game-list button.is-active{color:#fff;background:linear-gradient(90deg,#96b63db8,#7e973933);box-shadow:inset 2px 0 #d8ff6b}.clean-settings-card__divider{background:#ffffff12;height:1px}.clean-segments{background:#00000061;border:1px solid #ffffff12;border-radius:.75rem;grid-auto-columns:1fr;grid-auto-flow:column;gap:.35rem;padding:.3rem;display:grid}.clean-segments button{color:#ffffff6b;cursor:pointer;background:0 0;border-radius:.55rem;min-height:2.65rem;padding:.65rem .5rem;font-size:.8rem;font-weight:700}.clean-segments button.is-active{color:var(--primary-foreground);background:#b4dc45bf}.clean-match-state{background:#7e97391a;border:1px solid #d8ff6b24;border-radius:.9rem;gap:.4rem;padding:1rem;display:grid}.clean-match-state>span{color:#ffffff59;text-transform:none;letter-spacing:.12em;font-size:.65rem}.clean-match-state>strong{font-size:.88rem}.clean-score{color:#ffffff73;gap:.7rem;margin-top:.35rem;font-size:.68rem;display:flex}.clean-score b{color:#fff;margin-left:.2rem}.clean-restart{width:100%;color:var(--primary-foreground);cursor:pointer;background:#c6ff34;border-radius:.75rem;padding:.78rem 1rem;font-size:.78rem;font-weight:750;transition:all .18s}.clean-match-panel .clean-actions{z-index:5;background:#ffffff06;border:1px solid #ffffff14;border-radius:.9rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.45rem;position:relative}.clean-match-panel .clean-actions:has(>:only-child){grid-template-columns:1fr}.clean-match-panel .clean-actions>.clean-restart:first-child{grid-column:1/-1}.clean-board-controls-slot{border-top:1px solid #ffffff12;grid-column:1/-1;justify-content:flex-end;align-items:center;min-height:2.8rem;padding:.2rem .15rem 0;display:flex}.clean-match-panel .clean-restart{color:#ffffffa6;background:#ffffff09;border:1px solid #ffffff17;border-radius:.65rem;justify-content:center;align-items:center;gap:.4rem;min-height:2.8rem;padding:.55rem;font-size:.76rem;display:inline-flex}.clean-match-panel .clean-restart:hover{color:#fff;background:#7e973924;border-color:#d8ff6b47;translate:none}.clean-match-panel .clean-actions svg{width:.95rem;height:.95rem}.clean-restart:hover{background:#cdff44;translate:0 -1px}.clean-actions{grid-template-columns:.8fr 1.2fr;gap:.55rem;display:grid}.clean-local-match-panel .clean-actions{background:0 0;border:0;border-radius:0;grid-template-columns:1fr;gap:.7rem;padding:0}.clean-local-match-panel .clean-actions>.clean-restart:first-child{grid-column:auto}.clean-local-match-panel .clean-board-controls-slot{border-top:0;justify-content:center;padding:.2rem .35rem}.clean-local-mode{background:#00000052;border:1px solid #ffffff12;border-radius:.75rem;gap:.35rem;padding:.85rem;display:grid}.clean-local-mode span{color:#ffffff61;letter-spacing:.1em;text-transform:none;font-size:.65rem}.clean-local-mode strong{font-size:.8rem}.chess-board{--chess-board-outline:#050304d1;--chess-groove-shadow:#030203d1;--chess-groove-highlight:#ffffff0e;--chess-target-scale:1.65;--chess-capture-target-scale:1.12;--chess-target-transition:.14s;--chess-board-base-inset:clamp(.75rem, 3.1cqi, 1.3125rem);--chess-board-safe-area:clamp(.75rem, 2.45cqi, 1.3125rem);--chess-board-inset:calc(var(--chess-board-base-inset) + var(--chess-board-safe-area));isolation:isolate;width:calc(100% + var(--chess-board-safe-area) + var(--chess-board-safe-area));max-width:calc(100vw - 1rem);margin-inline:calc(0px - var(--chess-board-safe-area));margin-block:calc(0px - var(--chess-board-safe-area));aspect-ratio:1;padding:var(--chess-board-inset);background:radial-gradient(ellipse at 50% 0%, #ffffff17, transparent 36%) padding-box, radial-gradient(circle at 84% 84%, #fff0f20b 0%, #82935306 28%, transparent 54%) padding-box, repeating-linear-gradient(94deg, #ffffff03 0 1px, transparent 1px 12px) padding-box, linear-gradient(145deg, #483c3e 0%, #2f2629 46%, #22241e 100%) padding-box, radial-gradient(260px circle at var(--board-glow-x) var(--board-glow-y), rgba(216, 255, 107, var(--board-glow-strength)), rgba(216, 255, 107, var(--board-glow-soft)) 48%, #ffffff17 78%) border-box;direction:ltr;border:1px solid #0000;border-radius:clamp(1rem,3.5cqi,1.65rem);grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,1fr);display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1f,inset 0 -14px 34px #0000007a,0 30px 70px #00000094,0 0 18px #d8ff6b12,0 0 42px #7e973909}.chess-board:after{content:none}.chess-square{--chess-selected-lift:-26%;--chess-row-layer:1;appearance:none;z-index:var(--chess-row-layer);aspect-ratio:1;cursor:default;border:0;outline:none;place-items:center;min-width:0;min-height:0;padding:0;transition:background-color .16s,box-shadow .16s;display:grid;position:relative;overflow:visible}.chess-square:nth-child(n+9):nth-child(-n+16){--chess-row-layer:2}.chess-square:nth-child(n+17):nth-child(-n+24){--chess-row-layer:3}.chess-square:nth-child(n+25):nth-child(-n+32){--chess-row-layer:4}.chess-square:nth-child(n+33):nth-child(-n+40){--chess-row-layer:5}.chess-square:nth-child(n+41):nth-child(-n+48){--chess-row-layer:6}.chess-square:nth-child(n+49):nth-child(-n+56){--chess-row-layer:7}.chess-square:nth-child(n+57):nth-child(-n+64){--chess-row-layer:8}.chess-square.is-actionable{cursor:pointer}.chess-square.is-actionable:not(.is-selected):hover,.chess-square.is-actionable:not(.is-selected):focus-visible{z-index:calc(16 + var(--chess-row-layer));isolation:isolate;overflow:visible;box-shadow:inset 0 0 0 1px #ffffff17,inset 0 0 24px #ffffff09}.chess-square.is-light{box-shadow:inset -1px 0 var(--chess-groove-shadow), inset 0 -1px var(--chess-groove-shadow), inset 1px 0 var(--chess-groove-highlight), inset 0 1px var(--chess-groove-highlight), inset 0 0 18px #00000014;background:linear-gradient(145deg,#ffffff08,#ffffff02),#44393b8a}.chess-square.is-dark{box-shadow:inset -1px 0 var(--chess-groove-shadow), inset 0 -1px var(--chess-groove-shadow), inset 1px 0 var(--chess-groove-highlight), inset 0 1px var(--chess-groove-highlight), inset 0 0 22px #0000002e;background:linear-gradient(145deg,#ffffff05,#ffffff01),#262721a3}.chess-square.is-last-move{z-index:var(--chess-row-layer);box-shadow:none}.chess-square.is-last-move:before{content:"";z-index:1;pointer-events:none;background:#c6ff341f;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #d7ff692e}.chess-square.is-last-move-origin:before{background:#c6ff3411;box-shadow:inset 0 0 0 1px #d7ff6917}.chess-square.is-selected{z-index:calc(64 + var(--chess-row-layer));isolation:isolate;box-shadow:none;overflow:visible}.chess-square.is-moving-piece-square{z-index:calc(80 + var(--chess-row-layer));isolation:isolate;overflow:visible}.chess-square.is-selected img{z-index:51}.chess-square img{--chess-piece-width:52%;z-index:2;bottom:5%;left:calc((100% - var(--chess-piece-width)) / 2);width:var(--chess-piece-width);object-fit:contain;object-position:center bottom;touch-action:none;-webkit-user-select:none;user-select:none;transform-origin:bottom;filter:drop-shadow(0 8px 7px #00000075);height:auto;max-height:none;margin-bottom:0;transition:transform .18s cubic-bezier(.2,.8,.2,1),filter .18s;position:absolute}.chess-square img.chess-piece--red{filter:drop-shadow(0 8px 7px #0000007a)drop-shadow(0 0 5px #cbff3b1f)}.chess-square img.chess-piece--white{filter:drop-shadow(0 8px 7px #00000080)drop-shadow(0 0 4px #ffffff14)brightness(1.045)}.chess-square.is-actionable:hover img,.chess-square.is-actionable:focus-visible img{transform:translateY(-2px)}.chess-square.is-selected img,.chess-square.is-selected.is-actionable:hover img,.chess-square.is-selected.is-actionable:focus-visible img{transform:translateY(var(--chess-selected-lift)) rotate(-5deg) scale(1.18);filter:drop-shadow(0 10px 8px #00000085)drop-shadow(0 0 4px #d7ff6938)}.chess-square:nth-child(-n+8){--chess-selected-lift:-18%}.chess-board.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.chess-square.is-dragging-piece{--chess-drag-lift:var(--chess-selected-lift);z-index:calc(96 + var(--chess-row-layer));cursor:grabbing;isolation:isolate;overflow:visible}.chess-square.is-dragging-piece img,.chess-square.is-dragging-piece.is-selected img,.chess-square.is-dragging-piece.is-actionable:hover img,.chess-square.is-dragging-piece.is-actionable:focus-visible img{z-index:71;pointer-events:none;transform:translate3d(var(--chess-drag-x,0), calc(var(--chess-drag-y,0px) + var(--chess-drag-lift)), 0) rotate(-5deg) scale(1.18);filter:drop-shadow(0 16px 12px #0000009e)drop-shadow(0 0 7px #d7ff6940);will-change:transform;transition:none}.chess-square.is-drag-target{z-index:calc(32 + var(--chess-row-layer))}.chess-square.is-drag-target>span:not(.is-capture){transform:scale(var(--chess-target-scale));background:#c6ff342e;border-color:#dcff7bfa;box-shadow:0 0 12px #d8ff6b7a,0 0 24px #7e97393d}.chess-square.is-drag-target>span.is-capture{opacity:1;transform:scale(var(--chess-capture-target-scale));filter:drop-shadow(0 0 7px rgb(var(--capture-glow-color) / 82%));animation-play-state:paused}.chess-square.is-in-check{z-index:calc(48 + var(--chess-row-layer));isolation:isolate;overflow:visible}.chess-square.is-in-check:after{z-index:4;content:"";pointer-events:none;background:0 0;border:2px solid #d8ff6ef5;border-radius:0;animation:1.05s ease-in-out infinite chess-check-pulse;position:absolute;inset:1px;box-shadow:inset 0 0 5px #d8ff6b57,0 0 8px #d8ff6b8a,0 0 18px #7e973952}.chess-square.is-in-check img{z-index:5;filter:drop-shadow(0 10px 8px #0000008c)}.chess-square.is-checkmate:after{background:0 0;border-color:#fffffff5;animation:.68s ease-in-out infinite alternate chess-checkmate-pulse;box-shadow:inset 0 0 6px #ffffff3d,0 0 0 1px #c6ff34db,0 0 10px #d8ff6bbd,0 0 24px #7e97397a}.chess-status{z-index:120;color:#efffc2;letter-spacing:.14em;text-transform:uppercase;pointer-events:none;background:#2b3412e0;border:1px solid #d9ff7080;border-radius:999px;padding:.3rem .68rem .26rem;font-size:clamp(.48rem,1.35cqi,.65rem);font-weight:900;line-height:1;animation:.22s ease-out both chess-status-arrive;position:absolute;top:.52rem;left:50%;translate:-50%;box-shadow:0 0 18px #c6ff3447}.chess-status--checkmate{color:#fff;background:#739022f0;border-color:#ffffffad;box-shadow:0 0 18px #d8ff6b7a,0 0 34px #7e973957}.chess-square img.is-moving-piece{will-change:translate, transform, filter;animation:.62s cubic-bezier(.22,.72,.16,1) both chess-piece-travel}.chess-square img.is-moving-piece.is-drag-landing{animation:.34s cubic-bezier(.2,.82,.24,1) both chess-piece-drag-land}.chess-square img.chess-piece--rejected{will-change:opacity, transform;animation:.48s ease-in-out both tutorial-rejected-disc}.chess-square.is-tutorial-check{z-index:calc(48 + var(--chess-row-layer));box-shadow:inset 0 0 0 2px #d7ff68cc,inset 0 0 24px #c6ff3457}.chess-square.is-tutorial-check img{filter:drop-shadow(0 0 12px #d4ff5fad)}@keyframes chess-piece-travel{0%{translate:var(--move-offset-x) var(--move-offset-y);transform:var(--move-start-transform);filter:var(--move-start-filter)}to{filter:none;transform:none}}@keyframes chess-piece-drag-land{0%{translate:var(--move-offset-x) var(--move-offset-y);transform:var(--move-start-transform);filter:var(--move-start-filter)}76%{filter:drop-shadow(0 4px 4px #0000006b);transform:translateY(1%)rotate(.5deg)scale(.985)}to{filter:none;transform:none}}@keyframes chess-check-pulse{0%,to{opacity:.36}50%{opacity:1}}@keyframes chess-checkmate-pulse{0%{opacity:.52}to{opacity:1}}@keyframes chess-status-arrive{0%{opacity:0;transform:translateY(-4px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.chess-square>span{z-index:3;box-sizing:border-box;aspect-ratio:1;pointer-events:none;transform-origin:50%;width:26%;transition:transform var(--chess-target-transition) cubic-bezier(.2, .85, .25, 1.2), border-color var(--chess-target-transition) ease, background-color var(--chess-target-transition) ease, box-shadow var(--chess-target-transition) ease;background:#c6ff341a;border:2px solid #d7ff69eb;border-radius:50%;position:absolute;box-shadow:0 0 10px #c6ff3457}.chess-square>span.is-capture{--capture-color:255 70 75;--capture-dot-color:255 46 53;--capture-glow-color:239 35 40;background:radial-gradient(circle at center, rgb(var(--capture-dot-color) / 98%) 0 4%, transparent 5%), radial-gradient(circle at center, transparent 0 42%, rgb(var(--capture-color) / 94%) 43% 47%, transparent 48%);width:76%;box-shadow:none;filter:drop-shadow(0 0 4px rgb(var(--capture-glow-color) / 58%));will-change:opacity, filter;border:0;animation:1.8s ease-in-out infinite chess-capture-reticle-blink}.chess-square>span.is-capture:before,.chess-square>span.is-capture:after{content:"";background:linear-gradient(to right, transparent 0 14%, rgb(var(--capture-color) / 96%) 14% 33%, transparent 33% 67%, rgb(var(--capture-color) / 96%) 67% 86%, transparent 86% 100%);border-radius:999px;height:2px;position:absolute;top:50%;left:-8%;right:-8%;translate:0 -50%}.chess-square>span.is-capture:after{rotate:90deg}@keyframes chess-capture-reticle-blink{0%,to{opacity:0;filter:drop-shadow(0 0 0 rgb(var(--capture-glow-color) / 0%))}50%{opacity:1;filter:drop-shadow(0 0 5px rgb(var(--capture-glow-color) / 72%))}}.chess-coordinates{z-index:120;color:#ffffff7a;pointer-events:none;text-transform:none;font-size:clamp(.42rem,1.55cqi,.66rem);font-weight:800;line-height:1;display:grid;position:absolute}.chess-coordinates--ranks{top:calc(var(--chess-board-inset) + 1px);bottom:calc(var(--chess-board-inset) + 1px);width:calc(var(--chess-board-inset) - 5px);grid-template-rows:repeat(8,1fr);place-items:center;left:3px}.chess-coordinates--files{right:calc(var(--chess-board-inset) + 1px);bottom:3px;left:calc(var(--chess-board-inset) + 1px);height:calc(var(--chess-board-inset) - 5px);grid-template-columns:repeat(8,1fr);place-items:center}.chess-promotion{z-index:130;text-align:center;background:#0e0f0af7;border:1px solid #ffffff24;border-radius:1rem;width:min(86%,25rem);padding:1rem;position:absolute;inset:50% auto auto 50%;translate:-50% -50%;box-shadow:0 25px 70px #000000b3}.chess-promotion>div{grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.8rem;display:grid}.chess-promotion button{aspect-ratio:1;cursor:pointer;background:#ffffff12;border-radius:.65rem;padding:.45rem}.chess-promotion img{width:100%;height:100%}.connect4-board-shell__columns{font-size:clamp(.58rem,1.8cqi,.78rem)}.connect4-board{border-radius:clamp(.9rem,4.5cqi,2rem)}.dots-board{--dots-groove-shadow:#030203c7;--dots-groove-highlight:#fff1;--dots-pit-size:clamp(.72rem, 2.1vw, 1.15rem);background:radial-gradient(ellipse at 50% 0%, #ffffff16, transparent 36%) padding-box, radial-gradient(circle at 84% 84%, #fff0f20a, #82935306 28%, transparent 54%) padding-box, repeating-linear-gradient(94deg, #ffffff03 0 1px, transparent 1px 12px) padding-box, linear-gradient(145deg, #483c3e 0%, #2f2629 46%, #22241e 100%) padding-box, radial-gradient(260px circle at var(--board-glow-x) var(--board-glow-y), rgba(216, 255, 107, var(--board-glow-strength)), rgba(216, 255, 107, var(--board-glow-soft)) 48%, #ffffff17 78%) border-box;border-color:#0000;border-radius:clamp(.9rem,4cqi,1.875rem);box-shadow:inset 0 1px #ffffff1f,inset 0 -14px 34px #0000007a,0 30px 70px #00000094,0 0 18px #d8ff6b12,0 0 42px #7e973909}.dots-board__box:before{content:none}.dots-board__disc{width:84%;box-shadow:0 clamp(.18rem,.8cqi,.42rem) clamp(.28rem,1.25cqi,.7rem) #000000a8,inset 0 0 0 1px #ffffff1f}.connect4-board__disc--red,.dots-board__disc--red{background:radial-gradient(circle at 34% 25%,#ffe2e2eb,#0000 22%),radial-gradient(circle at 58% 82%,#4e621757,#0000 36%),linear-gradient(#98b947 0%,#7fa82b 42%,#5b781e 74%,#2c3d12 100%)}.dots-board__disc--white{background:radial-gradient(circle at 31% 24%,#fff 0 10%,#0000 24%),radial-gradient(circle at 55% 72%,#d9d1c3,#0000 68%),linear-gradient(145deg,#fffef9 0%,#eee8dd 55%,#aaa298 100%)}.connect4-board__disc--rejected{will-change:opacity, transform;animation:.48s ease-in-out both tutorial-rejected-disc}.tutorial-feedback-card{animation:tutorial-feedback-enter var(--tutorial-feedback-duration,.32s) cubic-bezier(.16, 1, .3, 1) both}.clean-game-shell .tutorial-next-button{background:var(--primary);min-width:6rem;height:2.5rem;color:var(--primary-foreground);border-radius:.75rem;justify-content:center;align-items:center;margin-top:1rem;padding-inline:1rem;font-size:.75rem;font-weight:800;transition:background-color .15s;display:inline-flex}.clean-game-shell .tutorial-next-button:hover{background:var(--color-brand-600)}.clean-game-shell .tutorial-finish-link{color:var(--primary-foreground)}.clean-game-shell .tutorial-lesson-button{color:#ffffff61;font-variant-numeric:tabular-nums;background:#ffffff09;border:2px solid #ffffff12;border-radius:.75rem;justify-content:center;align-items:center;min-height:2.75rem;font-size:.75rem;font-weight:800;transition:border-color .15s,background-color .15s,color .15s;display:flex}.clean-game-shell .tutorial-lesson-button:hover{color:#ffffffb3;border-color:#ffffff26}.clean-game-shell .tutorial-lesson-button[data-complete=true]{border-color:var(--primary);color:var(--primary)}.clean-game-shell .tutorial-lesson-button[data-current=true]{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.clean-game-shell .tutorial-next-button:focus-visible,.clean-game-shell .tutorial-lesson-button:focus-visible,.clean-game-shell .tutorial-finish-link:focus-visible{outline:2px solid var(--ring);outline-offset:3px}@media (min-width:640px){.clean-game-shell .tutorial-lesson-button{aspect-ratio:1;min-height:0}}.connect4-board__cell.is-threat-cell:after{z-index:4;aspect-ratio:1;content:"";pointer-events:none;background:#c6ff3433;border:2px solid #c6ff34e6;border-radius:999px;width:32%;animation:1.1s ease-in-out 2 both tutorial-threat-pulse;position:absolute;top:50%;left:50%;translate:-50% -50%}@keyframes tutorial-feedback-enter{0%{opacity:0;transform:translateY(var(--tutorial-feedback-offset,12px))}to{opacity:1;transform:translateY(0)}}@keyframes tutorial-rejected-disc{0%,38%{opacity:1;transform:scale(1)}18%,58%{opacity:.16;transform:scale(.96)}to{opacity:0;transform:scale(.9)}}@keyframes tutorial-rejected-edge{0%,38%{opacity:1;transform:translateY(-50%)scaleX(1)}18%,58%{opacity:.16;transform:translateY(-50%)scaleX(.96)}to{opacity:0;transform:translateY(-50%)scaleX(.9)}}@keyframes tutorial-threat-pulse{0%{opacity:.2;transform:scale(.72)}42%{opacity:1;transform:scale(1)}to{opacity:.58;transform:scale(.86)}}@media (prefers-reduced-motion:reduce){.tutorial-feedback-card,.connect4-board__cell.is-threat-cell:after,.chess-square.is-in-check:after,.chess-status,.chess-square img.chess-piece--rejected,.dots-board__edge.is-tutorial-rejected .dots-board__edge-line,.gomoku-stone--rejected,.gomoku-threat-marker,.morris-point.is-tutorial-rejected .morris-piece,.reversi-board__disc--rejected{animation:none}}.connect4-board__winning-line--red .connect4-board__winning-line-glow{stroke:#ffffff57}.connect4-board__winning-line--red .connect4-board__winning-line-core{stroke:#fffffffa}.connect4-board__winning-line--white .connect4-board__winning-line-glow{stroke:#c6ff344d}.connect4-board__winning-line--white .connect4-board__winning-line-core{stroke:#d0ff4ffa}.connect4-board--winner-red .connect4-board__cell.is-winning-cell:after{background:#fffffffa;box-shadow:0 0 0 1px #ffffff3d,0 0 10px #ffffff7a}.connect4-board--winner-white .connect4-board__cell.is-winning-cell:after{background:#d0ff4ffa;box-shadow:0 0 0 1px #4d621347,0 0 10px #c6ff346b}.connect4-board__column.is-preview:before{background:linear-gradient(#dcff7d47 0%,#c6ff342b 22%,#c6ff3412 58%,#0000 100%),radial-gradient(circle at 50% 0,#d7ff6957,#0000 40%)}.connect4-board__column.is-preview .connect4-board__cell:before,.connect4-board__cell.is-winning-cell:before{box-shadow:inset 0 0 0 1px #daff7329,inset 0 0 0 3px #c6ff341a,inset 0 10px 16px #ffffff0a,inset 0 -18px 24px #00000047,0 0 18px #c6ff3433,0 12px 18px #0000002e}.dots-board__dot-core{width:var(--dots-pit-size);background:radial-gradient(circle at 44% 62%,#382a2d 0%,#20191b 58%,#130f13 100%);border:1px solid #ffffff16;box-shadow:inset 0 clamp(.2rem,.7vw,.38rem) clamp(.34rem,1.2vw,.68rem) #000000d6,inset 0 -1px 2px #ffffff0e,0 1px #ffffff16}.dots-board__dot{--dots-dot-hit-size:clamp(2rem, 5.5vw, 3rem)}.dots-board__dot:before{width:calc(var(--dots-pit-size) + .55rem);height:calc(var(--dots-pit-size) + .55rem);opacity:0}.dots-board__dot:after{width:calc(var(--dots-pit-size) + .22rem);height:calc(var(--dots-pit-size) + .22rem)}.dots-board__edge-line{opacity:1;background:linear-gradient(180deg, var(--dots-groove-shadow) 0 50%, var(--dots-groove-highlight) 50% 100%);height:2px;box-shadow:0 1px 1px #00000047}.dots-board__drag-line{height:2px}.dots-board__dot.is-drag-origin .dots-board__dot-core,.dots-board__dot.is-drag-target .dots-board__dot-core{box-shadow:0 0 0 1px #dfff8561,0 0 24px #c6ff3475}.dots-board__dot.is-last-move-endpoint{--dots-last-move-ring:#dcff7abd;--dots-last-move-outline:#dfff857a;--dots-last-move-glow:#c6ff3475;--dots-last-move-halo:#c6ff344d}.dots-board__dot.is-last-move-endpoint--white{--dots-last-move-ring:#ffffffd1;--dots-last-move-outline:#ffffff8a;--dots-last-move-glow:#ffffff5c;--dots-last-move-halo:#ffffff3d}.dots-board__dot.is-last-move-endpoint .dots-board__dot-core{box-shadow:0 0 0 1px var(--dots-last-move-outline), 0 0 24px var(--dots-last-move-glow)}.dots-board__dot.is-last-move-endpoint:before{background:radial-gradient(circle at center, var(--dots-last-move-halo), transparent 70%)}.dots-board__dot.is-last-move-endpoint:after{width:calc(var(--dots-pit-size) + .22rem);height:calc(var(--dots-pit-size) + .22rem);border-width:1px;border-color:var(--dots-last-move-ring)}.dots-board__drag-line--red{background:linear-gradient(90deg,#d8ff6d4d,#d0ff4ffa 16%,#78991dfa)}.dots-board__edge.has-red .dots-board__edge-line{background:linear-gradient(#98b947 0%,#7fa82b 46%,#5b781e 78%,#2c3d12 100%);box-shadow:0 0 0 1px #daff743d,0 0 18px #c6ff344d}.dots-board__edge.is-preview--red .dots-board__edge-line{background:linear-gradient(#daff73fa,#95bd24fa);box-shadow:0 0 0 1px #daff744d,0 0 24px #c6ff346b}@media (hover:hover){.dots-board[data-current-player=red] .dots-board__edge.is-available:hover .dots-board__edge-line{opacity:1;background:linear-gradient(#daff736b,#95bd2452);box-shadow:0 0 0 1px #daff7414,0 0 12px #c6ff3429}.dots-board[data-current-player=white] .dots-board__edge.is-available:hover .dots-board__edge-line{opacity:1;background:linear-gradient(#ffffff75,#c0cedf57);box-shadow:0 0 0 1px #ffffff14,0 0 12px #ffffff1f}}.dots-board__edge.is-last-move .dots-board__edge-line{height:2px;box-shadow:0 0 0 1px #dcff7b57,0 0 28px #c6ff3475}.dots-board__edge.is-tutorial-rejected .dots-board__edge-line{will-change:opacity, transform;animation:.48s ease-in-out both tutorial-rejected-edge}.dots-board__box.is-last-claimed{filter:drop-shadow(0 0 22px #c6ff344d)}.reversi-board-shell{grid-template-rows:clamp(.9rem,3.2cqi,1.35rem) minmax(0,1fr);grid-template-columns:clamp(1.15rem,4.2cqi,1.8rem) minmax(0,1fr);gap:clamp(.25rem,1.3cqi,.55rem)}.reversi-board-shell__corner{box-shadow:none;background:0 0}.reversi-board-shell__columns,.reversi-board-shell__rows{color:#ffffff75;font-size:clamp(.52rem,1.7cqi,.72rem)}.reversi-board{background:radial-gradient(ellipse at 50% 0%, #ffffff16, transparent 36%) padding-box, repeating-linear-gradient(94deg, #ffffff03 0 1px, transparent 1px 12px) padding-box, linear-gradient(145deg, #483c3e 0%, #2f2629 46%, #22241e 100%) padding-box, radial-gradient(260px circle at var(--board-glow-x) var(--board-glow-y), rgba(216, 255, 107, var(--board-glow-strength)), rgba(216, 255, 107, var(--board-glow-soft)) 48%, #ffffff17 78%) border-box;border-color:#0000;border-radius:clamp(1.15rem,4.6cqi,2.35rem);gap:clamp(.2rem,1.05cqi,.58rem);padding:clamp(.45rem,2.2cqi,1.15rem);overflow:hidden;box-shadow:inset 0 1px #ffffff1f,inset 0 -14px 34px #0000007a,0 30px 70px #00000094,0 0 42px #7e973909}.reversi-board__cell{--reversi-pit-background:radial-gradient(circle at 44% 62%, #382a2d 0%, #20191b 58%, #130f13 100%);--reversi-pit-shadow:inset 0 clamp(.34rem, 1.75cqi, .95rem) clamp(.6rem, 3.1cqi, 1.7rem) #000000d6, inset 0 -2px 4px #ffffff0e, 0 1px 0 #ffffff16;isolation:isolate;background:var(--reversi-pit-background);box-shadow:var(--reversi-pit-shadow);border:1px solid #ffffff16;border-radius:50%;transition:border-color .18s,box-shadow .18s,filter .18s;overflow:hidden}.reversi-board__cell:focus-visible{background:var(--reversi-pit-background);box-shadow:var(--reversi-pit-shadow);border-color:#ffffff16}.reversi-board__cell.is-preview-origin:before{background:radial-gradient(circle,#c6ff341f,#0000 72%);border-color:#d5ff63e0;width:64%;box-shadow:0 0 18px #c6ff3457,inset 0 0 0 1px #d5ff6333}.reversi-board__cell.is-preview-flip:before{background:radial-gradient(circle,#c6ff342e,#0000 72%)}.reversi-board__cell.is-last-move:after{background:radial-gradient(circle,#c6ff3433,#0000 70%),#c6ff3412;border-color:#d0ff4f7a;box-shadow:inset 0 0 0 1px #d5ff632e,0 0 28px #c6ff3424}.reversi-board__disc.is-preview-flip{box-shadow:0 12px 18px #0000003d,0 0 0 2px #d0ff4f4d,0 0 28px #c6ff3447}.reversi-board__disc--black,.reversi-board__disc-layer--black{background:radial-gradient(circle at 34% 25%,#ffe2e2eb,#0000 22%),radial-gradient(circle at 58% 82%,#4e621757,#0000 36%),linear-gradient(#98b947 0%,#7fa82b 42%,#5b781e 74%,#2c3d12 100%)}.reversi-board__disc--rejected{will-change:opacity, transform;animation:.48s ease-in-out both tutorial-rejected-disc}.reversi-board__disc--white,.reversi-board__disc-layer--white{background:radial-gradient(circle at 31% 24%,#fff 0 10%,#0000 24%),radial-gradient(circle at 55% 72%,#d9d1c3,#0000 68%),linear-gradient(145deg,#fffef9 0%,#eee8dd 55%,#aaa298 100%)}.reversi-board__hint{background:#c6ff341a;border-color:#d7ff69eb;width:22%;animation:none;box-shadow:0 0 10px #c6ff3457}.reversi-board__disc{width:84%;box-shadow:0 clamp(.18rem,.8cqi,.42rem) clamp(.28rem,1.25cqi,.7rem) #000000a8,inset 0 0 0 1px #ffffff1f}.reversi-board__disc-layer{box-shadow:0 clamp(.18rem,.8cqi,.42rem) clamp(.28rem,1.25cqi,.7rem) #000000a8,inset 0 0 0 1px #ffffff1f}.reversi-board__cell.is-last-move:after{border-radius:50%;inset:8%}.reversi-board__cell.is-last-move{box-shadow:var(--reversi-pit-shadow), 0 0 0 2px #d8ff6b29, 0 0 24px #d8ff6b47;border-color:#e1ff8fad}.reversi-board__cell.is-preview-flip:before{border-radius:50%;inset:10%}@media (hover:hover){.reversi-board__cell.is-valid:hover{background:var(--reversi-pit-background);box-shadow:var(--reversi-pit-shadow);border-color:#ffffff16;transform:none}.reversi-board__cell.is-valid:hover .reversi-board__hint{background:#c6ff341f;border-color:#daff75;transform:none;box-shadow:0 0 12px #c6ff346b}button.dots-board__dot:not(.is-drag-origin):not(.is-drag-target):hover .dots-board__dot-core{box-shadow:inset 0 clamp(.2rem,.7vw,.38rem) clamp(.34rem,1.2vw,.68rem) #000000d6,inset 0 -1px 2px #ffffff0e,0 0 0 1px #dbff7957,0 0 18px #c6ff344d}}.result-modal{z-index:80;font-family:var(--font-sans);padding:1rem}.result-modal__scrim{-webkit-backdrop-filter:blur(10px);background:#000000d1}.result-modal__card,.result-modal__card--connect4{background:radial-gradient(circle at 50% -20%,#b4dc452e,#0000 42%),#0a0909;border:1px solid #ffffff1a;border-radius:1.35rem;width:min(100%,430px);padding:2rem;box-shadow:0 32px 100px #000000ad,0 0 0 1px #c6ff340a}.result-modal__card:before{content:"";background:#cbff3b;border-radius:999px;width:5rem;height:2px;position:absolute;top:0;left:50%;translate:-50%;box-shadow:0 0 18px #cbff3bb3}.result-modal__close{color:#ffffff80;background:0 0;border:0;border-radius:0;width:2.25rem;height:2.25rem;font-size:1.55rem;font-weight:300;transition:all .16s;top:1rem;right:1rem}.result-modal__close:hover{color:#fff;background:0 0}.result-modal__header{text-align:center;place-items:center;gap:.65rem;padding:0 1.5rem}.result-modal__header .status-chip{color:#ffffff8c;letter-spacing:.13em;background:#7e97391f;border:1px solid #d8ff6b2e;border-radius:999px;align-self:center;width:fit-content;min-height:0;padding:.35rem .65rem;font-size:.62rem}.result-modal__title{color:#fff;letter-spacing:-.045em;margin:.2rem 0 0;font-size:clamp(1.8rem,5vw,2.35rem);font-weight:750}.result-modal__copy{color:#ffffff6b;max-width:22rem;font-size:.82rem;line-height:1.6}.result-modal__meta{border-block:1px solid #ffffff12;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:1.5rem;padding-block:.8rem}.result-modal__card--connect4 .result-modal__meta{grid-template-columns:1fr}.result-modal__meta-item{text-align:center;background:0 0;border:0;border-radius:0;gap:.25rem;padding:.35rem .8rem}.result-modal__meta-item+.result-modal__meta-item{border-left:1px solid #ffffff12}.result-modal__meta-item span,.result-modal__score span{color:#ffffff52;letter-spacing:.1em;font-size:.62rem;font-weight:650}.result-modal__meta-item strong{color:#ffffffc7;letter-spacing:0;font-size:.82rem;font-weight:650}.result-modal__scores{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;width:100%;margin-top:1rem}.result-modal__score{text-align:center;background:#ffffff06;border-color:#ffffff12;border-radius:.85rem;justify-content:center;align-items:center;gap:.8rem;min-width:0;padding:.85rem;display:flex}.result-modal__score:first-child{background:#7e973914;border-color:#d8ff6b24}.result-modal__disc{border-radius:50%;flex:none;width:2rem;height:2rem;margin:0;box-shadow:inset 0 -.2rem .4rem #0000004d,0 .25rem .7rem #00000059}.result-modal__disc--red{background:radial-gradient(circle at 34% 28%,#98b947,#7fa82b 52%,#2c3d12);border:1px solid #98b94780}.result-modal__disc--white{background:radial-gradient(circle at 31% 24%,#fff 0 10%,#0000 24%),radial-gradient(circle at 55% 72%,#d9d1c3,#0000 68%),linear-gradient(145deg,#fffef9 0%,#eee8dd 55%,#aaa298 100%);border:1px solid #ffffffb8}.result-modal__disc--black{background:radial-gradient(circle at 31% 24%,#8b8b8e 0 5%,#0000 22%),radial-gradient(circle at 55% 72%,#050506,#0000 68%),linear-gradient(145deg,#38383c 0%,#111114 55%,#020203 100%);border:1px solid #ffffff40}.result-modal__score strong{color:#fff;letter-spacing:-.04em;margin:0;font-size:1.55rem;font-weight:750}.result-modal__actions{grid-template-columns:1fr;gap:.55rem;margin-top:1rem;display:grid}.result-modal__actions .primary-button,.result-modal__actions .ghost-button{border-radius:.75rem;justify-content:center;width:100%;min-height:2.75rem;font-size:.75rem;font-weight:700}.result-modal__actions .primary-button{color:var(--primary-foreground);box-shadow:none;background:#c6ff34;border-color:#c6ff34}.result-modal__actions .primary-button:hover{background:#cdff43;translate:0 -1px}.result-modal__actions .ghost-button{color:#ffffffa6;background:#ffffff09;border-color:#ffffff14}.result-modal__actions .ghost-button:hover{color:#fff;background:#ffffff0f;border-color:#ffffff24}@media (max-width:1100px){.clean-game-shell .clean-game-layout:fullscreen{grid-template-columns:1fr;align-content:start;gap:1rem;min-height:100dvh;padding:1rem;overflow-y:auto}.clean-game-shell .clean-game-layout:fullscreen .clean-board-stage{height:auto;min-height:min(72svh,720px)}.clean-game-shell .clean-game-layout:fullscreen .clean-match-panel{max-height:none}}@media (max-width:900px){.clean-game-shell{overscroll-behavior-x:none;touch-action:pan-y;padding:1rem;overflow:hidden auto}.game-setup-lobby .clean-board-stage,.game-setup-lobby .clean-setup-board-controls-slot{display:none}.game-setup-lobby .clean-game-layout{gap:0}.clean-game-layout{grid-template-columns:minmax(0,1fr);align-items:start;min-width:0}.clean-board-stage{min-height:auto;padding:1rem 0}.clean-board-frame{--clean-board-height-reserve:7rem}.clean-board-frame--connect4{--clean-board-height-reserve:6rem}.clean-settings-card{width:min(100%,640px);margin-inline:auto}.clean-match-panel{width:min(100%,490px);max-height:none;margin-inline:auto}.clean-match-panel .clean-actions,.clean-practice-actions,.clean-practice-board-controls-slot{position:static}.result-modal__card,.result-modal__card--connect4{border-radius:1.1rem;padding:1.5rem 1rem 1rem}.result-modal__actions{grid-template-columns:1fr}}@media (max-width:520px){.clean-match-panel{--ticket-notch-radius:13px;padding:1.5rem 1.25rem}.clean-local-metrics,.clean-local-summary-surface .clean-local-metrics{grid-template-columns:repeat(3,minmax(0,1fr));padding-block:0}.clean-local-metric-divider{display:none}.clean-practice-summary-surface .clean-local-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.clean-local-metric{min-height:4rem;padding-inline:.75rem}.clean-local-metric:nth-of-type(odd){padding-left:0}.clean-local-metric:nth-of-type(2n){padding-right:0}.clean-local-metric:nth-of-type(-n+2){border-bottom:1px solid #ffffff14}.clean-local-metric:nth-of-type(2):after{display:none}.clean-local-summary h1{font-size:1.55rem}}@media (orientation:landscape) and (max-width:1100px) and (max-height:600px){:is(html:has([data-game-viewport-active]),body:has([data-game-viewport-active])){overscroll-behavior:none;height:100%;overflow:hidden}.clean-game-shell:has([data-game-match-layout]){height:calc(100vh - var(--game-shell-top-offset,4rem));height:calc(100svh - var(--game-shell-top-offset,4rem));height:calc(100dvh - var(--game-shell-top-offset,4rem));min-height:0;padding:max(.25rem, env(safe-area-inset-top)) max(.5rem, env(safe-area-inset-right)) max(.25rem, env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left));place-items:center;overflow:hidden}.clean-game-layout[data-game-match-layout]{grid-template-columns:minmax(0,1fr) clamp(16rem,42vw,24rem);align-items:stretch;gap:.5rem;width:100%;height:100%;min-height:0;overflow:hidden}.clean-game-shell .clean-game-layout[data-game-match-layout]:fullscreen{grid-template-columns:minmax(0,1fr) clamp(16rem,42vw,24rem);align-items:stretch;gap:.5rem;width:100%;height:100dvh;min-height:0;padding:.5rem;overflow:hidden}[data-game-match-layout] .clean-board-stage{place-items:center;width:100%;height:100%;min-height:0;padding:0}[data-game-match-layout] .clean-board-stage>[data-board-surface]{width:100%;height:100%;min-height:0;container-type:size}[data-game-match-layout] .clean-board-stage.has-board-extras{gap:.25rem}[data-game-match-layout] .clean-board-topline{min-height:1.75rem}[data-game-match-layout] .clean-board-frame{--clean-board-height-reserve:calc(var(--game-shell-top-offset,4rem) + .75rem);width:min(100%, var(--clean-board-max-width), max(8rem, calc(100svh - var(--clean-board-height-reserve))));width:min(100%, var(--clean-board-max-width), max(8rem, calc(100dvh - var(--clean-board-height-reserve))));width:min(100%, var(--clean-board-max-width), max(8rem, calc(100cqh - .25rem)))}[data-game-match-layout] .clean-board-frame--connect4{--clean-board-height-reserve:calc(var(--game-shell-top-offset,4rem) + 1.25rem)}[data-game-match-layout] .clean-board-frame--backgammon{width:min(100%, var(--clean-board-max-width), max(8rem, calc(114.1svh - var(--game-shell-top-offset,4rem) - 1.25rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(114.1dvh - var(--game-shell-top-offset,4rem) - 1.25rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(114.1cqh - .25rem)))}[data-game-match-layout] :is(.clean-board-frame--mancala,.clean-board-frame--fanorona){width:min(100%, var(--clean-board-max-width), max(8rem, calc(147svh - var(--game-shell-top-offset,4rem) - 2.7rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(147dvh - var(--game-shell-top-offset,4rem) - 2.7rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(147cqh - .25rem)))}[data-game-match-layout] .clean-board-frame--mancala{width:min(100%, var(--clean-board-max-width), max(8rem, calc(146.4cqh - 6.25rem)))}[data-game-match-layout] .clean-board-frame--morris{width:min(100%, var(--clean-board-max-width), max(8rem, calc(100cqh - 3.25rem)))}[data-game-match-layout] .clean-board-frame--kings-valley,[data-game-match-layout] .clean-board-frame--slimetrail{width:min(100%, var(--clean-board-max-width), max(8rem, calc(100cqh - 1.75rem)))}[data-game-match-layout] .clean-board-frame--go{width:min(100%, var(--clean-board-max-width), max(8rem, calc(100cqh - 4.25rem)))}[data-game-match-layout] .clean-board-frame--triggle{width:min(100%, var(--clean-board-max-width), max(8rem, calc(86.874cqh - 5.4296rem)))}[data-game-match-layout] .clean-board-frame--quoridor,[data-game-match-layout] .clean-board-frame--ultimate-tic-tac-toe,[data-game-match-layout] .clean-board-frame--wall-go{width:min(100%, var(--clean-board-max-width), max(8rem, calc(100cqh - 6.25rem)))}[data-game-match-layout] .clean-board-frame--chinese-checkers{width:min(100%, var(--clean-board-max-width), max(8rem, calc(91.8svh - var(--game-shell-top-offset,4rem) - .125rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(91.8dvh - var(--game-shell-top-offset,4rem) - .125rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(91.8cqh - .25rem)))}[data-game-match-layout] .clean-board-frame--chy{width:min(100%, var(--clean-board-max-width), max(8rem, calc(94.3svh - var(--game-shell-top-offset,4rem) - .25rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(94.3dvh - var(--game-shell-top-offset,4rem) - .25rem)));width:min(100%, var(--clean-board-max-width), max(8rem, calc(94.3cqh - .25rem)))}[data-game-match-layout] .clean-board-stage.has-board-extras .clean-board-frame{--clean-board-height-reserve:calc(var(--game-shell-top-offset,4rem) + 3rem)}.clean-game-layout[data-game-match-layout] .clean-match-panel,.clean-game-shell .clean-game-layout[data-game-match-layout]:fullscreen .clean-match-panel{overscroll-behavior-y:contain;scrollbar-color:#ffffff29 transparent;scrollbar-width:thin;grid-template-columns:minmax(0,1fr);grid-auto-rows:max-content;width:100%;min-width:0;height:100%;max-height:100%;margin:0;padding:.5rem;overflow:hidden auto}.clean-game-layout[data-game-match-layout] :is(.clean-match-panel .clean-actions,.clean-practice-actions,.clean-practice-board-controls-slot){position:static}.clean-game-layout[data-game-match-layout] :is(.clean-local-information,.online-match-information){min-height:max-content;overflow:visible}.clean-game-layout[data-game-match-layout] :is(.clean-local-overview,.clean-local-information,.clean-actions,.clean-board-controls-slot,.clean-practice-board-controls-slot){width:100%;min-width:0;max-width:100%}.clean-game-layout[data-game-match-layout] .clean-local-summary-surface .clean-local-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.clean-game-layout[data-game-match-layout] .clean-local-metric-divider{display:none}.clean-game-layout[data-game-match-layout] .clean-local-summary-surface .clean-local-metric{text-align:center;justify-items:center;min-width:0;min-height:4rem;padding-inline:.5rem}.clean-game-layout[data-game-match-layout] .clean-local-summary-surface .clean-local-metric :is(span,strong){text-overflow:clip;white-space:normal;overflow-wrap:anywhere;max-width:100%;overflow:visible}.clean-game-layout[data-game-match-layout] .clean-local-information .clean-local-player-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.clean-game-layout[data-game-match-layout] .clean-local-information .clean-local-player{min-height:9rem;padding-inline:.5rem}.clean-game-layout[data-game-match-layout] .clean-local-player-profile{flex-direction:column;justify-content:center;gap:.45rem;padding-inline:0}.clean-game-layout[data-game-match-layout] .clean-local-information .clean-local-player__avatar{width:2.7rem;height:2.7rem}.clean-game-layout[data-game-match-layout] .clean-local-information .clean-local-player__identity{text-align:center;width:100%}.clean-game-layout[data-game-match-layout] .clean-local-information .clean-local-player__identity small{flex-wrap:wrap;justify-content:center}.clean-game-layout[data-game-match-layout] .clean-local-card__header{align-items:flex-start}.clean-game-layout[data-game-match-layout] .clean-local-card__header small{text-align:right;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;max-width:62%;line-height:1.35;overflow:visible}.clean-game-layout[data-game-match-layout] .clean-local-information .clean-local-player__identity strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}}@media (orientation:landscape) and (max-width:900px) and (max-height:600px){:is(html:has(.game-setup-lobby [data-game-viewport-active]),body:has(.game-setup-lobby [data-game-viewport-active])){overscroll-behavior:auto;height:auto;overflow:auto}.game-setup-lobby .clean-game-shell{height:auto;min-height:calc(100svh - var(--game-shell-top-offset,4rem));place-items:start center;padding:1rem;overflow:auto}.game-setup-lobby .clean-game-layout[data-game-match-layout]{grid-template-columns:1fr;gap:0;height:auto;overflow:visible}.game-setup-lobby .clean-game-layout[data-game-match-layout] .clean-match-panel{width:min(100%,490px);height:auto;max-height:none;margin-inline:auto;padding:0;overflow:visible}}@media (prefers-reduced-motion:reduce){.chess-square>span.is-capture{opacity:1;animation:none}}:is([data-board-surface=crimson][data-game-id=connect4],[data-board-surface=crimson][data-game-id=connect-4]) .connect4-board__surface{background:linear-gradient(#ffffff14,#ffffff05),linear-gradient(#4d57606b,#1e262f7a),linear-gradient(135deg,#ffffff09,#c6ff3405 46%,#ffffff05)}[data-board-surface][data-game-id=connect4] .connect4-board__cell:before,[data-board-surface][data-game-id=connect-4] .connect4-board__cell:before{background:radial-gradient(circle at 44% 34%,#27334042,#0b1422fa 74%)}[data-board-surface=ivory][data-game-id=chess] .chess-board{--chess-board-outline:#5b5b578c;--chess-groove-shadow:var(--board-groove-shadow-light);--chess-groove-highlight:var(--board-groove-highlight-light);background:radial-gradient(ellipse at 50% 0%, #fffafb1a, transparent 38%) padding-box, repeating-linear-gradient(94deg, #fffafb04 0 1px, transparent 1px 13px) padding-box, linear-gradient(145deg, var(--board-surface-light-high) 0%, var(--board-surface-light-mid) 48%, var(--board-surface-light-low) 100%) padding-box, radial-gradient(260px circle at var(--board-glow-x) var(--board-glow-y), rgba(216, 255, 107, var(--board-glow-strength)), rgba(216, 255, 107, var(--board-glow-soft)) 48%, #ffffff17 78%) border-box, linear-gradient(145deg, #fffafb24, #1f1d1d29) border-box;box-shadow:inset 0 1px #fffafb24,inset 0 -12px 28px #08080561,0 26px 58px #0000006b}[data-board-surface=ivory][data-game-id=chess] .chess-square.is-light{background:linear-gradient(145deg, #fffafb0e, transparent), var(--board-cell-light)}[data-board-surface=ivory][data-game-id=chess] .chess-square.is-dark{background:linear-gradient(145deg, #fffafb06, transparent), var(--board-cell-dark)}:is([data-board-surface=ivory][data-game-id=connect4],[data-board-surface=ivory][data-game-id=connect-4]) .connect4-board__surface{background:linear-gradient(#ffffff17,#ffffff06),linear-gradient(#56626e80,#35404b8f),linear-gradient(135deg,#ffffff0a,#c6ff3406 46%,#ffffff05);box-shadow:inset 0 1px #ffffff29,inset 0 0 0 1px #ffffff0f,inset 0 -20px 28px #0000002e,0 16px 38px #04070e38}[data-board-surface=ivory][data-game-id=dots-and-boxes] .dots-board,[data-board-surface=ivory][data-game-id=nine-mens-morris] .morris-shell,[data-board-surface=ivory][data-game-id=gomoku] .gomoku-board-shell,[data-board-surface=ivory][data-game-id=reversi] .reversi-board{background:radial-gradient(ellipse at 50% 0%, #fffafb1a, transparent 38%) padding-box, repeating-linear-gradient(94deg, #fffafb04 0 1px, transparent 1px 13px) padding-box, linear-gradient(145deg, var(--board-surface-light-high) 0%, var(--board-surface-light-mid) 48%, var(--board-surface-light-low) 100%) padding-box, radial-gradient(260px circle at var(--board-glow-x) var(--board-glow-y), rgba(216, 255, 107, var(--board-glow-strength)), rgba(216, 255, 107, var(--board-glow-soft)) 48%, #ffffff17 78%) border-box, linear-gradient(145deg, #fffafb24, #1f1d1d29) border-box;box-shadow:inset 0 1px #fffafb24,inset 0 -12px 28px #08080561,0 26px 58px #0000006b}[data-board-surface=ivory][data-game-id=dots-and-boxes] .dots-board{--dots-groove-shadow:var(--board-groove-shadow-light);--dots-groove-highlight:var(--board-groove-highlight-light)}[data-board-surface=ivory][data-game-id=dots-and-boxes] .dots-board__dot-core,[data-board-surface=ivory][data-game-id=nine-mens-morris] .morris-point__node,[data-board-surface=ivory][data-game-id=reversi] .reversi-board__cell{border-color:var(--board-groove-highlight-light);background:radial-gradient(circle at 44% 62%, var(--board-well-light-high) 0%, var(--board-well-light-mid) 58%, var(--board-well-light-low) 100%)}[data-board-surface=ivory][data-game-id=nine-mens-morris] .morris-board__lines{stroke:var(--board-groove-shadow-light);filter:drop-shadow(0 .7px 0 var(--board-groove-highlight-light))}[data-board-surface=ivory][data-game-id=gomoku] .gomoku-board{--gomoku-groove-shadow:var(--board-groove-shadow-light);--gomoku-groove-highlight:var(--board-groove-highlight-light)}[data-board-surface=ivory][data-game-id=gomoku] .gomoku-board-shell{--board-glow-x:var(--gomoku-glow-x);--board-glow-y:var(--gomoku-glow-y);--board-glow-strength:var(--gomoku-glow-strength);--board-glow-soft:var(--gomoku-glow-soft)}[data-board-surface=ivory][data-game-id=reversi] .reversi-board__cell{--reversi-pit-background:radial-gradient(circle at 44% 62%, var(--board-well-light-high) 0%, var(--board-well-light-mid) 58%, var(--board-well-light-low) 100%)}
