:root .game-dialog[data-slot=dialog-content]{--dialog-usable-height:calc(var(--dialog-viewport-height,100dvh) - max(12px, var(--safe-top,0px)) - max(12px, var(--safe-bottom,0px)));top:calc(var(--dialog-viewport-top,0px) + max(12px, var(--safe-top,0px)) + var(--dialog-usable-height) / 2);width:calc(100vw - max(14px, var(--safe-left,0px)) - max(14px, var(--safe-right,0px)));left:calc(50% + (max(14px, var(--safe-left,0px)) - max(14px, var(--safe-right,0px))) / 2);max-height:min(90dvh, var(--dialog-usable-height));overscroll-behavior:contain;scroll-padding-block:16px}:root .game-dialog.play-menu[data-slot=dialog-content]{max-height:min(820px, var(--dialog-usable-height))}:root .game-dialog.help-dialog[data-slot=dialog-content]{max-height:var(--dialog-usable-height)}.game-dialog:not(.play-menu)[data-slot=dialog-content]>[data-slot=dialog-header]{padding-inline-end:26px}.game-dialog[data-slot=dialog-content]>[data-slot=dialog-close]{min-width:44px;min-height:44px}.game-dialog.play-menu[data-compact-viewport=true]{overflow-y:auto}.play-menu[data-compact-viewport=true] .play-menu-body{flex-shrink:0;overflow-y:visible}.play-menu[data-compact-viewport=true] [data-slot=dialog-header]{padding-block:14px}.play-menu[data-compact-viewport=true] .play-menu-eyebrow{display:none}.island-stage .island-playground{cursor:pointer;border-radius:0;height:calc(100% - 54px);inset:0 0 54px}.island-stage .island-canvas{-webkit-mask-image:none;mask-image:none}.island-stage .island-scene-controls{justify-content:center;gap:8px;inset:auto 12px 12px;transform:none}.island-stage .island-scene-controls button.scene-roll,.island-stage .island-scene-controls button.scene-motion{border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:none;backdrop-filter:none;min-height:34px;box-shadow:none;color:var(--muted-foreground);font-family:var(--font-sans);border-radius:7px;gap:6px;padding:0 11px;font-size:11px;font-weight:500}.island-stage .island-scene-controls button.scene-roll:hover,.island-stage .island-scene-controls button.scene-motion:hover{color:var(--foreground);border-color:var(--primary);background:var(--card);transform:none}.island-stage .island-scene-controls button:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.island-stage .island-playground:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.island-stage .island-scene-controls button>svg{width:14px;height:14px}.island-fallback-dice{pointer-events:none;gap:24px;display:flex}.island-decorative-die{background:var(--lagoon-paper);border:1px solid #163f4520;border-radius:18px;grid-template-columns:repeat(3,1fr);gap:7px;width:76px;height:76px;padding:14px;display:grid;box-shadow:inset 0 -5px #163f4514,0 12px 20px -10px #163f4566}.island-decorative-die:nth-child(2){background:var(--lagoon-accent)}.island-decorative-die i{border-radius:50%}.island-decorative-die .has-pip{background:var(--lagoon-ink)}.island-stage .island-fallback-dice .island-decorative-die:nth-child(2) .has-pip{background:var(--app-accent-ink)}.island-motion-on .island-decorative-die.is-rolling{animation:.8s ease-in-out infinite island-fallback-roll!important}.island-motion-on .island-decorative-die.is-rolling:nth-child(2){animation-direction:reverse!important;animation-delay:80ms!important}.island-motion-on .scene-roll.is-rolling>svg{animation:.6s ease-in-out infinite island-roll-icon!important}.scene-roll-result{font-variant-numeric:tabular-nums;border-left:1px solid #163f4526;padding-left:9px}@keyframes island-fallback-roll{0%,to{transform:translateY(0)rotate(0)}30%{transform:translateY(-26px)rotate(-18deg)}68%{transform:translateY(-8px)rotate(15deg)}}@keyframes island-roll-icon{0%,to{transform:rotate(-14deg)}50%{transform:rotate(20deg)}}.island-motion-off .island-decorative-die,.island-motion-off .scene-roll>svg{transition:none!important;animation:none!important}.island-stage-landing .island-playground{touch-action:pan-y pinch-zoom;height:calc(100% - 74px);inset:0 0 74px}.island-stage .island-playground.is-dragging{cursor:grabbing}.island-toy-shelf{z-index:2;border:0;border:1px solid var(--border);background:var(--card);width:min(400px,100% - 32px);min-width:0;box-shadow:0 12px 30px -15px var(--app-shadow);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;padding:10px;display:grid;position:absolute;bottom:82px;left:50%;transform:translate(-50%)}.island-toy-shelf[hidden]{display:none}.island-stage .island-scene-controls button.scene-toys{border:1px solid var(--border);min-height:44px;color:var(--foreground);background:var(--card);box-shadow:none;border-radius:8px;padding:0 12px;font-size:12px}.scene-toys[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.island-stage button.island-toy{min-width:0;min-height:50px;color:var(--foreground);border:1px solid var(--border);background:color-mix(in srgb, var(--card) 92%, transparent);border-bottom-width:3px;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:8px;font-size:12px;font-weight:650;transition:background .15s,border-color .15s,transform .15s;display:flex;box-shadow:0 3px 8px #153e4410}.island-stage button.island-toy svg{color:color-mix(in srgb, var(--foreground) 30%, var(--primary));flex-shrink:0}.island-stage button.island-toy:nth-child(2) svg{color:color-mix(in srgb, var(--foreground) 30%, #8875b0)}.island-stage button.island-toy:nth-child(3) svg{color:color-mix(in srgb, var(--foreground) 30%, #b96046)}.island-stage button.island-toy:nth-child(4) svg{color:color-mix(in srgb, var(--foreground) 30%, #287992)}.island-stage button.island-toy:hover:not(:disabled){border-color:var(--primary);transform:translateY(-2px)}.island-stage button.island-toy[aria-pressed=true]{background:var(--app-secondary-surface);border-color:var(--primary)}.island-stage button.island-toy:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.island-stage button.island-toy:disabled{opacity:.55;cursor:wait}.island-stage.island-motion-off button.island-toy:disabled,.island-stage .island-scene-controls button:disabled{opacity:.5;cursor:default}.island-paused-notice{z-index:2;border:1px solid var(--border);background:var(--card);color:var(--foreground);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex;position:absolute;top:14px;left:14px;right:14px;box-shadow:0 4px 14px #153e4414}.island-paused-notice>div{gap:2px;display:grid}.island-paused-notice strong{font-size:14px}.island-paused-notice span{color:var(--muted-foreground);font-size:12px}.island-stage .island-paused-notice button{border:1px solid var(--primary);background:var(--primary);min-height:44px;color:var(--primary-foreground);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.island-stage .island-paused-notice button:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.island-stage-landing .island-scene-controls{gap:8px;bottom:28px}.island-stage-landing .island-scene-controls button.scene-pet,.island-stage-landing .island-scene-controls button.scene-roll,.island-stage-landing .island-scene-controls button.scene-motion{min-height:44px}.island-stage .island-scene-controls button.scene-pet{border:1px solid var(--border);background:var(--card);min-height:44px;color:var(--muted-foreground);box-shadow:none;border-radius:7px;gap:6px;padding:0 11px;font-size:11px;font-weight:500}.island-play-hint{color:var(--muted-foreground);text-align:center;pointer-events:none;margin:0;font-size:11px;line-height:16px;position:absolute;bottom:7px;left:16px;right:16px}.island-motion-off button.island-toy{transition:none}.island-motion-off button.island-toy:hover:not(:disabled){transform:none}@media (max-width:600px){.island-paused-notice{align-items:flex-start;gap:8px;padding:10px;top:10px;left:10px;right:10px}.island-paused-notice span{font-size:11px;line-height:1.35}.island-stage .island-paused-notice button{gap:4px;padding:6px 8px;font-size:11px}.island-stage button.island-toy{flex-direction:column;gap:4px;min-height:56px;padding:5px 3px;font-size:11px}.island-toy-shelf{gap:5px;width:calc(100% - 20px)}.island-stage-landing .island-scene-controls{gap:6px}.island-stage-landing .island-scene-controls button.scene-pet,.island-stage-landing .island-scene-controls button.scene-roll,.island-stage-landing .island-scene-controls button.scene-motion{min-height:44px;padding:0 7px;font-size:11px}.island-stage-landing .scene-roll-result{display:none}.island-play-hint{font-size:10px}}.recovery-flow,.recovery-code-details,.account-security{gap:16px;min-width:0;display:grid}.recovery-copy,.recovery-guidance p{color:var(--muted-foreground);margin:0;font-size:14px;line-height:1.6}.recovery-account{border:1px solid var(--border);background:color-mix(in srgb, var(--primary) 5%, transparent);overflow-wrap:anywhere;border-radius:12px;gap:4px;padding:12px 14px;display:grid}.recovery-account span{color:var(--muted-foreground);font-size:12px}.recovery-account strong{font-size:16px}.recovery-code-input,.saved-recovery-code{font-family:ui-monospace,monospace}.recovery-text-button{min-height:44px;color:var(--teal);text-underline-offset:3px;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:8px 4px;font-size:14px;font-weight:600;text-decoration:underline;display:inline-flex}.recovery-text-button:disabled{opacity:.55;cursor:default}:is(.recovery-text-button:focus-visible,.saved-recovery-code:focus-visible){outline:2px solid var(--teal);outline-offset:3px}.recovery-back{text-decoration:none}.recovery-guidance{border-left:3px solid var(--primary);gap:12px;padding:0 0 0 12px;display:grid}.saved-recovery-code{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;min-width:0;color:var(--foreground);resize:none;overflow-wrap:anywhere;border-radius:10px;padding:12px;font-size:16px;line-height:1.55}.recovery-actions{flex-wrap:wrap;gap:8px;display:flex}.recovery-actions>button{flex:auto;min-height:44px}.recovery-code-details>label{font-size:14px;font-weight:600}.recovery-code-details>.primary-button{min-height:44px}.recovery-notice{background:color-mix(in srgb, var(--primary) 10%, var(--background));border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.55}.account-security{border-bottom:1px solid var(--border);padding-bottom:20px}.account-security>.settings-section-label{margin:0}.login-recovery-link{width:100%;margin-top:8px}.recovery-dialog{overflow-wrap:anywhere}.island-landing.auth-layout{--primary:var(--app-secondary);--primary-ink:var(--app-secondary-ink);--primary-foreground:var(--app-secondary-ink);flex:0 auto;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);align-items:center;gap:48px;width:min(1240px,100% - 64px);min-width:0;margin:32px auto 48px;padding:0;display:grid}.auth-layout .login-panel{border:1px solid var(--border);background:var(--card);width:100%;min-width:0;box-shadow:0 18px 42px -32px var(--app-shadow);border-radius:16px;grid-area:1/2;padding:32px}.auth-layout .login-card{width:100%;max-width:none;box-shadow:none;background:0 0;border:0;margin:0;padding:0}.auth-layout .login-card h1{color:var(--foreground);font-family:var(--font-sans);letter-spacing:-.045em;margin:0 0 14px;font-size:clamp(28px,2.7vw,36px);font-weight:700;line-height:1.12}.auth-layout #login-title{scroll-margin-top:100px}.auth-layout #login-title:focus{outline:none}.auth-access-label{color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:600;display:block}.auth-introduction{color:var(--muted-foreground);margin:0 0 22px;font-size:15px;line-height:1.6}.auth-layout .login-form,.auth-layout .login-fields{gap:16px}.auth-layout .login-field{gap:8px}.auth-layout .login-field label,.auth-layout .island-avatar-field legend{color:var(--foreground);font-size:13px;font-weight:600}.auth-layout .login-field input{border:1px solid var(--border);height:48px;color:var(--foreground);background:var(--app-input,var(--app-canvas));box-shadow:none;border-radius:8px;padding:0 13px;font-size:16px}.auth-layout .password-input input{padding-right:48px}.auth-layout .login-field input:focus-visible{border-color:var(--app-link);box-shadow:0 0 0 3px color-mix(in srgb, var(--app-link) 12%, transparent)}.auth-password-label{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.auth-forgot{min-height:44px;color:var(--app-link);text-align:start;background:0 0;border:0;margin-block:-6px;padding:6px 0;font-size:12px}.auth-layout .login-card .login-submit{border:1px solid var(--primary);width:100%;min-height:50px;color:var(--primary-ink);background:var(--primary);white-space:normal;text-align:center;box-shadow:0 3px 0 color-mix(in srgb, var(--primary) 75%, var(--foreground));border-radius:9px;justify-content:center;align-items:center;gap:10px;margin-top:4px;padding:12px 16px;font-size:15px;font-weight:650;line-height:1.35;text-decoration:none;display:flex}.auth-layout .login-card .login-submit:hover{background:color-mix(in srgb, var(--primary) 91%, var(--foreground));transform:none}.auth-layout .login-card .login-submit:active{box-shadow:0 1px 0 color-mix(in srgb, var(--primary) 75%, var(--foreground));transform:translateY(1px)}.auth-layout .login-submit:disabled{box-shadow:none}.auth-layout .auth-guest-button>svg:last-child{margin-left:auto}.auth-layout .auth-guest-button>svg:first-child{margin-right:auto}.auth-guest-hint{margin:14px 0 0;font-size:12px;line-height:1.5}.auth-login-toggle{border:0;border-top:1px solid var(--border);width:100%;min-height:52px;color:var(--app-link);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding:12px 0;font-size:14px;font-weight:600;display:flex}.auth-login-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.auth-layout .login-switch{border:0;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:0 6px;margin-top:12px;padding:0;font-size:12px;display:flex}.auth-layout .login-switch>span{color:var(--muted-foreground)}.auth-layout .login-switch button,.auth-session-register{min-height:44px;color:var(--app-link);text-underline-offset:3px;background:0 0;padding:6px 0;font-size:13px;font-weight:600;text-decoration:underline}.auth-back{min-height:44px;color:var(--app-link);background:0 0;border:0;align-items:center;gap:7px;margin:-8px 0 12px;padding:0;font-size:13px;display:inline-flex}.auth-illustration{grid-area:1/1;min-width:0}.auth-club-intro{justify-content:space-between;align-items:center;padding:0 2px 14px;display:flex}.auth-club-intro h2{color:var(--foreground);letter-spacing:-.025em;margin:0;font-size:20px;font-weight:600;line-height:1.3}.auth-club-intro h2>span{color:var(--app-tertiary)}.auth-session>.player-avatar{width:52px;height:52px;margin-bottom:16px}.auth-session-identity{color:var(--muted-foreground);overflow-wrap:anywhere;margin:0 0 22px;font-size:16px;line-height:1.5}.auth-session-games{min-height:44px;color:var(--app-link);text-underline-offset:3px;justify-content:center;align-items:center;margin-top:8px;font-size:13px;text-decoration:underline;display:flex}.auth-session-guest{border-top:1px solid var(--border);margin-top:22px;padding-top:16px}.auth-session-guest .field-hint{margin:0;line-height:1.6}.auth-layout.is-registering .login-panel,.auth-layout.is-recovering .login-panel{align-self:start}.auth-scene-window{border:1px solid var(--border);background-color:color-mix(in srgb, var(--app-secondary-surface) 55%, var(--app-canvas));background-image:radial-gradient(color-mix(in srgb, var(--foreground) 3%, transparent) .65px, transparent .65px);background-size:4px 4px;border-radius:20px;min-width:0;position:relative;overflow:clip}.auth-illustration .island-stage{width:100%;max-width:100%;height:clamp(420px,100dvh - 235px,550px);min-height:0;margin:0}.auth-scene-window :is(.island-playground,.island-canvas,canvas){width:100%;min-width:0;max-width:100%}.auth-learn-link{width:fit-content;min-height:52px;color:var(--app-link);justify-content:center;align-items:center;gap:10px;margin-inline:auto;padding-inline:4px;font-size:13px;text-decoration:none;display:flex}.auth-learn-link:hover>span{text-underline-offset:3px;text-decoration:underline}.auth-layout .field-hint{color:var(--muted-foreground);font-size:12px}.auth-layout .recovery-flow{gap:20px}.auth-layout .recovery-flow h1{margin-bottom:0}.auth-layout .recovery-text-button{color:var(--app-link);justify-content:flex-start;font-size:13px}.auth-layout .recovery-notice{margin-bottom:18px;font-size:13px;line-height:1.6;display:block}.auth-layout .island-avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.auth-layout .island-avatar-grid>button{border-radius:10px;min-width:0}.auth-layout .island-avatar-grid .player-avatar{max-width:100%}.auth-layout :is(button,a):focus-visible{outline:2px solid var(--app-link);outline-offset:3px}.auth-layout .recovery-account strong{overflow-wrap:anywhere}@media (max-width:1050px){.island-landing.auth-layout{grid-template-columns:minmax(0,1fr) 330px;gap:24px;width:calc(100% - 44px)}.auth-layout .login-panel{padding:24px}.auth-layout .island-avatar-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width:820px){.island-landing.auth-layout{flex-direction:column;gap:28px;width:min(600px,100% - 32px);margin:20px auto 36px;display:flex}.auth-layout .login-panel{order:0;width:100%;margin:0;padding:24px}.auth-illustration{order:1;width:100%}.auth-layout .login-card h1{font-size:30px}.auth-illustration .island-stage{height:430px}.auth-layout .island-avatar-grid{grid-template-columns:repeat(auto-fit,minmax(44px,1fr))}}@media (max-width:380px){.auth-layout .login-panel{padding:20px}.auth-layout .login-card h1{font-size:27px}.auth-illustration .island-stage{height:390px}}.auth-signin-check{border-left:3px solid var(--app-secondary);background:var(--app-secondary-surface);color:var(--foreground);margin-bottom:20px;padding:14px;font-size:13px;line-height:1.6;display:block}.auth-signin-check strong{font-size:14px}.auth-signin-check p{margin:8px 0 12px}.game-board .checker{transition:transform .34s cubic-bezier(.18,.82,.24,1),opacity 80ms ease-out}.game-board.board-dragging,.game-board.board-dragging .movable-checker{cursor:grabbing}.game-board .dragged-checker{transition:none}.game-board.board-numbers-off .point-label{visibility:hidden}.board-stack-count rect{fill:var(--board-felt);stroke:var(--board-label);stroke-width:1px}.board-stack-count text{fill:var(--board-label);font:650 15px var(--font-sans);text-anchor:middle}.board-cube-disabled{opacity:.38}.game-board .checker-body{transform-box:fill-box;transform-origin:50%;transition:transform .16s ease-out}.game-board .selected-checker .checker-body{transform:scale(1.055)}.game-board .checker-ring{transition:stroke .14s ease-out,stroke-width .14s ease-out}.game-board.board-hints-off .movable-checker:not(.selected-checker) .checker-ring{stroke:var(--ring);stroke-width:2px}.game-board .board-point-surface{transition:stroke .14s ease-out,stroke-width .14s ease-out}.game-board .drag-destination .board-point-surface{stroke:var(--board-accent);stroke-width:3px}.game-board .board-point-hit:focus-visible{stroke:var(--board-label);stroke-width:3px;stroke-dasharray:5 5;outline:none}.game-board .destination-hint{animation:.15s ease-out both hint-appear}.game-board .destination-marker{transition:fill .14s ease-out}.game-board .drag-destination .destination-marker{fill:var(--board-label)}.game-board .drag-destination .destination-dice{fill:var(--board-felt)}.game-board .drag-landing-ring{fill:none;stroke:var(--board-accent);stroke-width:3px;opacity:0;transition:opacity .1s ease-out}.game-board .valid-landing .drag-landing-ring{opacity:1}.game-feel .replay-toolbar{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;min-width:0;margin-bottom:12px;padding:8px 12px;display:flex}.game-feel .replay-toolbar p{font-size:14px;line-height:1.5}.game-feel .replay-buttons{align-items:center;gap:4px;display:flex}.game-feel .replay-buttons button{min-width:44px;min-height:44px}.game-board.board-motion-off *,.game-feel.game-motion-off .die{transition:none!important;animation:none!important}@keyframes hint-appear{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.game-board *,.game-feel .die{transition:none!important;animation:none!important}}.reduce-motion .game-board *,.reduce-motion .game-feel .die{transition:none!important;animation:none!important}.table-page.pro-table .match-players.pro-seats.has-player-rolls{container:player-seats/inline-size}.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-seat{grid-template-rows:auto auto auto;grid-template-columns:28px minmax(0,1fr) auto;gap:5px 7px}.table-page.pro-table .match-players.pro-seats.has-player-rolls .seat-score{grid-area:1/3}.table-page.pro-table .match-players.pro-seats.has-player-rolls .seat-metrics{flex-flow:wrap;grid-area:2/1/auto/-1;gap:4px 8px}.table-page.pro-table .match-players.pro-seats.has-player-rolls[data-timed=true] .seat-metrics{grid-column:1/3}.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-clock{grid-area:2/3;align-self:center;padding-left:0;font-size:20px}.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-clock small{margin:0;display:block}.table-page.pro-table .match-players.pro-seats.has-player-rolls .seat-turn-status{display:none}.table-page.pro-table .has-player-rolls .seat-roll{border-top:1px solid var(--border);grid-area:3/1/auto/-1;grid-template-rows:14px 44px 14px;grid-template-columns:1fr;place-items:center;gap:4px;min-width:0;padding-top:5px;display:grid}.table-page.pro-table .has-player-rolls .seat-roll-label{color:var(--foreground);white-space:nowrap;font-size:11px;font-weight:700;line-height:1.25}.table-page.pro-table .has-player-rolls .seat-roll-detail{color:var(--muted-foreground);font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:10px;line-height:1.25;display:flex}.table-page.pro-table .has-player-rolls .seat-roll-detail>span{white-space:nowrap}.table-page.pro-table .has-player-rolls fieldset.seat-roll-dice{border:0;justify-content:center;align-items:center;gap:6px;min-inline-size:0;margin:0;padding:0;display:flex}.table-page.pro-table .has-player-rolls .seat-roll-die{flex:none;display:block;position:relative}.table-page.pro-table .has-player-rolls .seat-roll .die{color:#163f45;opacity:1;background:#fff8de;border:1px solid #d0bb7e;border-radius:10px;gap:4px;width:44px;min-width:44px;height:44px;padding:8px;transition:background-color .14s,border-color .14s,box-shadow .14s;transform:none;box-shadow:inset 0 2px #fff,inset 0 -3px #c6ac6950,0 2px 5px #102e4530}.table-page.pro-table .has-player-rolls .seat-roll .die .pip{box-shadow:none;background:#173f46}.table-page.pro-table .has-player-rolls .seat-roll .die:disabled{opacity:1}.table-page.pro-table .has-player-rolls .seat-roll .die:not(:disabled):hover{background:#fffdf1;border-color:#176e77;box-shadow:inset 0 -3px #c6ac6950,0 0 0 2px #70c8c340,0 3px 7px #102e4530}:is(.table-page.pro-table .has-player-rolls .seat-roll .die.active-die,.table-page.pro-table .has-player-rolls .seat-roll .die:focus-visible){outline:3px solid var(--primary);outline-offset:2px}.table-page.pro-table .has-player-rolls .seat-roll[data-kind=previous] .die{background:#d8dedf;border-color:#9aa8ad;box-shadow:inset 0 -2px #778b9225,0 1px 2px #102e4515}.table-page.pro-table .has-player-rolls .seat-roll[data-kind=previous] .die .pip{background:#65757b}.table-page.pro-table .has-player-rolls .seat-roll[data-kind=previous] .seat-roll-label,.table-page.pro-table .has-player-rolls .seat-roll[data-kind=empty] .seat-roll-label{color:var(--muted-foreground);font-weight:500}.table-page.pro-table .has-player-rolls .seat-roll .die.used{background:#eee6cb;border-style:dashed;box-shadow:inset 0 -2px #c6ac6925}.table-page.pro-table .has-player-rolls .seat-roll .die.used .pip{background:#69765f}.table-page.pro-table .has-player-rolls .seat-die-used{color:#fff;pointer-events:none;background:#285a59;border:1px solid #fff8de;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;line-height:1;display:grid;position:absolute;bottom:-3px;right:-3px}.table-page.pro-table .has-player-rolls .seat-roll .die.unresolved{border-style:dashed}.table-page.pro-table .has-player-rolls .seat-die-placeholder{border:1px dashed var(--border);width:44px;height:44px;color:var(--muted-foreground);border-radius:10px;place-items:center;font-size:15px;display:grid}@container player-seats (width>=740px){.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-seat{grid-template-rows:auto auto;grid-template-columns:28px minmax(0,1fr) 174px auto;gap:4px 8px}.table-page.pro-table .match-players.pro-seats.has-player-rolls .seat-score{grid-column:4}.table-page.pro-table .match-players.pro-seats.has-player-rolls .seat-metrics{grid-column:1/3}.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-clock{grid-column:4;font-size:21px}.table-page.pro-table .match-players.pro-seats.has-player-rolls .seat-turn-status{grid-area:2/4;display:block}.table-page.pro-table .has-player-rolls .seat-roll{border:0;grid-area:1/3/3;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;justify-items:start;gap:3px 8px;min-height:48px;padding:0}.table-page.pro-table .has-player-rolls .seat-roll-label{white-space:normal;grid-area:1/1;align-self:end}.table-page.pro-table .has-player-rolls .seat-roll-detail{flex-direction:column;grid-area:2/1;align-self:start;align-items:flex-start;gap:1px}.table-page.pro-table .has-player-rolls .seat-roll-separator{display:none}.table-page.pro-table .has-player-rolls .seat-roll-dice{grid-area:1/2/3}.table-page.pro-table .has-player-rolls .seat-roll .die,.table-page.pro-table .has-player-rolls .seat-die-placeholder{width:48px;height:48px}}@media (max-width:380px){.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-seat{grid-template-columns:24px minmax(0,1fr) auto;gap:4px;padding-inline:5px}.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-clock{font-size:17px}}@media (max-width:600px) and (orientation:portrait){.table-page.pro-table .match-players.pro-seats.has-player-rolls .player-seat{border-radius:8px;gap:4px 5px;padding:6px}.table-page.pro-table .has-player-rolls .seat-roll{grid-template-rows:13px 44px 13px;grid-template-columns:1fr;gap:2px;padding-top:3px}.table-page.pro-table .has-player-rolls .seat-roll-label{font-size:10px}.table-page.pro-table .has-player-rolls .seat-roll-detail{gap:2px;font-size:9px}.table-page.pro-table .has-player-rolls .seat-roll-dice{gap:5px}.table-page.pro-table .pro-seats.has-player-rolls .seat-metrics{gap:3px 6px}.table-page.pro-table .pro-seats.has-player-rolls .seat-metrics dd{font-size:12px}.table-page.pro-table .pro-seats.has-player-rolls .seat-metrics dt{font-size:9px}.table-page.pro-table .pro-seats.has-player-rolls .seat-identity .seat-role{margin-top:1px}}@media (prefers-reduced-motion:reduce){.table-page.pro-table .has-player-rolls .seat-roll .die{transition:none}}.reduce-motion .table-page.pro-table .has-player-rolls .seat-roll .die{transition:none}.game-dialog.dice-history-dialog{overscroll-behavior:contain;width:680px;max-height:90dvh;padding:24px;max-width:min(680px,100% - 28px)!important}.dice-history-dialog [data-slot=dialog-header]{padding-right:22px}.dice-history-dialog [data-slot=dialog-close]{min-width:40px;min-height:40px}.dice-history-content{gap:14px;min-width:0;display:grid}.dice-history-toolbar,.dice-history-list-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.dice-history-toolbar strong,.dice-history-list-heading strong{font-size:15px}.dice-history-toolbar button,.dice-history-older,.dice-history-error button{gap:7px;min-height:44px}.dice-history-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dice-history-player{border:1px solid var(--border);border-radius:12px;min-width:0;padding:14px}.dice-history-light{background:var(--app-light-seat,var(--surface-soft))}.dice-history-dark{background:var(--app-dark-seat,var(--surface-soft))}.dice-history-player-name{align-items:center;gap:9px;min-width:0;display:flex}.dice-history-player-name>div{gap:3px;min-width:0;display:grid}.dice-history-player-name strong{overflow-wrap:anywhere;font-size:14px}.dice-history-player-name span,.dice-history-player dt{color:var(--muted-foreground);font-size:12px}.dice-history-player dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:15px 0 0;display:grid}.dice-history-player dl>div{flex-direction:column;justify-content:space-between;gap:5px;display:flex}.dice-history-player dd{font-variant-numeric:tabular-nums;margin:0;font-size:22px;font-weight:650}.dice-history-note,.dice-history-status,.dice-history-list-heading>output{color:var(--muted-foreground);font-size:12px;line-height:1.5}.dice-history-status{text-align:center;padding-block:10px}.dice-history-faces{border:1px solid var(--border);border-radius:10px}.dice-history-faces summary,.dice-history-ties summary{cursor:pointer;color:var(--teal);align-content:center;min-height:44px;font-size:13px;font-weight:600}.dice-history-faces summary{padding:12px}:is(.dice-history-faces summary:focus-visible,.dice-history-ties summary:focus-visible){outline:2px solid var(--ring);outline-offset:2px}.dice-history-face-scroll{padding:0 12px 12px;overflow-x:auto}.dice-history-faces table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.dice-history-faces caption{color:var(--muted-foreground);text-align:left;padding-bottom:10px;font-size:12px}.dice-history-faces td,.dice-history-faces th{text-align:right;border-bottom:1px solid var(--border);padding:8px}.dice-history-faces th:first-child{text-align:left}.dice-history-rounds,.dice-history-rolls{gap:10px;display:grid}.dice-history-rounds{gap:20px}.dice-history-rounds h3{color:var(--teal);margin:0 0 10px;font-size:14px}.dice-history-rolls{margin:0;padding:0;list-style:none}.dice-history-roll{border:1px solid var(--border);background:var(--card);border-radius:10px;min-width:0;padding:13px}.dice-history-opening{background:var(--app-tertiary-surface,var(--surface-soft))}.dice-history-roll-main{justify-content:space-between;align-items:center;gap:16px;display:flex}.dice-history-roll-player{gap:3px;min-width:0;display:grid}.dice-history-roll-player strong{overflow-wrap:anywhere;font-size:14px}.dice-history-roll-player>span,.dice-history-roll time{color:var(--muted-foreground);font-size:11px}.dice-history-result{flex-shrink:0;justify-items:center;gap:4px;display:grid}.dice-history-pair{gap:7px;display:flex}.dice-history-pair>b{border:1px solid var(--border);background:var(--app-input,var(--card));width:33px;height:33px;color:var(--foreground);font-variant-numeric:tabular-nums;border-radius:7px;place-items:center;font-size:18px;font-weight:700;display:grid}.dice-history-result small{color:var(--muted-foreground);font-size:10px}.dice-history-ties{border-top:1px solid var(--border);margin-top:8px}.dice-history-ties ol{color:var(--muted-foreground);margin:0;padding:0 0 0 18px;font-size:12px}.dice-history-ties li{padding:4px 0}.dice-history-ties li>span+span{margin-left:12px}.dice-history-error{gap:10px;display:grid}@media (max-width:520px){.game-dialog.dice-history-dialog{padding:19px}.dice-history-summary{grid-template-columns:minmax(0,1fr)}.dice-history-player{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.dice-history-player .player-avatar{display:none}.dice-history-player dl{gap:12px;margin:0}.dice-history-player dt{font-size:10px}.dice-history-player dd{font-size:19px}}@media (max-width:370px){.dice-history-player{display:block}.dice-history-player dl{margin-top:12px}}.table-page .game-log{border-top:1px solid var(--border);min-width:0;margin-top:18px;padding-top:18px}.table-page .game-log-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.table-page .game-log-header h2{color:var(--foreground);font:650 15px/1.4 var(--font-sans);align-items:center;gap:8px;margin:0;display:flex}.table-page .game-log-header p{color:var(--muted-foreground);margin:3px 0 0;font-size:12px}.table-page .game-log-tools{flex-shrink:0;align-items:center;gap:4px;display:flex}.table-page .game-log button{gap:5px;min-height:44px;font-size:12px}.table-page .game-log-scroll{overscroll-behavior:contain;overflow-anchor:none;scrollbar-gutter:stable;border:1px solid var(--border);background:var(--card);border-radius:10px;max-height:260px;overflow-y:auto}.table-page .game-log-scroll:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.table-page .game-log-entries{margin:0;padding:0;list-style:none}.table-page .game-log-row{border-bottom:1px solid var(--border);grid-template-columns:76px minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:11px 14px;font-size:13px;line-height:1.5;display:grid}.table-page .game-log-row:last-child{border-bottom:0}.table-page .game-log-row p{color:var(--foreground);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0}.table-page .game-log-kind{color:var(--muted-foreground);font-size:11px;font-weight:650}.table-page .game-log-roll .game-log-kind,.table-page .game-log-cube .game-log-kind{color:var(--primary)}.table-page .game-log-cube{background:color-mix(in srgb, var(--primary) 6%, var(--card))}.table-page .game-log-result{background:color-mix(in srgb, var(--primary) 10%, var(--card))}.table-page .game-log-result p,.table-page .game-log-result .game-log-kind{font-weight:650}.table-page .game-log-row time{color:var(--muted-foreground);white-space:nowrap;font-size:11px}.table-page .game-log-earlier{border-bottom:1px solid var(--border);justify-content:center;align-items:center;gap:12px;padding:4px 12px;display:flex}.table-page .game-log-earlier>span,.table-page .game-log-footer{color:var(--muted-foreground);font-size:11px;line-height:1.5}.table-page .game-log-footer{flex-wrap:wrap;justify-content:space-between;gap:4px 14px;padding-top:8px;display:flex}.table-page .game-log-empty,.table-page .game-log-error{margin:0;padding:16px;font-size:13px}.table-page .game-log-empty{color:var(--muted-foreground)}.table-page .game-log-error{color:var(--destructive)}@media (max-width:600px){.table-page .game-log-header{flex-wrap:wrap;align-items:flex-start;gap:4px}.table-page .game-log-tools{margin-left:auto}.table-page .game-log-row{grid-template-columns:64px minmax(0,1fr);gap:2px 8px;padding:10px}.table-page .game-log-row time{grid-column:2}.table-page .game-log-scroll{max-height:240px}.table-page .game-log-earlier{flex-direction:column;gap:0;padding-bottom:8px}}.table-page .local-time-clock{color:var(--muted-foreground);flex-shrink:0;align-items:center;gap:7px;margin-right:8px;font-size:11px;line-height:1.3;display:inline-flex}.table-page .local-time-clock time{color:var(--foreground);font-variant-numeric:tabular-nums;min-width:5ch;font-size:13px;font-weight:600}@media (max-width:900px){.table-page .local-time-clock{text-align:center;flex-direction:column;justify-content:center;gap:1px;min-width:40px;margin-right:4px;font-size:9px}.table-page .local-time-clock time{font-size:12px}}.table-page .die.unresolved{border-style:dashed}.table-page .board-preferences{color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 14px;font-size:13px;display:flex}.table-page .board-preferences button{min-height:40px;color:var(--foreground);gap:8px}.table-page .game-panel-toggle{gap:7px;display:inline-flex}.table-page .game-layout.panel-hidden{grid-template-columns:minmax(0,1fr);max-width:1080px;margin-inline:auto}.table-page .panel-hidden .table-sidebar{display:none}.table-page .table-sidebar.panel-open{display:block}.table-page .close-panel{justify-content:center;align-items:center;min-width:40px;min-height:40px;display:inline-flex}.table-page .player-seat.current-seat{border:2px solid var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent)}.table-page .player-seat>div>.seat-turn-label{color:var(--primary);margin-block:3px;font-size:12px;font-weight:750;display:block}.table-page .seat-totals{flex-shrink:0;align-items:center;gap:14px;margin-left:auto;display:flex}.table-page .seat-score{margin-left:0;font-size:25px;line-height:1.2;display:block}.table-page .player-clock{font-variant-numeric:tabular-nums;color:var(--foreground);flex-direction:column;align-items:flex-end;gap:1px;font-size:21px;font-weight:750;line-height:1.2;display:flex}.table-page .player-clock small{font:500 10px/1.3 var(--font-sans);color:var(--muted-foreground)}.table-page .player-clock.clock-running{color:var(--primary)}.table-page .player-clock.clock-low{color:var(--destructive)}.table-page .clock-caption{color:var(--muted-foreground);margin:-3px 0 14px;font-size:12px}.table-page .board-wrap{position:relative}.table-page .board-roll-target{cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:24px;width:100%;height:100%;position:absolute;inset:0}.table-page .board-roll-target:focus-visible{outline:4px solid var(--ring);outline-offset:5px}.table-page .board-roll-target:disabled{cursor:wait}.table-page .board-roll-prompt{border:1px solid var(--primary);background:var(--card);width:max-content;max-width:80%;color:var(--foreground);font-family:var(--font-sans);text-align:center;pointer-events:none;border-radius:20px;justify-content:center;align-items:center;padding:2px 9px;font-size:clamp(10px,1.5vw,13px);font-weight:650;line-height:1.2;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 5px #0000001f}.table-page .board-action-confirm,.table-page .board-action-pass,.table-page .board-action-next{box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--primary) 55%, transparent)}.table-page .board-wrap:focus-visible{outline:3px solid var(--primary);outline-offset:4px}.table-page.game-feel .turn-console.turn-playback{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:color-mix(in srgb, var(--primary) 7%, var(--card))}.table-page .chat-form{background:var(--card);position:sticky;bottom:0}.table-page .chat-scroll{overscroll-behavior:contain}.table-page .chat-status{color:var(--muted-foreground);margin:0;padding:8px 12px;font-size:11px}.table-page .table-heading{margin-bottom:20px}.table-page .table-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:8px}.table-page .table-home-link{min-height:44px;color:var(--muted-foreground);align-items:center;gap:8px;font-size:14px;font-weight:550;text-decoration:none;display:inline-flex}.table-page .table-home-link:hover{color:var(--foreground);text-underline-offset:4px;text-decoration:underline}:is(.table-page .table-home-link:focus-visible,.table-page .table-result-link:focus-visible){outline:2px solid var(--ring);outline-offset:4px;border-radius:4px}.table-page .table-tools{align-items:center;gap:4px;margin-left:auto;display:flex}.table-page .table-tools button{min-height:44px;color:var(--muted-foreground);gap:7px;padding-inline:10px;font-size:13px}.table-page .table-tools button[aria-expanded=true]{color:var(--foreground);background:var(--card);box-shadow:inset 0 -2px var(--primary)}.table-page .table-title{align-items:center;gap:12px;margin-bottom:4px}.table-page .table-title h1{letter-spacing:-.035em;margin:0;font-size:clamp(23px,2.6vw,29px);font-weight:650;line-height:1.2}.table-page .table-title>button{border-radius:6px;flex:none;justify-content:center;align-items:center;gap:6px;width:auto;min-width:72px;height:44px;padding-inline:8px;font-size:12px;display:inline-flex}.table-page .table-title>button:hover{color:var(--foreground);background:var(--card)}.table-page .table-context{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;font-size:13px;line-height:1.5;display:flex}.table-page .table-context-mode{border-left:1px solid var(--border);padding-left:14px}.table-page.game-feel .play-surface{background:var(--card);box-shadow:0 2px 10px color-mix(in srgb, var(--foreground) 3%, transparent);border-radius:14px;padding:18px}.table-page.game-feel .match-players{gap:12px;margin:0 0 14px}.table-page.game-feel .match-players .player-seat{border:1px solid var(--border);background:var(--card);box-shadow:none;border-radius:9px;padding:12px}.table-page.game-feel .match-players .player-seat.current-seat{border-color:color-mix(in srgb, var(--primary) 58%, var(--border));background:color-mix(in srgb, var(--primary) 4%, var(--card));box-shadow:inset 0 -2px var(--primary)}.table-page .seat-score{font-size:24px}.table-page.game-feel .turn-console{border:1px solid var(--border);background:var(--app-canvas,var(--surface-soft));border-radius:9px;gap:14px;margin:0 0 16px;padding:14px}.table-page.game-feel .turn-console.turn-ready{border-left:3px solid var(--primary);background:color-mix(in srgb, var(--primary) 5%, var(--card))}.table-page.game-feel .turn-console.turn-complete{border-left:3px solid var(--primary);background:var(--card)}.table-page.game-feel .turn-message strong{color:var(--foreground);font-size:16px;font-weight:650}.table-page .turn-message p{line-height:1.45}.table-page .table-result-link{background:var(--primary);min-height:44px;color:var(--primary-ink);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.table-page .table-sidebar{border:1px solid var(--border);background:var(--card);box-shadow:0 2px 10px color-mix(in srgb, var(--foreground) 3%, transparent);border-radius:14px}.table-page .table-sidebar .sidebar-heading{color:var(--foreground);background:var(--card)}.table-page .close-panel{min-width:44px;min-height:44px}.table-dialog-actions{justify-content:flex-end;align-items:center;gap:10px;padding-top:8px;display:flex}@media (min-width:901px){.table-page.game-feel{width:min(var(--page-width,1200px), calc(100% - 2 * var(--page-gutter,24px)));max-width:var(--page-width,1200px);margin-inline:auto;padding:18px 0 28px}.table-page .table-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0 16px;margin-bottom:16px;display:grid}.table-page .table-toolbar{display:contents}.table-page .table-home-link{border-right:1px solid var(--border);grid-area:1/1;padding-right:16px}.table-page .table-title{grid-area:1/2;gap:8px;min-width:0;margin:0}.table-page .table-title h1{font-size:25px}.table-page .table-tools{grid-area:1/3/3}.table-page .table-context{grid-area:2/2/auto/-1;padding-bottom:2px}.table-page.game-feel .game-layout{grid-template-columns:minmax(0,1fr) 288px;gap:20px}.table-page.game-feel .game-layout.panel-hidden{grid-template-columns:minmax(0,1fr)}.table-page.game-feel .play-surface{padding:14px}.table-page.game-feel .match-players{margin-bottom:10px}.table-page.game-feel .match-players .player-seat{padding:9px 10px}.table-page.game-feel .turn-console{margin-bottom:12px;padding:10px 12px}.table-page .board-wrap{width:min(100%,1.47059*max(480px,100dvh - 430px));margin-inline:auto}.table-page .board-wrap>.game-board{width:100%;height:auto;display:block}}@media (max-width:900px){.table-page .game-layout.panel-hidden{max-width:none}}@media (max-width:600px){.table-page .table-heading{margin-bottom:14px}.table-page .table-toolbar{gap:4px;margin-bottom:4px}.table-page .table-tools button{padding-inline:7px;font-size:12px}.table-page .table-tools{gap:0}.table-page .table-home-link{gap:6px;font-size:13px}.table-page .table-context{font-size:12px}.table-page.game-feel .play-surface{border-radius:10px;padding:12px 8px}.table-page.game-feel .match-players{gap:8px;margin-bottom:12px}.table-page.game-feel .match-players .player-seat{padding:9px 7px}.table-page.game-feel .turn-console{gap:12px;margin-bottom:12px;padding:12px 10px}.table-page .seat-totals{grid-column:1/-1;justify-content:center;align-self:stretch;gap:8px;width:100%;margin-left:0}.table-page .player-clock{font-size:18px}.table-page .match-players:has(.player-clock) .player-seat{flex-wrap:wrap}.table-page .match-players:has(.player-clock) .seat-totals{border-top:1px solid var(--border);justify-content:space-between;width:100%;padding-top:7px}.table-page .board-preferences{font-size:12px}}@media (max-width:450px){.table-page.pro-table .local-time-clock>span,.table-page.pro-table .expand-board-label{display:none}.table-page.pro-table .expand-board-short-label{display:inline}}.table-live-status{display:contents}.table-page.pro-table fieldset.board-wrap{border:0;min-width:0;padding:0}.table-page.pro-table .table-heading .table-context{grid-column:2}.table-page.pro-table .table-tools{flex-wrap:wrap}.table-page.pro-table .table-tools button[aria-pressed=true]{color:var(--primary);background:var(--surface-soft)}.table-page.pro-table .table-title h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.expand-board-short-label{display:none}.table-page.pro-table .pro-seats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.table-page.pro-table .pro-seats .player-seat{border-radius:10px;grid-template-rows:auto auto;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.table-page.pro-table .pro-seats .player-avatar{grid-area:1/1;width:32px;height:32px}.table-page.pro-table .pro-seats .seat-identity{grid-area:1/2;min-width:0;display:block}.table-page.pro-table .pro-seats .seat-identity>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.35;display:block;overflow:hidden}.table-page.pro-table .pro-seats .seat-role{color:var(--muted-foreground);align-items:center;gap:5px;margin-top:3px;font-size:11px;line-height:1.3;display:flex}.table-page.pro-table .pro-seats .checker-color{width:9px;height:9px}.table-page.pro-table .pro-seats .seat-score{color:var(--foreground);font-variant-numeric:tabular-nums;grid-area:1/3;align-items:baseline;gap:2px;margin:0;font-size:25px;font-weight:650;line-height:1;display:flex}.table-page.pro-table .pro-seats .seat-score small{color:var(--muted-foreground);font-size:12px;font-weight:500;display:inline}.table-page.pro-table .pro-seats .seat-metrics{grid-area:2/1/auto/3;align-items:baseline;gap:18px;min-width:0;margin:0;display:flex}.seat-metrics dt{color:var(--muted-foreground);margin-bottom:1px;font-size:10px;font-weight:500;line-height:1.2}.seat-metrics dd{color:var(--foreground);font-variant-numeric:tabular-nums;margin:0;font-size:16px;font-weight:600;line-height:1.15}.seat-metrics .seat-pips dd{font-size:22px}.seat-metrics dd small{color:var(--muted-foreground);font-size:10px;font-weight:450}.seat-metrics .seat-bar-count dd{color:var(--destructive)}.table-page.pro-table .pro-seats .player-clock{letter-spacing:-.03em;grid-area:2/3;justify-self:end;font-size:28px;font-weight:650}.table-page.pro-table .pro-seats .player-clock small{letter-spacing:0}.table-page.pro-table .pro-seats .seat-turn-status{color:var(--muted-foreground);text-align:right;grid-area:2/3;align-self:end;padding-bottom:3px;font-size:11px}.table-page.pro-table .pro-seats .current-seat .seat-turn-status{color:var(--primary);font-weight:650}.table-page.pro-table .pro-seats .current-seat{box-shadow:inset 3px 0 var(--primary)}.table-board-hud{min-height:38px;color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:8px 18px;margin:0 0 8px;padding:4px 2px;font-size:12px;line-height:1.35;display:flex}.table-page.pro-table .hud-numbering{width:100%;color:var(--muted-foreground);font-size:10px;line-height:1.4}.table-page .chat-unread-badge{background:var(--primary);min-width:20px;height:20px;color:var(--primary-foreground);font-variant-numeric:tabular-nums;border-radius:12px;place-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-grid}.table-page.pro-table .playback-clock-notice{color:var(--destructive);font-size:11px;line-height:1.4;display:block}.table-page .chat-load-earlier,.table-page .chat-jump-latest{width:calc(100% - 24px);min-height:44px;margin:6px 12px}.table-page .chat-delivery-state,.table-page .chat-delivery-error{background:var(--surface-soft);color:var(--foreground);border-radius:8px;margin:4px 12px 8px;padding:8px 10px;font-size:12px;line-height:1.5}.table-page .chat-delivery-error{color:var(--destructive)}.table-page .chat-entry p{overflow-wrap:anywhere}.hud-cube,.hud-pip-difference{flex-wrap:wrap;align-items:baseline;gap:4px 7px;display:flex}.hud-cube strong{border:1px solid var(--border);color:var(--foreground);border-radius:4px;padding:3px 6px;font-size:12px;font-weight:650}.hud-cube span{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.hud-cube.cube-unavailable strong{color:var(--muted-foreground);border-style:dashed}.hud-pip-difference strong{color:var(--foreground);font-variant-numeric:tabular-nums;font-weight:600}.hud-position-state{margin-left:auto;font-size:11px}.hud-position-state.has-draft{color:var(--primary);font-weight:650}.table-draft-ledger{min-height:24px;color:var(--foreground);white-space:nowrap;align-items:center;gap:9px;margin:4px 2px 0;display:flex;overflow-x:auto}.table-draft-ledger>span{color:var(--primary);font-size:11px;font-weight:650}.table-draft-ledger code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.table-draft-ledger small{color:var(--muted-foreground);font-size:11px}.table-page.pro-table .board-actions{flex-wrap:wrap;gap:6px}.table-page.pro-table .board-actions>div{flex-wrap:wrap;gap:0}.table-page.pro-table .board-actions button,.table-review-link{min-height:44px}.table-review-link{color:var(--muted-foreground);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;text-decoration:none;display:inline-flex}.table-review-link:hover{color:var(--foreground);background:var(--surface-soft)}.table-review-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.table-shortcut-help{min-height:44px;color:var(--muted-foreground);background:0 0;border:0;align-items:center;gap:6px;font-size:11px;display:inline-flex}.table-shortcut-help:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.table-shortcut-help kbd,.table-keyboard-help kbd{border:1px solid var(--border);background:var(--app-canvas,var(--card));min-width:20px;color:var(--foreground);font:500 11px/1.4 var(--font-sans);text-align:center;border-bottom-width:2px;border-radius:4px;padding:2px 4px;display:inline-block}.table-view-dialog{overscroll-behavior:contain;width:min(520px,100vw - 32px);max-height:min(850px,100dvh - 32px);overflow-y:auto}.table-view-layout{grid-template-columns:1fr 1fr;gap:10px;display:grid}.table-view-layout button{white-space:normal;min-height:44px}.table-view-options{border:0;min-width:0;margin:4px 0;padding:0}.table-view-options legend{color:var(--foreground);margin-bottom:8px;font-size:13px;font-weight:650}.table-view-options label{cursor:pointer;border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;min-height:44px;padding:12px 0;display:flex}.table-view-options label:last-child{border:0}.table-view-options input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0;margin-top:2px}.table-view-options input:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.table-view-options strong{color:var(--foreground);font-size:14px;font-weight:600;display:block}.table-view-options small{color:var(--muted-foreground);margin-top:3px;font-size:12px;line-height:1.4;display:block}.table-keyboard-help h3{color:var(--foreground);margin:0 0 4px;font-size:14px;font-weight:650}.table-keyboard-help>p{color:var(--muted-foreground);margin:0 0 12px;font-size:12px;line-height:1.45}.table-keyboard-help dl{gap:10px;margin:0;display:grid}.table-keyboard-help dl>div{grid-template-columns:140px 1fr;align-items:start;gap:12px;display:grid}.table-keyboard-help dt{white-space:nowrap;font-size:11px}.table-keyboard-help dd{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.45}@media (min-width:901px){.table-page.pro-table .board-wrap{width:min(100%,1.47059*max(300px,100dvh - 375px))}.table-page.pro-table.table-focus{width:min(1440px,100% - 32px);max-width:1440px;padding:10px 0 16px}.table-page.pro-table.table-focus .table-heading{margin-bottom:8px}.table-page.pro-table.table-focus .table-title h1{font-size:19px}.table-page.pro-table.table-focus .table-title>button,.table-page.pro-table.table-focus .table-context{display:none}.table-page.pro-table.table-focus .game-layout.panel-hidden{max-width:1320px}.table-page.pro-table.table-focus .play-surface{padding:12px}.table-page.pro-table.table-focus .board-wrap{width:min(100%,1.47059*max(300px,100dvh - 295px))}.table-page.pro-table.table-focus .pro-seats .player-seat{gap:6px 10px;padding:8px 12px}.table-page.pro-table.table-focus .turn-console{margin-bottom:4px}}@media (min-width:480px) and (max-width:1024px) and (max-height:600px) and (orientation:landscape){.table-page.pro-table.table-focus{width:calc(100% - 16px);padding-top:0}.table-page.pro-table.table-focus .table-heading{margin-bottom:3px;display:block}.table-page.pro-table.table-focus .table-toolbar{margin:0;display:flex}.table-page.pro-table.table-focus .table-title,.table-page.pro-table.table-focus .table-context{display:none}.table-page.pro-table.table-focus .table-home-link{border:0;padding:0}.table-page.pro-table.table-focus .game-layout{display:block}.table-page.pro-table.table-focus .play-surface{grid-template-columns:210px minmax(0,1fr);align-items:start;gap:0 8px;padding:6px;display:grid}.table-page.pro-table.table-focus .table-live-status{grid-area:1/1;min-width:0;display:block}.table-page.pro-table.table-focus .board-wrap{width:min(100%, calc((100dvh - 68px - var(--safe-top,0px) - var(--safe-bottom,0px)) * 1000 / 680));grid-area:1/2;margin:0 auto}.table-page.pro-table.table-focus .play-surface>:not(.table-live-status):not(.board-wrap){grid-column:1/-1}.table-page.pro-table.table-focus .match-players.pro-seats{grid-template-columns:1fr;gap:5px;margin-bottom:5px}.table-page.pro-table.table-focus .match-players.pro-seats.has-player-rolls .player-seat{grid-template-rows:auto auto auto;grid-template-columns:24px minmax(0,1fr) auto;gap:3px 5px;padding:5px 7px}.table-page.pro-table.table-focus .pro-seats .player-avatar{width:24px;height:24px}.table-page.pro-table.table-focus .pro-seats .seat-identity>strong{font-size:12px}.table-page.pro-table.table-focus .pro-seats .seat-role{margin-top:1px;font-size:10px}.table-page.pro-table.table-focus .pro-seats .seat-score{font-size:21px}.table-page.pro-table.table-focus .match-players.pro-seats.has-player-rolls .seat-roll{border:0;grid-area:2/1/auto/-1;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 94px;justify-items:start;gap:2px 5px;min-height:44px;padding-top:0}.table-page.pro-table.table-focus .has-player-rolls .seat-roll-label{white-space:normal;grid-area:1/1;align-self:end}.table-page.pro-table.table-focus .has-player-rolls .seat-roll-detail{flex-direction:column;grid-area:2/1;align-self:start;align-items:flex-start;gap:1px}.table-page.pro-table.table-focus .has-player-rolls .seat-roll-separator{display:none}.table-page.pro-table.table-focus .has-player-rolls .seat-roll-dice{grid-area:1/2/3}.table-page.pro-table.table-focus .match-players.pro-seats.has-player-rolls .seat-metrics{grid-area:3/1/auto/-1;align-items:center;gap:2px 7px}.table-page.pro-table.table-focus .match-players.pro-seats.has-player-rolls[data-timed=true] .seat-metrics{grid-column:1/3}.table-page.pro-table.table-focus .match-players.pro-seats.has-player-rolls .player-clock{grid-area:3/3;font-size:18px}.table-page.pro-table.table-focus .seat-metrics dd,.table-page.pro-table.table-focus .seat-metrics .seat-pips dd{font-size:13px}.table-page.pro-table.table-focus .turn-console{min-height:0;margin-bottom:0;padding:5px 7px;display:block}.table-page.pro-table.table-focus .turn-message,.table-page.pro-table.table-focus .turn-message>div{display:block}.table-page.pro-table.table-focus .turn-dot{display:none}.table-page.pro-table.table-focus .turn-message strong{font-size:12px}.table-page.pro-table.table-focus .turn-message p{min-height:0;margin:2px 0 0;font-size:11px;line-height:1.4;display:block}.table-page.pro-table.table-focus .dice-and-actions{flex-wrap:wrap;justify-content:flex-start}}@media (max-width:600px){.table-page.pro-table .pro-seats{gap:8px}.table-page.pro-table .pro-seats .player-seat{grid-template-columns:25px minmax(0,1fr) auto;gap:8px 5px;padding:9px 7px}.table-page.pro-table .pro-seats .player-avatar{width:25px;height:25px}.table-page.pro-table .pro-seats .seat-identity>strong{font-size:12px}.table-page.pro-table .pro-seats .seat-role{gap:3px;font-size:10px}.table-page.pro-table .pro-seats .seat-score{font-size:21px}.table-page.pro-table .pro-seats .seat-score small{font-size:10px}.table-page.pro-table .pro-seats .seat-metrics{gap:9px}.seat-metrics .seat-pips dd{font-size:19px}.seat-metrics dd{font-size:14px}.table-page.pro-table .pro-seats .player-clock{font-size:21px}.table-page.pro-table .pro-seats .seat-turn-status{font-size:10px}.table-page.pro-table .pro-seats[data-timed=true] .player-seat{grid-template-columns:25px minmax(0,1fr) auto}.table-page.pro-table .pro-seats[data-timed=true] .seat-metrics{flex-wrap:wrap;grid-area:2/1/auto/3}.table-page.pro-table .pro-seats[data-timed=true] .player-clock{grid-area:2/3;align-self:center}.table-page.pro-table .pro-seats[data-timed=true] .seat-metrics{gap:7px}.table-board-hud{gap:5px 12px;margin-bottom:6px;font-size:11px}.hud-cube strong{font-size:11px}.hud-cube span{max-width:115px}.hud-position-state{width:100%;margin-left:0;font-size:10px}.table-page.pro-table .board-actions button,.table-review-link{padding-inline:7px;font-size:11px}.table-page.pro-table .table-foot{flex-wrap:wrap;align-items:center;gap:0 12px;display:flex}.table-view-layout{grid-template-columns:1fr}.table-keyboard-help dl>div{grid-template-columns:120px 1fr;gap:8px}.table-keyboard-help dd{font-size:11px}.table-page.pro-table.table-focus{width:calc(100% - 16px);padding-top:8px}.table-page.pro-table.table-focus .table-title h1{font-size:20px}}@media (max-width:350px){.table-page.pro-table .pro-seats[data-timed=true] .player-clock{font-size:18px}.table-page.pro-table .pro-seats[data-timed=true] .seat-metrics{gap:5px}.table-page.pro-table .pro-seats[data-timed=true] .seat-metrics dd{font-size:12px}.table-page.pro-table .pro-seats[data-timed=true] .seat-pips dd{font-size:18px}}@media (min-width:901px) and (max-height:850px){.table-page.pro-table{padding-top:12px}.table-page.pro-table .table-heading{margin-bottom:12px}.table-page.pro-table .play-surface{padding:12px}.table-page.pro-table .pro-seats .player-seat{grid-template-columns:28px minmax(0,1fr) auto;gap:4px 8px;padding:7px 10px}.table-page.pro-table .pro-seats .player-avatar{width:28px;height:28px}.table-page.pro-table .pro-seats .seat-role{margin-top:1px}.table-page.pro-table .pro-seats .seat-metrics{align-items:center;gap:12px}.table-page.pro-table .seat-metrics>div{align-items:baseline;gap:5px;display:flex}.table-page.pro-table .seat-metrics dd,.table-page.pro-table .seat-metrics .seat-pips dd{font-size:17px}.table-page.pro-table .pro-seats .player-clock{font-size:22px}.table-page.pro-table .pro-seats .player-clock small{margin-left:5px;display:inline}.table-page.pro-table .turn-console{min-height:62px;margin-bottom:4px;padding:8px 12px}.table-page.pro-table .turn-message strong{font-size:14px}.table-page.pro-table .turn-message p{margin-top:3px;font-size:12px}.table-page.pro-table .table-board-hud{min-height:28px;margin-bottom:3px}.table-page.pro-table .board-actions{margin-top:5px;padding-top:0}.table-page.pro-table .table-foot{min-height:28px;margin-top:0}.table-page.pro-table .table-shortcut-help{min-height:28px}}.table-page.pro-table .turn-message p{max-width:none;min-height:2.9em}.table-page.pro-table .dice-and-actions:empty{display:none}.table-page.pro-table .seat-metrics>div{align-items:baseline;gap:4px;display:flex}.table-page.pro-table .seat-metrics dt{margin:0}.table-page.pro-table .seat-metrics dd,.table-page.pro-table .seat-metrics .seat-pips dd{font-size:16px}@media (max-width:900px){.table-page.pro-table{width:calc(100% - 16px);padding-top:4px}.table-page.pro-table .table-heading{margin-bottom:8px}.table-page.pro-table .table-toolbar{flex-wrap:nowrap;gap:4px;margin:0;display:flex}.table-page.pro-table .table-home-link{flex-shrink:0;gap:4px;font-size:12px}.table-page.pro-table .table-tools{flex-wrap:nowrap;flex:1;justify-content:flex-start;gap:0;min-width:0;overflow-x:auto}.table-page.pro-table .table-tools button{gap:5px;min-width:44px;padding-inline:8px;font-size:12px}.table-page.pro-table .table-tools .game-panel-toggle{position:relative}.table-page.pro-table .table-tools .game-panel-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.table-page.pro-table .table-title{gap:6px;margin:0 2px}.table-page.pro-table .table-title h1{font-size:18px}.table-page.pro-table .table-title>button{min-width:44px;height:44px;min-height:44px;margin-left:auto;font-size:11px}.table-page.pro-table .table-context{gap:5px 8px;margin:0 2px;font-size:11px}.table-page.pro-table .table-context-mode{padding-left:8px}.table-page.pro-table .play-surface{padding:8px 4px}.table-page.pro-table .match-players.pro-seats{gap:6px;margin:0 0 7px}.table-page.pro-table .pro-seats .player-seat{gap:5px;padding:7px}.table-page.pro-table .pro-seats .seat-metrics{gap:8px}.table-page.pro-table .pro-seats:not([data-timed=true]) .seat-metrics{grid-column:1/-1}.table-page.pro-table .pro-seats:not([data-timed=true]) .seat-turn-status{display:none}.table-page.pro-table .turn-console{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;min-height:0;margin:0 0 5px;padding:7px 9px;display:grid}.table-page.pro-table .turn-message,.table-page.pro-table .turn-message>div{display:contents}.table-page.pro-table .turn-dot{display:none}.table-page.pro-table .turn-message strong{grid-area:1/1;font-size:13px;line-height:1.35}.table-page.pro-table .turn-message p{grid-area:2/1/auto/-1;margin:0;font-size:12px;line-height:1.45}.table-page.pro-table .turn-message .playback-clock-notice{grid-area:3/1/auto/-1}.table-page.pro-table .dice-and-actions{flex-wrap:wrap;grid-area:1/2;justify-content:flex-end;gap:5px;min-width:0}.table-page.pro-table .turn-console:has(.dice-and-actions>button) .dice-and-actions{grid-area:4/1/auto/-1;justify-content:flex-start}.table-page.pro-table .table-board-hud{gap:3px 10px;min-height:26px;margin:0 2px 3px;padding:2px 0}.table-page.pro-table .hud-position-state{width:auto;margin-left:auto}.table-page.pro-table .board-actions{gap:0 6px;margin:0;padding-top:0}.table-page.pro-table.table-focus{padding-top:0}.table-page.pro-table.table-focus .table-title,.table-page.pro-table.table-focus .table-context{display:none}.table-page.pro-table.table-focus .table-heading{margin-bottom:3px}}@media (max-width:380px){.table-page.pro-table .table-tools button{padding-inline:5px;font-size:11px}.table-page.pro-table .expand-board-label{display:none}.table-page.pro-table .expand-board-short-label{display:inline}.table-page.pro-table .pro-seats[data-timed=true] .seat-metrics{flex-direction:column;gap:1px}}@media (min-width:901px){:root[data-theme] .app-shell:has(.pro-table)>.app-header{min-height:64px}.app-shell:has(.pro-table)>.app-header .header-inner{min-height:64px}.app-shell:has(.pro-table)>.app-header .brand-wordmark{width:180px;height:44px}.table-page.pro-table{padding-top:6px}.table-page.pro-table .table-heading{margin-bottom:8px}.table-page.pro-table .table-context{grid-column:1/-1;gap:8px 12px;padding-bottom:0;font-size:11px}.table-page.pro-table .table-tools{grid-row:1}.table-page.pro-table .match-players.pro-seats{margin-bottom:6px}.table-page.pro-table .pro-seats .player-seat{gap:4px 8px;padding:7px 10px}.table-page.pro-table .pro-seats[data-timed=true] .player-seat{grid-template-columns:28px minmax(0,1fr) auto auto}.table-page.pro-table .pro-seats[data-timed=true] .player-clock{grid-area:1/4/3;align-self:center;padding-left:6px;font-size:24px}.table-page.pro-table .pro-seats[data-timed=true] .seat-metrics{grid-column:1/4}.table-page.pro-table .turn-console{gap:12px;min-height:56px;margin-bottom:8px;padding:5px 10px}.table-page.pro-table .turn-message{align-items:center;gap:8px;min-width:0}.table-page.pro-table .turn-message>div{align-items:center;gap:12px;display:flex}.table-page.pro-table .turn-message strong{max-width:180px;font-size:13px;line-height:1.35}.table-page.pro-table .turn-message p{align-items:center;max-width:410px;margin:0;font-size:12px;line-height:1.45;display:flex}.table-page.pro-table .turn-dot{flex-shrink:0;margin-top:0}.table-page.pro-table .board-actions{margin-top:0;padding-top:0}.table-page.pro-table .table-board-hud{min-height:24px;margin:2px 2px 0;padding-block:0}}.lobby.lounge-lobby{box-sizing:border-box;margin:0 auto;align-self:center;width:min(1240px,100% - 64px);min-width:0;max-width:1240px;margin-inline:auto;padding:24px 0 64px;display:block}.lounge-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;display:flex}.club-kicker{color:var(--app-secondary);letter-spacing:.15em;text-transform:uppercase;margin-bottom:9px;font-size:10px;font-weight:750;line-height:1.4;display:block}.lounge-heading h1{letter-spacing:-.055em;margin:0;font-size:clamp(30px,3.2vw,42px);font-weight:700;line-height:1.12}.club-title-dot{color:var(--app-tertiary)}.lounge-heading p{color:var(--muted-foreground);margin:10px 0 0;font-size:14px;line-height:1.5}.lounge-new-button,.lounge-resume{background:var(--app-secondary);min-height:44px;color:var(--app-secondary-ink);white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:0 18px;font-size:13px;font-weight:650;text-decoration:none;transition:background .16s;display:inline-flex}.lounge-new-button{flex-shrink:0}.lounge-new-button:hover,.lounge-resume:hover{background:color-mix(in srgb, var(--app-secondary) 89%, var(--foreground))}.lounge-guest{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:7px;margin:-7px 0 19px;font-size:12px;display:flex}.lounge-guest>svg{flex-shrink:0}.lounge-guest button{min-height:44px;color:var(--app-link);text-underline-offset:3px;align-items:center;gap:3px;margin:-10px 0;padding:0 3px;font-size:12px;font-weight:650;text-decoration:underline;display:inline-flex}.club-session-strip{border-block:1px solid var(--border);align-items:center;gap:22px;min-height:48px;margin-bottom:20px;display:flex}.club-session-strip>button,.club-invite-count{min-height:44px;color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:inline-flex}.club-session-strip>button:hover{color:var(--foreground)}.club-session-strip>button[aria-pressed=true]{color:var(--app-secondary)}.club-invite-count{text-decoration:none}a.club-invite-count:hover{color:var(--foreground)}#lounge-invitations-heading{scroll-margin-top:100px}.club-session-strip strong{color:var(--foreground);font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.club-status-dot{background:var(--app-tertiary);border-radius:50%;width:6px;height:6px}.lounge-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:34px;min-width:0;display:grid}.lounge-game-column,.lounge-sidebar{min-width:0}.lounge-section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:25px;margin-bottom:15px;display:flex}.lounge-section-heading h2{letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.lounge-section-heading h2>span{min-width:21px;height:21px;color:var(--muted-foreground);background:var(--surface-soft);border-radius:4px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:500;display:inline-flex}.club-queue-count{color:var(--muted-foreground);font-size:11px}.club-queue-controls{margin-bottom:18px}.club-match-filters{border-bottom:1px solid var(--border);gap:20px;display:flex}.club-match-filters button{min-height:42px;color:var(--muted-foreground);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:0 0 10px;font-size:12px;font-weight:550;display:inline-flex}.club-match-filters button[aria-pressed=true]{border-bottom-color:var(--app-secondary);color:var(--foreground);font-weight:700}.club-match-filters button>span{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:10px}.club-queue-tools{gap:10px;margin-top:15px;display:flex}.club-match-search{border:1px solid var(--border);background:var(--card);min-width:0;min-height:42px;color:var(--muted-foreground);border-radius:6px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.club-match-search>svg{flex-shrink:0}.club-match-search input{width:100%;min-width:0;height:40px;color:var(--foreground);background:0 0;border:0;outline:0;font-size:13px}.club-match-search:focus-within{outline:2px solid var(--ring);outline-offset:2px}.club-search-clear{min-height:44px;color:var(--muted-foreground);flex:0 0 36px;place-items:center;margin-right:-10px;display:grid}.club-match-search input::-webkit-search-cancel-button{display:none}.club-match-order{max-width:170px}.club-match-order select{border:1px solid var(--border);background-color:var(--card);width:100%;min-height:42px;color:var(--foreground);border-radius:6px;padding:0 29px 0 10px;font-size:12px}.lounge-game-section+.lounge-invitations{margin-top:30px}.lounge-turn{max-width:100%;color:var(--muted-foreground);overflow-wrap:anywhere;align-items:center;gap:7px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.lounge-turn i{background:currentColor;border-radius:50%;flex:0 0 5px;width:5px;height:5px}.lounge-turn.is-ready{color:var(--app-secondary)}.club-match-clock{color:var(--muted-foreground);align-items:center;gap:5px;margin-top:6px;font-size:11px;line-height:1.5;display:inline-flex}.club-match-clock svg{flex-shrink:0}.lounge-score{color:var(--foreground);white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:7px;display:inline-flex}.lounge-score strong{letter-spacing:-.025em;font-size:20px;font-weight:650;line-height:1}.lounge-score>span{color:var(--muted-foreground);font-size:12px}.lounge-resume{min-height:42px;padding:0 13px;font-size:12px}.club-review-link{min-height:44px;color:var(--app-link);text-underline-offset:3px;align-items:center;font-size:12px;text-decoration:underline;display:inline-flex}.lounge-match-list{border:1px solid var(--border);background:var(--card);border-radius:8px;gap:0;display:grid;overflow:hidden}.lounge-saved-row{align-items:center;min-width:0;padding-right:16px;display:flex}.lounge-saved-row+.lounge-saved-row{border-top:1px solid var(--border)}.lounge-saved-row>.club-review-link{flex-shrink:0;padding-inline:5px}.lounge-saved-game{text-align:left;min-width:0;min-height:108px;color:var(--foreground);background:0 0;flex:1;grid-template-columns:auto minmax(0,1fr) minmax(60px,auto) 47px 16px;align-items:center;gap:12px;padding:17px;text-decoration:none;transition:background .15s;display:grid}.lounge-saved-game:hover{background:var(--surface-soft)}.lounge-saved-game>.player-avatar{width:34px;height:34px}.lounge-saved-info{min-width:0;display:block}.lounge-saved-info>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;display:block;overflow:hidden}.lounge-saved-info>small{color:var(--muted-foreground);overflow-wrap:anywhere;margin-top:4px;font-size:11px;line-height:1.4;display:block}.lounge-saved-info>small.club-match-clock{display:flex}.lounge-saved-info>small>span{margin:0 3px}.lounge-saved-info time{color:var(--muted-foreground);margin-top:5px;font-size:10px;line-height:1.3;display:block}.lounge-saved-game>svg:last-child{color:var(--app-link)}.lounge-empty{min-height:275px;color:var(--muted-foreground);border:1px solid var(--border);background:var(--card);border-radius:9px;flex-direction:column;justify-content:center;align-items:flex-start;padding:34px;display:flex}.lounge-empty>svg{color:var(--app-secondary);margin-bottom:20px}.lounge-empty h3{color:var(--foreground);letter-spacing:-.035em;margin:0;font-size:24px;font-weight:650}.lounge-empty p{max-width:390px;margin:10px 0 0;font-size:13px;line-height:1.6}.lounge-empty button{margin-top:20px}.club-text-button{min-height:44px;color:var(--app-link);text-underline-offset:3px;align-items:center;gap:6px;font-size:13px;text-decoration:underline;display:inline-flex}.lounge-play-choices{border:1px solid var(--border);background:var(--card);border-radius:8px;margin-bottom:20px;display:grid;overflow:hidden}.lounge-play-choices>button{text-align:left;min-width:0;min-height:76px;color:var(--foreground);background:0 0;align-items:center;gap:11px;padding:17px 15px;transition:background .15s;display:flex}.lounge-play-choices>button+button{border-top:1px solid var(--border)}.lounge-play-choices>button:hover{background:var(--surface-soft)}.lounge-play-choices>button>span:not(.player-avatar):not(.lounge-play-icon){flex:1;min-width:0}.lounge-play-choices strong{font-size:14px;font-weight:650;line-height:1.35;display:block}.lounge-play-choices small{color:var(--muted-foreground);margin-top:4px;font-size:11px;line-height:1.4;display:block}.lounge-play-choices>button>svg:last-child{width:14px;color:var(--muted-foreground);flex-shrink:0}.lounge-play-icon,.lounge-play-choices .player-avatar{width:34px;height:34px;color:var(--app-secondary);background:var(--app-secondary-surface);border-radius:50%;flex:0 0 34px;place-items:center;display:grid}.lounge-play-icon.friend-icon{color:var(--app-tertiary);background:var(--app-tertiary-surface)}.lounge-play-icon.local-icon{background:var(--surface-soft);color:var(--muted-foreground)}.club-player-card{border-block:1px solid var(--border);padding:18px 0}.club-player-identity{align-items:center;gap:11px;display:flex}.club-player-identity>span{min-width:0}.club-player-identity strong{overflow-wrap:anywhere;font-size:14px;display:block}.club-player-identity small{color:var(--muted-foreground);overflow-wrap:anywhere;margin-top:3px;font-size:11px;display:block}.club-player-record{grid-template-columns:1fr 1fr;gap:12px;padding:18px 0 6px;display:grid}.club-player-record>span{color:var(--muted-foreground);font-size:11px}.club-player-record strong{color:var(--foreground);letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:24px;font-weight:650;display:block}.club-player-card>a{min-height:40px;color:var(--app-link);justify-content:space-between;align-items:center;font-size:12px;text-decoration:none;display:flex}.club-learn-link{color:var(--foreground);align-items:center;gap:11px;padding:20px 0;text-decoration:none;display:flex}.club-learn-link>svg{color:var(--app-secondary);flex-shrink:0}.club-learn-link>span{flex:1}.club-learn-link strong{font-size:13px;display:block}.club-learn-link small{color:var(--muted-foreground);margin-top:4px;font-size:11px;display:block}.club-learn-link:hover strong,.club-player-card>a:hover{text-underline-offset:3px;text-decoration:underline}.lounge-companion{border:1px solid var(--border);background:color-mix(in srgb, var(--app-secondary-surface) 30%, var(--card));border-radius:9px;width:100%;min-width:0;min-height:240px;position:relative;overflow:clip}.lounge-companion .island-stage{width:100%;min-width:0;max-width:100%;height:240px;min-height:0;margin:0}.lounge-companion .island-playground,.lounge-companion .island-canvas,.lounge-companion .island-canvas canvas{width:100%;min-width:0;max-width:100%}.lounge-companion .island-canvas{-webkit-mask-image:none;mask-image:none}.lounge-companion .island-scene-controls{gap:6px;max-width:calc(100% - 14px);bottom:8px}.lounge-companion .island-scene-controls button{background:var(--card);border-color:var(--border);min-height:34px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:6px;gap:5px;padding:0 8px;font-size:10px}.lounge-companion .scene-roll-result{padding-left:5px}.lounge-invitation-list{gap:8px;display:grid}.lounge-invitation{text-align:left;min-width:0;color:var(--foreground);background:var(--card);border:1px solid var(--border);border-left:3px solid var(--app-tertiary);border-radius:7px;align-items:center;gap:12px;padding:16px;text-decoration:none;display:flex}.lounge-invitation:hover{background:var(--surface-soft)}.lounge-invitation>.player-avatar{width:34px;height:34px}.lounge-invitation>span:not(.player-avatar){flex:1;min-width:0}.lounge-invitation strong{overflow-wrap:anywhere;font-size:14px;font-weight:650;display:block}.lounge-invitation small{color:var(--muted-foreground);overflow-wrap:anywhere;margin-top:4px;font-size:11px;line-height:1.4;display:block}.lounge-invitation small.club-invitation-terms{align-items:center;gap:5px;display:flex}.lounge-invitation>svg{color:var(--app-secondary);flex-shrink:0}.club-record-history-note{color:var(--muted-foreground);margin:-3px 0 18px;font-size:12px}.lounge-lobby :is(button,a,select):focus-visible{outline:3px solid var(--app-link);outline-offset:3px}.lounge-play-choices>button:focus-visible{outline-offset:-3px}.lounge-saved-game:focus-visible{outline-offset:-3px}.lounge-lobby.record-page .lounge-game-section{margin-top:30px}@media (prefers-reduced-motion:no-preference){.lounge-play-choices>button>svg:last-child,.lounge-resume>svg{transition:transform .18s}.lounge-play-choices>button:is(:hover,:focus-visible)>svg:last-child,.lounge-resume:is(:hover,:focus-visible)>svg{transform:translate(3px)}}@media (max-width:1100px){.lounge-layout{grid-template-columns:minmax(0,1fr) 252px;gap:24px}.lounge-saved-game{grid-template-columns:auto minmax(0,1fr) auto;gap:9px}.lounge-saved-game>.lounge-turn{grid-area:2/2}.lounge-saved-game>.lounge-score{grid-area:1/3/3}.lounge-saved-game>.player-avatar{grid-row:1/3}.lounge-saved-game>svg:last-child{display:none}}@media (max-width:900px){.lounge-layout{grid-template-columns:minmax(0,1fr);gap:34px}.lounge-sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 26px;display:grid}.lounge-sidebar>.lounge-section-heading{grid-column:1/-1}.lounge-play-choices{grid-area:2/1/4;margin-bottom:0}.club-player-card{border-top:0;grid-area:2/2;padding-top:0}.club-learn-link{grid-area:3/2}.lounge-companion{grid-column:1/-1;max-width:340px;margin-top:24px}}@media (max-width:600px){.lobby.lounge-lobby{width:calc(100% - 36px);margin-inline:auto;padding:24px 0 44px}.lounge-heading{align-items:flex-start;gap:12px;margin-bottom:20px}.club-kicker{margin-bottom:8px;font-size:9px}.lounge-heading h1{font-size:30px}.lounge-heading p{max-width:240px;margin-top:8px;font-size:12px}.lounge-new-button{gap:5px;min-height:44px;margin-top:17px;padding:0 10px;font-size:11px}.lounge-new-button>svg{width:14px}.lounge-guest{gap:4px 6px;margin-bottom:18px;font-size:11px;line-height:1.5}.lounge-guest button{font-size:11px}.club-session-strip{flex-wrap:wrap;gap:14px;margin-bottom:24px;padding-block:2px}.club-session-strip>button,.club-invite-count{gap:5px;font-size:10px}.club-session-strip strong{font-size:14px}.club-invite-count>svg{display:none}.club-match-filters{justify-content:space-between;gap:0}.club-match-filters button{gap:4px;font-size:11px}.club-match-filters button>span{font-size:9px}.club-queue-tools{gap:7px}.club-match-order{flex-shrink:0;width:132px}.club-match-order select{padding-left:8px;padding-right:18px;font-size:11px}.club-match-search{padding-inline:9px}.club-match-search input{font-size:16px}.club-match-search input::placeholder{font-size:11px}.lounge-resume{min-height:44px}.lounge-saved-row{padding:0 0 33px;position:relative}.lounge-saved-row>.club-review-link{position:absolute;bottom:0;right:15px}.lounge-saved-game{gap:7px 10px;padding:16px}.lounge-saved-info{grid-area:1/2}.lounge-saved-game>.lounge-turn{font-size:10px}.lounge-sidebar{display:block}.lounge-play-choices{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}.lounge-play-choices>button{gap:8px;min-height:88px;padding:13px 11px}.lounge-play-choices>button:nth-child(2){border-top:0}.lounge-play-choices>button:nth-child(2n){border-left:1px solid var(--border)}.lounge-play-choices>button>svg:last-child{display:none}.lounge-play-choices strong{font-size:13px}.lounge-play-choices small{font-size:11px}.lounge-play-icon,.lounge-play-choices .player-avatar{flex-basis:28px;width:28px;height:28px}.lounge-play-icon svg{width:17px}.club-player-card{border-top:1px solid var(--border);padding-top:20px}.club-player-record{grid-template-columns:1fr 1fr}.lounge-companion{width:100%;max-width:340px;margin-top:0}.lounge-empty{min-height:254px;padding:26px}.lounge-empty h3{font-size:23px}}@media (max-width:360px){.lounge-heading h1{font-size:27px}.club-match-filters button{font-size:10px}.club-match-filters button>span{display:none}.club-session-strip{gap:10px}.club-match-order{width:116px}}@media (prefers-reduced-motion:reduce){.lounge-lobby :is(button,a){transition:none}}.club-section-notice{border-left:3px solid var(--app-tertiary);color:var(--foreground);background:var(--app-tertiary-surface);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-block:12px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.club-section-notice>span{overflow-wrap:anywhere;flex:180px}.club-section-notice button{min-height:44px;color:var(--app-link);align-items:center;gap:6px;font-weight:600;display:inline-flex}.lounge-queue-loading{min-height:150px;color:var(--muted-foreground);border-block:1px solid var(--border);align-items:center;gap:10px;padding:24px;font-size:14px;display:flex}.club-load-more{border:1px solid var(--border);width:100%;min-height:48px;color:var(--app-link);background:var(--card);border-radius:8px;justify-content:center;align-items:center;gap:10px;margin-top:12px;font-size:13px;font-weight:600;display:flex}.club-load-more:disabled{opacity:.6}.lounge-saved-row.is-ready{border-left:3px solid var(--app-secondary)}.lounge-saved-row.is-ready .lounge-saved-info>strong{color:var(--foreground)}.lounge-match-list .lounge-turn{text-align:end;max-width:150px;line-height:1.4}@media (max-width:600px){.lounge-queue-loading{min-height:110px;padding:20px}.lounge-match-list .lounge-turn{text-align:start;max-width:none}.lounge-saved-row{padding-right:10px}}.lounge-start-section .lounge-play-choices{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:4px}.lounge-start-section .lounge-play-choices>button{min-height:104px;padding:20px 16px}.lounge-start-section .lounge-play-choices>button:nth-child(2){border-top:0}.lounge-start-section .lounge-play-choices>button:nth-child(2n){border-left:1px solid var(--border)}.lounge-invitations+.lounge-start-section,.lounge-start-section+.lounge-game-section{margin-top:24px}@media (max-width:600px){.lounge-start-section .lounge-play-choices>button{min-height:104px;padding:14px 11px}}.clock-setup{border:0;border-top:1px solid var(--border);gap:12px;min-width:0;margin:10px 0 0;padding:16px 0 0;display:grid}.clock-setup legend{color:var(--foreground);padding:0 8px 0 0;font-size:14px;font-weight:600}.clock-scope-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.clock-scope-options button{border:1px solid var(--border);background:var(--card);min-height:44px;color:var(--foreground);border-radius:10px;padding:8px;font-size:13px;font-weight:600}.clock-scope-options button[aria-pressed=true]{border-color:var(--teal);background:var(--surface-soft);box-shadow:inset 0 0 0 1px var(--teal)}.clock-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.clock-values label{min-width:0;color:var(--foreground);align-content:start;gap:8px;font-size:13px;font-weight:600;display:grid}.clock-values input{width:100%}.clock-setup-summary{color:var(--teal);font-size:13px;font-weight:600}.invitation-clock{border:1px solid var(--border);background:var(--surface-soft);color:var(--foreground);border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.invitation-clock>svg{color:var(--teal);flex-shrink:0;margin-top:1px}.invitation-clock strong{font-size:14px;line-height:1.5;display:block}.invitation-clock p{color:var(--muted-foreground);margin-top:5px;font-size:13px;line-height:1.5}.invitation-preview .invitation-clock{margin-top:14px}@media (max-width:370px){.clock-values{grid-template-columns:minmax(0,1fr)}}.invitation-page{gap:14px;width:min(650px,100% - 40px);margin:28px auto 56px}.flow-back-link{min-height:44px;color:var(--muted-foreground);justify-self:start;align-items:center;gap:8px;font-size:14px;font-weight:550;text-decoration:none;display:inline-flex}.flow-back-link:hover,.invitation-error a:hover{color:var(--foreground);text-underline-offset:4px;text-decoration:underline}.flow-back-link:focus-visible{outline:2px solid var(--ring);outline-offset:4px;border-radius:4px}.invitation-open-link:focus-visible{outline:2px solid var(--ring);outline-offset:4px;border-radius:4px}.invitation-error a:focus-visible{outline:2px solid var(--ring);outline-offset:4px;border-radius:4px}.flow-back-link[aria-disabled=true]{opacity:.5;cursor:wait}.invitation-page .invitation-card{border:1px solid var(--border);background:var(--card);box-shadow:0 2px 10px color-mix(in srgb, var(--foreground) 3%, transparent);border-radius:14px;gap:20px;padding:28px}.invitation-page .invitation-host{border-bottom:1px solid var(--border);align-items:flex-start;padding-bottom:20px}.invitation-page .invitation-host .large-avatar{flex:none;width:52px;height:52px}.invitation-host h1{color:var(--foreground);letter-spacing:-.035em;overflow-wrap:anywhere;margin:4px 0 6px;font-size:clamp(23px,3vw,29px);font-weight:650;line-height:1.2}.invitation-page .invitation-host>div>span,.invitation-page .invitation-host p{font-size:13px;line-height:1.5}.invitation-page .invitation-clock{background:0 0;border:0;border-radius:0;padding:0}.invitation-page .invitation-clock strong{font-size:14px;font-weight:600}.invitation-instruction,.invitation-join p{color:var(--foreground);margin:0;font-size:15px;line-height:1.55}.invitation-page .invitation-card .field-label{margin-bottom:-10px;font-size:13px;font-weight:600}.invitation-page .invitation-link{gap:8px;display:flex}.invitation-page .invitation-link input{background:var(--app-input,var(--card));border-radius:8px;height:46px;min-height:46px;font-size:16px}.invitation-page .field-help{font-size:13px;line-height:1.55}.invitation-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:14px;display:flex}.invitation-page .invitation-wait{color:var(--muted-foreground);background:0 0;border-radius:0;justify-content:flex-start;gap:8px;padding:0;font-size:13px;display:flex}.invitation-page .invitation-cancel{min-height:44px;color:var(--muted-foreground);padding-inline:8px;font-size:13px}.invitation-page .invitation-return-note{margin-top:-12px}.invitation-state{color:var(--foreground);align-items:center;gap:10px;margin:0;font-size:16px;display:flex}.invitation-state svg{color:var(--primary);flex:none}.invitation-join,.invitation-ended,.invitation-error{gap:14px;display:grid}.invitation-ended strong{font-size:18px;font-weight:600}.invitation-ended p{color:var(--muted-foreground);margin:0;font-size:14px;line-height:1.55}.invitation-open-link{min-height:46px;color:var(--primary-ink);background:var(--primary);border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:12px 18px;font-size:14px;font-weight:650;text-decoration:none;display:inline-flex}.invitation-open-link:hover{filter:brightness(.94)}.invitation-error a{min-height:44px;color:var(--primary);text-underline-offset:4px;align-content:center;justify-self:start;font-size:14px}@media (max-width:520px){.invitation-page{width:calc(100% - 28px);margin-top:16px}.invitation-page .invitation-card{gap:18px;padding:20px 18px}.invitation-page .invitation-host{gap:12px;padding-bottom:18px}.invitation-page .invitation-link{flex-direction:column}}.invitation-loading{text-align:center;min-height:220px;color:var(--muted-foreground);align-content:center;justify-items:center;gap:12px;font-size:13px;display:grid}.invitation-loading>svg{color:var(--app-secondary)}.invitation-loading strong{color:var(--foreground);font-size:17px}.invitation-page .invitation-share-link{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.invitation-share-actions{gap:8px;display:flex}.invitation-share-actions>button{min-width:112px;min-height:46px}.invitation-page .invitation-copy-feedback{min-height:20px;color:var(--app-secondary);margin-block:-12px;font-size:12px}.invitation-error>button{justify-self:start;min-height:44px}.invitation-play-exit{margin-block:4px 12px}.invitation-page .invitation-card:has(.invitation-loading){min-height:280px}@media (max-width:520px){.invitation-share-actions>button{flex:1;min-width:0}}.invitation-recipient{border-block:1px solid var(--border);align-items:center;gap:12px;margin-block:16px;padding:14px 0;display:flex}.invitation-recipient>span{gap:4px;min-width:0;display:grid}.invitation-recipient strong{color:var(--muted-foreground);font-size:12px;font-weight:500}.invitation-recipient>span>span{color:var(--foreground);overflow-wrap:anywhere;font-size:14px}.invitation-offline{border:1px solid var(--border);background:var(--app-secondary-surface);color:var(--foreground);border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.5}.invitation-page .invitation-host>div{min-width:0}.invitation-host>div>span,.invitation-clock>div,.invitation-wait>span{overflow-wrap:anywhere;min-width:0}.invitation-clock>svg,.invitation-wait>svg{flex-shrink:0}.game-dialog.play-menu{border:1px solid var(--border);background:var(--card);border-radius:10px;flex-direction:column;gap:0;width:600px;max-height:min(820px,100dvh - 32px);padding:0;display:flex;overflow:hidden;max-width:min(600px,100vw - 24px)!important}.game-dialog.play-menu [data-slot=dialog-header]{border-top:3px solid var(--app-secondary);flex:none;padding:24px 58px 18px 24px}.play-menu-eyebrow{color:var(--app-secondary);letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px;font-size:10px;font-weight:700;display:block}.play-menu [data-slot=dialog-title]{letter-spacing:-.025em;font-size:29px;line-height:1.2}.play-menu [data-slot=dialog-description]{font-size:13px;line-height:1.5}.play-menu-body{overscroll-behavior:contain;gap:20px;min-height:0;padding:0 24px 24px;scroll-padding-block:16px;display:grid;overflow-y:auto}.play-menu button{min-height:44px}.play-menu button:disabled{cursor:not-allowed;opacity:.5}.play-menu-modes,.play-menu-friend-options{border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;min-width:0;margin:0;padding:0;display:grid}.game-dialog.play-menu .play-menu-modes{border-bottom:1px solid var(--border);padding-bottom:8px}.game-dialog.play-menu .play-menu-modes button{color:var(--muted-foreground);box-shadow:none;white-space:nowrap;background:0 0;border:0;border-radius:8px;flex-direction:column;gap:5px;padding:9px 3px;font-size:13px}.game-dialog.play-menu .play-menu-modes button[aria-pressed=true]{color:var(--foreground);background:var(--app-canvas,var(--surface-soft));box-shadow:inset 0 -2px var(--primary)}.play-menu-modes button svg{width:17px;height:17px}.play-menu-friend,.play-menu-search,.play-menu-open{gap:12px;min-width:0;display:grid}.play-menu-friend-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.game-dialog.play-menu .play-menu-friend-options button{border:1px solid var(--border);background:var(--card);color:var(--foreground);white-space:normal;border-radius:8px;padding:9px 10px;font-size:13px}.game-dialog.play-menu .play-menu-friend-options button[aria-pressed=true]{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 5%, var(--card));box-shadow:inset 0 0 0 1px var(--primary)}.play-menu-help,.play-menu-opponent p{color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.55}.play-menu-opponent{border-left:3px solid var(--app-secondary);background:var(--app-secondary-surface);align-items:center;gap:12px;padding:15px;display:flex}.play-menu-opponent .large-avatar{flex:none;width:48px;height:48px}.play-menu-opponent strong{font-size:16px;font-weight:650}.play-menu-opponent p{margin-top:3px}.play-menu-search label,.play-menu-lengths legend{color:var(--foreground);font-size:14px;font-weight:600}.game-dialog.play-menu input{background:var(--app-input,var(--card));border-radius:8px;min-height:44px;font-size:16px}.play-menu-search-status{color:var(--muted-foreground);font-size:13px}.play-menu-search-status:empty{display:none}.play-menu-player-list,.play-menu-open-list{overscroll-behavior:contain;gap:0;max-height:260px;margin:0;padding:3px;list-style:none;display:grid;overflow-y:auto}.game-dialog.play-menu .play-menu-player-row{border:0;border-bottom:1px solid var(--border);background:var(--card);width:100%;min-width:0;min-height:66px;color:var(--foreground);text-align:left;border-radius:0;align-items:center;gap:12px;padding:12px 4px;display:flex}.game-dialog.play-menu button.play-menu-player-row:hover,.game-dialog.play-menu .play-menu-selected{background:var(--app-canvas,var(--surface-soft))}.play-menu-player-row>svg,.play-menu-player-row>button{flex-shrink:0}.play-menu-person{overflow-wrap:anywhere;flex:1;gap:3px;min-width:0;display:grid}.play-menu-person strong{font-size:14px;line-height:1.4}.play-menu-person>span{color:var(--muted-foreground);font-size:12px;line-height:1.4}.play-menu-pagination,.play-menu-list-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.play-menu-pagination>span{color:var(--muted-foreground);font-size:12px}.play-menu-list-heading h2{margin:0;font-size:16px;font-weight:650}.play-menu-browse{justify-self:start}.play-menu .play-menu-setup{gap:12px}.play-menu-presets{border:0;min-width:0;margin:0 0 9px;padding:0}.play-menu-presets legend{width:100%;color:var(--foreground);align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:650;display:flex}.play-menu-presets legend>span{color:var(--muted-foreground);margin-left:auto;font-size:11px;font-weight:500}.play-menu-preset-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.play-menu-preset-options button{border:1px solid var(--border);background:var(--app-canvas);min-width:0;min-height:96px;color:var(--foreground);text-align:left;border-radius:6px;flex-direction:column;align-items:stretch;gap:7px;padding:13px 11px;display:flex}.play-menu-preset-options button[aria-pressed=true]{border-color:var(--app-secondary);background:var(--app-secondary-surface);box-shadow:inset 0 2px var(--app-secondary)}.play-menu-preset-title{justify-content:space-between;align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.play-menu-preset-title svg{color:var(--app-secondary);flex-shrink:0}.play-menu-preset-options button>span:not(.play-menu-preset-title){color:var(--muted-foreground);font-size:11px;line-height:1.4}.play-menu-preset-options small{color:var(--muted-foreground);margin-top:auto;font-size:9px;line-height:1.4}.play-menu-terms{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:5px 12px;font-size:11px;display:flex}.play-menu-terms strong{color:var(--foreground);font-weight:650}.play-menu-terms small{flex-basis:100%;font-size:10px}.play-menu-lengths{border:0;min-width:0;margin:8px 0 0;padding:0}.play-menu-lengths legend{margin-bottom:9px}.play-menu-lengths .match-lengths{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.play-menu-lengths .match-lengths button{border-radius:8px}.play-menu-rule-summary{color:var(--muted-foreground);margin:-7px 0 2px;font-size:12px;line-height:1.6}.play-menu-customization{border-block:1px solid var(--border);min-width:0}.play-menu-customization>summary{cursor:pointer;min-height:50px;color:var(--foreground);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 2px;font-size:13px;font-weight:650;list-style:none;display:flex}.play-menu-customization>summary::-webkit-details-marker{display:none}.play-menu-customization>summary small{color:var(--muted-foreground);font-size:11px;font-weight:400}.play-menu-customization>summary:after{content:"+";color:var(--app-secondary);margin-left:auto;font-size:19px;font-weight:400}.play-menu-customization[open]>summary:after{content:"−"}.play-menu-customization>summary:focus-visible{outline:2px solid var(--ring);outline-offset:-2px;border-radius:4px}.play-menu-custom-fields{gap:12px;padding:5px 2px 18px;display:grid}.play-menu-custom-fields>label,.play-menu .clock-setup legend{color:var(--foreground);font-size:14px;font-weight:600}.play-menu .clock-setup{margin-top:8px;padding-top:14px}.play-menu .clock-setup legend{clip-path:none;width:auto;height:auto;position:static}.play-menu-ready-format{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.play-menu-ready-format svg{flex-shrink:0}.play-menu-terms>strong{overflow-wrap:anywhere;max-width:100%}@media (prefers-reduced-motion:no-preference){.play-menu button{transition:background-color .15s,border-color .15s,box-shadow .15s}.play-menu-modes button svg,.play-menu-submit-row .primary-button>svg{transition:transform .16s}.play-menu-modes button[aria-pressed=true] svg{transform:translateY(-1px)}.play-menu-submit-row .primary-button:hover>svg{transform:translate(3px)}}.game-dialog.play-menu .play-menu-footer{border-top:1px solid var(--border);background:var(--card);flex:none;gap:12px;padding:16px 24px;display:grid}.play-menu-submit-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.play-menu-submit-row .primary-button{white-space:normal;text-align:center;min-width:0;line-height:1.35}@media (max-width:520px){.game-dialog.play-menu .play-menu-modes button{white-space:normal;text-align:center;min-height:62px;font-size:12px;line-height:1.2}.game-dialog.play-menu{max-height:calc(100dvh - 20px)}.game-dialog.play-menu [data-slot=dialog-header]{padding:20px 52px 14px 18px}.play-menu-body{padding-inline:18px;gap:16px;padding-bottom:18px}.game-dialog.play-menu .play-menu-footer{padding:12px 18px max(12px, env(safe-area-inset-bottom))}.play-menu-player-row{gap:8px}.play-menu-lengths .match-lengths{gap:4px}.play-menu-preset-options{gap:5px}.play-menu-preset-options button{min-height:105px;padding:12px 8px}.play-menu-preset-title{font-size:11px}.play-menu-preset-options button>span:not(.play-menu-preset-title){font-size:10px}}@media (max-width:350px){.play-menu-lengths .match-lengths{grid-template-columns:repeat(3,minmax(0,1fr))}.game-dialog.play-menu .play-menu-modes button{font-size:12px}}.play-menu-pending{border:1px solid var(--border);border-left:3px solid var(--app-secondary);background:var(--app-secondary-surface);color:var(--foreground);border-radius:8px;margin-bottom:18px;padding:16px}.play-menu-pending strong{font-size:14px}.play-menu-pending p{margin:8px 0 12px;font-size:13px;line-height:1.6}.site-footer{--footer-surface:color-mix(in srgb, var(--app-secondary) 6%, var(--app-canvas));width:100%;padding:18px var(--page-gutter) 10px;background:var(--footer-surface) url(/art/paper-grain.svg) repeat;color:var(--muted-foreground);flex:none;margin-top:26px;position:relative}.footer-shoreline{pointer-events:none;width:100%;height:27px;position:absolute;inset:-26px 0 auto}.footer-tide{fill:var(--app-secondary);opacity:.09}.footer-water{fill:var(--footer-surface)}.footer-inner{width:min(var(--page-width), 100%);margin-inline:auto}.footer-main,.footer-bottom{justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.footer-main{padding-bottom:14px}.footer-brand{flex-shrink:0;align-items:center;min-height:44px;display:inline-flex}.footer-brand .brand-wordmark{width:158px;height:39px;display:block}.site-footer nav{flex-wrap:wrap;align-items:center;gap:4px 28px;display:flex}.site-footer nav a,.site-footer nav button,.footer-back-top{min-width:44px;min-height:44px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.site-footer nav a:hover,.site-footer nav button:hover,.footer-back-top:hover{color:var(--foreground);text-underline-offset:4px;text-decoration:underline}.footer-bottom{border-top:1px solid var(--border);padding-top:5px}.footer-bottom small{font-size:11px}.footer-back-top{gap:7px;font-size:11px}@media (max-width:600px){.site-footer{padding-inline:18px}.footer-main{flex-direction:column;align-items:flex-start;gap:6px;padding-bottom:10px}.site-footer nav{gap:4px 26px}}:root[data-theme=island]{--app-water:#5bc8c5;--app-paper:#fffefa;--app-ink:#163f45;--app-muted:#284e53;--app-soft:#e3f3ed;--app-accent:#f28c70;--app-accent-ink:#30271f;--app-secondary:#104e57;--app-secondary-ink:#fff;--app-secondary-surface:#d9f0ed;--app-tertiary:#914632;--app-tertiary-surface:#fce4d5;--app-link:#104e57;--app-border:#c1ddd6;--app-input:#fff;--app-ready:#fce4d5;--app-complete:#e3f1cd;--app-light-seat:#fff6db;--app-dark-seat:#dcf1ec;--app-glow-a:#ffdfb16b;--app-glow-b:#c8efec80;--app-glow-c:#f5c3aa60;--app-danger:#a14135;--app-danger-surface:#fff0e9;--app-shadow:#164b4c50;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=sunshine]{--app-water:#f5dc76;--app-paper:#fffcf1;--app-ink:#4b3a19;--app-muted:#665235;--app-soft:#e3eef2;--app-accent:#f5ba39;--app-accent-ink:#3f2d0b;--app-secondary:#275d7d;--app-secondary-ink:#fff;--app-secondary-surface:#dcebf2;--app-tertiary:#914329;--app-tertiary-surface:#f7dfce;--app-link:#285b7b;--app-border:#dccb8a;--app-input:#fffef9;--app-ready:#f7dfce;--app-complete:#eaf1cd;--app-light-seat:#fff3cb;--app-dark-seat:#dcebf2;--app-glow-a:#fff8d6a0;--app-glow-b:#afd5ed80;--app-glow-c:#f0b69a66;--app-danger:#9a3f29;--app-danger-surface:#fff0df;--app-shadow:#85622b3b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=moonlight]{--app-water:#101c30;--app-paper:#1c2a40;--app-ink:#eaf1ff;--app-muted:#b0c0d6;--app-soft:#29374b;--app-accent:#e7b477;--app-accent-ink:#251b1b;--app-secondary:#8bddce;--app-secondary-ink:#142d30;--app-secondary-surface:#233e45;--app-tertiary:#cbb6f0;--app-tertiary-surface:#3c314e;--app-link:#7bdad2;--app-border:#3e536c;--app-input:#142237;--app-ready:#3c314e;--app-complete:#1d413d;--app-light-seat:#38334d;--app-dark-seat:#233e45;--app-glow-a:#4d356f55;--app-glow-b:#1e695d44;--app-glow-c:#6b4e3540;--app-danger:#ffa99a;--app-danger-surface:#432c36;--app-shadow:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=floral]{--app-water:#f1c7d8;--app-paper:#fff7fb;--app-ink:#553448;--app-muted:#694153;--app-soft:#e8eee1;--app-accent:#754363;--app-accent-ink:#fff;--app-secondary:#345237;--app-secondary-ink:#fff;--app-secondary-surface:#e3ebdb;--app-tertiary:#804358;--app-tertiary-surface:#f5dde5;--app-link:#63364f;--app-border:#e4bfd0;--app-input:#fffcfd;--app-ready:#f5dde5;--app-complete:#e6eee1;--app-light-seat:#fae7ec;--app-dark-seat:#e3ebdb;--app-glow-a:#fff0d9a0;--app-glow-b:#c5dabc80;--app-glow-c:#bc93be44;--app-danger:#a13c4d;--app-danger-surface:#fce5e9;--app-shadow:#7b435c40;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=professional]{--app-water:#e4e7e7;--app-paper:#fcfaf5;--app-ink:#1e314b;--app-muted:#4d5e75;--app-soft:#e5eeeb;--app-accent:#2c537d;--app-accent-ink:#fff;--app-secondary:#356760;--app-secondary-ink:#fff;--app-secondary-surface:#e1ece7;--app-tertiary:#795b2b;--app-tertiary-surface:#eee6d5;--app-link:#2d587e;--app-border:#c9d3e0;--app-input:#fff;--app-ready:#eee6d5;--app-complete:#e4eee9;--app-light-seat:#f3ecdf;--app-dark-seat:#e1ece7;--app-glow-a:#f2e5c870;--app-glow-b:#c9ddd460;--app-glow-c:#c2ccd140;--app-danger:#a13c42;--app-danger-surface:#fcebed;--app-shadow:#283d562b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme]{--lagoon-water:var(--app-water);--lagoon-paper:var(--app-paper);--lagoon-ink:var(--app-ink);--lagoon-muted:var(--app-muted);--lagoon-accent:var(--app-accent);--background:var(--app-water);--foreground:var(--app-ink);--muted-foreground:var(--app-muted);--card:var(--app-paper);--surface-soft:var(--app-soft);--primary:var(--app-accent);--primary-ink:var(--app-accent-ink);--teal:var(--app-link);--border:var(--app-border);--danger:var(--app-danger);--destructive:var(--danger);--ring:var(--teal);--overlay:color-mix(in srgb, var(--app-ink) 40%, transparent);--shadow:0 12px 36px -20px var(--app-shadow)}[data-theme] .app-shell{background:radial-gradient(ellipse at 0% 40%, var(--app-glow-a), transparent 50%), radial-gradient(ellipse at 100% 15%, var(--app-glow-b), transparent 50%), linear-gradient(165deg, transparent 55%, var(--app-glow-c)), var(--background)}[data-theme] .app-header{background:color-mix(in srgb, var(--app-secondary-surface) 78%, var(--card));border-bottom-color:color-mix(in srgb, var(--app-secondary) 28%, var(--border))}[data-theme] .app-header nav,[data-theme] .tables-heading h2 span,[data-theme] .island-scene-controls button{background:color-mix(in srgb, var(--card) 48%, transparent)}[data-theme] .app-header nav button.active{color:var(--app-secondary-ink);background:var(--app-secondary);border-bottom-color:var(--app-secondary)}[data-theme] .login-card{border-color:var(--border);box-shadow:0 20px 65px -28px var(--app-shadow)}[data-theme] .login-field input,[data-theme] .chat-form input,[data-theme] .notes-panel textarea,[data-theme] .invitation-link input,[data-theme] .play-menu-search input,[data-theme] .game-dialog .form-stack input:not([type=radio]):not([type=checkbox]):not([type=color]),[data-theme] .game-dialog .form-stack select{background:var(--app-input);border-color:var(--border);color:var(--foreground)}[data-theme] .login-field input:focus-visible{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 18%, transparent)}[data-theme] .login-switch button{color:var(--teal)}[data-theme] .password-input button:hover{background:var(--surface-soft)}[data-theme] .login-submit,[data-theme] .primary-button{color:var(--primary-ink);background:var(--primary);border-color:color-mix(in srgb, var(--primary) 83%, var(--foreground));box-shadow:0 3px 0 color-mix(in srgb, var(--primary) 70%, var(--foreground))}[data-theme] .login-submit:hover,[data-theme] .primary-button:hover{background:color-mix(in srgb, var(--primary) 93%, white);box-shadow:0 4px 0 color-mix(in srgb, var(--primary) 70%, var(--foreground))}[data-theme] .login-submit:active,[data-theme] .primary-button:active{box-shadow:0 1px 0 color-mix(in srgb, var(--primary) 70%, var(--foreground))}[data-theme] .island-scene-controls button,[data-theme] .tables-heading h2 span,[data-theme] .record-breakdown,[data-theme] .play-entry{border-color:var(--border)}[data-theme] .landing-help:hover,[data-theme] .island-scene-controls button:hover{background:color-mix(in srgb, var(--card) 45%, transparent)}[data-theme] .island-avatar-grid>button.chosen{border-color:var(--teal)}[data-theme] .island-avatar-grid .player-avatar{background:var(--surface-soft)}[data-theme] .is-landing button:focus-visible{outline-color:var(--teal)}[data-theme] .is-landing .error-notice,[data-theme] .error-notice,[data-theme] .global-error{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, var(--border));background:var(--app-danger-surface)}[data-theme] .table-title>span,[data-theme] .table-mode{background:var(--app-secondary-surface);border-color:var(--border)}[data-theme] .player-seat.light-seat,[data-theme] .bot-entry,[data-theme] .guest-banner{background:var(--app-light-seat)}[data-theme] .player-seat.dark-seat,[data-theme] .find-entry{background:var(--app-dark-seat)}[data-theme] .play-entry-icon,[data-theme] .find-entry .play-entry-icon{color:var(--app-secondary);background:var(--app-secondary-surface)}[data-theme] .play-entry{border-bottom:3px solid var(--primary)}[data-theme] .bot-entry{border-bottom-color:var(--app-tertiary)}[data-theme] .find-entry{border-bottom-color:var(--app-secondary)}[data-theme] .play-entry:hover{box-shadow:0 16px 28px -18px var(--app-shadow)}[data-theme] .invitation-row{background:var(--card)}[data-theme] .turn-console.turn-ready{background:var(--app-ready);border-color:color-mix(in srgb, var(--app-tertiary) 50%, var(--border))}[data-theme] .turn-ready .turn-message strong{color:var(--app-tertiary)}[data-theme] .turn-console.turn-complete{background:var(--app-complete)}[data-theme] .table-page .player-seat>div>.seat-turn-label,[data-theme] .table-page .player-clock.clock-running{color:var(--app-secondary)}[data-theme] .table-page .player-seat.current-seat{border-color:var(--app-secondary);box-shadow:0 0 0 3px color-mix(in srgb, var(--app-secondary) 16%, transparent)}[data-theme] .table-page .player-clock.clock-low{color:var(--danger)}[data-theme] .play-menu-modes button,[data-theme] .play-menu-friend-options button,[data-theme] .play-menu-player-row{background:var(--app-input)}[data-theme] .play-menu-modes button[aria-pressed=true],[data-theme] .play-menu-friend-options button[aria-pressed=true],[data-theme] button.play-menu-player-row:hover,[data-theme] .play-menu-selected{background:var(--app-secondary-surface)}[data-theme] .sidebar-heading{color:var(--app-tertiary);background:var(--app-tertiary-surface);border-bottom:1px solid var(--border)}[data-theme] .sidebar-heading .close-panel{color:inherit}[data-theme] .side-tabs-list{background:color-mix(in srgb, var(--app-tertiary-surface) 42%, var(--card))}[data-theme] .side-tabs-list button[data-active],[data-theme] .side-tabs-list button[data-state=active]{color:var(--app-secondary);border-bottom-color:var(--app-secondary)}[data-theme] .chat-scroll{scrollbar-color:var(--app-secondary) transparent}[data-theme] .own-message p{background:var(--app-secondary-surface);color:var(--foreground);border-radius:0 10px 10px;padding:8px 10px}[data-theme] .chat-form button{background:var(--app-secondary);color:var(--app-secondary-ink)}[data-theme] .record-stat svg,[data-theme] .record-breakdown strong{color:var(--app-secondary)}[data-theme] .record-stat{border-top:3px solid color-mix(in srgb, var(--app-secondary) 60%, var(--border))}[data-theme] .game-dialog{box-shadow:0 24px 70px var(--app-shadow)}[data-theme=moonlight] [data-slot=dialog-overlay]{background:#03091599}[data-theme=moonlight] .scene-roll-result{border-left-color:var(--border)}[data-theme] .island-decorative-die:nth-child(2) .has-pip{background:var(--primary-ink)}[data-theme=professional] .login-card,[data-theme=professional] .game-dialog,[data-theme=professional] .table-card,[data-theme=professional] .record-stat,[data-theme=professional] .quiet-empty,[data-theme=professional] .play-entry,[data-theme=professional] .play-surface,[data-theme=professional] .table-sidebar,[data-theme=professional] .invitation-card{border-radius:12px}[data-theme=professional] .primary-button,[data-theme=professional] .login-submit{box-shadow:none;border-radius:8px}.appearance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.appearance-choice{text-align:left;min-height:100px;color:var(--foreground);background:var(--card);border:1px solid var(--border);border-radius:12px;grid-template-columns:minmax(0,1fr) 18px;gap:8px;padding:12px;display:grid}.appearance-choice[aria-pressed=true]{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.appearance-choice strong{font-size:14px}.appearance-choice small{color:var(--muted-foreground);grid-column:1/-1;font-size:12px;line-height:1.45}.appearance-swatch{background:var(--preview-water);border:1px solid #00000016;border-radius:7px;grid-column:1/-1;align-items:end;gap:5px;height:40px;padding:7px;display:flex}.appearance-swatch i{background:var(--preview-paper);border-radius:4px;width:52%;height:22px}.appearance-swatch b{background:var(--preview-accent);border-radius:4px;width:24%;height:14px}.appearance-swatch:before,.appearance-swatch:after{content:"";border-radius:4px;flex-shrink:0;align-self:stretch;width:15%}.appearance-swatch:before{background:var(--preview-secondary);order:1}.appearance-swatch:after{background:var(--preview-tertiary);order:2}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-variable.woff2)format("woff2");font-style:normal;font-weight:100 1000;font-display:swap}.delivery-notice{width:min(calc(100% - 2 * var(--page-gutter)), var(--page-width));border:1px solid var(--app-border);border-left:4px solid var(--app-secondary);background:var(--card);color:var(--foreground);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:16px auto;padding:14px 18px;display:flex}.delivery-notice p{color:var(--muted-foreground);margin:4px 0;font-size:13px}.delivery-notice small{color:var(--muted-foreground);font-size:11px}@media (max-width:600px){.delivery-notice{flex-direction:column;align-items:stretch}}:root{--font-sans:"DM Sans", "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;--font-heading:var(--font-sans);--app-canvas:#f5f7f2;--page-width:1200px;--page-gutter:clamp(18px, 3vw, 40px);--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}:is(:root[data-theme] .app-shell:has([data-table-focus=true])>.app-header,:root[data-theme] .app-shell:has([data-table-focus=true])>.site-footer){display:none}.settings-tabs{background:var(--app-soft);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:4px 0 16px;padding:5px;display:grid}.settings-tabs button{min-height:44px;color:var(--muted-foreground);border-radius:7px;font-size:12px;font-weight:650}.settings-tabs button[aria-pressed=true]{background:var(--card);color:var(--foreground);box-shadow:0 1px 5px var(--app-shadow)}.settings-pane:not([hidden]){gap:14px;display:grid}.settings-pane[hidden]{display:none}.settings-board-preview{width:100%;max-width:320px;margin:auto}.settings-board-preview svg{width:100%;height:auto;display:block}:root[data-theme=island]{--app-canvas:#f3f6f2;--app-shadow:#173e4220}:root[data-theme=sunshine]{--app-canvas:#faf7ed;--app-shadow:#79652c20}:root[data-theme=moonlight]{--app-canvas:#111d2a;--app-shadow:#0005}:root[data-theme=floral]{--app-canvas:#faf4f6;--app-shadow:#55344820}:root[data-theme=professional]{--app-canvas:#f1f3f4;--app-shadow:#1e314b20}:root[data-theme]{--primary:var(--app-secondary);--primary-ink:var(--app-secondary-ink);--primary-foreground:var(--app-secondary-ink)}html{scroll-padding-top:calc(24px + var(--safe-top));-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans,"Segoe UI", Arial, sans-serif);font-optical-sizing:auto;background:var(--app-canvas);font-weight:400;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-sans,"Segoe UI", Arial, sans-serif);letter-spacing:-.025em;text-wrap:balance;font-weight:650;line-height:1.2}button,input,textarea,select{font-family:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--app-link,#104e57);text-underline-offset:3px}input,textarea{line-height:1.5}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible){outline:3px solid var(--app-link,#104e57);outline-offset:3px}::selection{background:color-mix(in srgb, var(--app-accent) 40%, var(--card));color:var(--foreground)}:root[data-theme] .app-shell,.app-shell{isolation:isolate;background:var(--app-canvas) url(/art/paper-grain.svg) repeat;min-width:0;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);position:relative}.app-content{flex-direction:column;flex:1;width:100%;min-width:0;display:flex}.app-content:focus{outline:none}.app-shell.is-landing{color-scheme:inherit}.app-content>main{min-width:0}.help-actions{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.help-shortcuts{flex-wrap:wrap;gap:5px;margin-top:5px;display:inline-flex}.help-shortcuts kbd{border:1px solid var(--border);color:var(--muted-foreground);border-radius:5px;padding:2px 6px;font-size:11px}@media (prefers-reduced-motion:no-preference){.app-content>main:not(.table-page):not(.auth-page){animation:.16s ease-out room-arrive}}@keyframes room-arrive{0%{opacity:.65}to{opacity:1}}.skip-link{top:calc(10px + var(--safe-top));left:calc(16px + var(--safe-left));z-index:100;color:var(--app-secondary-ink);background:var(--app-secondary);border-radius:8px;padding:10px 18px;position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:none}:root[data-theme] .app-shell .app-header{min-height:82px;padding:0 var(--page-gutter);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--card) 85%, var(--app-canvas));display:block}.header-inner{width:min(var(--page-width), 100%);align-items:center;gap:32px;min-height:82px;margin-inline:auto;display:flex}.app-header .brand{flex:none;padding:0;text-decoration:none}.app-header .brand-wordmark{width:216px;height:53px;display:block}:root[data-theme] .app-header nav{background:0 0;border-radius:0;align-self:stretch;align-items:stretch;gap:24px;padding:0;display:flex}.app-header nav a{min-height:44px;color:var(--muted-foreground);border-bottom:3px solid #0000;align-items:center;gap:8px;padding:0 2px;font-size:14px;font-weight:550;text-decoration:none;display:inline-flex}.app-header nav a:hover{color:var(--foreground)}.app-header nav a.active{color:var(--foreground);border-bottom-color:var(--app-secondary)}.app-header .header-actions{gap:8px;min-width:0;margin-left:auto}.app-header .connection-status{gap:5px;margin-right:6px;font-size:11px}.app-header .connection-status:not(.offline){color:var(--muted-foreground)}.app-header .icon-button,.app-header .landing-help{min-height:44px;color:var(--muted-foreground);border-radius:9px}.app-header .icon-button:hover,.app-header .landing-help:hover{background:var(--surface-soft);color:var(--foreground)}.app-header .profile-button{border-left:1px solid var(--border);gap:9px;max-width:190px;padding:5px 0 5px 14px;font-size:13px}.app-header .profile-button>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-header .player-avatar{flex-shrink:0;width:32px;height:32px}.app-content>.global-error{width:min(var(--page-width), calc(100% - 2 * var(--page-gutter)));margin:18px auto 0}.app-content>.loading-room{width:100%;min-height:380px}.app-content>.lobby.record-page{width:min(var(--page-width), calc(100% - 2 * var(--page-gutter)));margin-inline:auto;padding-top:38px}.record-page .section-heading h1{font-size:clamp(28px,3vw,36px)}.record-page .record-stat,.record-page .quiet-empty,.record-page .table-card{box-shadow:0 4px 16px -12px var(--app-shadow);border-radius:12px}.record-page .record-breakdown{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:20px}:root[data-theme] .game-dialog{font-family:var(--font-sans);border:1px solid var(--border);background:var(--card);border-radius:16px;box-shadow:0 24px 80px #102b3440}.game-dialog h2{letter-spacing:-.03em;font-size:24px}.game-dialog.help-dialog{overscroll-behavior:contain;max-height:calc(100dvh - 28px);max-width:min(620px,100% - 28px)!important}.help-dialog [data-slot=dialog-header]{padding-right:24px}.help-dialog [data-slot=dialog-title]:focus{outline:none}.game-dialog button,.game-dialog input,.game-dialog textarea,.game-dialog select{font-family:var(--font-sans)}[data-slot=button][data-variant=outline]{background:var(--card);color:var(--foreground);border:1px solid var(--border);border-radius:8px}[data-slot=button][data-variant=outline]:hover{background:var(--surface-soft);border-color:var(--app-secondary)}.game-dialog [data-slot=button]:not([data-size^=icon]){height:auto;min-height:44px}:root[data-theme] .primary-button,:root[data-theme] .login-submit{box-shadow:none;border-radius:9px;transition:background .15s,border-color .15s,transform .15s}:root[data-theme] .primary-button:hover,:root[data-theme] .login-submit:hover{box-shadow:0 3px 8px var(--app-shadow);transform:translateY(-1px)}.appearance-choice{min-height:96px}.appearance-choice strong{letter-spacing:0}@media (max-width:1000px){.header-inner{gap:24px}.app-header .connection-status:not(.offline){display:none}}@media (max-width:360px){.app-header .brand .brand-wordmark{width:160px;height:42px}}@media (max-width:700px){:root[data-theme] .app-shell .app-header{min-height:0;padding-inline:18px}.header-inner{flex-wrap:wrap;gap:0 12px;min-height:68px}.app-header .brand-wordmark{width:183px;height:47px}.app-header .header-actions{gap:0}.app-header .profile-button{border-left:0;min-width:44px;padding-left:7px}.app-header .profile-button>span:last-child:not(.player-avatar){display:none}:root[data-theme] .app-header nav{order:3;justify-content:flex-start;gap:24px;width:100%;padding:0}.app-header nav a{flex:none;min-height:44px;font-size:13px}.app-header nav a svg{width:16px;height:16px}.app-header .landing-help{justify-content:center;width:44px;padding:0}.app-header .landing-help span{display:none}.record-page .record-breakdown{padding:14px}.settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:380px){.settings-pane .appearance-options{grid-template-columns:minmax(0,1fr)}}@media (max-width:820px),(any-pointer:coarse){:root :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]):not([type=image]),select,textarea){font-size:max(16px,1rem)!important}}@media (prefers-reduced-motion:reduce){:root[data-theme] .primary-button,:root[data-theme] .login-submit{transition:none}}
