@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/poppins-extrabold-latin.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-system-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-geist-mono:"Geist Mono";--colored-theme-blue:#0b254f;--colored-theme-yellow:#d3a52e;--tone-light:#fbf7e8;--tone-dark:#22344b;--ink:var(--tone-dark);--paper:var(--tone-light);--board-edge:#8a9299;--cell-light:#e7e5de;--cell-dark:#d1d0c9;--cell-neutral:#deddd6;--cell-grid:#c0c0b9;--objective-target:#7a7d7b;--hud-color:#31445d;--rules-toggle-ink:var(--paper);--rules-text-color:var(--ink);--rating-panel-text:var(--ink);--rules-muted-ink:#536174;--rules-logo-blue:var(--dark-piece-color);--rules-logo-yellow:var(--light-piece-color);--rules-logo-blue-outline:transparent;--rules-logo-yellow-outline:transparent;--win-dark:color-mix(in srgb, var(--cell-dark) 65%, var(--tone-dark));--accent:#177565;--swap:#b44e32;--swap-lock:#737976;--swap-lock-detail:#d8dcda;--light-piece-color:var(--colored-theme-yellow);--dark-piece-color:var(--colored-theme-blue);--white-piece:var(--light-piece-color);--black-piece:var(--dark-piece-color);--soft-dark-border:color-mix(in srgb, var(--dark-piece-color) 42%, transparent);--white-piece-contrast-border:color-mix(in srgb, var(--white-piece) 58%, #282c31);--black-piece-contrast-border:color-mix(in srgb, var(--black-piece) 58%, #555957);--white-piece-outline:color-mix(in srgb, var(--white-piece) 62%, #202328);--black-piece-outline:color-mix(in srgb, var(--black-piece) 58%, #555957);--white-frame-outline:color-mix(in srgb, var(--white-piece) 72%, transparent);--black-frame-outline:color-mix(in srgb, var(--black-piece) 72%, transparent);--white-win-cell:color-mix(in srgb, var(--white-piece) 42%, var(--cell-neutral));--black-win-cell:color-mix(in srgb, var(--black-piece) 42%, var(--cell-neutral));--white-win-objective:var(--white-win-cell);--black-win-objective:var(--black-win-cell);--white-objective-occupied:var(--white-win-objective);--black-objective-occupied:var(--black-win-objective);--starting-coin-border:#646865;--body-background:var(--tone-light);--focus-ring-inner:#fff;--focus-ring-outer:#101820;--game-inline-start:max(10px, env(safe-area-inset-left));--game-inline-end:max(10px, env(safe-area-inset-right));--game-block-start:max(10px, env(safe-area-inset-top));--game-block-end:max(10px, env(safe-area-inset-bottom));--game-viewport-height:100svh;--game-score-stack-reserve:120px;--game-content-center-x:calc(( 100vw + var(--game-inline-start) - var(--game-inline-end) ) / 2);--board-width:min(calc(100vw - var(--game-inline-start) - var(--game-inline-end)), calc(( var(--game-viewport-height) - var(--game-block-start) - var(--game-block-end) - var(--game-score-stack-reserve) ) * 5 / 7));--board-inline-start:calc(var(--game-content-center-x) - (var(--board-width) / 2));--board-inline-end:calc(var(--game-content-center-x) + (var(--board-width) / 2));--board-border-width:clamp(5px, .7vw, 9px);--board-frame-inset:calc((var(--board-border-width) + 1px) * 2);--board-height:calc((var(--board-width) - var(--board-frame-inset)) * 7 / 5 + var(--board-frame-inset));--game-group-offset-y:0px;--game-content-center-y:calc(( var(--game-viewport-height) + var(--game-block-start) - var(--game-block-end) ) / 2);--top-corner-top:calc(var(--game-content-center-y) - (var(--board-height) / 2) - 49px + var(--game-group-offset-y));--bottom-corner-top:calc(var(--game-content-center-y) + (var(--board-height) / 2) + 11px + var(--game-group-offset-y))}:root[data-theme=colored-dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--tone-light:#f3f0e8;--tone-dark:#12161c;--ink:var(--tone-light);--paper:var(--tone-dark);--board-edge:#484e56;--cell-light:#555a5f;--cell-dark:#555a5f;--cell-neutral:#adb0ac;--cell-grid:#747b82;--objective-target:#5c5d5e;--hud-color:var(--colored-theme-yellow);--rules-toggle-ink:var(--colored-theme-blue);--rules-text-color:var(--colored-theme-yellow);--rating-panel-text:var(--colored-theme-yellow);--rules-muted-ink:#aeb5be;--rules-logo-blue-outline:var(--cell-neutral);--rules-logo-yellow-outline:var(--colored-theme-blue);--light-piece-color:var(--colored-theme-yellow);--dark-piece-color:var(--colored-theme-blue);--white-piece:var(--colored-theme-blue);--black-piece:var(--colored-theme-yellow);--white-piece-contrast-border:var(--colored-theme-yellow);--black-piece-contrast-border:var(--colored-theme-blue);--white-piece-outline:#3b5f88;--black-piece-outline:#7e6627;--white-frame-outline:var(--colored-theme-yellow);--black-frame-outline:var(--colored-theme-blue);--soft-dark-border:#8f98a4;--white-win-cell:#4b5668;--black-win-cell:#62583d;--white-win-objective:var(--white-win-cell);--black-win-objective:var(--black-win-cell);--white-objective-occupied:color-mix(in srgb, var(--colored-theme-blue) 42%, #deddd6);--black-objective-occupied:color-mix(in srgb, var(--colored-theme-yellow) 42%, #deddd6);--starting-coin-border:#5f6873;--swap-lock:#41464a;--body-background:var(--tone-dark)}*{box-sizing:border-box;-webkit-user-select:none;user-select:none}html{overscroll-behavior:none;background-color:var(--body-background);width:100%;min-width:320px;height:100%;overflow:hidden}body{overscroll-behavior:none;background-color:var(--body-background);width:100%;height:100%;color:var(--ink);font-family:var(--font-system-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow:hidden}button{color:inherit;font:inherit}svg{display:block}button:focus-visible{z-index:20;outline:3px solid var(--focus-ring-inner);outline-offset:2px;box-shadow:0 0 0 5px var(--focus-ring-outer)}.gameShell{width:100%;height:var(--game-viewport-height);background-color:var(--body-background);min-height:0;padding:var(--game-block-start) var(--game-inline-end) var(--game-block-end) var(--game-inline-start);grid-template-rows:42px auto 42px;place-content:center;place-items:center;gap:9px;transition:opacity .12s;display:grid;overflow:hidden}.gameShell--choosing{opacity:0}.gameShell--themeArrival{opacity:1;transition:none}.gameShell--starting{pointer-events:none}.gameShell--starting>.rulesToggle,.gameShell--starting>.onboardingBadge,.gameShell--starting>.ratingBadge,.gameShell--starting>.dailyBadge,.gameShell--starting>.opponentModeBadge,.gameShell--starting>.humanMatchScore,.gameShell--starting>.ratingTierPanel{pointer-events:auto}.gameShell--postGame{cursor:pointer;touch-action:none}.startingRevealOverlay{z-index:20;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.startingRevealCoin{--starting-color:var(--light-piece-color);--starting-border-color:var(--starting-coin-border);aspect-ratio:1;border:2px solid var(--starting-border-color);background:var(--light-piece-color);width:34px;transform-style:preserve-3d;border-radius:50%;animation:.82s cubic-bezier(.3,.1,.2,1) forwards startingCoinFlip;box-shadow:0 4px 10px #07140f38,inset 0 0 0 1px #fff3}.startingRevealCoin--white{--starting-color:var(--white-piece)}.startingRevealCoin--black{--starting-color:var(--black-piece)}.restartToggle,.soundToggle,.themeModeToggle,.rulesToggle,.physicalEditionToggle{z-index:40;width:38px;height:38px;color:var(--hud-color);cursor:pointer;background:0 0;border:0;place-items:center;line-height:1;transition:color .16s,opacity .16s,transform .16s;display:grid;position:fixed}.restartToggle,.soundToggle,.themeModeToggle,.physicalEditionToggle{-webkit-tap-highlight-color:transparent}.restartToggle:active,.soundToggle:active,.themeModeToggle:active,.physicalEditionToggle:active{background:0 0}.restartToggle{top:var(--bottom-corner-top);left:calc(var(--board-inline-start) + 84px)}.physicalEditionToggle{z-index:70;top:var(--top-corner-top);left:calc(var(--board-inline-end) - 38px);display:grid}.soundToggle{top:var(--bottom-corner-top);left:calc(var(--board-inline-start) + 42px)}.themeModeToggle{top:var(--bottom-corner-top);left:var(--board-inline-start)}.rulesToggle{top:var(--bottom-corner-top);left:calc(var(--board-inline-end) - 38px);background:var(--hud-color);color:var(--rules-toggle-ink);font-family:var(--font-geist-mono), ui-monospace, monospace;-webkit-tap-highlight-color:transparent;border:0;border-radius:50%;font-size:22px;font-weight:700}.rulesToggle--goalCue{animation:.66s ease-in-out 2 rulesTogglePulse}.rulesToggleGlyph{place-items:center;width:100%;height:100%;display:grid}.restartToggle:hover,.soundToggle:hover,.themeModeToggle:hover,.physicalEditionToggle:hover{opacity:.72;transform:translateY(-1px)}.restartIcon{width:21px;height:21px}.tabletopIcon{width:31px;height:24px}.soundIcon{width:25px;height:25px}.themeModeIcon{width:23px;height:23px}.themeModeIconWrap{--theme-mode-icon-rotation:360deg;display:block}.themeModeIconWrap--sun{--theme-mode-icon-rotation:90deg}.themeModeIconWrap--moon{--theme-mode-icon-rotation:360deg}.themeModeIconWrap--reloading{animation:.6s linear infinite themeModeIconRotate}.themeModeIconWrap--arriving{animation:.6s cubic-bezier(.4,0,.2,1) both themeModeIconRotate}.themeModeToggle:disabled{cursor:wait;opacity:1}.ratingBadge,.dailyBadge,.opponentModeBadge,.onboardingBadge{z-index:43;top:var(--top-corner-top);left:var(--board-inline-start);height:38px;color:var(--hud-color);cursor:pointer;font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:24px;font-weight:400;line-height:1;display:flex;position:fixed}.ratingBadge{z-index:43;top:var(--top-corner-top);left:var(--board-inline-start);color:var(--hud-color);position:fixed}.scoreChevron{border-bottom:1.6px solid;border-right:1.6px solid;flex:none;width:7px;height:7px;transition:transform .22s;display:block;transform:translateY(-2px)rotate(45deg)}.ratingBadge[aria-expanded=true] .scoreChevron,.dailyBadge[aria-expanded=true] .scoreChevron,.opponentModeBadge[aria-expanded=true] .scoreChevron,.onboardingBadge[aria-expanded=true] .scoreChevron,.humanMatchScore[aria-expanded=true] .scoreChevron,.ratingBadge[aria-expanded=true] .scoreChevron,.humanMatchScore[aria-expanded=true] .scoreChevron{transform:translateY(2px)rotate(225deg)}.ratingBadgeContent{transform-origin:0;align-items:center;gap:7px;display:flex}.ratingBadgeContent--tierUp{animation:.88s cubic-bezier(.2,.8,.2,1) ratingTierUpPulse}.ratingBadge:focus-visible,.dailyBadge:focus-visible,.opponentModeBadge:focus-visible,.onboardingBadge:focus-visible,.ratingBadge:focus-visible{z-index:43;outline:2px solid var(--hud-color);outline-offset:4px;border-radius:6px}.dailyBadgeIcon,.opponentModeBadgeIcon,.onboardingBadgeIcon{flex:none;width:23px;height:23px}.dailyBadge,.opponentModeBadge,.onboardingBadge{font-family:var(--font-system-sans);font-size:20px}.dailyBadgeCounter,.onboardingBadgeCounter{font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;white-space:nowrap}.onboardingBadge--static{cursor:default}.humanMatchScore{z-index:40;top:var(--top-corner-top);left:var(--board-inline-start);height:38px;color:var(--hud-color);cursor:pointer;font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:24px;line-height:1;display:flex;position:fixed}.humanMatchScore:focus-visible{outline:2px solid var(--hud-color);outline-offset:4px;border-radius:6px}.scoreControl--compact,.scoreControl--compact .ratingBadgeContent{gap:4px}.humanMatchScoreIcon{flex:none;width:22px;height:22px}.humanMatchScoreIconBadge{border:2px solid;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.humanMatchScoreIconBadge .humanMatchScoreIcon{width:16px;height:16px}.humanMatchScoreIconBadge--white{border-color:var(--black-piece);background:var(--white-piece);color:var(--black-piece)}.humanMatchScoreIconBadge--black{border-color:var(--white-piece);background:var(--black-piece);color:var(--white-piece)}.roomToast{z-index:110;bottom:calc(56px + env(safe-area-inset-bottom));border:2px solid var(--white-piece);background:var(--hud-color);width:max-content;max-width:min(680px,100vw - 24px);box-shadow:0 0 0 2px var(--hud-color), 0 8px 22px #07140f33;color:var(--rules-toggle-ink);overflow-wrap:anywhere;text-align:center;white-space:pre-line;border-radius:999px;padding:8px 20px;font-size:clamp(19px,4.8vw,21px);font-weight:400;line-height:1.2;position:fixed;left:50%;transform:translate(-50%)}.roomToast--aboveOpponentPanel{z-index:110}.ratingTierBackdrop{z-index:41;cursor:default;touch-action:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;position:fixed;inset:0}.ratingTierPanel{z-index:42;top:calc(var(--top-corner-top) + 46px);left:var(--board-inline-start);width:min(316px, var(--board-width));border:2px solid var(--hud-color);background:var(--paper);box-shadow:0 2px 0 color-mix(in srgb, var(--hud-color) 30%, transparent), 0 14px 34px #07140f33;color:var(--rating-panel-text);opacity:0;transform-origin:0 0;touch-action:none;visibility:hidden;border-radius:12px;padding:12px;transition:top .18s,opacity .18s,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s linear .22s;position:fixed;transform:translateY(-8px)scale(.72)}.ratingTierPanel--open{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:translateY(0)scale(1)}.ratingTierPanel--joinAnother{top:calc(var(--top-corner-top) + 46px)}.ratingTierPanelHeader{align-items:center;gap:7px;min-height:22px;margin:0 7px 5px;display:flex}.ratingTierPanelTitle{color:var(--rating-panel-text);letter-spacing:.08em;margin:0;font-size:12px;font-weight:700;line-height:1}.ratingTierHelpLink{width:44px;height:44px;color:var(--rating-panel-text);font-family:var(--font-system-sans);-webkit-tap-highlight-color:transparent;border:0;place-items:center;margin:-13px;font-size:12px;font-weight:400;line-height:1;text-decoration:none;display:grid;position:relative}.ratingTierHelpLink:before{content:"";pointer-events:none;border:1.5px solid;border-radius:50%;position:absolute;inset:13px}.ratingTierHelpLink:focus-visible{outline:none}.ratingTierHelpLink:focus-visible:before{outline:2px solid var(--rating-panel-text);outline-offset:2px}.ratingTierRows{gap:2px;display:grid}.ratingTierRow{min-height:30px;font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;border-radius:7px;grid-template-columns:26px 1fr;align-items:center;gap:9px;padding:2px 7px;font-size:16px;line-height:1;display:grid}.ratingTierRow--current{background:color-mix(in srgb, var(--hud-color) 12%, transparent);font-weight:700}.ratingTierRow .ratingStarIcon{width:21px;height:21px}.ratingStarIcon{flex:none;width:22px;height:22px}.ratingValue{min-width:3ch}.ratingDelta{font-size:18px;font-weight:400;animation:1.8s ease-out forwards ratingDelta;position:absolute;bottom:24px;left:27px}.ratingDelta--positive{color:var(--accent)}.ratingDelta--negative{color:var(--swap)}.ratingDelta--neutral{color:var(--ink)}.scoreBadge{border:2px solid var(--score-opposite-color);background:var(--score-player-color);width:100px;height:42px;color:var(--score-opposite-color);font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;letter-spacing:.02em;border-radius:999px;grid-template-columns:22px auto;justify-content:center;align-items:center;gap:8px;font-size:28px;font-weight:400;line-height:1;transition:color .15s,border-color .15s,background-color .15s,box-shadow .15s,opacity .18s,transform .15s;display:grid;position:relative}.scoreBadge--top{cursor:default}.opponentModeToggle{background:color-mix(in srgb, var(--hud-color) 10%, transparent);border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;gap:4px;margin-bottom:10px;padding:2px;display:grid}.opponentModeToggle--two{grid-template-columns:repeat(2,minmax(0,1fr))}.opponentModeChoice{min-width:0;min-height:42px;color:var(--hud-color);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:8px 9px;font-size:15px;font-weight:400;line-height:1;display:inline-flex}@media (width<=340px){.opponentModeToggle{margin-inline:-8px}}.dailyPuzzlePanel{color:var(--rating-panel-text);text-align:center;gap:9px;padding:7px 3px 2px;display:grid}.dailyPuzzlePanel p{margin:0;font-weight:400}.dailyPuzzleHeading{justify-self:center}.dailyPuzzleObjective,.dailyPuzzleSolvedTitle{color:var(--hud-color);font-size:17px;line-height:1.3}.dailyPuzzleStreak,.dailyPuzzleSolvedStats{font-size:14px;line-height:1.35}.dailyPuzzleProgress{color:color-mix(in srgb, var(--rating-panel-text) 72%, transparent);font-size:13px;line-height:1.3}.dailyPuzzlePanel--loading{place-items:center;min-height:72px}.dailyPuzzlePanel--error p{font-size:14px;line-height:1.4}.dailyPuzzleRetry,.dailyPuzzleShare,.ratingShare{background:var(--hud-color);width:100%;min-height:40px;color:var(--rules-toggle-ink);cursor:pointer;border:0;border-radius:8px;padding:8px 12px;font-size:16px;font-weight:400}.dailyPuzzleShare,.ratingShare{justify-content:center;align-items:center;gap:8px;display:inline-flex}.dailyPuzzleShareIcon,.ratingShareIcon{width:19px;height:19px}.dailyPuzzleShareStatus,.ratingShareStatus,.dailyReminderMessage{color:color-mix(in srgb, var(--rating-panel-text) 68%, transparent);font-size:12px}.ratingShare{margin-top:10px}.ratingShareStatus{text-align:center;margin-top:6px;display:block}.dailyReminderEnable{border:1px solid color-mix(in srgb, var(--hud-color) 45%, transparent);width:100%;min-height:40px;color:var(--hud-color);cursor:pointer;background:0 0;border-radius:8px;margin-top:3px;padding:8px 12px;font-size:15px;font-weight:400}.dailyReminderEnable:disabled{cursor:wait;opacity:.6}.dailyPuzzleRetry:focus-visible,.dailyPuzzleShare:focus-visible,.ratingShare:focus-visible,.dailyReminderEnable:focus-visible{outline:2px solid var(--focus-ring-inner);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-ring-outer)}.opponentModeIcon{flex:none;width:20px;height:20px}.opponentModeChoice--active{background:var(--hud-color);box-shadow:0 1px 4px color-mix(in srgb, var(--hud-color) 28%, transparent);color:var(--rules-toggle-ink)}.opponentModeChoice:disabled,.humanRoomShare:disabled,.humanRoomLocal:disabled,.humanRoomOnline:disabled,.humanRoomJoinAnother:disabled,.humanRoomRefresh:disabled,.humanRoomJoinSubmit:disabled,.humanRoomJoinCancel:disabled,.joinNotificationEnable:disabled,.joinNotificationDismiss:disabled,.humanRoomJoinInput:disabled{cursor:wait;opacity:.65}.humanRoomSettings--offline button:disabled,.humanRoomSettings--offline input:disabled{cursor:not-allowed}.humanRoomSettings{gap:10px;min-height:38px;display:grid}.humanRoomIdentity{gap:4px;display:grid}.humanRoomLabel{color:color-mix(in srgb, var(--rating-panel-text) 62%, transparent);font-size:12px;font-weight:650;line-height:1}.humanRoomCode{color:var(--hud-color);cursor:pointer;font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.07em;background:0 0;border:0;padding:0;font-size:17px}.humanRoomCodeRow{justify-content:space-between;align-items:baseline;gap:9px;min-width:0;display:flex}.humanRoomCodeActions{align-items:center;gap:6px;min-width:0;display:inline-flex}.humanRoomRefresh{width:24px;height:24px;color:var(--hud-color);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:3px;display:inline-grid}.humanRoomRefreshIcon{width:16px;height:16px}.humanRoomJoinAnother{color:var(--hud-color);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;flex:none;padding:1px 0;font-size:11px;font-weight:400;line-height:1;text-decoration:underline}.humanRoomJoinForm{gap:8px;display:grid}.humanRoomJoinInput{border:1.5px solid color-mix(in srgb, var(--hud-color) 48%, transparent);background:var(--paper);min-width:0;height:40px;color:var(--hud-color);font-family:var(--font-geist-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums;letter-spacing:.05em;text-transform:uppercase;border-radius:7px;padding:5px 8px;font-size:16px}.humanRoomJoinInput::placeholder{color:color-mix(in srgb, var(--rating-panel-text) 54%, transparent);letter-spacing:0;text-transform:none}.humanRoomJoinInput:focus-visible,.humanRoomCode:focus-visible,.humanRoomRefresh:focus-visible,.humanRoomJoinAnother:focus-visible,.humanRoomLocal:focus-visible,.humanRoomJoinSubmit:focus-visible,.humanRoomJoinCancel:focus-visible,.joinNotificationEnable:focus-visible,.joinNotificationDismiss:focus-visible{outline:2px solid var(--hud-color);outline-offset:2px}.humanRoomJoinActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.humanRoomJoinSubmit,.humanRoomJoinCancel{cursor:pointer;border:0;border-radius:7px;min-height:38px;padding:7px 10px;font-size:17px;font-weight:400}.humanRoomJoinSubmit{background:var(--hud-color);color:var(--rules-toggle-ink)}.humanRoomJoinCancel{border:1.5px solid color-mix(in srgb, var(--hud-color) 52%, transparent);color:var(--hud-color);background:0 0}.humanRoomShare{background:var(--hud-color);width:100%;min-height:40px;color:var(--rules-toggle-ink);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:17px;font-weight:400;display:inline-flex}.humanRoomShare--pulse{animation:.68s ease-in-out 2 inviteShadowPulse}.humanRoomShareIcon{flex:none;width:20px;height:20px}.humanRoomLocal,.humanRoomOnline{border:1.5px solid var(--hud-color);width:100%;min-height:40px;color:var(--hud-color);cursor:pointer;background:0 0;border-radius:8px;padding:8px 12px;font-size:17px;font-weight:400}.humanRoomOnline:focus-visible{outline:2px solid var(--hud-color);outline-offset:2px}.humanRoomLocalStatus{width:100%;color:color-mix(in srgb, var(--rating-panel-text) 62%, transparent);text-align:center;margin:0;padding:3px 0;font-size:13px;font-weight:500;line-height:1.25}.humanRoomOfflineStatus,.humanRoomOfflineHint{text-align:center;width:100%;margin:0}.humanRoomOfflineStatus{color:var(--hud-color);font-size:15px;font-weight:650}.humanRoomOfflineHint{color:color-mix(in srgb, var(--rating-panel-text) 62%, transparent);font-size:12px;line-height:1.35}.joinNotificationPrompt{border:1.5px solid color-mix(in srgb, var(--hud-color) 24%, transparent);background:color-mix(in srgb, var(--hud-color) 6%, var(--paper));border-radius:8px;gap:8px;padding:9px;display:grid}.joinNotificationPrompt p{color:var(--rating-panel-text);text-align:center;margin:0;font-size:15px;line-height:1.25}.joinNotificationPromptActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.joinNotificationEnable,.joinNotificationDismiss{cursor:pointer;border-radius:7px;min-height:36px;padding:6px 9px;font-size:15px;font-weight:400}.joinNotificationEnable{background:var(--hud-color);color:var(--rules-toggle-ink);border:0}.joinNotificationDismiss{border:1.5px solid color-mix(in srgb, var(--hud-color) 45%, transparent);color:var(--hud-color);background:0 0}.humanRoomSpinner{border:2px solid color-mix(in srgb, var(--hud-color) 24%, transparent);border-top-color:var(--hud-color);border-radius:50%;grid-column:1/-1;justify-self:center;width:20px;height:20px;animation:.68s linear infinite opponentRoomSpin}@keyframes opponentRoomSpin{to{transform:rotate(1turn)}}@keyframes inviteShadowPulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--hud-color) 0%, transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--hud-color) 30%, transparent), 0 0 20px color-mix(in srgb, var(--hud-color) 34%, transparent)}}.scoreBadge--white{--score-player-color:var(--white-piece);--score-opposite-color:var(--black-piece)}.scoreBadge--black{--score-player-color:var(--black-piece);--score-opposite-color:var(--white-piece)}.scoreBadgePlus{z-index:2;width:22px;height:22px;display:block;position:relative;overflow:visible}.scoreBadgeValue{z-index:2;min-width:3ch;position:relative}.scoreWinnerTrophy{z-index:3;aspect-ratio:1;border:2px solid var(--score-opposite-color);background:var(--score-player-color);width:40px;color:var(--score-opposite-color);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)}.scoreWinSparks{--spark-base-angle:0deg;z-index:1;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%;overflow:visible}.scoreWinSpark{--spark-offset:0deg;--spark-distance:64px;background:var(--score-opposite-color);opacity:0;border-radius:999px;width:4px;height:9px;animation:1.3s cubic-bezier(.15,.7,.25,1) both scoreWinSpark;position:absolute;top:0;left:0}.scoreWinSpark:nth-child(2n){background:var(--accent);width:5px;height:5px}.scoreWinSpark:nth-child(3n){background:var(--win-dark)}.scoreWinSpark:nth-child(2){animation-delay:35ms}.scoreWinSpark:nth-child(3){animation-delay:75ms}.scoreWinSpark:nth-child(4){animation-delay:20ms}.scoreWinSpark:nth-child(5){animation-delay:95ms}.scoreWinSpark:nth-child(6){animation-delay:55ms}.scoreWinSpark:nth-child(7){animation-delay:.115s}.scoreWinSpark:first-child{--spark-offset:-72deg}.scoreWinSpark:nth-child(2){--spark-offset:-48deg}.scoreWinSpark:nth-child(3){--spark-offset:-24deg}.scoreWinSpark:nth-child(4){--spark-offset:0deg;--spark-distance:72px}.scoreWinSpark:nth-child(5){--spark-offset:24deg}.scoreWinSpark:nth-child(6){--spark-offset:48deg}.scoreWinSpark:nth-child(7){--spark-offset:72deg}.scoreBadge--bottom .scoreWinSparks{--spark-base-angle:180deg}.scoreBadge--active:after{opacity:.4;content:"";background:currentColor;border-radius:2px;width:22px;height:3px;position:absolute;left:50%;transform:translate(-50%)}.scoreBadge--top.scoreBadge--active:after{bottom:-7px}.scoreBadge--bottom.scoreBadge--active:after{top:-7px}.scoreBadge--gain{animation:.52s ease-in-out scoreGainPulse}.scoreBadge--goalCue{animation:.66s ease-in-out 2 scoreGainPulse}.scoreBadge--threat{box-shadow:0 6px 18px #0d1f193d, 0 0 28px color-mix(in srgb, var(--score-opposite-color) 30%, transparent);transform:scale(1.05)}.scoreBadge--gain.scoreBadge--threat{animation-name:scoreThreatFlash}.scoreBadge--thinking{isolation:isolate}.scoreBadge--thinking:before{z-index:-1;border-radius:inherit;box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 18%, transparent), 0 0 18px color-mix(in srgb, var(--ink) 16%, transparent);content:"";opacity:.22;pointer-events:none;will-change:opacity, transform;animation:.82s ease-in-out infinite alternate thinking;position:absolute;inset:-2px;transform:scale(.98)}.boardFrame{width:var(--board-width);border:var(--board-border-width) solid var(--board-edge);background:var(--black-frame-outline);border-radius:8px;padding:1px;transition:border-color .18s,outline-color .18s,background-color .18s,box-shadow .18s;position:relative;overflow:hidden;box-shadow:0 3px #0816128c,0 17px 38px #11231e33}.boardFrame--turn-white{border-color:var(--white-piece);background:var(--white-frame-outline);box-shadow:0 0 0 1px var(--white-frame-outline), 0 3px 0 #0816126b, 0 17px 38px #11231e33}.boardFrame--turn-black{border-color:var(--black-piece);background:var(--black-frame-outline);box-shadow:0 0 0 1px var(--black-frame-outline), 0 3px 0 #0816126b, 0 17px 38px #11231e33}:root[data-theme^=colored-] .boardFrame--turn-white{outline:2px solid var(--black-piece);outline-offset:0}:root[data-theme^=colored-] .boardFrame--turn-black{outline:2px solid var(--white-piece);outline-offset:0}.board{aspect-ratio:5/7;touch-action:none;border:0;grid-template-rows:repeat(7,1fr);grid-template-columns:repeat(5,1fr);width:100%;display:grid;position:relative;overflow:hidden}.rulesScreen{z-index:100;background:var(--paper);touch-action:none;place-items:center;min-width:320px;display:grid;position:fixed;inset:0;overflow:hidden}.rulesScreenDismiss{z-index:3;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.rulesBoard{z-index:4;contain:layout paint;background:var(--paper);width:min(100%,720px);height:min(96%,1400px);min-height:min(100%,667px);color:var(--rules-text-color);pointer-events:none;-webkit-user-select:none;user-select:none;grid-template-rows:auto 1.04fr .94fr .94fr .96fr auto;display:grid;position:relative;overflow:hidden}.rulesAboutLink{color:color-mix(in srgb, var(--rules-text-color) 62%, transparent);pointer-events:auto;text-underline-offset:2px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;place-self:center;padding:7px 14px 9px;font-size:clamp(14px,3.5vw,16px);line-height:1.15;text-decoration:underline;transform:translateY(-8px)}:root[data-ios-standalone=true] .rulesAboutLink{transform:translateY(-14px)}.rulesAboutLink:hover{opacity:.72}.rulesAboutLink:focus-visible{outline:2px solid var(--focus-ring-inner);outline-offset:2px;border-radius:3px}.rulesLogo{font-synthesis:none;letter-spacing:.025em;justify-items:center;row-gap:1px;margin:0;padding:clamp(7px,1.6vh,14px) 0 clamp(10px,1.5vh,18px);font-family:Poppins,ui-sans-serif,sans-serif;font-size:clamp(31px,8.8vw,46px);font-style:normal;font-weight:800;line-height:.78;display:grid}:root[data-theme=colored-light] .rulesLogo{filter:drop-shadow(0 2.5px 1.5px #0b181357)drop-shadow(0 .7px .5px #ffffff2e)}:root[data-theme=colored-dark] .rulesLogo{filter:drop-shadow(0 3px 2px #00000085)drop-shadow(0 1px .75px #0000004d)}.rulesLogoLine{justify-content:center;align-items:center;display:flex}.rulesLogoLine--morph{color:var(--rules-logo-blue);text-shadow:-1px -1px 0 var(--rules-logo-blue-outline), 1px -1px 0 var(--rules-logo-blue-outline), -1px 1px 0 var(--rules-logo-blue-outline), 1px 1px 0 var(--rules-logo-blue-outline)}.rulesLogoLine--move{color:var(--rules-logo-yellow);text-shadow:-1px -1px 0 var(--rules-logo-yellow-outline), 1px -1px 0 var(--rules-logo-yellow-outline), -1px 1px 0 var(--rules-logo-yellow-outline), 1px 1px 0 var(--rules-logo-yellow-outline)}.rulesLogoGlyph{flex:none;place-items:center;width:.82em;height:.82em;display:grid}.rulesLogoGlyph .pieceGlyph{filter:none;stroke-width:3.4px;width:100%;height:100%}.rulesLogoGlyph--star .pieceGlyph{stroke:var(--rules-logo-blue-outline);transform-origin:50%;transform:scale(1.08)}.rulesLogoGlyph--star{margin-inline:-.04em}.rulesLogoGlyph--triangle{width:.76em;height:.82em;margin-left:-.075em;margin-right:-.025em}.rulesLogoGlyph--triangle .pieceGlyph{stroke:var(--rules-logo-yellow-outline);transform-origin:50%;transform:scale(1.1)}.rulesLogoMoveCluster{letter-spacing:0;align-items:center;display:inline-flex}.rulesPanel{grid-template-rows:auto auto;align-content:center;place-items:center;gap:clamp(6px,1.6vw,10px);min-width:0;min-height:0;margin:0;padding:clamp(5px,1.2vw,10px) clamp(12px,3vw,24px);display:grid;position:relative;overflow:hidden}.rulesPanel:nth-of-type(2){top:clamp(8px,1.3vh,10px)}.rulesPanel:nth-of-type(3){top:clamp(4px,.8vh,6px)}.rulesCopy{width:min(100%,580px);min-width:0;color:var(--rules-text-color);text-align:center;justify-items:center;gap:1px;display:grid}.rulesCopy p{overflow-wrap:break-word;text-wrap:balance;white-space:normal;max-width:100%;margin:0;font-size:clamp(13px,4vw,18px);line-height:1.22}.rulesPanel:first-of-type{z-index:1;overflow:visible}.rulesPiece{aspect-ratio:1;width:clamp(26px,7.8vw,44px);color:var(--black-piece);place-items:center;display:grid}.rulesPiece--light{color:var(--white-piece)}.rulesPiece .pieceGlyph{width:100%;height:100%;stroke:color-mix(in srgb, currentColor 40%, var(--paper));stroke-width:1.5px}.rulesMoves{grid-template-columns:repeat(3,1fr);align-items:center;gap:clamp(10px,2.6vw,26px);width:min(88%,460px);display:grid}.rulesMoveMap{aspect-ratio:1;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);place-self:center;width:100%;max-width:96px;display:grid;position:relative}.rulesMoveMap>.rulesPiece{grid-area:2/2;place-self:center}.rulesDirection{--rules-direction-angle:0deg;--rules-direction-radius:clamp(27px, 8.2vw, 34px);width:clamp(18px,5.2vw,25px);height:clamp(10px,2.8vw,14px);color:var(--rules-muted-ink);transform:translate(-50%, -50%) rotate(var(--rules-direction-angle)) translateX(var(--rules-direction-radius));transform-origin:50%;position:absolute;top:50%;left:50%}.rulesMoveMap--diamond .rulesDirection{--rules-direction-radius:clamp(30px, 9vw, 38px)}:root[data-theme=colored-dark] .rulesDirection{color:var(--colored-theme-yellow)}.rulesDirection:before{content:"";background:currentColor;height:clamp(2px,.55vw,3px);position:absolute;top:50%;left:0;right:clamp(5px,1.5vw,7px);transform:translateY(-50%)}.rulesDirection:after{content:"";border-top:clamp(3px,.9vw,5px) solid #0000;border-bottom:clamp(3px,.9vw,5px) solid #0000;border-left:clamp(5px,1.5vw,7px) solid;width:0;height:0;position:absolute;top:50%;right:0;transform:translateY(-50%)}.rulesDirection--nw{--rules-direction-angle:-135deg}.rulesDirection--n{--rules-direction-angle:-90deg}.rulesDirection--ne{--rules-direction-angle:-45deg}.rulesDirection--w{--rules-direction-angle:180deg}.rulesDirection--e{--rules-direction-angle:0deg}.rulesDirection--sw{--rules-direction-angle:135deg}.rulesDirection--s{--rules-direction-angle:90deg}.rulesDirection--se{--rules-direction-angle:45deg}.rulesCycle{width:min(52%,170px);height:clamp(78px,25vw,100px);position:relative}.rulesCyclePiece{place-items:center;display:grid;position:absolute}.rulesCyclePiece--triangle{bottom:0;left:4%}.rulesCyclePiece--diamond{bottom:0;right:4%}.rulesCyclePiece--star{top:0;left:50%;transform:translate(-50%)}.rulesCyclePiece .rulesPiece{width:clamp(32px,9.5vw,48px)}.rulesCycleArrows{width:100%;height:100%;color:var(--rules-muted-ink);pointer-events:none;position:absolute;inset:0;overflow:visible}.rulesCycleArrowShaft{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.rulesCycleArrowHead{fill:currentColor}.rulesSwap{grid-template-columns:auto clamp(28px,8vw,48px) auto;justify-content:center;align-items:center;column-gap:clamp(7px,1.9vw,14px);display:grid;position:relative}.rulesSwapPair{grid-template-columns:repeat(2,clamp(46px,12.5vw,68px));gap:4px;display:grid;position:relative}.rulesSwapSquare{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--ink) 25%, transparent);background:var(--cell-neutral);border-radius:clamp(4px,1vw,6px);place-items:center;display:grid}.rulesSwapArrows{z-index:2;width:clamp(30px,7.8vw,38px);height:clamp(28px,7.5vw,36px);color:var(--rules-muted-ink);pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rulesSwapArrowsSvg{width:100%;height:100%;display:block;overflow:visible}.rulesSwapArrowShaft{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.rulesSwapArrowHead{fill:currentColor}.rulesSwapArrows--disabled .rulesSwapArrowsSvg{opacity:.44}.rulesSwapMainArrow,.rulesObjectiveArrow{color:var(--rules-muted-ink);place-items:center;font-size:clamp(19px,5vw,28px);font-weight:600;line-height:1;display:grid}:root[data-theme=colored-dark] .rulesSwapArrows{color:var(--colored-theme-blue)}.rulesLockedSwapBadge{z-index:3;border:1px solid var(--cell-grid);background:var(--cell-neutral);width:clamp(18px,4.7vw,23px);height:clamp(16px,4.4vw,21px);color:var(--swap-lock);box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 14%, transparent);border-radius:clamp(4px,1vw,6px);place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rulesLockedSwapBadge .swapLockIcon{width:76%;height:76%}.rulesObjectiveScene{grid-template-rows:auto auto;grid-template-columns:auto auto auto;justify-content:center;align-items:center;gap:clamp(5px,1.4vw,9px) clamp(9px,2.5vw,18px);padding-top:clamp(3px,.9vw,7px);display:grid}.rulesObjectiveScene>.rulesMiniBoard:first-child{grid-area:1/1}.rulesObjectiveArrow{grid-area:1/2;font-size:clamp(17px,4.4vw,24px)}.rulesObjectiveScene>.rulesMiniBoard:nth-child(3){grid-area:1/3}.rulesObjectiveScore{border:clamp(1px, .45vw, 2px) solid var(--score-opposite-color);background:var(--score-player-color);min-width:clamp(52px,14vw,72px);height:clamp(21px,5.5vw,29px);color:var(--score-opposite-color);font-family:var(--font-geist-mono), ui-monospace, monospace;text-align:center;border-radius:999px;grid-template-columns:clamp(11px,3vw,14px) auto;justify-content:center;align-items:center;gap:clamp(3px,.9vw,5px);padding:0 clamp(5px,1.2vw,7px);font-size:clamp(13px,3.7vw,18px);font-weight:500;line-height:1;display:grid}.rulesObjectiveScore--white{--score-player-color:var(--white-piece);--score-opposite-color:var(--black-piece)}.rulesObjectiveScorePlus{width:clamp(11px,3vw,14px);height:clamp(11px,3vw,14px);font-size:clamp(12px,3.2vw,15px)}.rulesObjectiveScore--left{grid-area:2/1}.rulesObjectiveScore--right{grid-area:2/3}.rulesMiniBoard{border:clamp(3px,.85vw,5px) solid;border-radius:5px;grid-template-rows:repeat(3,clamp(18px,5.2vw,30px));grid-template-columns:repeat(3,clamp(18px,5.2vw,30px));gap:0;padding:2px;display:grid;position:relative}.rulesMiniBoard--black{border-color:var(--black-piece);background:var(--black-piece);box-shadow:0 0 0 1px var(--white-piece)}.rulesMiniBoard--white{border-color:var(--white-piece);background:var(--white-piece);box-shadow:0 0 0 1px var(--black-piece)}.rulesMiniCell{border:0;border-right:1px solid var(--cell-grid);border-bottom:1px solid var(--cell-grid);border-radius:0;place-items:center;display:grid;position:relative}.rulesMiniCell:nth-child(3n){border-right:0}.rulesMiniCell:nth-child(n+7){border-bottom:0}.rulesMiniCell--light,.rulesMiniCell--dark,.rulesMiniCell--objective{background:var(--cell-neutral)}.rulesMiniCell--crossSideEdgesVertical{box-shadow:inset 1px 0 var(--objective-target), inset -1px 0 var(--objective-target)}.rulesMiniCell--crossSideEdgesHorizontal{box-shadow:inset 0 1px var(--objective-target), inset 0 -1px var(--objective-target)}.rulesObjectiveTarget{z-index:1;width:50%;height:50%;color:var(--objective-target);pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rulesMiniCell--whiteOnDarkOccupied{background:var(--black-objective-occupied)}.rulesMiniCell--blackOnDarkOccupied{background:var(--white-objective-occupied)}.rulesObjectivePiece{z-index:2;aspect-ratio:1;border:clamp(1px,.35vw,2px) solid;border-radius:50%;width:48%;position:relative}.rulesObjectivePiece--whiteOnDark{border-color:var(--black-piece-outline);background:var(--black-piece)}.rulesObjectivePiece--blackOnDark{border-color:var(--white-piece-outline);background:var(--white-piece)}.rulesMiniCell--winningPiece:after{z-index:3;border:2px solid var(--black-piece);content:"";pointer-events:none;border-radius:4px;position:absolute;inset:5%}.rulesTrophy{z-index:3;aspect-ratio:1;border:2px solid var(--black-piece);background:var(--white-piece);width:clamp(27px,7vw,36px);color:var(--black-piece);border-radius:50%;place-items:center;display:grid;position:absolute;top:clamp(-14px,-3.3vw,-9px);right:clamp(-14px,-3.3vw,-9px)}.trophyCup{border:2px solid;border-radius:2px 2px 8px 8px;width:17px;height:13px;margin-top:-4px;position:relative}.trophyCup:before,.trophyCup:after{content:"";border:2px solid;width:5px;height:6px;position:absolute;top:0}.trophyCup:before{border-right:0;border-radius:5px 0 0 5px;right:100%}.trophyCup:after{border-left:0;border-radius:0 5px 5px 0;left:100%}.trophyStem{background:currentColor;width:2px;height:6px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.trophyStem:after{content:"";background:currentColor;border-radius:2px;width:11px;height:2px;position:absolute;top:5px;left:50%;transform:translate(-50%)}@media (width<=520px){.rulesTrophy .trophyCup{transform:scale(.84)}}.scoreWinnerTrophy .trophyCup{transform:scale(1.05)}.cell{border:0;border-right:1px solid var(--cell-grid);border-bottom:1px solid var(--cell-grid);background:var(--cell-neutral);cursor:default;isolation:isolate;touch-action:none;-webkit-tap-highlight-color:transparent;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative;overflow:hidden}.cell:nth-of-type(5n){border-right:0}.cell:nth-of-type(n+31){border-bottom:0}.cell:before{z-index:2;content:"";outline-offset:0;pointer-events:none;outline:0 solid #0000;position:absolute;inset:0}.objectiveCell{z-index:1;border-bottom-color:#0000;border-right-color:#0000}.objectiveCell--whiteOccupied{background:var(--white-objective-occupied)}.objectiveCell--blackOccupied{background:var(--black-objective-occupied)}.objectiveCell--whiteThreat{animation:.46s ease-in-out 2 objectiveWhiteThreatFlash}.objectiveCell--blackThreat{animation:.46s ease-in-out 2 objectiveBlackThreatFlash}.piece,.movingPiece{z-index:4;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;place-items:center;width:86%;height:86%;display:grid;position:relative}.selectablePieceCell{cursor:pointer}.selectedCell.selectablePieceCell{cursor:grab}.board--dragging,.board--dragging .cell{cursor:grabbing}.piece--dragSource{opacity:.16;transform:scale(.92)}.draggedPiece{z-index:12;pointer-events:none;width:17.2%;height:12.2857%;transform:translate3d(var(--drag-x), var(--drag-y), 0) translate(-50%, -50%) scale(1.06);will-change:transform;position:absolute;top:0;left:0}.piece--swapBlocked{animation:.4s ease-in-out blockedSwapShake}.piece--white{color:var(--white-piece);text-shadow:0 2px 3px #14231e4d}.piece--black{color:var(--black-piece);text-shadow:0 2px 3px #14231e42}.pieceGlyph{filter:drop-shadow(0 2.5px 1.5px #0b181357)drop-shadow(0 .7px .5px #ffffff2e);stroke-linejoin:round;stroke-width:1.35px;width:88%;height:88%;overflow:visible}:root[data-theme=colored-dark] .pieceGlyph{filter:drop-shadow(0 2.5px 1.5px #00000057)drop-shadow(0 .7px .5px #ffffff2e);stroke-width:1.6px}@keyframes themeModeIconRotate{to{transform:rotate(var(--theme-mode-icon-rotation))}}:root[data-theme=colored-dark] .rulesLogoGlyph .pieceGlyph{filter:none;stroke-width:3.4px}:root[data-theme=colored-dark] .rulesPiece--light .pieceGlyph{stroke:var(--white-piece-outline)}:root[data-theme=colored-dark] .rulesPiece--dark .pieceGlyph{stroke:var(--black-piece-outline)}.pieceGradientStop--highlight{stop-color:color-mix(in srgb, currentColor 88%, #fff)}.pieceGradientStop--middle{stop-color:currentColor}.pieceGradientStop--edge{stop-color:color-mix(in srgb, currentColor 93%, #000)}.piece--white .pieceGlyph{stroke:var(--white-piece-outline)}.piece--black .pieceGlyph{stroke:var(--black-piece-outline)}.pieceGlyph--triangle{width:84%;height:84%}.pieceGlyph--contourNormalized.pieceGlyph--triangle{width:88%;height:88%}.selectedCell:before{border:clamp(3px,.5vw,5px) solid;border-radius:4px;outline:none;inset:5%}.selectedCell:not(.objectiveCell):before{border-color:var(--cell-dark)}:root[data-theme=colored-dark] .selectedCell:not(.objectiveCell):before{border-color:var(--cell-grid)}.selectedCell.objectiveCell--whiteOccupied:before{border-color:var(--white-piece-contrast-border)}.selectedCell.objectiveCell--blackOccupied:before{border-color:var(--black-piece-contrast-border)}.legalMove,.legalSwap{cursor:pointer}.legalMove:before,.legalSwap:before{border-style:solid;border-radius:4px;outline:none;inset:5%}.legalMove:before{border-width:clamp(2px,.36vw,4px);border-color:#176f62c7}.destinationShape{z-index:6;opacity:1;pointer-events:none;width:43%;height:43%;position:absolute}.destinationShape .pieceGlyph{stroke-width:2px}.destinationShape.piece--white .pieceGlyph{stroke:var(--black-piece)}.destinationShape.piece--black .pieceGlyph{stroke:var(--white-piece)}:root[data-theme=colored-dark] .destinationShape.piece--white .pieceGlyph{stroke:var(--white-piece-outline)}:root[data-theme=colored-dark] .destinationShape.piece--black .pieceGlyph{stroke:var(--black-piece-outline)}.legalSwap:before{border-width:clamp(3px,.45vw,5px);border-color:var(--swap)}.dragTargetCell:before{box-shadow:0 0 0 3px color-mix(in srgb, currentColor 24%, transparent);inset:2.5%}.dragTargetCell.legalMove:before{border-width:clamp(3px,.48vw,5px);border-color:var(--accent);color:var(--accent)}.dragTargetCell.legalSwap:before{border-width:clamp(4px,.58vw,6px);border-color:var(--swap);color:var(--swap)}.dragTargetCell .destinationShape{transform:scale(1.14)}.swapLock{z-index:8;border:1px solid var(--cell-grid);background:var(--cell-neutral);width:clamp(30px,5.4vw,38px);height:clamp(25px,4.5vw,32px);color:var(--swap-lock);pointer-events:none;transform:translate(-50%, -50%) rotate(var(--swap-lock-angle,0deg));border-radius:6px;place-items:center;display:grid;position:absolute;box-shadow:0 2px 3px #171f1c3d}.swapLockIcon{fill:currentColor;width:64%;height:64%;display:block;overflow:visible}.swapLockShackle{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.5px}.swapLockKeyhole{fill:var(--swap-lock-detail)}.moveArrowLayer{z-index:7;pointer-events:none;position:absolute;inset:0}.moveArrow{--move-arrow-head-half-height:clamp(9px, 1.55vw, 12px);--move-arrow-head-width:clamp(9px, 1.6vw, 12px);--move-arrow-origin-offset:0px;--move-arrow-target-extension:0px;--move-arrow-thickness:clamp(5px, .75vw, 7px);width:clamp(42px,6.8vw,58px);height:calc(var(--move-arrow-head-half-height) * 2);pointer-events:none;transform:translate(-50%, -50%) rotate(var(--move-arrow-angle));transform-origin:50%;position:absolute}.moveArrowShaft{top:50%;right:calc(var(--move-arrow-head-width) - 1px - var(--move-arrow-target-extension));left:calc(2px + var(--move-arrow-origin-offset));height:var(--move-arrow-thickness);background:currentColor;border-radius:999px;position:absolute;transform:translateY(-50%)}.moveArrow:after,.moveArrow--swap:before{border-top:var(--move-arrow-head-half-height) solid transparent;border-bottom:var(--move-arrow-head-half-height) solid transparent;content:"";width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.moveArrow:after{right:calc(-1 * var(--move-arrow-target-extension));border-left:var(--move-arrow-head-width) solid currentColor}.moveArrow--swap:before{left:var(--move-arrow-origin-offset);border-right:var(--move-arrow-head-width) solid currentColor}.moveArrow--swap .moveArrowShaft{left:calc(var(--move-arrow-head-width) - 1px + var(--move-arrow-origin-offset))}.moveArrow--move.moveArrow--diagonal{--move-arrow-target-extension:clamp(4px, .8vw, 6px)}.moveArrow--move.moveArrow--axis{--move-arrow-origin-offset:clamp(4px, .8vw, 6px)}.moveArrow--move{color:var(--accent)}.moveArrow--swap{--move-arrow-origin-offset:calc(-1 * clamp(4px, .8vw, 6px));--move-arrow-target-extension:clamp(4px, .8vw, 6px);color:var(--swap)}.recentCell:after{z-index:1;content:"";pointer-events:none;border:2px solid #0000;border-color:var(--soft-dark-border);border-radius:4px;position:absolute;inset:5%}.recentCell.objectiveCell--whiteOccupied:after{border-color:var(--white-piece-contrast-border)}.recentCell.objectiveCell--blackOccupied:after{border-color:var(--black-piece-contrast-border)}.movingPieceLayer{z-index:6;pointer-events:none;position:absolute;inset:0;overflow:hidden}.movingPiece{pointer-events:none;width:17.2%;height:12.2857%;animation:moveIn var(--move-duration,.36s) cubic-bezier(.2, .78, .28, 1) both;will-change:transform;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.movingPiece--active{z-index:2}.movingPiece--passive{z-index:1}.movingPiece--dragRelease{animation-name:moveInFromDrag}.movingPiece--rewind{animation-timing-function:linear}.boardFrame--white-won{border-color:var(--white-piece);background:var(--white-frame-outline);box-shadow:0 0 0 1px var(--white-frame-outline), 0 3px 0 #0816126b, 0 17px 38px #11231e33}.boardFrame--black-won{border-color:var(--black-piece);background:var(--black-frame-outline);box-shadow:0 0 0 1px var(--black-frame-outline), 0 3px 0 #0816126b, 0 17px 38px #11231e33}.boardFrame--draw{border-color:#69736e}.boardFrame--white-won .cell{animation:finishWhite .26s ease-out var(--finish-delay,0s) forwards}.boardFrame--black-won .cell{animation:finishBlack .26s ease-out var(--finish-delay,0s) forwards}.boardFrame--white-won .objectiveCell{animation-name:finishWhiteObjective}.boardFrame--black-won .objectiveCell{animation-name:finishBlackObjective}.boardFrame--finishStatic.boardFrame--white-won .cell{background:var(--white-win-cell);animation:none}.boardFrame--finishStatic.boardFrame--black-won .cell{background:var(--black-win-cell);animation:none}.boardFrame--finishStatic.boardFrame--white-won .objectiveCell{background:var(--white-win-objective)}.boardFrame--finishStatic.boardFrame--black-won .objectiveCell{background:var(--black-win-objective)}.boardFrame--white-won .cell,.boardFrame--black-won .cell{outline:none}.boardFrame--white-won .cell:before,.boardFrame--black-won .cell:before,.boardFrame--white-won .cell:after,.boardFrame--black-won .cell:after{background:0 0;border-width:0;border-color:#0000;outline-width:0;outline-color:#0000}.objectiveCrossBoundary{--objective-cross-outline-width:clamp(2px, .5vw, 4px);z-index:3;fill:none;pointer-events:none;shape-rendering:geometricprecision;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.objectiveCrossBoundary path{vector-effect:non-scaling-stroke;stroke:var(--objective-target);stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:2;stroke-width:var(--objective-cross-outline-width)}.boardFrame--goalCue .objectiveCrossBoundary path{animation:.66s ease-in-out 2 objectiveCrossGoalFlash}.boardFrame--white-won .objectiveCrossBoundary path{stroke:var(--white-piece)}.boardFrame--black-won .objectiveCrossBoundary path{stroke:var(--black-piece)}.boardFrame--white-won .mateOriginCell:after,.boardFrame--black-won .mateOriginCell:after{z-index:1;content:"";pointer-events:none;border-style:solid;border-width:2px;border-radius:4px;position:absolute;inset:5%}.boardFrame--white-won .mateOriginCell:after{border-color:color-mix(in srgb, var(--white-piece-contrast-border) 50%, var(--white-win-cell))}.boardFrame--black-won .mateOriginCell:after{border-color:color-mix(in srgb, var(--black-piece-contrast-border) 50%, var(--black-win-cell))}.boardFrame--white-won .winnerObjectiveCell:after,.boardFrame--black-won .winnerObjectiveCell:after{z-index:1;content:"";pointer-events:none;border-style:solid;border-width:2px;border-radius:4px;position:absolute;inset:5%}.boardFrame--white-won .winnerObjectiveCell:after{border-color:var(--black-piece)}.boardFrame--black-won .winnerObjectiveCell:after{border-color:var(--white-piece)}.resultOverlay{z-index:30;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;position:absolute;inset:0}.physicalEditionBackdrop{z-index:50;background:color-mix(in srgb, var(--body-background) 42%, transparent);cursor:default;-webkit-tap-highlight-color:transparent;border:0;padding:0;position:fixed;inset:0}.physicalEditionCard{z-index:60;top:var(--physical-edition-center-y,50%);border:2px solid var(--hud-color);background:var(--paper);width:min(380px,100vw - 24px);max-height:calc(100dvh - 24px);box-shadow:0 2px 0 color-mix(in srgb, var(--hud-color) 34%, transparent), 0 20px 50px #07140f57;color:var(--ink);cursor:default;-webkit-tap-highlight-color:transparent;border-radius:18px;padding:18px;animation:.28s cubic-bezier(.2,.8,.2,1) both physicalEditionEnter;position:fixed;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.physicalEditionTitle{color:var(--hud-color);letter-spacing:-.025em;margin:0;font-family:Poppins,ui-sans-serif,sans-serif;font-size:21px;font-weight:800;line-height:1.18}.physicalEditionCopy{margin:8px 0 14px;font-size:15px;line-height:1.45}.physicalEditionInlineTerms{color:var(--hud-color);text-underline-offset:2px;font-weight:400}.physicalEditionRender{margin:0 0 12px}.physicalEditionRender img{border-radius:8px;width:100%;height:auto;margin:0 auto;display:block}.physicalEditionRender figcaption{color:color-mix(in srgb, var(--ink) 62%, transparent);text-align:center;margin-top:4px;font-size:12px;line-height:1.35}.physicalEditionForm{grid-template-columns:minmax(0,1fr);gap:8px;display:grid;position:relative}.physicalEditionPrimary{cursor:pointer;border:2px solid var(--hud-color);background:var(--hud-color);min-height:44px;color:var(--rules-toggle-ink);border-radius:11px;padding:10px 15px;font-size:14px;font-weight:750}.physicalEditionPrimary:disabled{cursor:wait;opacity:.68}.physicalEditionPrimary--wide,.physicalEditionForm .physicalEditionPrimary{width:100%}.physicalEditionInput{border:2px solid color-mix(in srgb, var(--hud-color) 70%, transparent);background:var(--paper);width:100%;min-width:0;min-height:44px;box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--hud-color) 10%, transparent);color:var(--ink);font:inherit;-webkit-user-select:text;user-select:text;border-radius:11px;outline:0;padding:9px 12px}.physicalEditionInput::placeholder{color:color-mix(in srgb, var(--ink) 56%, transparent)}.physicalEditionInput:focus-visible{border-color:var(--hud-color);box-shadow:0 0 0 3px color-mix(in srgb, var(--hud-color) 28%, transparent)}.physicalEditionInput[aria-invalid=true]{border-color:var(--swap)}.physicalEditionHoneypot{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-10000px}.physicalEditionConsent,.physicalEditionFooter{color:color-mix(in srgb, var(--ink) 62%, transparent);font-size:12px;line-height:1.35}.physicalEditionConsent{text-align:right;margin:8px 0 0}.physicalEditionConsent a{color:var(--hud-color);text-underline-offset:2px;font-weight:400}.physicalEditionFooter{justify-content:center;align-items:center;gap:12px;margin-top:4px;display:flex}.physicalEditionDismiss{color:var(--hud-color);cursor:pointer;background:0 0;border:0;padding:3px;font-size:14px;font-weight:700}.physicalEditionError{color:var(--swap);grid-column:1/-1;margin:-2px 0 0;font-size:12px;font-weight:700}@keyframes physicalEditionEnter{0%{opacity:0;transform:translate(-50%,calc(14px - 50%))scale(.97)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.adminPage,.legalPage{width:100%;height:100dvh;padding:max(24px, env(safe-area-inset-top)) 18px max(24px, env(safe-area-inset-bottom));background:var(--body-background);color:var(--ink);-webkit-user-select:text;user-select:text;overflow:auto}.adminPage *,.legalPage *{-webkit-user-select:text;user-select:text}.adminPanel,.legalCard{border:1px solid color-mix(in srgb, var(--hud-color) 32%, transparent);background:var(--paper);border-radius:18px;width:min(980px,100%);margin:0 auto;padding:clamp(20px,4vw,38px);box-shadow:0 18px 48px #07140f24}.adminPanel--narrow,.legalCard{max-width:720px}.adminHeader{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.adminEyebrow,.legalEyebrow{color:var(--hud-color);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.11em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.adminPage h1,.legalPage h1{color:var(--hud-color);margin:0;font-family:Poppins,ui-sans-serif,sans-serif;font-size:clamp(28px,5vw,42px);line-height:1.05}.adminSummary,.legalUpdated{color:color-mix(in srgb, var(--ink) 60%, transparent);margin:9px 0 0}.adminHeaderActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.adminButton{background:var(--hud-color);min-height:40px;color:var(--rules-toggle-ink);border-radius:10px;justify-content:center;align-items:center;padding:8px 14px;font-weight:750;text-decoration:none;display:inline-flex}.adminTextLink,.legalPage a{color:var(--hud-color);text-underline-offset:3px;font-weight:700}.adminTableWrap{margin-top:28px;overflow-x:auto}.adminTable{border-collapse:collapse;width:100%;font-size:14px}.adminTable th,.adminTable td{border-bottom:1px solid color-mix(in srgb, var(--ink) 14%, transparent);text-align:left;vertical-align:middle;white-space:nowrap;padding:13px 10px}.adminTable th{color:color-mix(in srgb, var(--ink) 62%, transparent);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.adminTable a{color:var(--hud-color);font-weight:700}.adminRemove{color:var(--swap);cursor:pointer;background:0 0;border:0;padding:6px 0;font-weight:700}.adminEmpty{color:color-mix(in srgb, var(--ink) 62%, transparent);margin:38px 0 4px}.adminPanel--analytics{width:min(1180px,100%)}.adminPanel--daily{width:min(1080px,100%)}.dailyAdminIntro{color:color-mix(in srgb, var(--ink) 64%, transparent);margin:24px 0 0;line-height:1.55}.dailyAdminQueue{gap:10px;margin-top:22px;display:grid}.dailyAdminCard{border:1px solid color-mix(in srgb, var(--hud-color) 20%, transparent);background:color-mix(in srgb, var(--hud-color) 4%, var(--paper));border-radius:13px}.dailyAdminCard--today{border-color:#22855d70}.dailyAdminCard--played{opacity:.78}.dailyAdminCard summary{color:var(--ink);cursor:pointer;grid-template-columns:120px 120px 92px 1fr;align-items:center;gap:12px;padding:14px 16px;font-size:13px;display:grid}.dailyAdminNumber{color:var(--hud-color);font-weight:800}.dailyAdminStatus{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;width:fit-content;padding:4px 8px;font-size:10px;font-weight:800}.dailyAdminStatus--scheduled{background:color-mix(in srgb, var(--hud-color) 11%, transparent);color:var(--hud-color)}.dailyAdminStatus--today{color:#16704d;background:#22855d29}.dailyAdminStatus--played{background:color-mix(in srgb, var(--ink) 8%, transparent);color:color-mix(in srgb, var(--ink) 62%, transparent)}.dailyAdminDifficulty{color:color-mix(in srgb, var(--ink) 58%, transparent);justify-self:end}.dailyAdminReview{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);grid-template-columns:minmax(210px,310px) 1fr;gap:24px;padding:18px;display:grid}.dailyAdminBoard{aspect-ratio:5/7;border:2px solid var(--hud-color);background:var(--paper);border-radius:9px;grid-template-rows:repeat(7,minmax(0,1fr));grid-template-columns:repeat(5,1fr);display:grid;overflow:hidden}.dailyAdminCell{border-right:1px solid color-mix(in srgb, var(--ink) 14%, transparent);border-bottom:1px solid color-mix(in srgb, var(--ink) 14%, transparent);place-items:center;min-width:0;display:grid;position:relative}.dailyAdminCell--objective{background:color-mix(in srgb, var(--hud-color) 8%, var(--paper))}.dailyAdminCell .piece{place-items:center;width:82%;height:82%;display:grid}.dailyAdminDetails p{margin:0 0 9px;line-height:1.45}.dailyAdminDetails code{color:var(--hud-color);font-family:var(--font-geist-mono), ui-monospace, monospace;white-space:normal;font-size:12px}.dailyAdminActions{flex-wrap:wrap;gap:9px;margin-top:18px;display:flex}.dailyAdminActions button{cursor:pointer;min-height:38px;font:inherit;border-radius:9px;padding:7px 12px;font-weight:750}.dailyAdminActions button:disabled{cursor:default;opacity:.45}.dailyAdminInvalid{color:var(--swap)}.dailyAdminGenerationQueue,.dailyAdminGenerationNote{color:color-mix(in srgb, var(--ink) 60%, transparent);font-size:12px;line-height:1.45}.dailyAdminGenerationQueue{margin:12px 0 0}.dailyAdminGenerationNote{margin-top:10px!important}.analyticsRange{border:1px solid color-mix(in srgb, var(--hud-color) 24%, transparent);background:color-mix(in srgb, var(--hud-color) 5%, var(--paper));border-radius:12px;gap:4px;margin-top:28px;padding:4px;display:inline-flex}.analyticsRangeLink{color:color-mix(in srgb, var(--ink) 68%, transparent);border-radius:8px;padding:8px 12px;font-size:13px;font-weight:750;text-decoration:none}.analyticsRangeLink--active{background:var(--hud-color);color:var(--rules-toggle-ink)}.analyticsCohortIntro{color:color-mix(in srgb, var(--ink) 62%, transparent);margin:12px 2px 0;font-size:12px;line-height:1.5}.analyticsExclusion{border-radius:13px;justify-content:space-between;align-items:center;gap:24px;margin-top:18px;padding:16px;display:flex}.analyticsExclusion h2{color:var(--hud-color);margin:0;font-family:Poppins,ui-sans-serif,sans-serif;font-size:16px}.analyticsExclusion p{max-width:720px;color:color-mix(in srgb, var(--ink) 62%, transparent);margin:6px 0 0;font-size:12px;line-height:1.5}.analyticsExclusionAction{text-align:right;flex:none}.analyticsExcludeButton{cursor:pointer;font:inherit;border:0}.analyticsExcludeButton:disabled{cursor:default;opacity:.58}.analyticsExclusionStatus{min-height:18px}.analyticsExclusionStatus--error{color:var(--swap)!important}.analyticsKpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.analyticsKpi,.analyticsCard,.analyticsSection{border:1px solid color-mix(in srgb, var(--hud-color) 20%, transparent);background:color-mix(in srgb, var(--hud-color) 4%, var(--paper))}.analyticsKpi{border-radius:13px;min-width:0;padding:15px}.analyticsKpi span{min-height:32px;color:color-mix(in srgb, var(--ink) 62%, transparent);font-size:12px;line-height:1.3;display:block}.analyticsKpi strong{color:var(--hud-color);margin-top:7px;font-family:Poppins,ui-sans-serif,sans-serif;font-size:clamp(23px,3vw,31px);line-height:1;display:block}.analyticsKpi small{min-height:31px;color:color-mix(in srgb, var(--ink) 56%, transparent);margin-top:8px;font-size:11px;line-height:1.4;display:block}.analyticsSection--journey{margin-top:18px}.analyticsKpis--journey{margin-top:14px}.analyticsSplit{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.analyticsCard,.analyticsSection{border-radius:14px;padding:18px}.analyticsCard h2,.analyticsSection h2{color:var(--hud-color);margin:0;font-size:17px}.analyticsCard h3{color:var(--hud-color);margin:0;font-size:14px}.analyticsCardNote{color:color-mix(in srgb, var(--ink) 56%, transparent);margin:12px 0 0;font-size:11px;line-height:1.5}.analyticsAudienceGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.analyticsCard--audience{padding:14px}.analyticsCard--audience .analyticsStatsList{grid-template-columns:1fr}.analyticsStatsList{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin:12px 0 0;display:grid}.analyticsStatsList div{border-bottom:1px solid color-mix(in srgb, var(--ink) 11%, transparent);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;display:flex}.analyticsStatsList dt{color:color-mix(in srgb, var(--ink) 66%, transparent);font-size:13px}.analyticsStatsList dd{color:var(--hud-color);margin:0;font-weight:800}.analyticsSection{margin-top:14px}.analyticsSectionHeader{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.analyticsSectionHeader p{color:color-mix(in srgb, var(--ink) 60%, transparent);margin:4px 0 0;font-size:13px}.analyticsSectionHeader--raw{margin-top:24px}.analyticsTableWrap{margin-top:12px}.adminTable--recent{min-width:780px}.adminTable--recent code{color:var(--hud-color);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:12px}.adminTable .analyticsDetails{max-width:520px;color:color-mix(in srgb, var(--ink) 68%, transparent);white-space:normal}.adminEmpty--compact{margin:15px 0 0}.analyticsPrivacyNote{color:color-mix(in srgb, var(--ink) 58%, transparent);margin:18px 2px 0;font-size:12px;line-height:1.55}.legalCard{line-height:1.65}.legalCard h2{color:var(--hud-color);margin:30px 0 8px;font-size:18px}.legalCard p{margin:0}.legalUpdated{margin-bottom:28px!important}.legalBack{margin-top:30px;display:inline-block}.aboutPage,.aiDifficultyPage,.physicalEditionTermsPage{touch-action:pan-y}.aiDifficultyCard{z-index:1;pointer-events:none;max-width:640px;line-height:1.5;position:relative}.aiDifficultyPage{position:relative}.aiDifficultyPageDismiss{z-index:0;-webkit-tap-highlight-color:transparent;background:0 0;display:block;position:fixed;inset:0}.aiDifficultyPageDismiss:active{background:0 0}.aiDifficultyCard h1{margin-bottom:12px}.aiDifficultyCard h2{margin-top:22px}.aiDifficultyLevelCopy{margin-top:8px!important}.aiDifficultyCard p+p{margin-top:12px}.aiDifficultyCard a{font-weight:400}.aiDifficultyCard .aiDifficultyRulesLink{pointer-events:auto}.aboutCard{z-index:1;pointer-events:none;max-width:640px;position:relative}.aboutPage{position:relative}.aboutPageDismiss{z-index:0;-webkit-tap-highlight-color:transparent;background:0 0;display:block;position:fixed;inset:0}.aboutPageDismiss:active{background:0 0}.aboutCard a,.aboutCard button{pointer-events:auto}.aboutCard h1{margin-bottom:28px}.aboutCopy{font-size:clamp(16px,3.8vw,18px);line-height:1.7}.aboutCopy p+p{margin-top:18px}.aboutSupportList{margin:8px 0 22px;padding-left:1.35em}.aboutSupportList li+li{margin-top:8px}.aboutShareLink{color:var(--hud-color);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:400;text-decoration:underline}.aboutPage a{font-weight:400}.aboutShareLink:focus-visible{outline:2px solid var(--focus-ring-outer);outline-offset:2px;box-shadow:none;border-radius:3px}.aboutShareStatus{color:color-mix(in srgb, var(--ink) 62%, transparent);margin-left:.45em;font-size:.82em}.aboutSignature{margin-top:24px!important}.aboutCopyright{color:color-mix(in srgb, var(--ink) 55%, transparent);font-size:.78em;margin-top:30px!important}@media (width<=680px){.adminHeader{display:block}.adminHeaderActions{justify-content:flex-start;margin-top:18px}.analyticsKpis{grid-template-columns:repeat(2,minmax(0,1fr))}.analyticsSplit,.analyticsStatsList,.analyticsAudienceGrid{grid-template-columns:1fr}.analyticsRange{display:flex}.analyticsExclusion{display:block}.analyticsExclusionAction{text-align:left;margin-top:14px}.dailyAdminCard summary{grid-template-columns:1fr auto}.dailyAdminDifficulty{justify-self:start}.dailyAdminReview{grid-template-columns:1fr}.dailyAdminBoard{width:min(300px,100%);margin:0 auto}}@media (width>=681px) and (width<=980px){.analyticsKpis{grid-template-columns:repeat(3,minmax(0,1fr))}.analyticsAudienceGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=350px){.physicalEditionCard{padding:16px}.physicalEditionPrimary{width:100%}}@media (height<=540px) and (orientation:landscape){.physicalEditionCard{width:min(340px,100vw - 24px)}}.boardFrame .cell:focus-visible,.resultOverlay:focus-visible{outline:3px solid var(--focus-ring-inner);outline-offset:-4px;box-shadow:inset 0 0 0 7px var(--focus-ring-outer)}.srOnly{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes thinking{to{opacity:.82;transform:scale(1.025)}}@keyframes scoreWinSpark{0%{opacity:0;transform:translate(-50%, -50%) rotate(calc(var(--spark-base-angle) + var(--spark-offset))) translateY(-12px) scale(.4)}16%{opacity:1}68%{opacity:1}to{opacity:0;transform:translate(-50%, -50%) rotate(calc(var(--spark-base-angle) + var(--spark-offset))) translateY(calc(-1 * var(--spark-distance))) scale(.9)}}@keyframes startingCoinFlip{0%,16%{background:var(--light-piece-color);border-color:var(--starting-coin-border)}17%,32%{background:var(--dark-piece-color);border-color:var(--starting-coin-border)}33%,48%{background:var(--light-piece-color);border-color:var(--starting-coin-border)}49%,64%{background:var(--dark-piece-color);border-color:var(--starting-coin-border)}65%,80%{background:var(--light-piece-color);border-color:var(--starting-coin-border)}81%,to{background:var(--starting-color);border-color:var(--starting-border-color)}0%{transform:rotateY(0)scale(.88)}to{transform:rotateY(4turn)scale(1)}}@keyframes scoreGainPulse{0%,to{transform:scale(1)}50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--score-opposite-color) 24%, transparent), 0 8px 22px #0d1f1942, 0 0 24px color-mix(in srgb, var(--score-opposite-color) 26%, transparent);transform:scale(1.12)}}@keyframes scoreGainPulseLight{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}:root[data-motion-effects=light] .board .pieceGlyph{filter:none}:root[data-motion-effects=light] .scoreBadge--gain,:root[data-motion-effects=light] .scoreBadge--goalCue{animation-name:scoreGainPulseLight}@keyframes objectiveCrossGoalFlash{0%,to{stroke:var(--objective-target)}50%{stroke:color-mix(in srgb, var(--objective-target) 30%, black)}}@keyframes scoreThreatFlash{0%,to{background:var(--score-player-color);color:var(--score-opposite-color);transform:scale(1.05)}50%{background:var(--score-player-color);color:var(--score-opposite-color);box-shadow:0 0 0 6px color-mix(in srgb, var(--score-opposite-color) 34%, transparent), 0 9px 26px #0d1f194d, 0 0 32px color-mix(in srgb, var(--score-opposite-color) 32%, transparent);transform:scale(1.18)}}@keyframes objectiveWhiteThreatFlash{0%,to{background:var(--white-objective-occupied);box-shadow:none}50%{background:var(--white-objective-occupied);box-shadow:inset 0 0 0 clamp(3px, .5vw, 5px) var(--black-objective-occupied)}}@keyframes objectiveBlackThreatFlash{0%,to{background:var(--black-objective-occupied);box-shadow:none}50%{background:var(--black-objective-occupied);box-shadow:inset 0 0 0 clamp(3px, .5vw, 5px) var(--white-objective-occupied)}}@keyframes moveIn{0%{transform:translate(-50%, -50%) translate(var(--shift-x), var(--shift-y))}to{transform:translate(-50%,-50%)translate(0)}}@keyframes moveInFromDrag{0%{transform:translate(-50%, -50%) translate(var(--shift-x), var(--shift-y)) scale(1.06)}to{transform:translate(-50%,-50%)translate(0)scale(1)}}@keyframes blockedSwapShake{0%,to{transform:translate(0)rotate(0)}18%{transform:translate(-8%)rotate(-3deg)}36%{transform:translate(8%)rotate(3deg)}54%{transform:translate(-6%)rotate(-2deg)}72%{transform:translate(6%)rotate(2deg)}88%{transform:translate(-2%)rotate(-.5deg)}}@keyframes finishWhite{to{background:var(--white-win-cell)}}@keyframes finishBlack{to{background:var(--black-win-cell)}}@keyframes finishWhiteObjective{to{background:var(--white-win-objective)}}@keyframes finishBlackObjective{to{background:var(--black-win-objective)}}@keyframes ratingDelta{0%{opacity:0;transform:translateY(8px)scale(.78)}16%{opacity:1;transform:translateY(0)scale(1)}68%{opacity:1;transform:translateY(-3px)scale(1)}to{opacity:0;transform:translateY(-18px)scale(.96)}}@keyframes ratingTierUpPulse{0%,to{filter:none;transform:scale(1)}28%{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--hud-color) 52%, transparent));transform:scale(1.22)}52%{transform:scale(.96)}76%{transform:scale(1.1)}}@keyframes rulesTogglePulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--hud-color) 0%, transparent);transform:scale(1)}12%{box-shadow:0 0 0 0 color-mix(in srgb, var(--hud-color) 68%, transparent)}48%{box-shadow:0 0 0 14px color-mix(in srgb, var(--hud-color) 0%, transparent);transform:scale(1.28)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--hud-color) 0%, transparent);transform:scale(1)}}@media (height<=720px) and (orientation:portrait){.rulesBoard{grid-template-rows:auto 1.03fr .96fr .96fr .93fr auto}.rulesLogo{padding-block:4px 7px;font-size:clamp(27px,7.8vw,34px)}.rulesPanel{gap:1px;padding-block:2px}.rulesPanel>:first-child{scale:.9}.rulesCopy p{font-size:clamp(12px,3.7vw,16px)}}@media (height<=540px) and (orientation:landscape){.rulesBoard{grid-template-rows:auto repeat(4,minmax(0,1fr)) auto}.rulesLogo{padding-block:2px 5px;font-size:24px;line-height:.74}.rulesPanel{grid-template-rows:1fr;grid-template-columns:minmax(150px,40%) 1fr;column-gap:12px;padding:1px 18px}.rulesPanel:nth-of-type(2),.rulesPanel:nth-of-type(3){top:0}.rulesPanel>:first-child{grid-area:1/1;scale:.82}.rulesCopy{grid-area:1/2}.rulesCopy p{font-size:clamp(12px,1.5vw,15px)}}@media (display-mode:standalone),(display-mode:fullscreen){.rulesScreen{padding-bottom:env(safe-area-inset-bottom)}.rulesPanel{padding-block:clamp(4px,1vw,8px)}}@media (orientation:portrait) and (width<=599px){:root[data-ios-standalone=true]{--game-group-offset-y:-32px}:root[data-ios-standalone=true] .gameShell>.scoreBadge,:root[data-ios-standalone=true] .gameShell>.boardFrame{top:-32px}}@media (orientation:portrait) and (width<=360px){.soundToggle{left:calc(var(--board-inline-start) + clamp(30px, calc(25vw - 47px), 42px))}.restartToggle{left:calc(var(--board-inline-start) + clamp(60px, calc(50vw - 94px), 84px))}}@media (height<=540px) and (orientation:landscape){.gameShell{grid-template-rows:1fr auto 1fr;grid-template-columns:auto auto auto;gap:8px}.boardFrame{grid-area:1/2/4}.scoreBadge--top{grid-area:2/1}.scoreBadge--bottom{grid-area:2/3}.scoreBadge--top.scoreBadge--active:after,.scoreBadge--bottom.scoreBadge--active:after{width:3px;height:22px;inset:50% -8px auto auto;transform:translateY(-50%)}.scoreBadge--top .scoreWinSparks{--spark-base-angle:-90deg}.scoreBadge--bottom .scoreWinSparks{--spark-base-angle:90deg}}@media (prefers-reduced-motion:reduce){.scoreWinSparks{display:none}.rulesToggle--goalCue{animation:none}.humanRoomShare--pulse{box-shadow:0 0 0 4px color-mix(in srgb, var(--hud-color) 32%, transparent);animation:none}.piece--swapBlocked{filter:drop-shadow(0 0 .32rem);animation:none;transform:scale(1.06)}*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}:root[data-native-ios=true] .rulesScreen,:root[data-native-app=true] .rulesScreen{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.nativeGameLayer--covered{visibility:hidden}.nativeRouteLayer{z-index:200;position:fixed;inset:0}.launchPage{--launch-keyboard-offset:0px;z-index:1000;overscroll-behavior:none;background-color:var(--body-background);width:100%;min-width:320px;height:100dvh;color:var(--ink);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden auto}.launchPage:after{height:var(--launch-keyboard-offset);content:"";pointer-events:none;display:block}.launchPageInner{width:min(100%,32rem);min-height:100%;padding:max(36px, calc(env(safe-area-inset-top) + 24px)) max(22px, calc(env(safe-area-inset-right) + 20px)) calc(max(36px, calc(env(safe-area-inset-bottom) + 24px)) + var(--launch-keyboard-offset)) max(22px, calc(env(safe-area-inset-left) + 20px));flex-direction:column;justify-content:center;align-items:center;margin-inline:auto;display:flex;transform:translateY(-3.5dvh)}.launchWordmark.rulesLogo{padding:0;font-size:clamp(48px,13vw,76px);line-height:.78}.launchDate{color:var(--ink);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:-.025em;text-align:center;margin:27px 0 0;font-size:clamp(16px,4.1vw,19px);font-weight:520;line-height:1.4}.launchAccessReveal{color:var(--colored-theme-blue);cursor:pointer;font-family:var(--font-geist-mono), ui-monospace, monospace;text-align:center;text-underline-offset:4px;background:0 0;border:0;border-radius:0;margin:22px 0 0;padding:3px 1px 4px;font-size:clamp(13px,3.5vw,15px);font-weight:560;line-height:1.5;text-decoration:underline;text-decoration-thickness:1px}:root[data-theme=colored-dark] .launchAccessReveal{color:var(--colored-theme-yellow)}.launchAccessReveal:hover{opacity:.72}.launchAccessReveal:focus-visible,.launchAccessInput:focus-visible,.launchAccessSubmit:focus-visible{z-index:1;outline:2px solid var(--focus-ring-inner);outline-offset:3px;box-shadow:0 0 0 4px var(--focus-ring-outer)}.launchFormRegion{opacity:0;pointer-events:none;grid-template-rows:0fr;width:100%;transition:grid-template-rows .18s,opacity .15s,transform .18s;display:grid;transform:translateY(-5px)}.launchFormRegion--open{opacity:1;pointer-events:auto;grid-template-rows:1fr;transform:translateY(0)}.launchAccessForm{min-height:0;padding-inline:1px;overflow:hidden}.launchAccessLabel{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.launchAccessControls{gap:10px;width:100%;margin-top:21px;display:flex}.launchAccessInput,.launchAccessSubmit{min-height:48px;font-family:var(--font-geist-mono), ui-monospace, monospace;border-radius:10px;font-size:16px;line-height:1.2}.launchAccessInput{border:1px solid color-mix(in srgb, var(--colored-theme-blue) 68%, transparent);background:color-mix(in srgb, var(--body-background) 92%, white);width:100%;min-width:0;color:var(--ink);-webkit-user-select:text;user-select:text;flex:auto;padding:12px 14px;scroll-margin-block:20px;box-shadow:inset 0 1px 1px #0b254f12}.launchAccessInput::placeholder{color:color-mix(in srgb, var(--ink) 52%, transparent);opacity:1}:root[data-theme=colored-dark] .launchAccessInput{border-color:color-mix(in srgb, var(--colored-theme-yellow) 65%, transparent);background:color-mix(in srgb, var(--body-background) 94%, white)}.launchAccessSubmit{border:1px solid var(--colored-theme-blue);background:var(--colored-theme-blue);color:var(--tone-light);cursor:pointer;flex:none;padding:12px 20px;font-weight:650}:root[data-theme=colored-dark] .launchAccessSubmit{border-color:var(--colored-theme-yellow);background:var(--colored-theme-yellow);color:var(--colored-theme-blue)}.launchAccessSubmit:disabled,.launchAccessInput:disabled{cursor:wait;opacity:.67}.launchAccessStatus{min-height:20px;color:var(--rules-muted-ink);font-family:var(--font-geist-mono), ui-monospace, monospace;opacity:0;text-align:left;margin:9px 2px 0;font-size:12px;line-height:1.4}.launchAccessStatus--visible{opacity:1}@media (width<=479px){.launchAccessControls{flex-direction:column}.launchAccessSubmit{width:100%}}@media (height<=600px){.launchPageInner{justify-content:flex-start;transform:none}.launchWordmark.rulesLogo{font-size:clamp(40px,10vw,58px)}}@media (prefers-reduced-motion:reduce){.launchFormRegion{transition:none}}
