.game .invite-link{justify-content:center;align-items:center;gap:var(--space-xs);display:flex}.game #copy-invite{flex-shrink:0}.game #copy-invite .copied-mark{display:none}.game #copy-invite[data-copied=true] .copy-mark{display:none}.game #copy-invite[data-copied=true] .copied-mark{display:block}.game #invite-url{min-width:0;max-width:100%;padding-block:var(--space-xs);color:var(--color-neutral);font-size:var(--text-sm);text-underline-offset:var(--space-2xs);white-space:normal;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;line-height:1.7;text-decoration:underline}.game:has(.arena[hidden]){display:grid}.game:has(.arena[hidden]) .game-workbench{grid-template-columns:minmax(0,1fr);place-items:center}.game:has(.arena[hidden]) .match-header{justify-content:center;width:100%}.game:has(.arena[hidden]) .game-workbench aside{width:min(100%, var(--prose-max));text-align:center;padding:0}.game:has(.arena[hidden]) .ambient{display:none}.game:has(.arena[hidden]) #turn-title{margin-bottom:var(--space-sm);font-size:var(--text-md);font-weight:var(--heading-weight)}.game:has(#entry-form:not([hidden])){--entry-board-max:60rem;--entry-board-min:34rem;--entry-panel-min:17rem;--entry-panel-max:24rem;display:grid;overflow:clip}.game:has(#entry-form:not([hidden])) .game-workbench{isolation:isolate;grid-template-columns:minmax(0,1fr);place-items:center;position:relative}.game:has(#entry-form:not([hidden])) .game-workbench>*{grid-area:1/1}.game:has(#entry-form:not([hidden])) .match-header{justify-content:center;width:100%}.game:has(#entry-form:not([hidden])) .ambient{opacity:.25}.game:has(#entry-form:not([hidden])) .arena{width:clamp(var(--entry-board-min), 100vw, var(--entry-board-max));opacity:.25;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;-webkit-mask-image:radial-gradient(#000 60%,#0000 75%);mask-image:radial-gradient(#000 60%,#0000 75%)}.game:has(#entry-form:not([hidden])) .scoreboard,.game:has(#entry-form:not([hidden])) .versus,.game:has(#entry-form:not([hidden])) .column-labels,.game:has(#entry-form:not([hidden])) .row-labels,.game:has(#entry-form:not([hidden])) .board-coordinates,.game:has(#entry-form:not([hidden])) .board-bottom{display:none}.game:has(#entry-form:not([hidden])) .board-frame{margin:0}.game:has(#entry-form:not([hidden])) .arena,.game:has(#entry-form:not([hidden])) .board-shell{box-shadow:none;background:0 0;border:0;padding:0}.game:has(#entry-form:not([hidden])) .game-workbench aside{z-index:1;width:min(100%, clamp(var(--entry-panel-min), 32vw, var(--entry-panel-max)));padding:clamp(var(--space-md), 2.5vw, var(--space-lg));border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-paper)}.game:has(#entry-form:not([hidden])) legend{font-size:var(--text-base)}.game:has(#entry-form:not([hidden])) #player-input,.game:has(#entry-form:not([hidden])) #start{min-height:var(--control-height);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg)}.game:has(#entry-form:not([hidden])) #start,.game:has(#entry-form:not([hidden])) .segmented input:checked+span{box-shadow:none}.game:has(#entry-form:not([hidden])) #player-input{padding-inline:var(--space-sm)}.game:has(#entry-form:not([hidden])) #player-input::placeholder{font-size:var(--text-sm)}.game:has(#entry-form:not([hidden])) .name-field{--name-completion-width:5rem;position:relative}.game:has(#entry-form:not([hidden])) .name-field:has(.name-completion:not([hidden])) #player-input{padding-inline-end:var(--control-height)}.game:has(#entry-form:not([hidden])) .name-field:has(.name-completion:not([hidden])) #player-input:not(:placeholder-shown){padding-inline-end:var(--name-completion-width)}.game:has(#entry-form:not([hidden])) .name-completion{inset-block:0;justify-content:center;align-items:center;gap:var(--space-xs);min-width:var(--control-height);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-lg);color:var(--color-neutral);font-size:var(--text-sm);background:0 0;border:0;position:absolute;right:0}.game:has(#entry-form:not([hidden])) .name-completion:not([hidden]){display:flex}.game:has(#entry-form:not([hidden])) .name-example{display:none}.game:has(#entry-form:not([hidden])) #player-input:not(:placeholder-shown)+.name-completion .name-example{display:inline}.game:has(#entry-form:not([hidden])) #name-error:empty{display:none}.game:has(#entry-form:not([hidden])) #start{margin-top:var(--space-sm)}.game:has(#entry-form:not([hidden])) .lifetime-settings{margin-block:var(--space-md) 0}.game:has(#entry-form:not([hidden])) .segmented span{padding:var(--space-sm) var(--space-xs)}.game .match-header{justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-lg);flex-wrap:wrap;min-width:0;display:flex}.game .match-header .match-players{flex:20rem;min-width:0;margin:0}.game .match-header:has(#leave-match[hidden]){display:none}.game:has(.arena[inert]) .match-players{display:none}.game .match-controls{align-items:center;gap:var(--space-sm);flex-shrink:0;justify-content:flex-end;min-width:0;margin-inline-start:auto;display:flex}.game .match-controls:has(#leave-match[hidden]){display:none}.game .match-controls .icon-button{min-height:var(--control-height)}.game .auto-toggle{align-items:center;gap:var(--space-xs);min-height:var(--control-height);color:var(--color-neutral);font-size:var(--text-sm);cursor:pointer;margin:0;font-weight:500;display:flex}.game .auto-toggle:has(:checked){color:var(--color-ink)}.game .auto-toggle input{width:var(--text-base);height:var(--text-base);accent-color:var(--color-accent);cursor:inherit;flex-shrink:0;margin:0}.game #turn-title:not(.sr-only){margin-block:var(--space-sm);font-size:var(--text-md)}.game :is(.score,.competitor){padding-block:var(--space-xs);border-bottom:var(--rule-medium) solid transparent}.game :is(.score,.competitor)[aria-current=true]{border-bottom-color:var(--seat-color)}.game .score.player{--seat-color:var(--player)}.game .score.rival{--seat-color:var(--rival)}.game .player-name small{color:var(--color-neutral);font-size:var(--text-xs);display:block}.game .player-name{white-space:nowrap;min-width:0;overflow:hidden}.game .player-name>span{text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}.game .competitor[data-mark=X]{--seat-color:var(--cyan)}.game .competitor[data-mark=O]{--seat-color:var(--yellow)}.game .arena{--turn-color:var(--player,var(--cyan))}.game:has(.competitor[data-mark=O][aria-current=true]) .arena{--turn-color:var(--yellow)}.game .arena[data-your-turn=true] .board-frame{outline:var(--rule-medium) solid var(--turn-color);outline-offset:var(--space-2xs)}.game .arena[data-your-turn=true] .board-shell{border-color:var(--turn-color)}.game:has(.arena:not([inert])){--match-chrome-height:14rem;--match-min-width:18rem;padding-block:var(--space-sm) var(--space-lg)}.game:has(.arena:not([inert])) .game-workbench{width:min(100%, max(var(--match-min-width), calc(100dvh - var(--match-chrome-height))));grid-template-columns:minmax(0,1fr);gap:0;margin-inline:auto}.game:has(.arena:not([inert])) .arena{width:100%;padding:0}.game:has(.arena:not([inert])) .match-header{margin-bottom:var(--space-sm)}.game:has(.arena:not([inert])):not(.ripple) .match-header{flex-wrap:nowrap}.game:has(.arena:not([inert])) .game-workbench>aside{text-align:center;width:100%;padding:0}.game:has(.arena:not([inert])) #match-panel{justify-content:center;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.game:has(.arena:not([inert])) #finish-actions{margin-bottom:var(--space-sm)}.game:has(.arena:not([inert])) .board-frame{margin:0}.game:has(.arena:not([inert])) .score{justify-content:center;gap:var(--space-xs);flex-direction:row}.game:has(.arena:not([inert])) .score strong,.game:has(.arena:not([inert])) .score-divider{font-size:var(--text-md)}.game:has(.arena:not([inert])) .score>span:last-child{white-space:nowrap}.game:has(.arena:not([inert])) .score.player>span:last-child{order:-1}.game:has(.arena:not([inert])) #turn-title:not(.sr-only){margin-block:var(--space-xs);font-size:var(--text-sm);font-weight:500}.game:has(.arena:not([inert])) #finish-actions button{width:auto;min-height:var(--control-height);padding:var(--space-xs) var(--space-md);box-shadow:none}
