.cm-chessboard .board.input-enabled .square{cursor:pointer}.cm-chessboard .coordinates,.cm-chessboard .markers-layer,.cm-chessboard .pieces-layer,.cm-chessboard .markers-top-layer{pointer-events:none}.cm-chessboard-content .list-inline{padding-left:0;list-style:none}.cm-chessboard-content .list-inline-item{display:inline-block}.cm-chessboard-content .list-inline-item:not(:last-child){margin-right:1rem}.cm-chessboard-accessibility.visually-hidden{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cm-chessboard-accessibility button:disabled,.cm-chessboard-accessibility button:disabled:hover{opacity:.5;cursor:not-allowed;pointer-events:none}.cm-chessboard.default .board .square.white{fill:#ecdab9}.cm-chessboard.default .board .square.black{fill:#c5a076}.cm-chessboard.default.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default .coordinates .coordinate{fill:#b5936d;font-size:7px;cursor:default}.cm-chessboard.default .coordinates .coordinate.black{fill:#eeddbf}.cm-chessboard.default .coordinates .coordinate.white{fill:#b5936d}.cm-chessboard.default-contrast .board .square.white{fill:#ecdab9}.cm-chessboard.default-contrast .board .square.black{fill:#c5a076}.cm-chessboard.default-contrast.border-type-thin .board .border{stroke:#c5a076;stroke-width:.7%;fill:#c5a076}.cm-chessboard.default-contrast.border-type-none .board .border{stroke:#c5a076;stroke-width:0;fill:#c5a076}.cm-chessboard.default-contrast.border-type-frame .board .border{fill:#ecdab9;stroke:none}.cm-chessboard.default-contrast.border-type-frame .board .border-inner{fill:#c5a076;stroke:#c5a076;stroke-width:.7%}.cm-chessboard.default-contrast .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.default-contrast .coordinates .coordinate{fill:#b5936d;font-size:7px;cursor:default}.cm-chessboard.default-contrast .coordinates .coordinate.black,.cm-chessboard.default-contrast .coordinates .coordinate.white{fill:#333}.cm-chessboard.green .board .square.white{fill:#e0ddcc}.cm-chessboard.green .board .square.black{fill:#4c946a}.cm-chessboard.green.border-type-thin .board .border{stroke:#4c946a;stroke-width:.7%;fill:#4c946a}.cm-chessboard.green.border-type-none .board .border{stroke:#4c946a;stroke-width:0;fill:#4c946a}.cm-chessboard.green.border-type-frame .board .border{fill:#e0ddcc;stroke:none}.cm-chessboard.green.border-type-frame .board .border-inner{fill:#4c946a;stroke:#4c946a;stroke-width:.7%}.cm-chessboard.green .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.green .coordinates .coordinate{fill:#468862;font-size:7px;cursor:default}.cm-chessboard.green .coordinates .coordinate.black{fill:#e2e0d0}.cm-chessboard.green .coordinates .coordinate.white{fill:#468862}.cm-chessboard.blue .board .square.white{fill:#d8ecfb}.cm-chessboard.blue .board .square.black{fill:#86afcf}.cm-chessboard.blue.border-type-thin .board .border{stroke:#86afcf;stroke-width:.7%;fill:#86afcf}.cm-chessboard.blue.border-type-none .board .border{stroke:#86afcf;stroke-width:0;fill:#86afcf}.cm-chessboard.blue.border-type-frame .board .border{fill:#d8ecfb;stroke:none}.cm-chessboard.blue.border-type-frame .board .border-inner{fill:#86afcf;stroke:#86afcf;stroke-width:.7%}.cm-chessboard.blue .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.blue .coordinates .coordinate{fill:#7ba1be;font-size:7px;cursor:default}.cm-chessboard.blue .coordinates .coordinate.black{fill:#dbeefb}.cm-chessboard.blue .coordinates .coordinate.white{fill:#7ba1be}.cm-chessboard.chess-club .board .square.white{fill:#e6d3b1}.cm-chessboard.chess-club .board .square.black{fill:#af6b3f}.cm-chessboard.chess-club.border-type-thin .board .border{stroke:#692e2b;stroke-width:.7%;fill:#af6b3f}.cm-chessboard.chess-club.border-type-none .board .border{stroke:#692e2b;stroke-width:0;fill:#af6b3f}.cm-chessboard.chess-club.border-type-frame .board .border{fill:#692e2b;stroke:none}.cm-chessboard.chess-club.border-type-frame .board .border-inner{fill:#af6b3f;stroke:#692e2b;stroke-width:.7%}.cm-chessboard.chess-club .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chess-club .coordinates .coordinate{fill:#e6d3b1;font-size:7px;cursor:default}.cm-chessboard.chess-club .coordinates .coordinate.black{fill:#e6d3b1}.cm-chessboard.chess-club .coordinates .coordinate.white{fill:#af6b3f}.cm-chessboard.chessboard-js .board .square.white{fill:#f0d9b5}.cm-chessboard.chessboard-js .board .square.black{fill:#b58863}.cm-chessboard.chessboard-js.border-type-thin .board .border{stroke:#404040;stroke-width:.7%;fill:#b58863}.cm-chessboard.chessboard-js.border-type-none .board .border{stroke:#404040;stroke-width:0;fill:#b58863}.cm-chessboard.chessboard-js.border-type-frame .board .border{fill:#f0d9b5;stroke:none}.cm-chessboard.chessboard-js.border-type-frame .board .border-inner{fill:#b58863;stroke:#404040;stroke-width:.7%}.cm-chessboard.chessboard-js .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.chessboard-js .coordinates .coordinate{fill:#404040;font-size:7px;cursor:default}.cm-chessboard.chessboard-js .coordinates .coordinate.black{fill:#f0d9b5}.cm-chessboard.chessboard-js .coordinates .coordinate.white{fill:#b58863}.cm-chessboard.black-and-white .board .square.white{fill:#fff}.cm-chessboard.black-and-white .board .square.black{fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-thin .board .border{stroke:#9c9c9c;stroke-width:.7%;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-none .board .border{stroke:#9c9c9c;stroke-width:0;fill:#9c9c9c}.cm-chessboard.black-and-white.border-type-frame .board .border{fill:#fff;stroke:none}.cm-chessboard.black-and-white.border-type-frame .board .border-inner{fill:#9c9c9c;stroke:#9c9c9c;stroke-width:.7%}.cm-chessboard.black-and-white .coordinates{pointer-events:none;-webkit-user-select:none;user-select:none}.cm-chessboard.black-and-white .coordinates .coordinate{fill:#909090;font-size:7px;cursor:default}.cm-chessboard.black-and-white .coordinates .coordinate.black{fill:#fff}.cm-chessboard.black-and-white .coordinates .coordinate.white{fill:#909090}.cm-chessboard .keyboard-focus-indicator .keyboard-focus{fill:none;stroke:#06c;stroke-width:3px;pointer-events:none}.cm-chessboard .keyboard-focus-indicator .keyboard-from-square{fill:#0066cc4d;stroke:#06c;stroke-width:2px;pointer-events:none}.cm-chessboard:focus{outline:2px solid #0066cc;outline-offset:2px}.cm-chessboard .markers{pointer-events:none}.cm-chessboard .markers .marker.marker-frame{stroke:#000;stroke-width:1.8px;opacity:.5}.cm-chessboard .markers .marker.marker-frame-primary,.cm-chessboard .markers .marker.marker-frame-info{stroke:#00f;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-frame-danger{stroke:red;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-frame-warning{stroke:orange;stroke-width:1.8px;opacity:.4}.cm-chessboard .markers .marker.marker-circle{stroke:#000;stroke-width:3px;opacity:.3}.cm-chessboard .markers .marker.marker-circle-primary,.cm-chessboard .markers .marker.marker-circle-info{stroke:#00f;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-info-filled{stroke:#00f;fill:#00f;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-danger{stroke:red;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-danger-filled{stroke:red;fill:red;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-warning{stroke:orange;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-warning-filled{stroke:orange;fill:orange;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-success{stroke:green;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-circle-success-filled{stroke:green;fill:green;stroke-width:3px;opacity:.4}.cm-chessboard .markers .marker.marker-square{fill:#000;opacity:.11}.cm-chessboard .markers .marker.marker-dot,.cm-chessboard .markers .marker.marker-bevel{fill:#000;opacity:.2}:root{--page-bg: #f8fafc;--chess-line: rgba(0, 0, 0, .035);--glow-color: rgba(99, 102, 241, .08);--board-light: #e7be77;--board-dark: #724019;--board-light-bg: linear-gradient(135deg, rgba(255, 246, 214, .52), rgba(255, 246, 214, .08) 36%, rgba(89, 45, 13, .18)), repeating-linear-gradient(18deg, rgba(126, 73, 25, .14) 0 2px, transparent 2px 9px), radial-gradient(circle at 22% 18%, rgba(255, 255, 255, .24), transparent 30%), linear-gradient(135deg, #f0ce8a, #c2843d);--board-dark-bg: linear-gradient(135deg, rgba(255, 216, 139, .18), rgba(44, 19, 7, .38)), repeating-linear-gradient(-16deg, rgba(255, 220, 144, .1) 0 2px, transparent 2px 8px), radial-gradient(circle at 74% 22%, rgba(255, 196, 105, .16), transparent 28%), linear-gradient(135deg, #8f5529, #4b230d);--board-frame-bg: linear-gradient(135deg, #8a4f24 0%, #3a1908 42%, #c48a45 64%, #5a2a10 100%);--board-border: rgba(60, 28, 8, .65);--board-shadow: 0 30px 70px -24px rgba(55, 29, 13, .62), inset 0 2px 0 rgba(255, 236, 181, .28), inset 0 -14px 24px rgba(30, 12, 4, .28);--board-overlay-shadow: inset 0 0 0 1px rgba(255, 246, 214, .15), inset 0 0 22px rgba(26, 10, 3, .38);--board-padding: clamp(8px, 1.4vw, 14px);--board-radius: 24px;--square-grain-opacity: .46;--square-grain-soft-opacity: .33;--piece-white: #f5d69b;--piece-black: #5b2c12;--piece-white-bg: linear-gradient(180deg, #fff3c4 0%, #e4b96d 42%, #9c5a24 100%);--piece-black-bg: linear-gradient(180deg, #8a4a25 0%, #4a1f0d 56%, #1d0b04 100%);--piece-white-stroke: rgba(72, 35, 10, .62);--piece-black-stroke: rgba(255, 219, 150, .42);--piece-white-filter: drop-shadow(0 4px 2px rgba(61, 31, 10, .38)) drop-shadow(0 10px 12px rgba(61, 31, 10, .2));--piece-black-filter: drop-shadow(0 4px 2px rgba(20, 8, 2, .48)) drop-shadow(0 0 2px rgba(255, 220, 142, .34)) drop-shadow(0 10px 12px rgba(20, 8, 2, .24));--piece-highlight-opacity: .32}html.dark{--page-bg: #09090b;--chess-line: rgba(255, 255, 255, .026);--glow-color: rgba(99, 102, 241, .15)}html{background:var(--page-bg)}body{font-family:Inter,sans-serif;background:transparent;background-attachment:fixed;color:#0f172a;min-height:100vh;overflow-x:hidden;transition:background .4s ease,color .4s ease;isolation:isolate}.bg-chessboard{position:fixed;inset:0;z-index:-4;background:var(--page-bg);background-image:linear-gradient(45deg,var(--chess-line) 25%,transparent 25%,transparent 75%,var(--chess-line) 75%,var(--chess-line)),linear-gradient(45deg,var(--chess-line) 25%,transparent 25%,transparent 75%,var(--chess-line) 75%,var(--chess-line));background-position:0 0,60px 60px;background-size:120px 120px;transition:background .4s ease,background-image .4s ease}.ambient-glow{position:fixed;top:-140px;left:50%;z-index:-3;width:min(1100px,90vw);height:540px;pointer-events:none;background:radial-gradient(circle,var(--glow-color) 0%,rgba(255,255,255,0) 70%);transform:translate(-50%);transition:background .4s ease}.piece-3d{position:fixed;z-index:-2;line-height:1;-webkit-user-select:none;user-select:none;pointer-events:none}.piece-light{color:transparent;-webkit-text-stroke:2px #e4e4e7;text-shadow:none}.piece-dark{color:transparent;-webkit-text-stroke:2px #d4d4d8;text-shadow:none}html.dark .piece-light{color:#f4f4f5;-webkit-text-stroke:0;text-shadow:0 1px 0 #e4e4e7,0 2px 0 #d4d4d8,0 3px 0 #a1a1aa,0 4px 0 #71717a,0 5px 0 #52525b,0 15px 20px rgba(0,0,0,.4),0 25px 40px rgba(0,0,0,.3)}html.dark .piece-dark{color:#27272a;-webkit-text-stroke:0;text-shadow:0 1px 0 #18181b,0 2px 0 #18181b,0 3px 0 #09090b,0 4px 0 #000,0 5px 0 #000,0 15px 20px rgba(0,0,0,.8),0 25px 40px rgba(0,0,0,.6)}@keyframes float-slow{0%,to{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-30px) rotate(4deg)}}@keyframes float-medium{0%,to{transform:translateY(0) rotate(12deg)}50%{transform:translateY(-40px) rotate(-5deg)}}@keyframes float-fast{0%,to{transform:translateY(0) rotate(-15deg)}50%{transform:translateY(-50px) rotate(15deg)}}.float-1{animation:float-slow 8s ease-in-out infinite}.float-2{animation:float-medium 12s ease-in-out infinite;animation-delay:-2s}.float-3{animation:float-fast 10s ease-in-out infinite;animation-delay:-5s}.float-4{animation:float-slow 14s ease-in-out infinite;animation-delay:-7s}.glass-panel{border:1px solid rgba(228,228,231,.82);background:linear-gradient(180deg,#ffffffeb,#fafafad1);box-shadow:0 22px 50px -32px #18181b61;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}html.dark .glass-panel{border-color:#ffffff1a;background:linear-gradient(180deg,#27272ab8,#18181bb8);box-shadow:0 24px 60px -36px #000000b8}.invite-link-panel{position:relative;overflow:hidden;border-color:#10b98147;background:radial-gradient(circle at 12% 0%,rgba(16,185,129,.18),transparent 34%),linear-gradient(135deg,#ecfdf5eb,#f0fdfac2);box-shadow:0 26px 64px -40px #0596696b}html.dark .invite-link-panel{border-color:#34d39938;background:radial-gradient(circle at 12% 0%,rgba(52,211,153,.18),transparent 34%),linear-gradient(135deg,#064e3b57,#09090bb8 72%);box-shadow:0 28px 70px -46px #10b9818c}.invite-link-shell{border:1px solid rgba(5,150,105,.18);background:#ffffffbd;box-shadow:inset 0 1px #ffffff7a}html.dark .invite-link-shell{border-color:#6ee7b729;background:#09090b6b;box-shadow:inset 0 1px #ffffff0f}.copy-feedback-toast{position:absolute;right:1.25rem;bottom:.85rem;z-index:2;pointer-events:none;border:1px solid rgba(16,185,129,.28);border-radius:999px;background:#ecfdf5f5;padding:.45rem .85rem;color:#047857;font-size:.78rem;font-weight:900;opacity:0;transform:translateY(8px) scale(.96);transition:opacity .18s ease,transform .18s ease;box-shadow:0 16px 34px -24px #047857a6}.copy-feedback-toast.is-visible{opacity:1;transform:translateY(0) scale(1)}html.dark .copy-feedback-toast{border-color:#6ee7b73d;background:#064e3beb;color:#d1fae5;box-shadow:0 18px 38px -26px #10b981b8}#theme-toggle{display:grid;flex:0 0 auto;place-items:center;line-height:1}#theme-toggle svg:not(.hidden){display:block}.game-topbar-inner{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.85rem}.game-brand{min-width:0;flex:1 1 auto}.game-brand-mark{flex:0 0 auto}.game-brand-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-header-actions{flex:0 0 auto;min-width:0;flex-wrap:nowrap}.game-header-button{position:relative;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}#share-game{overflow:visible}#share-game.is-shared{border-color:#10b9816b;color:#059669}html.dark #share-game.is-shared{border-color:#34d39947;color:#a7f3d0}#share-game.is-shared .header-action-icon{animation:share-icon-pop .44s cubic-bezier(.2,.9,.22,1.35)}#share-game.is-shared:before{content:"";position:absolute;inset:-6px;border:2px solid rgba(16,185,129,.45);border-radius:999px;pointer-events:none;animation:share-ring .72s ease-out forwards}@keyframes share-icon-pop{0%{transform:scale(.72) rotate(-14deg)}58%{transform:scale(1.18) rotate(8deg)}to{transform:scale(1) rotate(0)}}@keyframes share-ring{0%{opacity:.8;transform:scale(.82)}to{opacity:0;transform:scale(1.42)}}.header-action-icon{display:none;flex:0 0 auto;width:1rem;height:1rem}@media(max-width:640px){.game-topbar-inner{gap:.55rem;padding:.65rem .75rem}.game-brand{max-width:calc(100% - 132px);gap:.55rem}.game-brand-mark{width:2.15rem;height:2.15rem;border-radius:.8rem}.game-brand-text{font-size:1.02rem;line-height:1}.game-header-actions{gap:.45rem}#theme-toggle,.game-header-button{width:2.35rem;height:2.35rem;padding:0!important;border-radius:999px}#theme-toggle svg{width:1rem;height:1rem}.header-action-icon{display:block}.header-action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#share-game:after{content:attr(data-share-status);position:absolute;right:0;top:calc(100% + .55rem);width:max-content;max-width:min(72vw,13rem);border:1px solid rgba(16,185,129,.28);border-radius:999px;background:#f0fdf4f5;box-shadow:0 18px 36px -24px #064e3b8c;color:#047857;font-size:.72rem;font-weight:900;line-height:1;opacity:0;padding:.55rem .72rem;pointer-events:none;transform:translateY(-6px) scale(.94);transform-origin:top right;white-space:nowrap}html.dark #share-game:after{border-color:#34d3993d;background:#064e3bf0;box-shadow:0 18px 36px -24px #000000e6;color:#d1fae5}#share-game.is-shared:after{animation:share-mobile-toast 1.7s ease forwards}@keyframes share-mobile-toast{0%{opacity:0;transform:translateY(-6px) scale(.94)}16%,72%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-4px) scale(.98)}}}@media(max-width:380px){.game-brand{max-width:calc(100% - 126px)}.game-brand-domain{display:none}}.waiting-card{position:relative;overflow:hidden}.waiting-card:after{content:"";position:absolute;right:1.25rem;bottom:0;left:1.25rem;height:3px;border-radius:999px 999px 0 0;background:linear-gradient(90deg,transparent,#6366f1,transparent);transform:translate(-70%);animation:waiting-bar 1.7s ease-in-out infinite}html.dark .waiting-card:after{background:linear-gradient(90deg,transparent,#a5b4fc,transparent)}.start-countdown{--countdown-progress: 0;--countdown-offset: 326.73;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,1.4rem);overflow:hidden;border:1px solid rgba(16,185,129,.3);border-radius:1.5rem;background:radial-gradient(circle at 12% 20%,rgba(16,185,129,.22),transparent 34%),linear-gradient(135deg,#ecfdf5f0,#ffffffd6);padding:clamp(1rem,3vw,1.35rem);box-shadow:0 26px 62px -42px #0596698c;isolation:isolate}.start-countdown-hero{border:0;background:transparent;box-shadow:none}.start-countdown-hero:before{display:none}.start-countdown:before{content:"";position:absolute;inset:-40% auto -40% -20%;z-index:-1;width:46%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);transform:translate(calc(var(--countdown-progress) * 280%)) skew(-18deg)}html.dark .start-countdown{border-color:#34d3993d;background:radial-gradient(circle at 12% 20%,rgba(16,185,129,.2),transparent 34%),linear-gradient(135deg,#064e3b5c,#18181bd6);box-shadow:0 28px 70px -48px #10b981b8}html.dark .start-countdown-hero{border-color:transparent;background:transparent;box-shadow:none}.start-countdown-ring{position:relative;display:grid;width:clamp(5.5rem,17vw,7rem);aspect-ratio:1 / 1;place-items:center;flex:0 0 auto}.start-countdown-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.start-countdown-ring circle{fill:none;stroke-width:9}.start-countdown-track{stroke:#0f172a14}html.dark .start-countdown-track{stroke:#ffffff1a}.start-countdown-progress{stroke:#10b981;stroke-linecap:round;stroke-dasharray:326.73;stroke-dashoffset:var(--countdown-offset);transition:stroke-dashoffset .12s linear;filter:drop-shadow(0 0 7px rgba(16,185,129,.42))}.start-countdown-number{position:relative;z-index:1;display:grid;width:72%;aspect-ratio:1 / 1;place-items:center;border-radius:999px;background:#ffffffc7;color:#064e3b;font-size:clamp(2.2rem,7vw,3.4rem);font-weight:950;line-height:1;box-shadow:inset 0 1px #ffffffb8,0 14px 34px -26px #064e3bbf}html.dark .start-countdown-number{background:#09090b80;color:#d1fae5;box-shadow:inset 0 1px #ffffff1a,0 16px 36px -28px #10b981e6}.start-countdown.is-complete .start-countdown-number{animation:countdown-pop .42s ease-out both}.countdown-launch{position:relative;isolation:isolate;min-height:min(680px,calc(100vh - 10rem));display:grid;align-content:center;overflow:visible;padding:clamp(1.25rem,4vw,3rem)}.countdown-launch:before{display:none}.start-countdown-hero{width:min(100%,520px);grid-template-columns:1fr;justify-items:center;gap:clamp(1rem,4vw,1.35rem);padding:0;text-align:center;transform:translateZ(0);animation:countdown-card-in .62s ease-out both}.start-countdown-hero .start-countdown-ring{width:clamp(7rem,24vw,10.5rem)}.start-countdown-hero .start-countdown-track{stroke:#0f172a12}html.dark .start-countdown-hero .start-countdown-track{stroke:#ffffff1a}.start-countdown-hero .start-countdown-number{background:transparent;font-size:clamp(3.4rem,11vw,5.8rem);box-shadow:none}html.dark .start-countdown-hero .start-countdown-number{background:transparent;box-shadow:none}.countdown-title{margin:0;color:#09090b;font-size:clamp(2.2rem,7vw,4.2rem);font-weight:950;line-height:1}html.dark .countdown-title{color:#fff}.countdown-spectator-notice{animation:countdown-card-in .52s ease-out both}.spectator-notice,.spectator-board-notice{display:flex;align-items:center;gap:.85rem;border:1px solid rgba(99,102,241,.2);border-radius:1.25rem;background:#eef2ffb8;padding:.95rem 1rem;box-shadow:0 18px 44px -34px #4f46e56b}html.dark .spectator-notice,html.dark .spectator-board-notice{border-color:#a5b4fc2e;background:#312e8138;box-shadow:0 20px 48px -36px #818cf873}.spectator-notice-icon,.spectator-board-notice>span:first-child{display:grid;width:2.4rem;aspect-ratio:1 / 1;place-items:center;flex:0 0 auto;border-radius:999px;background:#6366f11f;color:#4338ca;font-size:1.05rem}html.dark .spectator-notice-icon,html.dark .spectator-board-notice>span:first-child{background:#a5b4fc29;color:#c7d2fe}.spectator-board-notice{justify-content:center;padding:.7rem .9rem;color:#4f46e5;font-size:.82rem;font-weight:850;text-align:center}html.dark .spectator-board-notice{color:#c7d2fe}@keyframes waiting-bar{0%{transform:translate(-80%);opacity:.35}50%{opacity:1}to{transform:translate(80%);opacity:.35}}@keyframes countdown-pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes countdown-card-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.status-waiting{position:relative;overflow:hidden;border-color:#818cf852;color:#4f46e5;background:linear-gradient(90deg,#eef2ffeb,#ffffffc7,#eef2ffeb);background-size:220% 100%;animation:status-gradient 2.8s ease-in-out infinite}html.dark .status-waiting{border-color:#a5b4fc6b;color:#c7d2fe;background:linear-gradient(90deg,#312e81bd,#4338ca94,#18181bb3,#312e81bd);background-size:320% 100%;box-shadow:0 12px 34px -20px #818cf8b8}html.dark .status-waiting:after{content:"";position:absolute;top:-35%;bottom:-35%;left:-40%;width:38%;background:linear-gradient(90deg,transparent,rgba(199,210,254,.34),transparent);transform:skew(-18deg);animation:status-shine 2.1s ease-in-out infinite}@keyframes status-gradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes status-shine{0%{left:-45%;opacity:0}20%,70%{opacity:1}to{left:110%;opacity:0}}.board-frame{display:block;aspect-ratio:1 / 1;position:relative;isolation:isolate;overflow:hidden;padding:var(--board-padding);border:1px solid var(--board-border);border-radius:var(--board-radius);box-shadow:var(--board-shadow);background:var(--board-frame-bg);box-sizing:border-box;touch-action:none}.play-board{width:100%;max-width:none;margin-inline:0;opacity:0;transition:opacity .18s ease}.play-board.is-board-ready{opacity:1}.play-board.is-board-loading{pointer-events:none}.match-hud{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(.32rem,.8vw,.55rem)}.match-pill{min-height:2.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid rgba(212,212,216,.88);border-radius:999px;background:#ffffffc7;color:#3f3f46;box-shadow:0 18px 44px -32px #18181b8c,inset 0 1px #ffffffd1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);white-space:nowrap}html.dark .match-pill{border-color:#ffffff1f;background:#272737b8;color:#f4f4f5;box-shadow:0 18px 48px -32px #000000e0,inset 0 1px #ffffff0f}.match-action{padding:.45rem .78rem;font-size:.78rem;font-weight:800;transition:transform .16s ease,background .16s ease}.match-action:hover{transform:translateY(-1px);background:#ffffffeb}html.dark .match-action:hover{background:#3f3f4ed1}.resign-pill{border-color:#fecdd3e6;background:#fff1f2d1;color:#e11d48}html.dark .resign-pill{border-color:#fb718538;background:#f43f5e1a;color:#fecdd3}.match-status-pill,.match-turn-pill{padding:.45rem .9rem;font-size:.8rem;font-weight:900}.match-status-pill{color:#18181b}html.dark .match-status-pill{color:#fff}.match-turn-pill{color:#52525b}html.dark .match-turn-pill{color:#d4d4d8}.board-shell{--board-display-size: min(var(--board-max-size, 900px), calc(100vh - var(--board-height-reserve, 270px)), calc(100vw - var(--board-width-reserve, 72px)));display:grid;gap:clamp(7px,.9vw,10px);width:var(--board-display-size);max-width:100%;min-width:0;margin-inline:auto;box-sizing:border-box;transition:width .18s ease}.board-actions{position:static;display:flex;justify-content:flex-end;gap:.45rem;min-height:2.35rem;padding-inline:max(2px,var(--board-padding))}.board-icon-action{display:grid;width:2.35rem;height:2.35rem;place-items:center;border:1px solid rgba(148,163,184,.42);border-radius:999px;background:linear-gradient(145deg,#fffffff0,#f8fafcc2);color:#334155;box-shadow:0 14px 30px -24px #0f172ab8,inset 0 1px #ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.board-icon-action svg{width:1.08rem;height:1.08rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.board-icon-action:hover{transform:translateY(-1px);border-color:#6366f16b;background:linear-gradient(145deg,#fff,#eef2ffdb);color:#312e81;box-shadow:0 16px 34px -24px #312e81cc,inset 0 1px #fffffff5}html.dark .board-icon-action{border-color:#94a3b82e;background:linear-gradient(145deg,#272737db,#181825c2);color:#e5e7eb;box-shadow:0 14px 32px -24px #000000f2,inset 0 1px #ffffff14}html.dark .board-icon-action:hover{border-color:#818cf85c;background:linear-gradient(145deg,#37374ef5,#232337e0);color:#fff}.resign-action{border-color:#f43f5e42;background:linear-gradient(145deg,#fff1f2f5,#ffe4e6c7);color:#be123c}.resign-action:hover{border-color:#f43f5e70;background:linear-gradient(145deg,#fff1f2,#fecdd3db);color:#9f1239}html.dark .resign-action{border-color:#fb718547;background:linear-gradient(145deg,#4c1d31b8,#291423c2);color:#fecdd3}html.dark .resign-action:hover{border-color:#fb718570;background:linear-gradient(145deg,#5e233ae6,#3f182edb);color:#ffe4e6}.board-player-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:28px;padding-inline:max(2px,var(--board-padding))}.player-identity{min-width:0;display:flex;align-items:center;gap:.5rem;text-align:left}.player-badge{flex:0 0 auto;display:grid;width:clamp(26px,2.4vw,32px);height:clamp(26px,2.4vw,32px);place-items:center;border:2px solid rgba(161,161,170,.32);border-radius:999px;background:#ffffff85;color:#71717a;font-size:.76rem;font-weight:900;overflow:hidden;text-transform:uppercase;box-shadow:inset 0 1px #ffffffb8}.player-badge.is-turn-active{border-color:#10b981;box-shadow:0 0 0 3px #10b98124,inset 0 1px #ffffffb8}.player-badge.is-turn-waiting{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441c,inset 0 1px #ffffffb8}html.dark .player-badge{border-color:#ffffff1f;background:#ffffff0f;color:#a1a1aa;box-shadow:none}html.dark .player-badge.is-turn-active{border-color:#34d399;box-shadow:0 0 0 3px #34d39929}html.dark .player-badge.is-turn-waiting{border-color:#fb7185;box-shadow:0 0 0 3px #fb718524}.player-badge img,.player-badge span{grid-area:1 / 1}.player-badge img{display:block;width:100%;height:100%;object-fit:cover}.player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.88rem,1.15vw,1.05rem);font-weight:850;line-height:1.05;color:#27272a}html.dark .player-name{color:#fff}.player-clock{flex:0 0 auto;min-width:3.25rem;border-radius:999px;background:#18181b14;padding:.24rem .52rem;text-align:center;color:#3f3f46;font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:850;line-height:1}html.dark .player-clock{background:#ffffff14;color:#d4d4d8}.player-clock.is-active{background:#6366f121;color:#4f46e5}html.dark .player-clock.is-active{background:#818cf82e;color:#c7d2fe}.player-clock.is-low{background:#f43f5e1f;color:#e11d48}html.dark .player-clock.is-low{background:#f43f5e29;color:#fda4af}.material-score{flex:0 0 auto;font-size:.68rem;font-weight:600;line-height:1;color:#10b981}html.dark .material-score{color:#6ee7b7}.board-stage{position:relative;display:block;width:100%;max-width:100%;min-width:0;margin-inline:auto;box-sizing:border-box}.captured-zone{position:static;z-index:6;display:flex;flex-flow:row wrap;align-content:flex-start;align-items:center;justify-content:flex-end;gap:5px;min-height:28px;width:auto;max-height:none;min-width:0;padding:0;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}html.dark .captured-zone{border-color:transparent;background:transparent}.captured-zone.is-empty{visibility:hidden;opacity:0}.captured-group{position:relative;display:inline-grid;flex:0 0 auto;width:24px;height:24px;place-items:center;border:1px solid rgba(161,161,170,.22);border-radius:7px;background:#ffffff70;line-height:1;box-shadow:inset 0 1px #ffffff8f}.captured-group.has-black-piece{border-color:#d4d4d885;background:#ffffff8f}.captured-piece{display:block;position:relative;box-sizing:border-box;width:18px;max-width:18px;height:18px;max-height:18px;aspect-ratio:1 / 1;object-fit:contain;line-height:1;filter:none}.captured-piece.black{border-radius:3px;background:transparent;padding:0}.captured-count{position:absolute;right:-5px;bottom:-4px;display:grid;min-width:14px;height:14px;place-items:center;border-radius:999px;border:1px solid rgba(255,255,255,.92);background:#27272a;padding-inline:3px;color:#fff;font-size:.56rem;font-weight:900;line-height:1;box-shadow:0 2px 5px #0f172a2e}html.dark .captured-piece{border-radius:3px;background:transparent;border:0;padding:0}html.dark .captured-piece.black{background:transparent;padding:0;filter:none}html.dark .guest-captures .captured-piece.black{background:transparent;padding:0}html.dark .captured-piece.white{filter:none}html.dark .captured-piece.black.fallback-symbol{color:#09090b}html.dark .captured-piece.white.fallback-symbol{color:#fff}html.dark .captured-group{border-color:#ffffff1a;background:#ffffff0f;box-shadow:none}html.dark .captured-group.has-black-piece{border-color:#ffffff3d;background:#ffffff8f}html.dark .captured-count{border-color:#18181beb;background:#fafafa;color:#18181b;box-shadow:0 2px 5px #00000059}.captured-piece.fallback-symbol{display:grid;place-items:center;font-family:Segoe UI Symbol,"Noto Sans Symbols 2",Apple Symbols,serif;font-size:1.12rem}.board-frame:after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;box-shadow:var(--board-overlay-shadow)}.cm-board-canvas{position:absolute;inset:var(--board-padding);z-index:1;overflow:hidden;border-radius:10px;background:transparent;contain:layout paint style;touch-action:none}.board-hint-layer{position:absolute;inset:var(--board-padding);z-index:2;overflow:hidden;border-radius:10px;pointer-events:none}.board-hint-marker{position:absolute;display:block;pointer-events:none}.board-hint-marker:after{content:"";position:absolute;inset:50%;display:block;border-radius:999px;transform:translate(-50%,-50%);box-sizing:border-box}.board-hint-marker.is-dot:after{width:22%;height:22%;background:#0000003d;box-shadow:none}.board-hint-marker.is-capture:after{width:76%;height:76%;border:5px solid rgba(0,0,0,.26);box-shadow:none}.board-hint-marker.is-selected:after,.board-hint-marker.is-target:after{width:88%;height:88%;border:4px solid rgba(52,211,153,.9);box-shadow:0 0 0 2px #064e3b1f,0 10px 24px #05966933}.board-hint-marker.is-target:after{width:72%;height:72%;border-color:#3b82f6db;box-shadow:0 0 0 2px #1e40af1f,0 8px 18px #2563eb33}.board-hint-marker.is-check:after{inset:0;width:100%;height:100%;border-radius:8px;background:#ef444480;box-shadow:inset 0 0 0 2px #b91c1c8c;transform:none}html.dark .board-hint-marker.is-dot:after{background:#0000003d;box-shadow:none}html.dark .board-hint-marker.is-capture:after{border-color:#00000042}.cm-board-canvas .cm-chessboard-content,.cm-board-canvas .cm-chessboard{display:block;width:100%!important;height:100%!important}.cm-board-canvas .cm-chessboard{overflow:hidden}.cm-board-canvas .cm-chessboard.default .board .square.white{fill:var(--board-light)}.cm-board-canvas .cm-chessboard.default .board .square.black{fill:var(--board-dark)}.cm-board-canvas .cm-chessboard.default.border-type-none .board .border{fill:var(--board-dark);stroke:var(--board-dark)}.cm-board-canvas .cm-chessboard.default .coordinates .coordinate{font-family:Inter,sans-serif;font-size:7px;font-weight:750;opacity:.72}.cm-board-canvas .cm-chessboard.default .coordinates .coordinate.white{fill:var(--board-coordinate-light)}.cm-board-canvas .cm-chessboard.default .coordinates .coordinate.black{fill:var(--board-coordinate-dark)}.board-frame.is-read-only .cm-board-canvas{pointer-events:none}.learn-board-click-layer{position:absolute;inset:var(--board-padding);z-index:4;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden;border-radius:10px;pointer-events:auto}.learn-board-click-square{position:relative;min-width:0;min-height:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation}.learn-board-click-square:after{content:"";position:absolute;inset:18%;border-radius:999px;opacity:0;transform:scale(.72);transition:opacity .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease}.learn-board-click-square:hover:after,.learn-board-click-square:focus-visible:after{opacity:1;transform:scale(.82);background:#ffffff42;box-shadow:inset 0 0 0 2px #ffffff8f}.learn-board-click-square.is-correct:after{opacity:1;transform:scale(1);background:#10b98157;box-shadow:inset 0 0 0 4px #10b981e0,0 0 0 2px #064e3b2e}.learn-board-click-square.is-wrong:after{opacity:1;transform:scale(.94);background:#f43f5e42;box-shadow:inset 0 0 0 4px #f43f5ed1,0 0 0 2px #9f123929}.learn-card-text{color:inherit}html.dark .learn-card-heading-remember,html.dark .learn-card-text-remember{color:#fef3c7!important}html.dark .learn-card-heading-mistake,html.dark .learn-card-text-mistake{color:#ffe4e6!important}html.dark .learn-card-heading-tip,html.dark .learn-card-text-tip{color:#e0f2fe!important}.learn-practice-board .cm-board-canvas{pointer-events:auto}.learn-practice-marker-layer{position:absolute;inset:var(--board-padding);z-index:2;overflow:hidden;border-radius:10px;pointer-events:none}.learn-practice-marker{position:absolute;display:block;pointer-events:none}.learn-practice-marker:after{content:"";position:absolute;inset:50%;display:block;border-radius:999px;transform:translate(-50%,-50%);box-sizing:border-box}.learn-practice-marker.is-target:after{width:28%;height:28%;background:#10b98194;box-shadow:0 0 0 2px #064e3b29}.learn-practice-marker.is-selected:after{width:86%;height:86%;border:4px solid rgba(52,211,153,.92);box-shadow:0 0 0 2px #064e3b24,0 10px 24px #05966933}.cm-chessboard-draggable-piece{z-index:9999!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:none!important;overflow:visible!important;filter:drop-shadow(0 7px 5px rgba(15,23,42,.28)) drop-shadow(0 14px 18px rgba(15,23,42,.18))}.cm-chessboard-draggable-piece image,.cm-chessboard-draggable-piece use{visibility:visible!important;opacity:1!important}.cm-chessboard-draggable-piece.is-touch-preview{will-change:left,top,transform}.cm-board-canvas .markers .marker.marker-circle{stroke:#0f172a6b;stroke-width:3px;opacity:.38}.cm-board-canvas .markers .marker.marker-circle-primary{stroke:#10b981eb;stroke-width:3.2px;opacity:.7}.cm-board-canvas .markers .marker.marker-dot{fill:#10b98194;opacity:1}.cm-board-canvas .markers .marker.marker-bevel{fill:#10b9814d;opacity:1}.cm-board-canvas .markers .marker.marker-last-move-from,.cm-board-canvas .markers .marker.marker-last-move-to{fill:#ffc43966;stroke:none;opacity:1}@media(pointer:coarse){.board-hint-marker.is-target:after{width:164%;height:164%;border:0;background:#0000004d;box-shadow:none}html.dark .board-hint-marker.is-target:after{border:0;background:#0000004d;box-shadow:none}.cm-board-canvas .pieces-layer,.captured-piece,.piece-swatch-image{filter:none!important}.cm-chessboard-draggable-piece.is-touch-preview{filter:drop-shadow(0 16px 18px rgba(15,23,42,.38)) drop-shadow(0 32px 36px rgba(15,23,42,.24))!important}}.move-history summary::-webkit-details-marker{display:none}.move-history summary:after{content:"+";display:grid;width:22px;aspect-ratio:1 / 1;place-items:center;border-radius:999px;background:#0f172a0f;color:#64748b;font-size:.9rem;line-height:1;transition:transform .16s ease,background .16s ease}.move-history[open] summary:after{transform:rotate(45deg)}html.dark .move-history summary:after{background:#ffffff14;color:#a1a1aa}@media(max-width:640px){.countdown-launch{min-height:min(640px,calc(100vh - 7rem));padding:1rem}.start-countdown{grid-template-columns:1fr;justify-items:center;text-align:center}.start-countdown>.min-w-0{text-align:center}.start-countdown-hero .start-countdown-ring{width:clamp(7rem,42vw,9rem)}.spectator-notice{align-items:flex-start}.play-board{width:100%;max-width:none;border-radius:0}}@media(max-width:767px){.match-hud{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:.35rem}.match-pill{min-height:2rem;min-width:0;overflow:hidden;text-overflow:ellipsis}.match-status-pill,.match-turn-pill,.match-action{width:100%;padding:.36rem .58rem;font-size:.72rem}.board-shell{width:100%;max-width:none;margin-inline:0}.board-player-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding-inline:10px}.player-identity{gap:.45rem}.captured-zone{flex-flow:row wrap;align-items:center;justify-content:flex-end;max-width:min(42vw,170px);min-height:24px;overflow:visible;gap:5px}.captured-zone.is-empty{visibility:hidden;opacity:0}.captured-piece{flex:0 0 18px;width:18px;max-width:18px}.captured-group{width:22px;height:22px;border-radius:6px}.captured-count{min-width:12px;height:12px;right:-4px;bottom:-3px;padding-inline:2px;font-size:.52rem}}.btn-primary{position:relative;overflow:hidden;border:1px solid rgba(129,140,248,.52);background:linear-gradient(180deg,#6366f1,#4f46e5);color:#fff;box-shadow:0 16px 30px -18px #4f46e5d1}.btn-primary:disabled{cursor:not-allowed;filter:grayscale(.2);opacity:.55;transform:none}.settings-panel{background:#fffffff0;box-shadow:0 24px 60px -34px #0f172a70;color:#0f172a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}html.dark .settings-panel{border-color:#ffffff1f;background:#18181bf0;color:#f8fafc}.settings-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border-bottom:1px solid #e2e8f0;overflow-x:auto}html.dark .settings-tabs{border-bottom-color:#ffffff1a}.settings-tab{position:relative;min-width:max-content;padding:14px 18px 13px;color:#64748b;font-weight:800;transition:color .16s ease}.settings-tab:hover,.settings-tab.active{color:#4f46e5}.settings-tab.active:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:3px;border-radius:0;background:#4f46e5}.settings-body{max-height:min(68vh,620px);overflow-y:auto;padding:16px}.settings-body::-webkit-scrollbar{width:10px}.settings-body::-webkit-scrollbar-thumb{border-radius:4px;background:#cbd5e1;border:3px solid #ffffff}html.dark .settings-body::-webkit-scrollbar-thumb{background:#71717abd;border-color:#18181bf0}.settings-section-title{margin:2px 0 14px;color:#64748b;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.settings-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.settings-swatch{position:relative;display:flex;align-items:center;justify-content:center;justify-self:center;width:100%;aspect-ratio:1 / 1;box-sizing:border-box;overflow:hidden;border:1px solid #e2e8f0;border-radius:4px;background:#f8fafc;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}html.dark .settings-swatch{border-color:#ffffff1a;background:#27272ad1}.settings-swatch:hover{transform:translateY(-1px);border-color:#4f46e56b}.settings-swatch.active{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e524}.settings-swatch.active:after{content:"✓";position:absolute;z-index:5;left:50%;top:50%;display:grid;width:38%;min-width:28px;aspect-ratio:1 / 1;place-items:center;transform:translate(-50%,-50%);border-radius:4px;background:#4f46e5;color:#fff;font-size:clamp(1rem,2.3vw,1.5rem);font-weight:1000;line-height:1;box-shadow:0 8px 18px #00000042}.settings-swatch-preview{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}.settings-swatch-preview:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 42%,rgba(15,23,42,.34));pointer-events:none}.settings-swatch-label{position:absolute;z-index:4;right:6px;bottom:6px;left:6px;overflow:hidden;padding:4px 6px;border-radius:4px;background:#0f172aad;color:#fff;font-size:clamp(.62rem,1.15vw,.76rem);font-weight:900;line-height:1.08;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.32);white-space:nowrap}.board-swatch{background:#f8fafc;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 -14px 24px #0000001f}.piece-swatch{background:#f8fafc}.swatch-board-surface{position:absolute;inset:0;z-index:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));overflow:hidden}.board-swatch-preview .swatch-board-surface,.piece-swatch-preview .swatch-board-surface{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr))}.swatch-board-image{position:absolute;inset:0;z-index:0;display:block}.swatch-board-cell{min-width:0;min-height:0;background-position:center;background-repeat:no-repeat;background-size:cover}.piece-swatch-preview{display:grid;place-items:center}.piece-swatch-symbol{position:relative;z-index:2;font-family:Segoe UI Symbol,"Noto Sans Symbols 2",Apple Symbols,serif;font-size:clamp(2.4rem,5.6vw,3.7rem);line-height:1;color:var(--piece-preview-color);text-shadow:var(--piece-preview-shadow);transform:translateY(-.03em) scale(var(--piece-preview-scale))}.piece-swatch-symbol:after{content:attr(data-piece);position:absolute;inset:0;color:var(--piece-preview-highlight);transform:translate(-.03em,-.04em);opacity:.62}.piece-swatch-image{position:relative;z-index:2;width:72%;height:72%;object-fit:contain;filter:var(--piece-preview-filter, drop-shadow(0 6px 5px rgba(0, 0, 0, .28)));transform:scale(var(--piece-preview-scale, .9))}.comfort-list{display:grid;gap:12px}.comfort-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafcd1;padding:12px 14px}html.dark .comfort-row{border-color:#ffffff1a;background:#ffffff0d}.comfort-label{color:#334155;font-size:.94rem;font-weight:850}html.dark .comfort-label{color:#e5e7eb}.comfort-toggle{min-width:104px;border:1px solid #cbd5e1;border-radius:999px;background:#e2e8f0;padding:6px 10px;color:#64748b;font-size:.78rem;font-weight:950;text-align:center;transition:background .16s ease,border-color .16s ease,color .16s ease}.comfort-toggle.active{border-color:#10b98157;background:#d1fae5;color:#047857}html.dark .comfort-toggle{border-color:#ffffff1f;background:#ffffff14;color:#a1a1aa}html.dark .comfort-toggle.active{border-color:#34d39961;background:#065f466b;color:#a7f3d0}.comfort-segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:min(100%,260px);overflow:hidden;border:1px solid #cbd5e1;border-radius:8px;background:#e2e8f0;padding:3px}html.dark .comfort-segmented{border-color:#ffffff1f;background:#ffffff14}.comfort-option{min-width:0;border-radius:6px;padding:7px 10px;color:#64748b;font-size:.78rem;font-weight:950;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.comfort-option.active{background:#fff;color:#4f46e5;box-shadow:0 5px 14px -10px #0f172a73}html.dark .comfort-option{color:#a1a1aa}html.dark .comfort-option.active{background:#ffffff1f;color:#c7d2fe;box-shadow:none}.board-frame.is-locked{pointer-events:none;filter:saturate(.72) brightness(.92)}.board-frame.is-locked:after{background:#0f172a1a;box-shadow:var(--board-overlay-shadow),inset 0 0 0 999px #0f172a14}.result-overlay{background:#09090b9e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.result-card{position:relative;overflow:hidden;animation:result-pop .42s cubic-bezier(.2,.8,.2,1) both}.result-card:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent,rgba(99,102,241,.22),transparent 22%,rgba(16,185,129,.18),transparent 42%),radial-gradient(circle at 50% 35%,rgba(255,255,255,.34),transparent 30%);opacity:.8;animation:result-shine 5s linear infinite}.result-card>:not(.result-close){position:relative;z-index:1}.result-close{position:absolute;z-index:2}.result-emblem{animation:result-pulse 1.6s ease-in-out infinite}.result-card.is-win:before{background:conic-gradient(from 0deg,transparent,rgba(16,185,129,.28),transparent 24%,rgba(250,204,21,.2),transparent 46%),radial-gradient(circle at 50% 35%,rgba(255,255,255,.36),transparent 30%)}.result-card.is-loss:before{background:conic-gradient(from 0deg,transparent,rgba(244,63,94,.25),transparent 24%,rgba(99,102,241,.16),transparent 46%),radial-gradient(circle at 50% 35%,rgba(255,255,255,.28),transparent 30%)}.result-card.is-draw:before{background:conic-gradient(from 0deg,transparent,rgba(148,163,184,.24),transparent 24%,rgba(99,102,241,.16),transparent 46%),radial-gradient(circle at 50% 35%,rgba(255,255,255,.3),transparent 30%)}.resign-overlay{background:#09090b8a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.resign-card{animation:result-pop .24s cubic-bezier(.2,.8,.2,1) both}@keyframes result-pop{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes result-shine{to{transform:rotate(360deg)}}@keyframes result-pulse{0%,to{transform:scale(1);box-shadow:0 18px 40px -22px #4f46e5d9}50%{transform:scale(1.04);box-shadow:0 18px 48px -18px #10b981db}}@media(max-width:640px){.settings-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.settings-tab{padding-inline:16px}.comfort-row{align-items:stretch;flex-direction:column}.comfort-toggle,.comfort-segmented{width:100%}}
