@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--color-red-400:#ff6568;--color-amber-50:#fffbeb;--color-amber-200:#fee685;--color-amber-400:#fcbb00;--color-amber-500:#f99c00;--color-amber-700:#b75000;--color-amber-900:#7b3306;--color-green-500:#00c758;--color-green-600:#00a544;--color-green-700:#008138;--color-green-900:#0d542b;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-wide:.025em;--tracking-wider:.05em;--radius-lg:.5rem;--radius-xl:.75rem;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-xl:0 9px 7px #0000001a;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-ui);--default-mono-font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--color-background:var(--background)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-400:lab(63.7053% 60.745 31.3109);--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-400:lab(80.1641% 16.6016 99.2089);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-amber-900:lab(31.2288% 30.2627 40.0378);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-green-700:lab(47.0329% -47.0239 31.4788);--color-green-900:lab(30.797% -29.6927 17.382)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-12{top:calc(var(--spacing)*12)}.right-6{right:calc(var(--spacing)*6)}.bottom-6{bottom:calc(var(--spacing)*6)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.z-10{z-index:10}.z-50{z-index:50}.z-9999{z-index:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.aspect-2\/3{aspect-ratio:2/3}.h-16{height:calc(var(--spacing)*16)}.h-24{height:calc(var(--spacing)*24)}.h-full{height:100%}.h-screen{height:100vh}.min-h-0{min-height:calc(var(--spacing)*0)}.w-16{width:calc(var(--spacing)*16)}.w-24{width:calc(var(--spacing)*24)}.w-\[calc\(100vw-32px\)\]{width:calc(100vw - 32px)}.w-\[min\(400px\,92vw\)\]{width:min(400px,92vw)}.w-\[min\(680px\,92vw\)\]{width:min(680px,92vw)}.w-\[min\(680px\,92vw\,calc\(100dvh-260px\)\)\]{width:min(680px,92vw,100dvh - 260px)}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[650px\]{max-width:650px}.max-w-lg{max-width:var(--container-lg)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform-\[rotateY\(180deg\)\]{transform:rotateY(180deg)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-manipulation{touch-action:manipulation}.touch-none{touch-action:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-3{border-style:var(--tw-border-style);border-width:3px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--border\)\]{border-color:var(--border)}.border-amber-500{border-color:var(--color-amber-500)}.border-amber-900\/50{border-color:#7b330680}@supports (color:color-mix(in lab, red, red)){.border-amber-900\/50{border-color:color-mix(in oklab,var(--color-amber-900)50%,transparent)}}.border-app-border{border-color:var(--border)}.border-app-border-strong{border-color:var(--border-strong)}.border-gray-600{border-color:var(--surface-strong)}.border-gray-700{border-color:var(--surface-soft)}.border-green-500{border-color:var(--color-green-500)}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab, red, red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-\[var\(--surface-soft\)\]{background-color:var(--surface-soft)}.bg-amber-700\/50{background-color:#b7500080}@supports (color:color-mix(in lab, red, red)){.bg-amber-700\/50{background-color:color-mix(in oklab,var(--color-amber-700)50%,transparent)}}.bg-app-surface-soft\/50{background-color:var(--surface-soft)}@supports (color:color-mix(in lab, red, red)){.bg-app-surface-soft\/50{background-color:color-mix(in oklab,var(--surface-soft)50%,transparent)}}.bg-app-surface\/70{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.bg-app-surface\/70{background-color:color-mix(in oklab,var(--surface)70%,transparent)}}.bg-app-surface\/95{background-color:var(--surface)}@supports (color:color-mix(in lab, red, red)){.bg-app-surface\/95{background-color:color-mix(in oklab,var(--surface)95%,transparent)}}.bg-black\/0{background-color:#0000}@supports (color:color-mix(in lab, red, red)){.bg-black\/0{background-color:color-mix(in oklab,var(--color-black)0%,transparent)}}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab, red, red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black)80%,transparent)}}.bg-gray-800,.bg-gray-800\/50{background-color:var(--surface-raised)}@supports (color:color-mix(in lab, red, red)){.bg-gray-800\/50{background-color:color-mix(in oklab,var(--surface-raised)50%,transparent)}}.bg-green-700{background-color:var(--color-green-700)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.bg-contain{background-size:contain}.bg-cover{background-size:cover}.bg-center{background-position:50%}.bg-no-repeat{background-repeat:no-repeat}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-2{padding-block:calc(var(--spacing)*2)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.pt-4{padding-top:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-2{padding-left:calc(var(--spacing)*2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-sans{font-family:var(--font-ui)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.text-\[var\(--amber\)\]{color:var(--amber)}.text-\[var\(--danger\)\]{color:var(--danger)}.text-\[var\(--muted\)\]{color:var(--muted)}.text-\[var\(--text\)\]{color:var(--text)}.text-amber-50{color:var(--color-amber-50)}.text-amber-200{color:var(--color-amber-200)}.text-amber-400{color:var(--color-amber-400)}.text-gray-300{color:var(--text-secondary)}.text-gray-400{color:var(--muted)}.text-gray-500{color:var(--text-subtle)}.text-red-400{color:var(--color-red-400)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-green-900\/50{--tw-shadow-color:#0d542b80}@supports (color:color-mix(in lab, red, red)){.shadow-green-900\/50{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-green-900)50%,transparent)var(--tw-shadow-alpha),transparent)}}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-xl{--tw-drop-shadow-size:drop-shadow(0 9px 7px var(--tw-drop-shadow-color,#0000001a));--tw-drop-shadow:drop-shadow(var(--drop-shadow-xl));filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-700{--tw-duration:.7s;transition-duration:.7s}.ease-\[cubic-bezier\(0\.32\,0\.72\,0\,1\)\]{--tw-ease:cubic-bezier(.32,.72,0,1);transition-timing-function:cubic-bezier(.32,.72,0,1)}.select-none{-webkit-user-select:none;user-select:none}.backface-hidden{backface-visibility:hidden}.perspective-\[1000px\]{perspective:1000px}.transform-3d{transform-style:preserve-3d}@media (hover:hover){.hover\:bg-green-600:hover{background-color:var(--color-green-600)}.hover\:text-amber-50:hover{color:var(--color-amber-50)}.hover\:brightness-110:hover{--tw-brightness:brightness(110%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}@media (min-width:40rem){.sm\:top-4{top:calc(var(--spacing)*4)}.sm\:mt-12{margin-top:calc(var(--spacing)*12)}.sm\:mb-1{margin-bottom:calc(var(--spacing)*1)}.sm\:w-auto{width:auto}.sm\:flex-initial{flex:0 auto}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-0{gap:calc(var(--spacing)*0)}.sm\:gap-3{gap:calc(var(--spacing)*3)}.sm\:p-4{padding:calc(var(--spacing)*4)}.sm\:px-0{padding-inline:calc(var(--spacing)*0)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:mt-0{margin-top:calc(var(--spacing)*0)}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-6{gap:calc(var(--spacing)*6)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}}:root{--background:#000;--foreground:#e9ecf3;--text:#e9ecf3;--text-secondary:#bac0c9;--muted:#959eaf;--text-subtle:#747d8e;--surface:#141414;--surface-raised:#1c1c1c;--surface-soft:#242424;--surface-strong:#2c2c2c;--border:#e9ecf324;--border-strong:#e9ecf347;--amber:#ff8a3d;--amber-strong:#ff6a00;--scrollbar-thumb:#ff8a3da8;--scrollbar-track:#1414145c;--danger:#fb7185;--success:#59d38c;--focus:#ffb37d;--bg-image:url(/main/background.webp);--bg-position:right bottom;--font-ui:var(--font-perciles),"Poppins","Segoe UI",system-ui,sans-serif;--interface-scale:.8;--page-viewport-height:calc(100dvh/var(--interface-scale))}html,body{min-height:100%;margin:0;padding:0;overflow:hidden auto}html{isolation:isolate;background:var(--background);position:relative}html:before{content:"";z-index:-1;background-image:var(--bg-image);background-repeat:no-repeat;background-size:cover;background-position:var(--bg-position);pointer-events:none;position:fixed;inset:0}body{min-width:0;font-family:var(--font-ui);zoom:var(--interface-scale);background:0 0!important}*,:before,:after{box-sizing:border-box}*{scrollbar-color:var(--scrollbar-thumb)var(--scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border:1px solid #e9ecf314;border-radius:999px;margin:8px 2px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;min-height:48px;box-shadow:inset 0 0 0 1px #ffffff14,0 0 0 1px #0000003d}::-webkit-scrollbar-thumb:hover{background:var(--amber);background-clip:padding-box}::-webkit-scrollbar-thumb:active{background:var(--amber-strong);background-clip:padding-box}.center{z-index:1;place-items:center;min-height:100dvh;display:grid;position:relative}.menu-cta{flex-direction:column;align-items:center;gap:48px;display:flex}.menu-btn{justify-content:center;align-items:center;width:min(600px,85vw);height:90px;padding-bottom:6px;display:flex}.menu-btn img{object-fit:contain;width:min(600px,85vw);height:90px;display:block}.menu-button-label{color:var(--text);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 4px #0009;font-size:16px;font-weight:800}.menu-logout{color:#e9ecf3c7;text-underline-offset:3px;cursor:pointer;letter-spacing:.05em;margin-top:10px;font-size:12px;text-decoration:underline}@media (max-width:1200px){.menu-btn,.menu-btn img{width:80vw;height:80px}.menu-button-label{font-size:14px}}@media (max-width:800px){.menu-btn,.menu-btn img{width:90vw;height:70px}.menu-button-label{font-size:13px}}@media (max-width:520px){.menu-btn,.menu-btn img{width:92vw;height:60px}.menu-button-label{font-size:12px}}@media (min-width:1600px){.menu-btn,.menu-btn img{width:700px;height:100px}.menu-button-label{font-size:18px}}input:-webkit-autofill{transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--surface)inset!important;-webkit-text-fill-color:var(--text)!important;box-shadow:0 0 0 1000px var(--surface)inset!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important}input:-webkit-autofill:hover{transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--surface)inset!important;-webkit-text-fill-color:var(--text)!important;box-shadow:0 0 0 1000px var(--surface)inset!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important}input:-webkit-autofill:focus{transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--surface)inset!important;-webkit-text-fill-color:var(--text)!important;box-shadow:0 0 0 1000px var(--surface)inset!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important}input:-webkit-autofill:active{transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--surface)inset!important;-webkit-text-fill-color:var(--text)!important;box-shadow:0 0 0 1000px var(--surface)inset!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important}.top-right-controls{z-index:9999;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:16px;right:16px}.haxball-tools-slot{justify-content:center;gap:8px;display:flex}.top-right-btn{appearance:none;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-secondary);letter-spacing:.08em;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:10px;padding:8px 10px;font-size:12px;font-weight:800}.top-right-btn:hover{border-color:var(--border-strong);background:var(--surface-raised)}.top-right-btn:active{transform:translateY(1px)}.top-right-btn:focus-visible{outline-offset:2px;outline:2px solid #ff8a3dbf}.top-right-btn{color:var(--text-secondary)!important}@supports (padding:max(0px)){.safe-area-inset{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(16px,env(safe-area-inset-bottom))}}.responsive-container{width:100%;max-width:100%;padding-left:16px;padding-right:16px}@media (min-width:640px){.responsive-container{padding-left:24px;padding-right:24px}}@media (min-width:1024px){.responsive-container{max-width:960px;margin-left:auto;margin-right:auto}}@media (min-width:1280px){.responsive-container{max-width:1200px}}.touch-target{min-width:44px;min-height:44px}.no-select{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@media (max-width:520px){.top-right-controls{gap:6px;top:8px;right:8px}.top-right-btn{border-radius:8px;padding:6px 8px;font-size:11px}.menu-cta{gap:28px;padding:0 12px}.menu-logout{margin-top:16px;font-size:11px}}@media (max-width:380px){.top-right-controls{gap:4px;top:6px;right:6px}.top-right-btn{padding:5px 6px;font-size:10px}.menu-cta{gap:20px}}.game-board-container{flex-direction:column;align-items:center;width:100%;max-width:100vw;padding:8px;display:flex}@media (min-width:640px){.game-board-container{padding:16px}}@media (min-width:1024px){.game-board-container{padding:24px}}.game-action-row{flex-direction:column;gap:8px;width:100%;display:flex}@media (min-width:480px){.game-action-row{flex-direction:row;justify-content:space-between;gap:12px}}.mobile-modal-overlay{padding:16px}@media (max-width:520px){.mobile-modal-overlay{padding:8px}}.text-responsive-sm{font-size:12px}.text-responsive-base{font-size:14px}.text-responsive-lg{font-size:16px}@media (min-width:640px){.text-responsive-sm{font-size:14px}.text-responsive-base{font-size:16px}.text-responsive-lg{font-size:18px}}@media (min-width:1024px){.text-responsive-sm{font-size:15px}.text-responsive-base{font-size:17px}.text-responsive-lg{font-size:20px}}@media (max-height:500px) and (orientation:landscape){.center{min-height:auto;padding:20px 0}.menu-cta{gap:16px}.menu-btn,.menu-btn img{height:50px}}html,body{overflow-x:hidden}html{scroll-behavior:smooth}@media (hover:none) and (pointer:coarse){.menu-btn:active{transform:scale(.98)}.top-right-btn:active{background:var(--surface-strong)}}.app-shell,.game-select-shell{min-height:100dvh;color:var(--text);position:relative;overflow-x:hidden}.app-shell{--home-gray:#8a8a8a;min-height:100dvh;padding:24px clamp(16px,4vw,64px) 40px}.app-frame,.game-select-frame{z-index:1;width:min(100%,1240px);margin:0 auto;position:relative}.app-topbar{justify-content:space-between;align-items:center;gap:16px;min-width:0;min-height:44px;padding-right:160px;animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter;display:flex}.brand-lockup{min-width:0;color:var(--text);border-radius:12px;align-items:center;gap:10px;text-decoration:none;transition:transform .42s cubic-bezier(.32,.72,0,1);display:inline-flex}.brand-lockup:hover{transform:translateY(-2px)}.brand-lockup:focus-visible{outline:2px solid var(--amber);outline-offset:4px}.brand-lockup__mark{background:#ff8a3d1a;border:1px solid #ff8a3d4d;border-radius:12px;flex:0 0 40px;place-items:center;width:40px;height:40px;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1);display:grid;overflow:hidden}.brand-lockup:hover .brand-lockup__mark{background:#ff8a3d29;border-color:#ff8a3d9e;transform:rotate(-4deg)scale(1.04)}.brand-lockup__mark img{object-fit:cover;border-radius:8px;width:30px;height:30px;display:block}.brand-lockup__name{color:var(--text);letter-spacing:.16em;text-transform:uppercase;font-size:14px;font-weight:700}.brand-lockup__tagline{color:var(--muted);letter-spacing:.12em;font-size:11px;font-weight:500}.home-layout{min-height:calc(var(--page-viewport-height) - 108px);grid-template-columns:minmax(280px,.8fr) minmax(460px,1.2fr);align-items:center;gap:clamp(40px,8vw,112px);padding:0 0 28px;display:grid}.home-intro{min-width:0;max-width:520px;animation:.8s cubic-bezier(.32,.72,0,1) .1s both motion-enter}.home-eyebrow,.page-kicker{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:700}.home-title{overflow-wrap:anywhere;color:#fff;letter-spacing:-.04em;text-wrap:balance;background:linear-gradient(90deg,#fff,var(--home-gray));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;max-width:680px;margin:0;font-size:3rem;font-weight:700;line-height:1.05}.home-subtitle,.page-subtitle{overflow-wrap:anywhere;max-width:56ch;color:var(--muted);text-wrap:pretty;margin:24px 0 0;font-size:16px;line-height:1.6}.home-proof{overflow-wrap:anywhere;color:var(--text-subtle);letter-spacing:.04em;text-wrap:pretty;margin:16px 0 0;font-size:14px;font-weight:600}.home-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:680px;margin-left:auto;display:grid}.menu-action{width:100%;min-width:0;height:100%;color:inherit;animation:.76s cubic-bezier(.32,.72,0,1) both motion-enter;animation-delay:var(--action-delay,0s);text-decoration:none;display:block}.menu-action__surface{background:#141414d1;border:1px solid #e9ecf324;border-radius:16px;flex-direction:column;justify-content:space-between;gap:32px;height:100%;min-height:208px;padding:24px;transition:transform .42s cubic-bezier(.32,.72,0,1),border-color .22s,background-color .22s,box-shadow .22s;display:flex;position:relative;box-shadow:0 18px 50px #0000002e}.menu-action__surface:before{content:"";opacity:0;pointer-events:none;background:#ff8a3d0f;border-radius:16px;transition:opacity .22s;position:absolute;inset:0}.menu-action:hover .menu-action__surface{background:#2c2c2ceb;border-color:#ff8a3d85;transform:translateY(-6px);box-shadow:0 24px 60px #00000047,0 0 0 1px #ff8a3d14}.menu-action:hover .menu-action__surface:before,.menu-action:focus-visible .menu-action__surface:before{opacity:1}.menu-action:active .menu-action__surface,.game-card:active{transform:scale(.96)}.menu-action:focus-visible,.game-card:focus-visible,.return-arrow:focus-visible{outline:2px solid var(--amber);outline-offset:4px}.menu-action__topline,.menu-action__bottomline{z-index:1;gap:12px;display:flex;position:relative}.menu-action__topline{justify-content:space-between;align-items:flex-start}.menu-action__bottomline{justify-content:flex-start;align-items:flex-end}.menu-action__icon{width:40px;height:40px;color:var(--amber);background:#ff8a3d1a;border:1px solid #ff8a3d4d;border-radius:12px;place-items:center;display:grid}.menu-action__text{gap:8px;min-width:0;display:grid}.menu-action__label{z-index:1;overflow-wrap:anywhere;max-width:14ch;min-height:2.4em;color:var(--text);letter-spacing:-.02em;text-wrap:balance;font-size:20px;font-weight:700;line-height:1.2;position:relative}.menu-action__description{overflow-wrap:anywhere;max-width:28ch;min-height:2.9em;color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.45}.menu-action__arrow{color:currentColor;transition:transform .22s cubic-bezier(.32,.72,0,1),color .22s}.menu-action:hover .menu-action__arrow{color:var(--amber);transform:translate(3px,-3px)}.game-select-shell{min-height:100dvh;padding:88px clamp(16px,4vw,64px) 48px;overflow-x:hidden}.page-heading{text-align:center;max-width:620px;margin:0 auto 40px;animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter}.page-heading h1{overflow-wrap:anywhere;color:#fff;letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:2.25rem;font-weight:700;line-height:1.1}.page-heading .page-subtitle{margin:16px auto 0}.game-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;width:100%;display:grid}.game-card{min-width:0;color:var(--text);animation:.76s cubic-bezier(.32,.72,0,1) both motion-enter;animation-delay:var(--card-delay,0s);background:#141414;border:1px solid #e9ecf324;border-radius:16px;flex-direction:column;text-decoration:none;transition:transform .42s cubic-bezier(.32,.72,0,1),border-color .22s,box-shadow .22s;display:flex;overflow:hidden}.game-card:hover{border-color:#ff8a3d7a;transform:translateY(-6px);box-shadow:0 24px 50px #00000047}.game-card__image{aspect-ratio:4/3;background:#242424;position:relative;overflow:hidden}.game-card__image img{object-fit:cover;object-position:center 20%;outline-offset:-1px;outline:1px solid #ffffff1a;width:100%;height:100%;transition:transform .65s cubic-bezier(.32,.72,0,1),filter .3s;display:block}.game-card:hover .game-card__image img{filter:saturate(1.1)brightness(1.08);transform:scale(1.06)}.game-card__glow{filter:blur(14px);pointer-events:none;background:#00000094;border-radius:50%;height:28px;position:absolute;inset:auto 16px 16px}.game-card__content{justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:18px 20px 20px;display:flex}.game-card__content>*{overflow-wrap:anywhere;min-width:0}.game-card__content h2{color:var(--text);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:18px;font-weight:700}.game-card__content p{color:var(--muted);align-items:center;gap:6px;margin:4px 0 0;font-size:12px;display:flex}.game-card__presence span{background:var(--muted);border-radius:50%;width:6px;height:6px}.game-card__presence.is-active{color:#59d38c}.game-card__presence.is-active span{background:#59d38c;box-shadow:0 0 0 4px #59d38c1f}.game-card__arrow{color:var(--amber);flex:none;transition:transform .22s cubic-bezier(.32,.72,0,1)}.game-card:hover .game-card__arrow{transform:translate(3px,-3px)}.active-game__link{color:#ffe8d6;letter-spacing:.08em;text-transform:uppercase;background:#ff8a3d1f;border:1px solid #ff8a3d6b;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 14px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s;display:inline-flex}.active-game__link:hover{border-color:var(--amber);background:#ff8a3d33;transform:translateY(-2px)}.return-arrow{z-index:9999;border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:8px;padding:8px 12px 8px 10px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .22s cubic-bezier(.32,.72,0,1),border-color .22s,background-color .22s;display:inline-flex;position:fixed;top:20px;left:clamp(16px,4vw,64px)}.return-arrow:hover{border-color:var(--border-strong);background:var(--surface-raised);transform:translate(4px)}.skip-link{z-index:10000;color:#000;background:#fff;border-radius:8px;padding:8px 12px;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}@keyframes motion-enter{0%{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1024px){.home-title{font-size:4.5rem}.page-heading h1{font-size:3rem}}@media (min-width:700px) and (max-width:900px){.home-layout{min-height:calc(var(--page-viewport-height) - 108px);grid-template-columns:minmax(220px,.75fr) minmax(380px,1.25fr);gap:24px;padding-top:0;padding-bottom:28px}.home-title{font-size:3rem}.menu-action__surface{min-height:200px;padding:20px}}@media (max-width:699px){.home-layout{min-height:calc(var(--page-viewport-height) - 108px);grid-template-columns:1fr;gap:20px;padding-top:24px;padding-bottom:16px}.menu-action__surface{gap:20px;min-height:180px;padding:16px}.home-intro{text-align:center;max-width:680px}.home-subtitle{margin-left:auto;margin-right:auto}.home-actions{margin:0 auto}}@media (max-width:560px){.app-shell{padding-top:16px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.app-topbar{flex-direction:column;align-items:flex-start;padding-right:0}.home-layout{gap:16px;padding-top:24px;padding-bottom:8px}.home-title{font-size:2.25rem}.home-subtitle{margin-top:16px;font-size:14px}.home-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.menu-action__surface{gap:12px;min-height:148px;padding:12px}.menu-action__icon{border-radius:8px;width:32px;height:32px}.menu-action__label{font-size:16px}.menu-action__description{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.game-select-shell{padding-top:88px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-card__content{padding:14px}.game-card__content h2{font-size:16px}.game-card__content p{font-size:11px;display:flex}}@media (max-height:620px) and (min-width:700px){.app-shell{min-height:100dvh}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.menu-action:hover .menu-action__surface,.menu-action:active .menu-action__surface,.game-card:hover,.game-card:active,.return-arrow:hover{transform:none}}@media (max-width:720px){.game-select-frame{width:100%}.page-heading{margin-bottom:24px}.page-heading h1{font-size:2rem}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card__content{min-height:78px}}@media (max-width:390px){.game-grid{grid-template-columns:1fr}.game-card__content p{font-size:12px}}.game-page-shell{min-height:100dvh;color:var(--text);place-items:center;padding:88px clamp(16px,4vw,64px) 48px;display:grid}.game-page-frame,.game-panel,.game-error-state{border:1px solid var(--border);background:var(--surface);border-radius:16px;width:min(100%,960px);min-width:0}@supports (color:color-mix(in lab, red, red)){.game-page-frame,.game-panel,.game-error-state{background:color-mix(in srgb,var(--surface)88%,transparent)}}.game-page-frame,.game-panel,.game-error-state{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000038}.game-page-frame{padding:clamp(16px,3vw,32px)}.lobby-page-frame{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.game-page-frame>*{animation:motion-enter .7s var(--page-item-delay,0s)cubic-bezier(.32,.72,0,1)both}.game-page-frame>:nth-child(2){--page-item-delay:90ms}.game-page-frame>:nth-child(3){--page-item-delay:.18s}.game-page-frame>:nth-child(4){--page-item-delay:.27s}.game-panel{padding:24px}.game-panel .flex>*,.game-panel .grid>*{min-width:0}.game-panel h2,.game-panel h3,.game-panel p,.game-panel span{overflow-wrap:anywhere}.game-error-state{text-align:center;max-width:560px;padding:clamp(24px,5vw,48px)}.game-error-state h1{color:var(--text);text-wrap:balance;margin:8px 0 12px;font-size:clamp(20px,3vw,30px);line-height:1.2}.game-error-state__id{color:var(--muted);font-family:var(--font-mono);overflow-wrap:anywhere;margin:0 0 24px;font-size:12px}.game-page-frame:has(>.account-required-state){width:min(100%,560px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;padding:0}.account-required-state{border:1px solid var(--amber);align-self:center;justify-items:center;gap:24px;width:100%;padding:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.account-required-state{border:1px solid color-mix(in srgb,var(--amber)36%,var(--border))}}.account-required-state{background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.account-required-state{background:color-mix(in srgb,var(--surface)94%,transparent)}}.account-required-state{text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 24px 60px #00000052,0 0 0 1px #ff8a3d0d}.account-required-state__icon{border:1px solid var(--amber);place-items:center;width:56px;height:56px;display:grid}@supports (color:color-mix(in lab, red, red)){.account-required-state__icon{border:1px solid color-mix(in srgb,var(--amber)48%,transparent)}}.account-required-state__icon{background:var(--amber);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.account-required-state__icon{background:color-mix(in srgb,var(--amber)12%,var(--surface-raised))}}.account-required-state__icon{color:var(--amber)}.account-required-state__copy{gap:8px;max-width:44ch;display:grid}.account-required-state__eyebrow{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.account-required-state__copy h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.account-required-state__copy p:last-child{color:var(--muted);text-wrap:pretty;margin:0;font-size:16px;line-height:1.5}.account-required-state__actions{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;display:flex}.account-required-state__actions .game-primary-button,.account-required-state__actions .game-secondary-button{flex:180px;min-height:48px;font-size:16px}@media (max-width:520px){.account-required-state{padding:24px 16px}.account-required-state__actions{flex-direction:column}.account-required-state__actions .game-primary-button,.account-required-state__actions .game-secondary-button{flex-basis:auto;width:100%}}.game-primary-button,.game-secondary-button{border:1px solid var(--border);border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:8px 16px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .18s cubic-bezier(.32,.72,0,1),background-color .18s,border-color .18s;display:inline-flex}.game-primary-button{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.game-primary-button{border-color:color-mix(in srgb,var(--amber)58%,transparent)}}.game-primary-button{background:var(--amber);color:#111}.game-secondary-button{background:var(--surface-soft);color:var(--text)}.game-primary-button:hover,.game-secondary-button:hover{border-color:var(--amber);transform:translateY(-2px)}.game-primary-button:active,.game-secondary-button:active{transform:scale(.96)}.game-primary-button:focus-visible,.game-secondary-button:focus-visible,.game-panel button:focus-visible,.game-panel a:focus-visible,.game-error-state a:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.game-panel input,.game-panel select,.game-panel textarea{border:1px solid var(--border);background:var(--surface-soft);min-height:44px;color:var(--text);border-radius:10px;font-size:16px}@media (prefers-reduced-motion:reduce){.game-primary-button:hover,.game-secondary-button:hover,.game-primary-button:active,.game-secondary-button:active{transform:none}}.home-topbar-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.guest-identity-control{z-index:20;align-self:flex-end;position:relative}.guest-identity-trigger{min-width:44px;min-height:40px;color:var(--text);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;background:#0f121cbd;border:1px solid #e9ecf32e;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:700;transition:transform .18s cubic-bezier(.32,.72,0,1),border-color .18s,background-color .18s;display:inline-flex}.guest-identity-trigger:hover,.guest-identity-trigger:focus-visible{border-color:var(--amber);background:var(--surface-raised)}.guest-identity-trigger:active{transform:scale(.96)}.guest-identity-trigger:focus-visible,.guest-identity-panel button:focus-visible,.guest-identity-panel a:focus-visible,.guest-identity-panel input:focus-visible,.guest-entry-button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.guest-identity-panel{width:min(320px,100vw - 32px);color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f121cf5;border:1px solid #e9ecf32e;border-radius:16px;gap:12px;padding:16px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 24px 60px #0000004d}.guest-identity-kicker{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.guest-identity-form{gap:8px;display:grid}.guest-identity-form label{color:var(--muted);font-size:12px;font-weight:600}.guest-name-field{align-items:center;display:flex;position:relative}.guest-name-field input{border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:44px;color:var(--text);border-radius:10px;padding:8px 36px 8px 12px;font-size:16px}.guest-name-field svg{color:var(--muted);pointer-events:none;position:absolute;right:12px}.guest-identity-error{color:var(--danger);margin:0;font-size:12px}.guest-login-link,.guest-end-button{min-height:40px;color:var(--focus);text-align:left;text-underline-offset:3px;padding:8px 0;font-size:12px;font-weight:700;text-decoration:underline}.guest-end-button{cursor:pointer;background:0 0;border:0}.auth-shell{z-index:100;padding:max(72px,env(safe-area-inset-top))16px max(24px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000057;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.auth-card{border:1px solid var(--border);width:min(100%,480px);color:var(--text);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#141414f0;border-radius:16px;animation:.76s cubic-bezier(.32,.72,0,1) both motion-enter;box-shadow:0 24px 60px #0000006b}.auth-form{width:100%}.auth-form-surface{gap:32px;padding:32px;display:grid}.auth-header{text-align:center;gap:8px;display:grid}.auth-kicker{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.auth-title{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:24px;font-weight:700;line-height:1.15}.auth-subtitle{max-width:42ch;color:var(--muted);text-wrap:pretty;margin:0 auto;font-size:14px;line-height:1.5}.auth-fields{gap:16px;display:grid}.auth-field{gap:8px;display:grid}.auth-field label{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.35}.auth-input{border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:44px;color:var(--text);border-radius:10px;padding:8px 12px;font-family:inherit;font-size:16px;line-height:1.5;transition:background-color .18s,border-color .18s,box-shadow .18s}.auth-input:hover{border-color:var(--border-strong);background:var(--surface-strong)}.auth-input:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-color:var(--amber);box-shadow:0 0 0 4px #ff8a3d1f}.auth-feedback{background:var(--surface-soft);text-align:center;border-radius:10px;gap:8px;padding:12px;display:grid}.auth-feedback p{text-wrap:pretty;margin:0;font-size:12px;line-height:1.45}.auth-feedback__error{color:var(--danger)}.auth-feedback__success{color:var(--success)}.auth-actions{gap:16px;padding:0 32px 32px;display:grid}.auth-action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.auth-action-button,.guest-entry-button{border:1px solid var(--border);min-height:44px;color:var(--text);cursor:pointer;text-align:center;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-family:inherit;font-size:14px;font-weight:700;line-height:1.35;transition:transform .18s cubic-bezier(.32,.72,0,1),background-color .18s,border-color .18s,color .18s,opacity .18s;display:inline-flex}.auth-primary-button{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.auth-primary-button{border-color:color-mix(in srgb,var(--amber)64%,transparent)}}.auth-primary-button{background:var(--amber);color:#141414}.auth-secondary-button,.guest-entry-button{background:var(--surface-soft)}.auth-action-button:hover,.guest-entry-button:hover{border-color:var(--amber);transform:translateY(-2px)}.auth-primary-button:hover{background:#ff9b58}.auth-secondary-button:hover,.guest-entry-button:hover{background:var(--surface-strong)}.auth-action-button:active,.guest-entry-button:active{transform:scale(.96)}.auth-action-button:focus-visible,.guest-entry-button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.auth-action-button:disabled,.guest-entry-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.auth-divider{color:var(--text-subtle);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:12px;font-size:12px;font-weight:700;line-height:1;display:flex}.auth-divider:before,.auth-divider:after{background:var(--border);content:"";flex:1;height:1px}.guest-entry-button{width:100%}@media (max-width:480px){.auth-shell{place-items:start center}.auth-form-surface{gap:24px;padding:24px 16px}.auth-actions{padding:0 16px 24px}.auth-action-row{grid-template-columns:1fr}}@media (max-width:699px){.home-topbar-actions{flex-direction:column;align-items:stretch;width:100%}.guest-identity-control{align-self:stretch}.guest-identity-trigger{justify-content:center;width:100%}.guest-identity-panel{left:0;right:auto}}.page-transition{min-height:100dvh;animation:.76s cubic-bezier(.32,.72,0,1) both page-enter}#app-content>*{min-height:100dvh}.online-players-panel{z-index:60;animation:.52s cubic-bezier(.32,.72,0,1) both profile-panel-enter}.online-players-list,.lobby-rooms-scroll{overscroll-behavior:contain}.online-players-panel--top{top:max(4.5rem,calc(env(safe-area-inset-top) + 3.5rem));bottom:auto}.waiting-chat-bubble{left:max(1rem,env(safe-area-inset-left));bottom:max(1rem,env(safe-area-inset-bottom));z-index:50;cursor:pointer;background:#0000008c;border:1px solid #ffffff1a;border-radius:999px;place-items:center;width:48px;height:48px;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s;display:grid;position:absolute;box-shadow:0 12px 28px #0000004d}.waiting-chat-bubble:hover,.waiting-chat-bubble:focus-visible{border-color:var(--amber);background:#141414e6;transform:translateY(-2px)}.waiting-chat-bubble:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.waiting-chat-panel{right:auto;left:max(1rem,env(safe-area-inset-left));bottom:max(1rem,env(safe-area-inset-bottom));z-index:50;width:min(300px,100vw - 2rem);max-height:min(220px,100dvh - 7rem);height:min(220px,45vh)!important}.game-chat{border:1px solid var(--border);background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.game-chat{background:color-mix(in srgb,var(--surface)94%,transparent)}}.game-chat{color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 18px 48px #0000004d}.game-chat--game{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));border-radius:16px;width:min(340px,100vw - 32px);height:min(360px,48dvh);max-height:calc(100dvh - 112px)}.game-chat__bubble{border:1px solid var(--border-strong);background:var(--surface);width:48px;height:48px;color:var(--amber);cursor:pointer;border-radius:999px;place-items:center;padding:0;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1);display:grid;box-shadow:0 12px 28px #0000004d}.game-chat--game.game-chat__bubble{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:50;position:absolute}.game-chat__bubble:hover,.game-chat__bubble:focus-visible{border-color:var(--amber);background:var(--surface-raised);transform:translateY(-2px)}.game-chat__bubble:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.game-chat__bubble svg{width:20px;height:20px}.game-chat__unread{border:2px solid var(--surface);background:var(--amber);border-radius:999px;width:10px;height:10px;position:absolute;top:0;right:0;box-shadow:0 0 0 3px #ff8a3d24}.game-chat__heading{align-items:center;gap:10px;min-width:0;display:flex}.game-chat__status{background:var(--success);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #59d38c1f}.game-chat__heading-copy{gap:2px;min-width:0;display:grid}.game-chat__subtitle{color:var(--text-subtle);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:10px;line-height:1.35;overflow:hidden}.game-chat__header{border-bottom:1px solid var(--border);background:var(--surface-raised);min-height:56px}@supports (color:color-mix(in lab, red, red)){.game-chat__header{background:color-mix(in srgb,var(--surface-raised)92%,transparent)}}.game-chat__title{color:var(--text);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:12px;font-weight:700;line-height:1.35;display:inline-flex}.game-chat__title-icon{width:14px;height:14px;color:var(--amber)}.game-chat__close{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;place-items:center;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);display:grid}.game-chat__close:hover{border-color:var(--border);background:var(--surface-soft);color:var(--text)}.game-chat__close:active,.game-chat__send:active:not(:disabled){transform:scale(.96)}.game-chat__close:focus-visible,.game-chat__send:focus-visible,.game-chat__input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.game-chat__rule{background:var(--border);height:1px}.game-chat__messages{overscroll-behavior:contain;min-height:0;padding:12px}.game-chat__empty{min-height:120px;color:var(--text-subtle);text-align:center;place-content:center;justify-items:center;gap:8px;padding:24px 12px;display:grid}.game-chat__empty svg{width:24px;height:24px;color:var(--amber);opacity:.72}.game-chat__empty p,.game-chat__empty span,.game-chat__system-message{color:var(--text-subtle);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;line-height:1.4}.game-chat__empty span{max-width:24ch;color:var(--muted);letter-spacing:0;text-transform:none;text-wrap:pretty;font-family:inherit;font-size:12px;line-height:1.45}.game-chat__message-row{flex-direction:column;gap:4px;max-width:100%;display:flex}.game-chat__message-row.is-own{align-items:flex-end}.game-chat__message-row.is-other{align-items:flex-start}.game-chat__sender{max-width:90%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-inline:4px;font-size:11px;line-height:1.35;overflow:hidden}.game-chat__message{border:1px solid var(--border);background:var(--surface-raised);max-width:95%;color:var(--text-secondary);overflow-wrap:anywhere;text-wrap:pretty;border-radius:14px 14px 14px 4px;padding:8px 12px;font-size:14px;line-height:1.4}.game-chat__message-row.is-own .game-chat__message{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.game-chat__message-row.is-own .game-chat__message{border-color:color-mix(in srgb,var(--amber)34%,var(--border))}}.game-chat__message-row.is-own .game-chat__message{background:var(--amber);border-radius:14px 14px 4px}@supports (color:color-mix(in lab, red, red)){.game-chat__message-row.is-own .game-chat__message{background:color-mix(in srgb,var(--amber)12%,var(--surface-raised))}}.game-chat__message-row.is-own .game-chat__message{color:var(--text)}.game-chat__composer{border-top:1px solid var(--border);background:var(--surface-raised);align-items:center;gap:8px;padding:8px}@supports (color:color-mix(in lab, red, red)){.game-chat__composer{background:color-mix(in srgb,var(--surface-raised)92%,transparent)}}.game-chat__input{border:1px solid var(--border);background:var(--surface);min-width:0;min-height:44px;color:var(--text);font:inherit;border-radius:10px;padding:8px 12px;font-size:16px;line-height:1.4;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),box-shadow .18s cubic-bezier(.32,.72,0,1),opacity .18s cubic-bezier(.32,.72,0,1)}.game-chat__input:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-soft)}.game-chat__input:focus-visible{border-color:var(--amber);box-shadow:0 0 0 4px #ff8a3d1f}.game-chat__input::placeholder{color:var(--text-subtle)}.game-chat__input.is-rate-limited{cursor:not-allowed;opacity:.5}.game-chat__send{border:1px solid var(--border);background:var(--surface-soft);width:44px;height:44px;color:var(--muted);cursor:pointer;border-radius:10px;flex:none;place-items:center;transition:transform .18s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1),opacity .18s cubic-bezier(.32,.72,0,1);display:grid}.game-chat__send:hover:not(:disabled){border-color:var(--amber);background:var(--surface-strong);color:var(--text)}.game-chat__send:disabled,.game-chat__send.is-rate-limited{cursor:not-allowed;opacity:.42}.game-chat__send.is-rate-limited{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.game-chat__send.is-rate-limited{border-color:color-mix(in srgb,var(--danger)34%,var(--border))}}.game-chat__send.is-rate-limited{color:var(--danger)}@media (max-width:520px){.game-chat--game{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:calc(100vw - 24px);height:min(420px,100dvh - 132px);max-height:calc(100dvh - 132px)}.game-chat--game.game-chat__bubble{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom))}.game-chat__messages{padding:8px}.game-chat__message{max-width:92%}}@media (prefers-reduced-motion:reduce){.game-chat__bubble:hover,.game-chat__bubble:focus-visible,.game-chat__close:active,.game-chat__send:active:not(:disabled){transform:none}}.online-players-panel button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.profile-menu{z-index:30;position:relative}.profile-menu-trigger{min-width:44px;min-height:44px;color:var(--text);cursor:pointer;letter-spacing:.04em;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414e0;border:1px solid #e9ecf333;border-radius:999px;align-items:center;gap:8px;padding:4px 10px 4px 5px;font-size:12px;font-weight:700;transition:transform .22s cubic-bezier(.32,.72,0,1),border-color .22s,background-color .22s;display:inline-flex}.profile-menu-trigger:hover,.profile-menu-trigger:focus-visible{border-color:var(--amber);background:var(--surface-raised)}.profile-menu-trigger:active{transform:scale(.96)}.profile-menu-trigger:focus-visible,.profile-menu-link:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.profile-avatar{color:#141414;letter-spacing:.04em;background:#ff8a3d;border:1px solid #ffb37da3;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:11px;font-weight:800;display:inline-grid;overflow:hidden;box-shadow:0 0 0 3px #ff8a3d24}.profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.profile-avatar--large{width:48px;height:48px;font-size:14px}.profile-menu-trigger__avatar{flex:none;display:inline-grid;position:relative}.profile-menu-trigger__badge{background:var(--danger);color:#fff;font-variant-numeric:tabular-nums;border:2px solid #141414;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:800;line-height:1;display:grid;position:absolute;top:-5px;right:-7px}.profile-menu-trigger__name{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;overflow:hidden}.profile-menu-chevron{color:var(--muted);transition:transform .22s cubic-bezier(.32,.72,0,1),color .22s}.profile-menu-chevron.is-open{color:var(--amber);transform:rotate(180deg)}.profile-menu-panel{width:min(356px,100vw - 32px);color:var(--text);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#141414f5;border:1px solid #e9ecf32e;border-radius:16px;gap:16px;padding:16px;animation:.36s cubic-bezier(.32,.72,0,1) both profile-panel-enter;display:grid;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 24px 60px #0000006b}.profile-menu-header{align-items:center;gap:12px;display:flex}.profile-menu-avatar-area,.profile-page-avatar{justify-items:center;gap:8px;display:grid}.profile-menu-name,.profile-menu-meta{margin:0}.profile-menu-name{color:var(--text);text-wrap:balance;font-size:16px;font-weight:700}.profile-menu-meta{color:var(--muted);margin-top:4px;font-size:12px}.profile-menu-guest-form{gap:8px;display:grid}.profile-menu-guest-form label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.profile-menu-guest-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.profile-menu-guest-row input{border:1px solid var(--border);min-width:0;min-height:44px;color:var(--text);background:#242424;border-radius:10px;padding:8px 10px;font-size:16px}.profile-menu-guest-row input:focus-visible,.profile-menu-guest-save:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.profile-menu-guest-save{min-height:44px;color:var(--text);cursor:pointer;background:#ff8a3d24;border:1px solid #ff8a3d6b;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s}.profile-menu-guest-save:hover{border-color:var(--amber);background:#ff8a3d3d}.profile-menu-guest-save:active{transform:scale(.96)}.profile-menu-guest-error{color:var(--danger);margin:0;font-size:12px;line-height:1.4}.profile-menu-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.profile-stat{text-align:center;min-width:0;animation:motion-enter .56s var(--stat-delay,0s)cubic-bezier(.32,.72,0,1)both;background:#1c1c1c;border:1px solid #e9ecf31a;border-radius:10px;gap:4px;padding:12px 8px;display:grid}.profile-stat strong{min-width:0;color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:20px;line-height:1}.profile-stat-value{font-size:clamp(16px,5vw,20px)!important}.profile-stat span{color:var(--muted);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:700;overflow:hidden}.profile-menu-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.friends-panel-reveal{opacity:0;pointer-events:none;transform-origin:top;grid-template-rows:0fr;min-height:0;transition:grid-template-rows .38s cubic-bezier(.32,.72,0,1),opacity .18s,transform .38s cubic-bezier(.32,.72,0,1);display:grid;transform:translateY(-8px)}.friends-panel-reveal.is-open{opacity:1;pointer-events:auto;grid-template-rows:1fr;transform:translateY(0)}.friends-panel-reveal__content{min-width:0;min-height:0;overflow:hidden}.friends-panel{overscroll-behavior:contain;border:1px solid var(--border);background:#181818;border-radius:12px;gap:12px;min-width:0;min-height:0;max-height:min(460px,58dvh);padding:12px;display:grid;overflow-y:auto}.friends-panel__header,.friends-panel__section-heading,.friends-panel__row,.friends-panel__row-actions,.friends-panel__search-row,.friends-panel__error{align-items:center;display:flex}.friends-panel__header,.friends-panel__section-heading,.friends-panel__error{justify-content:space-between;gap:8px}.friends-panel__kicker{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:700;line-height:1.3}.friends-panel__header h2,.friends-panel__section h3{color:var(--text);text-wrap:balance;margin:0;font-size:14px;font-weight:700;line-height:1.3}.friends-panel__count,.friends-panel__section-heading>span{min-width:24px;height:24px;color:var(--amber);font-variant-numeric:tabular-nums;background:#ff8a3d1a;border:1px solid #ff8a3d57;border-radius:8px;place-items:center;padding:0 6px;font-size:11px;font-weight:700;display:grid}.friends-panel__search,.friends-panel__section{gap:8px;display:grid}.friends-panel__search>label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.friends-panel__search-row{border:1px solid var(--border);min-height:44px;color:var(--text-subtle);background:#1f1f1f;border-radius:10px;gap:8px;padding:0 12px;transition:border-color .22s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1)}.friends-panel__search-row:focus-within{border-color:var(--amber);background:#272727;box-shadow:0 0 0 4px #ff8a3d1f}.friends-panel__search-row input{width:100%;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:16px}.friends-panel__search-row input::placeholder{color:var(--text-subtle)}.friends-panel__hint,.friends-panel__empty,.friends-panel__login p{color:var(--muted);text-wrap:pretty;margin:0;font-size:12px;line-height:1.45}.friends-panel__search-results{border:1px solid var(--border);background:#131209;border-radius:10px;gap:6px;max-height:160px;padding:4px;display:grid;overflow-y:auto}.friends-panel__row{background:#1f1f1f;border:1px solid #e9ecf314;border-radius:10px;gap:8px;min-width:0;min-height:44px;padding:5px 6px}.friends-panel__row:hover{border-color:var(--border-strong);background:#272727}.friends-panel__row-name,.friends-panel__row-status{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.friends-panel__row-name{min-width:0;color:var(--text);flex:1;font-size:13px;font-weight:700}.friends-panel__row-copy{flex:1;gap:2px;min-width:0;display:grid}.friends-panel__row-status{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.friends-panel__row-actions{flex:none;gap:4px}.friends-panel__icon-button{width:40px;height:40px;color:var(--text-secondary);cursor:pointer;background:#272727;border:1px solid #e9ecf329;border-radius:9px;flex:none;place-items:center;transition:transform .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1);display:grid}.friends-panel__icon-button:hover:not(:disabled){border-color:var(--amber);color:var(--amber);background:#ff8a3d29;transform:translateY(-1px)}.friends-panel__icon-button:active:not(:disabled){transform:scale(.96)}.friends-panel__icon-button.is-positive{color:var(--success);border-color:#59d38c52}.friends-panel__icon-button.is-invite{color:var(--amber);border-color:#ff8a3d52}.friends-panel__icon-button.is-sent{color:var(--success);cursor:default;background:#59d38c1a;border-color:#59d38c52}.friends-panel__icon-button.is-muted:hover:not(:disabled){border-color:var(--border-strong);color:var(--text);background:#313131}.friends-panel__icon-button:disabled,.friends-panel__confirm-remove:disabled{cursor:wait;opacity:.6}.friends-panel__icon-button:focus-visible,.friends-panel__confirm-remove:focus-visible,.friends-panel__primary-link:focus-visible,.friends-panel__error button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.friends-panel__status{border-radius:50%;flex:none;width:7px;height:7px}.friends-panel__status--available{background:var(--success);box-shadow:0 0 0 3px #59d38c1f}.friends-panel__status--in_lobby{background:var(--amber);box-shadow:0 0 0 3px #ff8a3d1f}.friends-panel__status--in_game,.friends-panel__status--offline{background:var(--muted)}.friends-panel__confirm-remove{min-height:40px;color:var(--danger);cursor:pointer;text-transform:uppercase;background:#ff64641a;border:1px solid #ff646457;border-radius:9px;padding:6px 9px;font-size:10px;font-weight:700}.friends-panel__error{color:var(--danger);background:#ff646414;border:1px solid #ff646457;border-radius:9px;padding:8px;font-size:11px;line-height:1.35}.friends-panel__error button{min-height:32px;color:var(--danger);cursor:pointer;background:0 0;border:1px solid #ff646457;border-radius:7px;flex:none;align-items:center;gap:5px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.friends-panel__loading{gap:8px;display:grid}.friends-panel__loading span{background:#272727;border-radius:10px;height:44px;animation:.9s ease-in-out infinite alternate lobby-skeleton-pulse;display:block}.friends-panel__loading span:nth-child(2){animation-delay:.12s}.friends-panel__loading span:nth-child(3){animation-delay:.24s}.friends-panel__login{border:1px solid var(--border);background:#1f1f1f;border-radius:10px;gap:10px;padding:12px;display:grid}.friends-panel__primary-link{min-height:40px;color:var(--text);background:#ff8a3d1f;border:1px solid #ff8a3d57;border-radius:9px;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.friends-panel__primary-link:hover{border-color:var(--amber);background:#ff8a3d38}.profile-menu-link{height:64px;min-height:64px;color:var(--text);cursor:pointer;text-align:start;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:12px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s,color .22s;display:flex}.profile-menu-link:hover{color:#fff;background:#ff8a3d1a;border-color:#ff8a3d52;transform:translate(3px)}.profile-menu-link svg{width:17px;height:17px;color:var(--amber);flex:0 0 17px}.profile-menu-link>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.profile-menu-friends-toggle{width:100%}.profile-menu-friends-toggle__badge{min-width:20px;height:20px;color:var(--amber);font-variant-numeric:tabular-nums;background:#ff8a3d1f;border:1px solid #ff8a3d57;border-radius:999px;place-items:center;margin-inline-start:auto;padding:0 5px;font-size:10px;line-height:1;display:inline-grid}.profile-menu-friends-toggle__chevron{margin-inline-start:auto;transition:transform .38s cubic-bezier(.32,.72,0,1),color .22s;color:var(--muted)!important}.profile-menu-friends-toggle__badge+.profile-menu-friends-toggle__chevron{margin-inline-start:4px}.profile-menu-friends-toggle__chevron.is-open{transform:rotate(180deg);color:var(--amber)!important}.profile-menu-logout{width:100%}.avatar-picker{justify-items:center;gap:8px;min-width:0;display:grid}.avatar-picker__trigger{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;display:inline-grid;position:relative}.avatar-picker__trigger .profile-avatar{transition:transform .22s cubic-bezier(.32,.72,0,1),border-color .18s,box-shadow .18s}.avatar-picker__trigger:hover .profile-avatar{border-color:var(--amber);transform:scale(1.04);box-shadow:0 0 0 4px #ff8a3d29}.avatar-picker__trigger:active .profile-avatar{transform:scale(.96)}.avatar-picker__trigger:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.avatar-picker__trigger:disabled{cursor:wait}.avatar-picker__badge{border:2px solid var(--surface);background:var(--amber);color:#141414;pointer-events:none;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:0;right:0}.avatar-picker__input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.avatar-picker__error{max-width:24ch;color:var(--danger);text-wrap:pretty;margin:0;font-size:10px;line-height:1.35}.avatar-cropper__layer{z-index:1000;overscroll-behavior:contain;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.avatar-cropper__backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000c7;position:absolute;inset:0}.avatar-cropper__dialog{z-index:1;border:1px solid var(--border-strong);background:var(--surface-raised);border-radius:16px;gap:16px;width:min(440px,100%);max-height:calc(100dvh - 32px);padding:24px;display:grid;position:relative;overflow-y:auto;box-shadow:0 28px 80px #00000094}.avatar-cropper__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.avatar-cropper__header h2{color:var(--text);text-wrap:balance;margin:0;font-size:20px;font-weight:700;line-height:1.2}.avatar-cropper__header p{color:var(--muted);text-wrap:pretty;margin:8px 0 0;font-size:12px;line-height:1.4}.avatar-cropper__icon-button,.avatar-cropper__center-button,.avatar-cropper__secondary,.avatar-cropper__primary{letter-spacing:.03em;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;font-size:12px;font-weight:700;transition:transform .22s cubic-bezier(.32,.72,0,1),color .18s,border-color .18s,background-color .18s;display:inline-flex}.avatar-cropper__icon-button{border-color:var(--border);background:var(--surface-soft);color:var(--text-secondary);cursor:pointer;flex:0 0 40px;padding:0}.avatar-cropper__icon-button:hover,.avatar-cropper__icon-button:focus-visible{border-color:var(--amber);color:var(--text)}.avatar-cropper__preview-shell{justify-items:center;gap:12px;display:grid}.avatar-cropper__viewport{aspect-ratio:1;border:2px solid var(--amber);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#000;border-radius:50%;width:min(280px,100vw - 80px);position:relative;overflow:hidden;box-shadow:0 0 0 6px #ff8a3d1f,0 16px 32px #0000005c}.avatar-cropper__viewport:active{cursor:grabbing}.avatar-cropper__viewport:focus-visible{outline:2px solid var(--focus);outline-offset:5px}.avatar-cropper__viewport img{-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute}.avatar-cropper__guide{pointer-events:none;border:1px solid #ffffff6b;border-radius:50%;position:absolute;inset:8px}.avatar-cropper__hint{max-width:34ch;color:var(--muted);text-align:center;text-wrap:pretty;justify-content:center;align-items:flex-start;gap:6px;margin:0;font-size:11px;line-height:1.4;display:inline-flex}.avatar-cropper__controls{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;gap:8px;padding:16px;display:grid}.avatar-cropper__zoom-label{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:700;display:flex}.avatar-cropper__zoom-label span{align-items:center;gap:6px;display:inline-flex}.avatar-cropper__zoom-label output{color:var(--amber);font-variant-numeric:tabular-nums}.avatar-cropper__controls input[type=range]{width:100%;accent-color:var(--amber);cursor:pointer}.avatar-cropper__center-button{border-color:var(--border);min-height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;justify-self:start;padding:0 12px}.avatar-cropper__center-button:hover,.avatar-cropper__center-button:focus-visible{border-color:var(--amber);color:var(--text)}.avatar-cropper__error{color:var(--danger);text-wrap:pretty;margin:0;font-size:12px;line-height:1.4}.avatar-cropper__actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.avatar-cropper__secondary,.avatar-cropper__primary{cursor:pointer;min-width:112px;padding:0 16px}.avatar-cropper__secondary{border-color:var(--border);color:var(--text-secondary);background:0 0}.avatar-cropper__secondary:hover,.avatar-cropper__secondary:focus-visible{border-color:var(--border-strong);color:var(--text)}.avatar-cropper__primary{border-color:var(--amber);background:var(--amber);color:#141414}.avatar-cropper__primary:hover,.avatar-cropper__primary:focus-visible{background:var(--focus)}.avatar-cropper__icon-button:active,.avatar-cropper__center-button:active,.avatar-cropper__secondary:active,.avatar-cropper__primary:active{transform:scale(.96)}.avatar-cropper__icon-button:focus-visible,.avatar-cropper__center-button:focus-visible,.avatar-cropper__secondary:focus-visible,.avatar-cropper__primary:focus-visible,.avatar-cropper__controls input[type=range]:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.avatar-cropper__icon-button:disabled,.avatar-cropper__center-button:disabled,.avatar-cropper__secondary:disabled,.avatar-cropper__primary:disabled{cursor:wait;opacity:.56}@media (prefers-reduced-motion:reduce){.avatar-cropper__icon-button,.avatar-cropper__center-button,.avatar-cropper__secondary,.avatar-cropper__primary{transition:none}}@media (max-width:480px){.avatar-cropper__dialog{padding:16px}.avatar-cropper__actions>button{flex:112px}}.notification-viewport{z-index:9999;pointer-events:none;gap:12px;width:min(400px,100vw - 32px);display:grid;position:fixed;bottom:24px;right:24px}.notification-toast{--notification-accent:var(--text-secondary);border:1px solid var(--notification-accent);grid-template-columns:auto minmax(0,1fr) auto;gap:12px;width:100%;padding:16px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.notification-toast{border:1px solid color-mix(in srgb,var(--notification-accent)36%,var(--border))}}.notification-toast{color:var(--text);pointer-events:auto;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414f0;border-radius:16px;transition:transform .3s cubic-bezier(.32,.72,0,1),opacity .3s,background-color .18s,border-color .18s;animation:.52s cubic-bezier(.32,.72,0,1) both notification-enter;box-shadow:0 18px 50px #0000004d}.notification-toast--success{--notification-accent:var(--success)}.notification-toast--error{--notification-accent:var(--danger)}.notification-toast--warning{--notification-accent:var(--amber)}.notification-toast--info{--notification-accent:var(--focus)}.notification-toast:hover{border-color:var(--notification-accent)}@supports (color:color-mix(in lab, red, red)){.notification-toast:hover{border-color:color-mix(in srgb,var(--notification-accent)58%,var(--border))}}.notification-toast:hover{background:var(--surface-raised)}.notification-toast--closing{opacity:0;transform:translateY(8px)scale(.98)}.notification-toast__icon{border:1px solid var(--notification-accent);place-items:center;width:32px;height:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.notification-toast__icon{border:1px solid color-mix(in srgb,var(--notification-accent)42%,transparent)}}.notification-toast__icon{background:var(--notification-accent);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.notification-toast__icon{background:color-mix(in srgb,var(--notification-accent)12%,transparent)}}.notification-toast__icon{color:var(--notification-accent)}.notification-toast__content{align-content:center;gap:4px;min-width:0;display:grid}.notification-toast__title{color:var(--notification-accent);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.35}.notification-toast__message{color:var(--text-secondary);overflow-wrap:anywhere;text-wrap:pretty;margin:0;font-size:14px;font-weight:500;line-height:1.45}.notification-toast__close{width:40px;height:40px;color:var(--text-subtle);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-self:center;place-items:center;transition:background-color .18s,border-color .18s,color .18s,transform .18s cubic-bezier(.32,.72,0,1);display:grid}.notification-toast__close:hover{border-color:var(--border);background:var(--surface-soft);color:var(--text)}.notification-toast__close:active{transform:scale(.96)}.notification-toast__close:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.notification-toast__progress{background:var(--notification-accent);transform-origin:0;height:2px;animation:5s linear forwards shrink-progress;position:absolute;bottom:0;left:0;right:0}@keyframes notification-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes shrink-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (max-width:520px){.notification-viewport{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:auto;left:16px}}@media (prefers-reduced-motion:reduce){.notification-toast{transition:opacity .18s;animation:none}.notification-toast--closing{transform:none}.notification-toast__progress{animation:none}}@keyframes page-enter{0%{opacity:0}to{opacity:1}}@keyframes profile-panel-enter{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.friends-panel-reveal{transition:opacity .18s;transform:none}}@media (max-width:520px){.profile-menu-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.top-right-controls{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right))}.profile-menu-trigger__name,.profile-menu-chevron{display:none}.profile-menu-trigger{padding-right:5px}.profile-menu-panel{right:-4px}}@media (max-width:380px){.profile-menu-actions{grid-template-columns:1fr}}.lobby-shell{min-height:100dvh;color:var(--text);padding:88px clamp(16px,4vw,64px) 48px}.lobby-frame{width:min(100%,1240px);margin:0 auto}.lobby-active-game{justify-content:center;width:min(100%,1240px);margin:0 auto 24px;display:flex}.lobby-active-game .game-panel{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.lobby-active-game .game-panel{border-color:color-mix(in srgb,var(--amber)38%,var(--border))}}.lobby-active-game .game-panel{background:#141414e6}.lobby-header{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:32px;animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter;display:flex}.lobby-heading{min-width:0;max-width:680px}.lobby-title{color:#fff;letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:3rem;font-weight:700;line-height:1.05}.lobby-title span{color:var(--amber)}.lobby-subtitle{max-width:56ch;color:var(--muted);text-wrap:pretty;margin:16px 0 0;font-size:16px;line-height:1.6}.lobby-create-action{border:1px solid var(--amber);flex:none;align-items:center;gap:10px;min-height:48px;padding:12px 16px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.lobby-create-action{border:1px solid color-mix(in srgb,var(--amber)58%,transparent)}}.lobby-create-action{background:var(--amber);color:#141414;border-radius:12px;font-size:16px;font-weight:700;line-height:1.35;text-decoration:none;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1)}.lobby-create-action:hover{background:#ff9b58;border-color:#ffb37d;transform:translateY(-3px)}.lobby-create-action:active{transform:scale(.96)}.lobby-create-action:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.lobby-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:24px;display:grid}.lobby-rooms-column,.lobby-sidebar{min-width:0;animation:.76s cubic-bezier(.32,.72,0,1) .1s both motion-enter}.lobby-sidebar{gap:16px;animation-delay:.18s;display:grid}.lobby-rooms-panel{border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414db;border-radius:16px;flex-direction:column;min-width:0;min-height:560px;display:flex;box-shadow:0 24px 60px #00000038}.lobby-rooms-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 24px 16px;display:flex}.lobby-section-kicker,.online-players-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700;line-height:1.35}.lobby-rooms-header h2,.online-players-header h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:24px;font-weight:700;line-height:1.2}.lobby-rooms-header>div>p:last-child{max-width:52ch;color:var(--muted);text-wrap:pretty;margin:8px 0 0;font-size:14px;line-height:1.5}.lobby-refresh-button{border:1px solid var(--border);background:var(--surface-raised);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;border-radius:12px;flex:none;place-items:center;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1);display:grid}.lobby-refresh-button:hover:not(:disabled){border-color:var(--amber);background:var(--surface-strong);color:var(--amber);transform:rotate(12deg)}.lobby-refresh-button:active:not(:disabled){transform:scale(.96)}.lobby-refresh-button:focus-visible,.room-search__input:focus-visible,.online-player-invite:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.lobby-refresh-button:disabled{cursor:wait;opacity:.65}.lobby-refresh-button .is-loading{animation:.9s linear infinite lobby-refresh-spin}.lobby-rooms-search{padding:0 24px 16px}.room-search{width:100%;position:relative}.room-search__icon{color:var(--text-subtle);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.room-search__input{border:1px solid var(--border);background:var(--surface-raised);width:100%;min-height:48px;color:var(--text);border-radius:12px;padding:12px 16px 12px 48px;font-family:inherit;font-size:16px;line-height:1.5;transition:background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1)}.room-search__input::placeholder{color:var(--text-subtle)}.room-search__input:hover{border-color:var(--border-strong);background:var(--surface-soft)}.room-search__input:focus-visible{border-color:var(--amber);background:var(--surface-soft);box-shadow:0 0 0 4px #ff8a3d1f}.lobby-rooms-list{overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;min-height:320px;max-height:560px;padding:0 24px 24px;display:flex;overflow-y:auto}.room-tile{border:1px solid var(--border);background:#242424b8;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;min-width:0;min-height:78px;padding:12px 12px 12px 16px;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:flex;position:relative;overflow:hidden}.room-tile:before{background:var(--success);content:"";opacity:.8;border-radius:0 2px 2px 0;width:2px;position:absolute;top:16px;bottom:16px;left:0}.room-tile:hover{background:var(--surface-strong);border-color:#ff8a3d75;transform:translateY(-3px);box-shadow:0 18px 36px #00000038}.room-tile:active{transform:scale(.98)}.room-tile__identity{align-items:center;gap:12px;min-width:0;display:flex}.room-tile__status{background:var(--success);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #59d38c1f}.room-tile__copy{gap:8px;min-width:0;display:grid}.room-tile__name{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:700;line-height:1.35;overflow:hidden}.room-tile__meta{color:var(--muted);align-items:center;gap:12px;font-size:12px;line-height:1.35;display:flex}.room-tile__private,.room-tile__players{align-items:center;gap:6px;display:inline-flex}.room-tile__private{color:var(--amber)}.room-tile__actions{flex:none;align-items:center;gap:8px;display:flex}.room-tile__full{border:1px solid var(--border);min-height:40px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border-radius:10px;align-items:center;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.room-tile__join,.room-tile__observe{color:#ffe8d6;letter-spacing:.08em;text-transform:uppercase;background:#ff8a3d1a;border:1px solid #ff8a3d61;border-radius:10px;flex:none;align-items:center;gap:8px;min-height:40px;padding:8px 12px;font-size:12px;font-weight:700;line-height:1.35;text-decoration:none;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1);display:inline-flex}.room-tile__join:hover,.room-tile__observe:hover{border-color:var(--amber);color:#fff;background:#ff8a3d33;transform:translateY(-2px)}.room-tile__observe{border:1px solid var(--border);min-height:40px;color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;border-radius:10px;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.35;text-decoration:none;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1)}.room-tile__observe:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.room-tile__join:active,.room-tile__observe:active{transform:scale(.96)}.room-tile__join:focus-visible,.room-tile__observe:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.lobby-empty-state,.lobby-loading-state{border:1px dashed var(--border-strong);min-height:280px;color:var(--muted);text-align:center;border-radius:12px;align-content:center;place-items:center;gap:12px;padding:32px 16px;display:grid}.lobby-empty-state svg{color:var(--amber)}.lobby-empty-state p{color:var(--text);text-wrap:balance;margin:0;font-size:16px;font-weight:700;line-height:1.35}.lobby-empty-state span{max-width:36ch;color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.5}.lobby-loading-rows{gap:12px;width:min(100%,420px);display:grid}.lobby-loading-rows span{background:var(--surface-strong);opacity:.65;border-radius:12px;height:64px;animation:1.3s cubic-bezier(.32,.72,0,1) infinite alternate lobby-skeleton-pulse;display:block}.lobby-loading-rows span:nth-child(2){opacity:.48;animation-delay:.12s}.lobby-loading-rows span:nth-child(3){opacity:.32;animation-delay:.24s}.lobby-sidebar-note{border:1px solid var(--border);color:var(--muted);background:#141414b8;border-radius:16px;align-items:flex-start;gap:12px;padding:16px;display:flex}.lobby-sidebar-note__icon{width:36px;height:36px;color:var(--amber);background:#ff8a3d1a;border:1px solid #ff8a3d4d;border-radius:10px;flex:none;place-items:center;display:grid}.lobby-sidebar-note__title{color:var(--text);margin:0 0 4px;font-size:14px;font-weight:700;line-height:1.35}.lobby-sidebar-note p:last-child{text-wrap:pretty;margin:0;font-size:12px;line-height:1.5}.online-players-dock{top:max(72px,calc(env(safe-area-inset-top) + 56px));right:max(16px,env(safe-area-inset-right));z-index:60;justify-items:end;width:min(320px,100vw - 24px);display:grid;position:fixed}.online-players-dock--bottom{top:auto;bottom:max(16px,env(safe-area-inset-bottom))}.online-players-launcher{min-height:44px;color:var(--text);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414f0;border:1px solid #ff8a3d6b;border-radius:999px;align-items:center;gap:8px;padding:8px 10px 8px 12px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.35;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s,box-shadow .22s;display:inline-flex;box-shadow:0 14px 32px #0000003d}.online-players-launcher:hover,.online-players-launcher.is-open{border-color:var(--amber);background:#2c2c2cf5;box-shadow:0 18px 40px #0000004d}.online-players-launcher:hover{transform:translateY(-2px)}.online-players-launcher:active{transform:scale(.96)}.online-players-launcher:focus-visible,.online-players-close:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.online-players-launcher>svg:first-child{color:var(--amber)}.online-players-launcher__count{min-width:24px;height:24px;color:var(--amber);font-variant-numeric:tabular-nums;background:#ff8a3d29;border-radius:999px;place-items:center;font-size:12px;display:grid}.online-players-launcher__chevron{color:var(--muted);transition:transform .22s cubic-bezier(.32,.72,0,1),color .22s}.online-players-launcher.is-open .online-players-launcher__chevron{color:var(--amber);transform:rotate(180deg)}.online-players-panel{z-index:60;border:1px solid var(--border);width:100%;min-width:0;height:min(420px,42vh);color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414e6;border-radius:16px;flex-direction:column;padding:16px;animation:.52s cubic-bezier(.32,.72,0,1) both profile-panel-enter;display:flex;position:relative;box-shadow:0 24px 60px #00000038}.online-players-panel--bottom,.online-players-panel--top{right:max(16px,env(safe-area-inset-right));width:min(280px,100vw - 32px);position:fixed}.online-players-panel--bottom{bottom:max(16px,env(safe-area-inset-bottom))}.online-players-panel--top{top:max(72px,calc(env(safe-area-inset-top) + 56px))}.online-players-panel--popover{width:min(320px,100vw - 24px);height:min(240px,50dvh);max-height:calc(100dvh - 144px);margin-top:8px;padding:12px;position:relative;inset:auto}.online-players-panel--popover .online-players-header{padding-bottom:12px}.online-players-panel--popover .online-players-list{gap:6px;padding-top:12px}.online-players-panel--popover .online-player-row{min-height:48px;padding:6px}.online-players-panel--lobby{height:420px;position:relative}.online-players-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:16px;display:flex}.online-players-header-actions{align-items:center;gap:8px;display:flex}.online-players-close{border:1px solid var(--border);background:var(--surface-raised);width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:10px;place-items:center;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s,color .22s;display:grid}.online-players-close:hover{border-color:var(--border-strong);background:var(--surface-strong);color:var(--text);transform:translateY(-2px)}.online-players-close:active{transform:scale(.96)}.online-players-kicker{color:var(--muted);margin-bottom:6px;font-size:10px}.online-players-header h2{font-size:18px}.online-players-count{min-width:32px;height:32px;color:var(--amber);font-variant-numeric:tabular-nums;background:#ff8a3d1a;border:1px solid #ff8a3d57;border-radius:10px;place-items:center;font-size:14px;font-weight:700;display:grid}.online-players-list{overscroll-behavior:contain;flex:1;align-content:start;gap:8px;min-height:0;padding-top:16px;display:grid;overflow-y:auto}.online-players-empty{color:var(--muted);text-align:center;text-wrap:pretty;margin:16px 8px 0;font-size:14px;line-height:1.5}.online-player-row{border:1px solid var(--border);background:#242424b8;border-radius:12px;align-items:center;gap:8px;min-width:0;min-height:56px;padding:8px;transition:background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),transform .42s cubic-bezier(.32,.72,0,1);display:flex}.online-player-row:hover{border-color:var(--border-strong);background:var(--surface-strong);transform:translateY(-2px)}.online-player-row.is-current{background:#ff8a3d1a;border-color:#ff8a3d70}.online-player-status{border-radius:50%;flex:none;width:7px;height:7px}.online-player-status--available{background:var(--success);box-shadow:0 0 0 3px #59d38c1f}.online-player-status--in_lobby{background:var(--amber);box-shadow:0 0 0 3px #ff8a3d1f}.online-player-status--in_game{background:var(--muted)}.online-player-copy{flex:1;gap:2px;min-width:0;display:grid}.online-player-name,.online-player-state{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.online-player-name{color:var(--text);font-size:14px;font-weight:700}.online-player-state{color:var(--muted);font-size:11px}.online-player-you{color:var(--amber);letter-spacing:.08em;font-size:10px;font-weight:700}.online-player-invite{width:36px;height:36px;color:var(--amber);cursor:pointer;background:#ff8a3d1a;border:1px solid #ff8a3d52;border-radius:10px;flex:none;place-items:center;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1);display:grid}.online-player-invite:hover:not(:disabled){border-color:var(--amber);background:var(--amber);color:#141414;transform:translateY(-2px)}.online-player-invite:active:not(:disabled){transform:scale(.96)}.online-player-invite.is-sent,.online-player-invite:disabled{color:var(--success);cursor:default;background:#59d38c1a;border-color:#59d38c52}@keyframes lobby-refresh-spin{to{transform:rotate(360deg)}}@keyframes lobby-skeleton-pulse{0%{opacity:.3}to{opacity:.72}}@media (max-width:900px){.lobby-layout{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.lobby-header{gap:24px}}@media (max-width:720px){.lobby-layout{grid-template-columns:1fr}.lobby-sidebar{grid-template-columns:1fr 1fr;align-items:start}.online-players-panel--lobby{height:360px}}@media (max-width:560px){.lobby-shell{padding-top:88px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.lobby-header{flex-direction:column;align-items:stretch;gap:24px;margin-bottom:24px}.lobby-title{font-size:2.25rem}.lobby-subtitle{margin-top:12px;font-size:14px}.lobby-create-action{justify-content:center;width:100%}.lobby-rooms-panel{min-height:520px}.lobby-rooms-header{padding:20px 16px 12px}.lobby-rooms-search{padding:0 16px 12px}.lobby-rooms-list{min-height:280px;padding:0 16px 16px}.room-tile{flex-direction:column;align-items:stretch;gap:12px;padding-left:12px}.room-tile__identity{gap:8px}.room-tile__actions{justify-content:flex-end;width:100%}.room-tile__join,.room-tile__observe{min-height:38px;padding:8px 10px}.lobby-sidebar{grid-template-columns:1fr}.online-players-panel--lobby{height:340px}}@media (prefers-reduced-motion:reduce){.lobby-header,.lobby-rooms-column,.lobby-sidebar,.online-players-panel,.lobby-refresh-button .is-loading,.lobby-loading-rows span{animation:none}.lobby-create-action:hover,.room-tile:hover,.room-tile__join:hover,.online-players-launcher:hover,.online-players-launcher:active,.online-players-close:hover,.online-player-row:hover,.online-player-invite:hover:not(:disabled){transform:none}}.create-room-shell{min-height:100dvh;color:var(--text);padding:88px clamp(16px,4vw,64px) 48px;overflow-y:auto}.create-room-active-game{justify-content:center;width:min(100%,1120px);margin:0 auto 24px;display:flex}.create-room-active-game .game-panel{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.create-room-active-game .game-panel{border-color:color-mix(in srgb,var(--amber)38%,var(--border))}}.create-room-active-game .game-panel{background:#141414e6}.create-room-frame{grid-template-columns:minmax(0,760px);justify-content:center;gap:32px;width:min(100%,760px);margin:0 auto;display:grid}.create-room-heading{text-align:center;min-width:0;max-width:680px;margin:0 auto;animation:.76s cubic-bezier(.32,.72,0,1) both motion-enter}.create-room-title{color:#fff;letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:3rem;font-weight:700;line-height:1.05}.create-room-title span{color:var(--amber)}.create-room-subtitle{max-width:52ch;color:var(--muted);text-wrap:pretty;margin:16px 0 0;font-size:16px;line-height:1.6}.create-room-context{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px;display:flex}.create-room-context span{border:1px solid var(--border);min-height:36px;color:var(--text-secondary);letter-spacing:.04em;background:#141414a3;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:700;display:inline-flex}.create-room-context svg{color:var(--amber)}.create-room-card{border:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#141414eb;border-radius:16px;width:100%;min-width:0;margin:0 auto;animation:.76s cubic-bezier(.32,.72,0,1) .12s both motion-enter;box-shadow:0 24px 60px #00000047}.create-room-card-header{border-bottom:1px solid var(--border);justify-content:flex-start;align-items:flex-start;gap:16px;padding:24px 24px 20px;display:flex}.create-room-card-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700;line-height:1.35}.create-room-card-header h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:24px;font-weight:700;line-height:1.2}.create-room-form{gap:24px;padding:24px;display:grid}.create-room-field,.create-room-fieldset{min-width:0}.create-room-field{gap:16px;display:grid}.create-room-field>label,.create-room-fieldset legend{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;padding:0;font-size:12px;font-weight:700;line-height:1.35}.create-room-fieldset{border:0;gap:0;margin:0;padding:0;display:grid}.create-room-fieldset>*+*{margin-block-start:16px}.create-room-input{border:1px solid var(--border);background:var(--surface-raised);width:100%;min-height:48px;color:var(--text);border-radius:12px;padding:12px;font-family:inherit;font-size:16px;line-height:1.5;transition:background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1)}.create-room-input::placeholder{color:var(--text-subtle)}.create-room-input:hover{border-color:var(--border-strong);background:var(--surface-soft)}.create-room-input:focus-visible,.create-choice:focus-visible,.create-room-submit:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.create-room-input:focus-visible{border-color:var(--amber);background:var(--surface-soft);box-shadow:0 0 0 4px #ff8a3d1f}.create-choice-grid{flex-wrap:nowrap;gap:8px;display:flex}.create-choice-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.create-choice-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.create-choice{border:1px solid var(--border);background:var(--surface-raised);min-width:0;min-height:48px;color:var(--text-secondary);cursor:pointer;text-align:center;border-radius:12px;flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:12px;font-family:inherit;font-size:14px;font-weight:700;line-height:1.35;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:flex}.create-choice:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text);transform:translateY(-2px)}.create-choice:active{transform:scale(.96)}.create-choice.is-selected{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.create-choice.is-selected{border-color:color-mix(in srgb,var(--amber)62%,transparent)}}.create-choice.is-selected{color:#ffe8d6;background:#ff8a3d1f;box-shadow:0 0 0 3px #ff8a3d14}.create-choice.is-selected svg{color:var(--amber)}.create-room-password-toggle{min-height:44px;color:var(--text-secondary);cursor:pointer;align-self:start;align-items:center;gap:10px;font-size:14px;font-weight:600;display:inline-flex;position:relative}.create-room-password-toggle input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.create-room-checkbox{border:1px solid var(--border-strong);background:var(--surface-raised);color:#141414;border-radius:8px;place-items:center;width:24px;height:24px;transition:background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:grid}.create-room-checkbox svg{opacity:0;transition:opacity .22s cubic-bezier(.32,.72,0,1),transform .42s cubic-bezier(.32,.72,0,1);transform:scale(.25)}.create-room-password-toggle input:checked+.create-room-checkbox{border-color:var(--amber);background:var(--amber);box-shadow:0 0 0 4px #ff8a3d1f}.create-room-password-toggle input:checked+.create-room-checkbox svg{opacity:1;transform:scale(1)}.create-room-password-toggle input:focus-visible+.create-room-checkbox{outline:2px solid var(--focus);outline-offset:3px}.create-room-password-toggle:hover{color:var(--text)}.create-room-password-input{position:relative}.create-room-password-input>svg{z-index:1;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.create-room-password-input .create-room-input{padding-left:44px}.create-room-error{color:var(--danger);text-wrap:pretty;margin:-8px 0 0;font-size:14px;font-weight:600;line-height:1.45}.create-room-submit{border:1px solid var(--amber);justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 16px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.create-room-submit{border:1px solid color-mix(in srgb,var(--amber)58%,transparent)}}.create-room-submit{background:var(--amber);color:#141414;cursor:pointer;border-radius:12px;font-family:inherit;font-size:16px;font-weight:700;line-height:1.35;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),opacity .22s cubic-bezier(.32,.72,0,1)}.create-room-submit:hover:not(:disabled){background:#ff9b58;border-color:#ffb37d;transform:translateY(-3px)}.create-room-submit:active:not(:disabled){transform:scale(.96)}.create-room-submit:disabled{cursor:wait;opacity:.55}@media (max-width:900px){.create-room-frame{grid-template-columns:1fr;gap:32px;max-width:720px}.create-room-heading{text-align:center;max-width:680px}.create-room-subtitle{margin-left:auto;margin-right:auto}.create-room-context{justify-content:center}}@media (max-width:560px){.create-room-shell{padding-top:88px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.create-room-title{font-size:2.25rem}.create-room-subtitle{margin-top:12px;font-size:14px}.create-room-card-header{padding:20px 16px 16px}.create-room-form{gap:20px;padding:20px 16px 24px}.create-choice{padding:10px 8px;font-size:12px}}@media (prefers-reduced-motion:reduce){.create-room-heading,.create-room-card{animation:none}.create-choice:hover,.create-room-submit:hover:not(:disabled){transform:none}}.game-runtime-shell{isolation:isolate;width:100%;min-height:100dvh;padding:72px clamp(12px,3vw,48px)max(24px,env(safe-area-inset-bottom));color:var(--text);flex-direction:column;display:flex;position:relative;overflow:hidden}.game-runtime-shell--scroll{overflow:hidden auto}.game-runtime-game{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:24px;width:100%;min-height:0;display:flex}.game-runtime-game-region{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:24px;width:100%;min-height:0;padding:16px;display:flex}.game-runtime-stage-content{width:min(100%,1120px);margin-inline:auto}.game-runtime-surface,.game-runtime-board-surface,.game-runtime-side-panel,.game-runtime-result{border:1px solid var(--border);background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.game-runtime-surface,.game-runtime-board-surface,.game-runtime-side-panel,.game-runtime-result{background:color-mix(in srgb,var(--surface)88%,transparent)}}.game-runtime-surface,.game-runtime-board-surface,.game-runtime-side-panel,.game-runtime-result{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #0000003d}.game-runtime-surface{padding:24px}.game-runtime-board-surface{background:var(--surface-raised);padding:12px}@supports (color:color-mix(in lab, red, red)){.game-runtime-board-surface{background:color-mix(in srgb,var(--surface-raised)92%,transparent)}}.game-runtime-side-panel{flex-direction:column;gap:12px;min-width:220px;padding:16px;display:flex}.game-runtime-kicker{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700;line-height:1.35}.game-runtime-title{color:var(--text);letter-spacing:-.04em;text-align:center;text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.game-runtime-subtitle{max-width:60ch;color:var(--muted);text-align:center;text-wrap:pretty;margin:8px auto 0;font-size:14px;line-height:1.5}.game-runtime-status-pill,.game-runtime-player-chip{border:1px solid var(--border);background:var(--surface-raised);color:var(--text-secondary);border-radius:12px}.game-runtime-status-pill{letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;min-height:40px;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex}.game-runtime-status-pill.is-active{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.game-runtime-status-pill.is-active{border-color:color-mix(in srgb,var(--success)60%,transparent)}}.game-runtime-status-pill.is-active{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.game-runtime-status-pill.is-active{background:color-mix(in srgb,var(--success)12%,var(--surface-raised))}}.game-runtime-status-pill.is-active{color:var(--success)}.game-runtime-player-chip{justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:8px 12px;font-size:13px;display:flex}.game-runtime-player-chip.is-active,.game-runtime-player-chip.is-current{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.game-runtime-player-chip.is-active,.game-runtime-player-chip.is-current{border-color:color-mix(in srgb,var(--amber)62%,transparent)}}.game-runtime-player-chip.is-active,.game-runtime-player-chip.is-current{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.game-runtime-player-chip.is-active,.game-runtime-player-chip.is-current{background:color-mix(in srgb,var(--amber)10%,var(--surface-raised))}}.game-runtime-player-chip.is-active,.game-runtime-player-chip.is-current{color:var(--text)}.game-runtime-player-chip strong{color:var(--text);font-weight:700}.game-runtime-action-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.game-runtime-button,.game-runtime-link-button{border:1px solid var(--border);background:var(--surface-raised);min-height:44px;color:var(--text);cursor:pointer;font:inherit;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s,opacity .22s;display:inline-flex}.game-runtime-button:hover:not(:disabled),.game-runtime-link-button:hover{border-color:var(--amber);background:var(--surface-strong);transform:translateY(-2px)}.game-runtime-button:active:not(:disabled),.game-runtime-link-button:active{transform:scale(.96)}.game-runtime-button:disabled{cursor:not-allowed;opacity:.48}.game-runtime-button--primary,.game-runtime-link-button--primary{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.game-runtime-button--primary,.game-runtime-link-button--primary{border-color:color-mix(in srgb,var(--amber)62%,transparent)}}.game-runtime-button--primary,.game-runtime-link-button--primary{background:var(--amber);color:#141414}.game-runtime-button--primary:hover:not(:disabled),.game-runtime-link-button--primary:hover{background:#ff9b58}.game-runtime-button--danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.game-runtime-button--danger{border-color:color-mix(in srgb,var(--danger)52%,transparent)}}.game-runtime-button--danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.game-runtime-button--danger{background:color-mix(in srgb,var(--danger)12%,var(--surface-raised))}}.game-runtime-button--danger{color:#ffc0ca}.game-runtime-asset-button{appearance:none;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:0;min-height:44px;transition:transform .22s cubic-bezier(.32,.72,0,1),filter .22s,opacity .22s;display:flex;position:relative}.game-runtime-asset-button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px)}.game-runtime-asset-button:active:not(:disabled){transform:scale(.96)}.game-runtime-asset-button>img{pointer-events:none}.game-runtime-asset-button>:not(img){z-index:1;position:absolute}.game-runtime-asset-button:focus-visible,.game-runtime-button:focus-visible,.game-runtime-link-button:focus-visible,.game-runtime-shell [role=button]:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.game-runtime-score-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:min(100%,640px);display:flex}.game-runtime-score-row>.game-runtime-asset-button{width:min(100%,310px)}.game-runtime-shell [class~="w-[640px]"]{flex-wrap:wrap;gap:12px;display:flex;width:min(100%,640px)!important}.game-runtime-shell [class~="w-[310px]"][class~="h-[64px]"]{flex:280px;width:min(100%,310px)!important}.game-runtime-chess-board-holder{aspect-ratio:2048/1993;width:min(640px,100%)}.game-runtime-chess-board-holder>div{max-width:100%;max-height:100%}.game-runtime-result-stage{flex:auto;justify-content:center;align-items:center;width:100%;min-height:0;padding:24px;display:flex}.game-runtime-result{text-align:center;width:min(100%,560px);padding:32px}.game-room-unavailable-shell{padding:24px clamp(16px,4vw,64px)}.game-room-unavailable-card{border:1px solid var(--amber);justify-items:center;gap:24px;width:min(100%,520px);padding:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.game-room-unavailable-card{border:1px solid color-mix(in srgb,var(--amber)42%,var(--border))}}.game-room-unavailable-card{background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.game-room-unavailable-card{background:color-mix(in srgb,var(--surface)94%,transparent)}}.game-room-unavailable-card{text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter;box-shadow:0 24px 60px #00000057,0 0 0 1px #ff8a3d0d}.game-room-unavailable__icon{border:1px solid var(--amber);place-items:center;width:56px;height:56px;display:grid}@supports (color:color-mix(in lab, red, red)){.game-room-unavailable__icon{border:1px solid color-mix(in srgb,var(--amber)48%,transparent)}}.game-room-unavailable__icon{background:var(--amber);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.game-room-unavailable__icon{background:color-mix(in srgb,var(--amber)12%,var(--surface-raised))}}.game-room-unavailable__icon{color:var(--amber)}.game-room-unavailable__copy{gap:8px;max-width:44ch;display:grid}.game-room-unavailable__eyebrow{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.game-room-unavailable__copy h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.game-room-unavailable__copy p:last-child{color:var(--muted);text-wrap:pretty;margin:0;font-size:16px;line-height:1.5}.game-room-unavailable__room{border:1px solid var(--border);background:var(--surface-raised);width:100%;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:12px;gap:4px;padding:12px 16px;font-size:11px;font-weight:700;display:grid}.game-room-unavailable__room code{overflow-wrap:anywhere;color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.04em;text-transform:none;font-size:12px;font-weight:500}.game-room-unavailable__back{width:100%}.opponent-disconnected-overlay{z-index:9998;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000ad;place-items:start center;padding:96px 16px 24px;display:grid;position:fixed;inset:0}.opponent-disconnected-card{--opponent-accent:var(--amber);border:1px solid var(--opponent-accent);gap:24px;width:min(100%,480px);padding:24px;display:grid}@supports (color:color-mix(in lab, red, red)){.opponent-disconnected-card{border:1px solid color-mix(in srgb,var(--opponent-accent)48%,var(--border))}}.opponent-disconnected-card{background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.opponent-disconnected-card{background:color-mix(in srgb,var(--surface)96%,transparent)}}.opponent-disconnected-card{color:var(--text);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:.52s cubic-bezier(.32,.72,0,1) both motion-enter;box-shadow:0 24px 60px #0000006b,0 0 0 1px #ff8a3d0f}.opponent-disconnected__header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.opponent-disconnected__icon{border:1px solid var(--opponent-accent);place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.opponent-disconnected__icon{border:1px solid color-mix(in srgb,var(--opponent-accent)48%,transparent)}}.opponent-disconnected__icon{background:var(--opponent-accent);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.opponent-disconnected__icon{background:color-mix(in srgb,var(--opponent-accent)12%,var(--surface-raised))}}.opponent-disconnected__icon{color:var(--opponent-accent)}.opponent-disconnected__heading{gap:4px;min-width:0;display:grid}.opponent-disconnected__heading p,.opponent-disconnected__heading span,.opponent-disconnected__player span{overflow-wrap:anywhere}.opponent-disconnected__heading p{color:var(--text);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:14px;font-weight:700;line-height:1.35}.opponent-disconnected__heading span{color:var(--muted);font-size:12px;line-height:1.4}.opponent-disconnected__timer{border:1px solid var(--opponent-accent);justify-content:center;align-items:center;gap:4px;min-width:76px;padding:8px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.opponent-disconnected__timer{border:1px solid color-mix(in srgb,var(--opponent-accent)34%,var(--border))}}.opponent-disconnected__timer{background:var(--opponent-accent);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.opponent-disconnected__timer{background:color-mix(in srgb,var(--opponent-accent)10%,var(--surface-raised))}}.opponent-disconnected__timer{color:var(--opponent-accent);font-variant-numeric:tabular-nums}.opponent-disconnected__timer strong{font-size:24px;line-height:1}.opponent-disconnected__timer span{font-size:12px;font-weight:700}.opponent-disconnected__player{border:1px solid var(--border);background:var(--surface-raised);min-height:48px;color:var(--text);border-radius:12px;align-items:center;padding:12px 16px;font-size:16px;font-weight:700;line-height:1.35;display:flex}.opponent-disconnected__progress{background:var(--surface-strong);border-radius:999px;height:4px;overflow:hidden}.opponent-disconnected__progress span{border-radius:inherit;background:var(--opponent-accent);height:100%;transition:width 1s linear;display:block}.thousand-disconnect-card{--opponent-accent:var(--amber);z-index:50;border:1px solid var(--opponent-accent);grid-template-rows:minmax(0,1fr) 3px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:8px;display:grid;position:absolute;inset:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.thousand-disconnect-card{border:1px solid color-mix(in srgb,var(--opponent-accent)48%,var(--border))}}.thousand-disconnect-card{background:var(--surface);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.thousand-disconnect-card{background:color-mix(in srgb,var(--surface)96%,transparent)}}.thousand-disconnect-card{color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 12px 28px #0000004d}.thousand-disconnect-card__icon{border:1px solid var(--opponent-accent);place-items:center;width:24px;height:24px;display:grid}@supports (color:color-mix(in lab, red, red)){.thousand-disconnect-card__icon{border:1px solid color-mix(in srgb,var(--opponent-accent)48%,transparent)}}.thousand-disconnect-card__icon{background:var(--opponent-accent);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.thousand-disconnect-card__icon{background:color-mix(in srgb,var(--opponent-accent)12%,var(--surface-raised))}}.thousand-disconnect-card__icon{color:var(--opponent-accent)}.thousand-disconnect-card__copy{gap:2px;min-width:0;display:grid}.thousand-disconnect-card__copy p,.thousand-disconnect-card__copy span{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.thousand-disconnect-card__copy p{color:var(--opponent-accent);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1.2}.thousand-disconnect-card__copy span{color:var(--text-secondary);font-size:10px;line-height:1.2}.thousand-disconnect-card__timer{color:var(--opponent-accent);font-variant-numeric:tabular-nums;align-items:center;gap:2px;display:inline-flex}.thousand-disconnect-card__timer strong{font-size:16px;line-height:1}.thousand-disconnect-card__timer span{font-size:9px;font-weight:700}.thousand-disconnect-card__progress{background:var(--surface-strong);border-radius:999px;grid-column:1/-1;height:3px;overflow:hidden}.thousand-disconnect-card__progress span{border-radius:inherit;background:var(--opponent-accent);height:100%;transition:width 1s linear;display:block}@media (max-width:520px){.game-room-unavailable-card{padding:24px 16px}.opponent-disconnected-overlay{padding:88px 12px 16px}.opponent-disconnected-card{padding:16px}.opponent-disconnected__header{grid-template-columns:auto minmax(0,1fr)}.opponent-disconnected__timer{grid-column:1/-1;width:100%}}@media (prefers-reduced-motion:reduce){.game-room-unavailable-card,.opponent-disconnected-card{animation:none}.opponent-disconnected__progress span,.thousand-disconnect-card__progress span{transition:none}}.game-runtime-event-card{border:1px solid var(--amber)}@supports (color:color-mix(in lab, red, red)){.game-runtime-event-card{border:1px solid color-mix(in srgb,var(--amber)28%,var(--border))}}.game-runtime-event-card{background:var(--surface);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.game-runtime-event-card{background:color-mix(in srgb,var(--surface)94%,transparent)}}.game-runtime-event-card{box-shadow:0 18px 36px #0000003d}.game-runtime-player-legend{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px 32px;font-size:12px;display:flex}.game-runtime-inventory{border:1px solid var(--border);background:var(--surface);border-radius:16px;width:min(100%,1120px);box-shadow:0 18px 48px #0000003d}.game-runtime-table{border:1px solid var(--border);background:var(--surface-raised);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.game-runtime-table{background:color-mix(in srgb,var(--surface-raised)94%,transparent)}}.game-runtime-table{box-shadow:0 24px 60px #00000047}.game-runtime-thousand-layout{justify-content:center;align-items:center;gap:16px;width:100%;min-height:0;display:flex}.game-runtime-betting-panel{border:1px solid var(--border);background:var(--surface);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex}@supports (color:color-mix(in lab, red, red)){.game-runtime-betting-panel{background:color-mix(in srgb,var(--surface)86%,transparent)}}.game-runtime-blackjack{justify-content:space-between;gap:24px;padding:24px clamp(12px,3vw,48px)}.game-runtime-blackjack .game-runtime-player-chip{width:fit-content;color:var(--text);letter-spacing:.08em;text-transform:uppercase;margin-inline:auto;font-size:14px;font-weight:700}.blackjack-bet-stage{flex:auto;align-content:center;gap:32px;width:min(100%,960px);margin:0 auto;padding:16px 0 24px;display:grid}.blackjack-bet-intro{text-align:center;justify-items:center;gap:8px;max-width:680px;margin:0 auto;display:grid}.blackjack-kicker,.blackjack-stat-label,.blackjack-table-bet span,.blackjack-result-kicker{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.35}.blackjack-bet-intro h1,.blackjack-table-header h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2.25rem,6vw,3rem);font-weight:700;line-height:1.1}.blackjack-bet-intro>p:last-child{max-width:58ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:16px;line-height:1.5}.blackjack-betting-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);gap:16px;display:grid}.blackjack-betting-surface,.blackjack-chip-picker,.blackjack-table{border:1px solid var(--border);background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.blackjack-betting-surface,.blackjack-chip-picker,.blackjack-table{background:color-mix(in srgb,var(--surface)94%,transparent)}}.blackjack-betting-surface,.blackjack-chip-picker,.blackjack-table{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000047}.blackjack-betting-surface{gap:16px;padding:16px;display:grid}.blackjack-money-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.blackjack-money-row>div,.blackjack-current-bet{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;gap:4px;padding:12px 16px;display:grid}.blackjack-money-value,.blackjack-bet-total,.blackjack-table-bet strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:24px;line-height:1}.blackjack-current-bet{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.blackjack-current-bet{border-color:color-mix(in srgb,var(--amber)42%,var(--border))}}.blackjack-current-bet{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.blackjack-current-bet{background:color-mix(in srgb,var(--amber)10%,var(--surface-raised))}}.blackjack-bet-zone{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;gap:16px;min-width:0;padding:16px;display:grid}.blackjack-zone-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.blackjack-zone-heading p,.blackjack-chip-help{color:var(--muted);text-wrap:pretty;margin:4px 0 0;font-size:14px;line-height:1.4}.blackjack-bet-total{color:var(--amber);white-space:nowrap}.blackjack-bet-stack{border:1px dashed var(--border-strong);background:var(--surface);border-radius:12px;flex-wrap:wrap;place-content:center;gap:8px;min-height:132px;padding:16px;display:flex}.blackjack-bet-stack--empty{color:var(--text-subtle);text-align:center;font-size:14px}.blackjack-placed-chip,.blackjack-chip-choice{appearance:none;color:var(--text);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:10px;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),opacity .18s cubic-bezier(.32,.72,0,1)}.blackjack-placed-chip{min-width:60px;min-height:52px;padding:4px}.blackjack-placed-chip:hover{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.blackjack-placed-chip:hover{border-color:color-mix(in srgb,var(--danger)44%,var(--border))}}.blackjack-placed-chip:hover{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.blackjack-placed-chip:hover{background:color-mix(in srgb,var(--danger)10%,transparent)}}.blackjack-placed-chip:hover{transform:translateY(-3px)}.blackjack-chip-picker{align-content:start;gap:16px;padding:20px;display:grid}.blackjack-chip-picker h2{color:var(--text);letter-spacing:-.03em;margin:4px 0 0;font-size:1.5rem;font-weight:700;line-height:1.2}.blackjack-chip-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.blackjack-chip-choice{border-color:var(--border);background:var(--surface-raised);place-items:center;gap:4px;min-height:88px;padding:8px;display:grid}.blackjack-chip-choice:hover:not(:disabled){border-color:var(--amber);background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.blackjack-chip-choice:hover:not(:disabled){background:color-mix(in srgb,var(--amber)10%,var(--surface-raised))}}.blackjack-chip-choice:hover:not(:disabled){transform:translateY(-3px)}.blackjack-chip-choice:disabled{cursor:not-allowed;opacity:.36}.blackjack-chip-choice>span:last-child{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.blackjack-token{justify-content:center;align-items:center;width:68px;min-width:68px;height:42px;display:inline-flex;position:relative}.blackjack-token img{object-fit:contain;width:68px;height:42px;display:block}.blackjack-token-value{z-index:1;color:#fff;text-shadow:0 1px 2px #000000a6;font-size:13px;font-weight:700;line-height:1;position:absolute}.blackjack-start-area{justify-content:center;display:flex}.blackjack-start-button,.blackjack-next-button{border:1px solid var(--amber);flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:220px;min-height:56px;padding:8px 24px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.blackjack-start-button,.blackjack-next-button{border:1px solid color-mix(in srgb,var(--amber)70%,transparent)}}.blackjack-start-button,.blackjack-next-button{background:var(--amber);color:#141414;cursor:pointer;font:inherit;border-radius:12px;font-size:16px;font-weight:700;text-decoration:none;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),opacity .18s cubic-bezier(.32,.72,0,1)}.blackjack-start-button small{font-size:12px;font-weight:500}.blackjack-start-button:hover:not(:disabled),.blackjack-next-button:hover{background:#ff9b58;transform:translateY(-3px)}.blackjack-start-button:active:not(:disabled),.blackjack-next-button:active,.blackjack-action:active:not(:disabled),.blackjack-chip-choice:active:not(:disabled),.blackjack-placed-chip:active{transform:scale(.96)}.blackjack-start-button:disabled{cursor:not-allowed;opacity:.4}.blackjack-start-button:focus-visible,.blackjack-next-button:focus-visible,.blackjack-action:focus-visible,.blackjack-chip-choice:focus-visible,.blackjack-placed-chip:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.blackjack-game-overlay{box-sizing:border-box;width:auto;height:auto;padding:0 clamp(12px,3vw,48px)max(24px,env(safe-area-inset-bottom));inset:72px 0 0}.blackjack-table{flex-direction:column;flex:auto;justify-content:space-between;gap:16px;width:100%;min-height:0;padding:24px clamp(16px,3vw,40px) 20px;display:flex;overflow-y:auto}.blackjack-table-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.blackjack-table-header h1{margin-top:4px;font-size:1.875rem}.blackjack-table-bet{border:1px solid var(--amber);justify-items:end;gap:6px;min-width:92px;padding:10px 12px;display:grid}@supports (color:color-mix(in lab, red, red)){.blackjack-table-bet{border:1px solid color-mix(in srgb,var(--amber)42%,var(--border))}}.blackjack-table-bet{background:var(--amber);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.blackjack-table-bet{background:color-mix(in srgb,var(--amber)10%,var(--surface-raised))}}.blackjack-table-bet{text-align:end}.blackjack-hand{gap:12px;display:grid}.blackjack-hand--dealer{padding-bottom:4px}.blackjack-hand--player{padding-top:4px}.blackjack-hand-heading{justify-content:space-between;align-items:center;gap:12px;width:min(100%,720px);margin:0 auto;display:flex}.blackjack-hand-heading h2{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:14px;font-weight:700;line-height:1.35}.blackjack-hand-score{border:1px solid var(--border);background:var(--surface-raised);min-width:40px;min-height:32px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;font-size:16px;font-weight:700;display:inline-flex}.blackjack-card-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;min-height:clamp(140px,20vh,190px);display:flex}.blackjack-card{width:clamp(84px,11vw,140px)!important}.blackjack-card-entry{animation:blackjack-card-enter .6s calc(var(--card-index,0)*70ms)cubic-bezier(.32,.72,0,1)both}@keyframes blackjack-card-enter{0%{opacity:0;transform:translateY(16px)rotate(-2deg)scale(.96)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}.blackjack-controls{align-content:center;justify-items:center;gap:8px;min-height:208px;padding-top:4px;display:grid}.blackjack-controls-hint,.blackjack-double-note{color:var(--muted);text-align:center;margin:0;font-size:14px;line-height:1.4}.blackjack-action-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(100%,720px);display:grid}.blackjack-action{border:1px solid var(--border);background:var(--surface-raised);min-height:72px;color:var(--text);cursor:pointer;font:inherit;text-align:start;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),opacity .18s cubic-bezier(.32,.72,0,1);display:flex}.blackjack-action:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-strong);transform:translateY(-3px)}.blackjack-action--hit{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.blackjack-action--hit{border-color:color-mix(in srgb,var(--amber)70%,transparent)}}.blackjack-action--hit{background:var(--amber);color:#141414}.blackjack-action--hit:hover:not(:disabled){border-color:var(--amber);background:#ff9b58}.blackjack-action--double{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.blackjack-action--double{border-color:color-mix(in srgb,var(--amber)42%,var(--border))}}.blackjack-action:disabled{cursor:not-allowed;opacity:.38}.blackjack-action-symbol{border:1px solid;border-radius:999px;flex:0 0 32px;place-items:center;width:32px;height:32px;font-size:16px;font-weight:700;line-height:1;display:grid}.blackjack-action strong,.blackjack-action small{display:block}.blackjack-action strong{font-size:16px;line-height:1.2}.blackjack-action small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:500;line-height:1.3}.blackjack-action--hit small{color:#141414b8}.blackjack-finished-panel{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-raised);border-radius:16px;justify-items:center;gap:16px;width:min(100%,560px);min-height:208px;margin:0 auto;padding:16px;display:grid}.blackjack-result{text-align:center;justify-items:center;gap:6px;width:100%;padding:12px;display:grid}.blackjack-result h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:1.875rem;font-weight:700;line-height:1.1}.blackjack-result p{color:var(--muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.4}.blackjack-result p strong{color:var(--success);font-variant-numeric:tabular-nums;font-size:1.25rem}.blackjack-result--lose .blackjack-result-kicker{color:var(--danger)}.blackjack-result--draw .blackjack-result-kicker{color:var(--focus)}.blackjack-next-button{flex-direction:row;min-width:180px;min-height:44px;padding:8px 16px;font-size:14px}@media (max-width:760px){.blackjack-bet-stage{align-content:start;gap:24px;padding-top:16px}.blackjack-betting-layout{grid-template-columns:1fr}.blackjack-chip-picker{padding:16px}.blackjack-table{gap:12px;padding:16px 12px}.blackjack-table-header h1{font-size:1.5rem}.blackjack-card-row{min-height:128px}.blackjack-card{width:clamp(72px,22vw,112px)!important}.blackjack-action-row{grid-template-columns:1fr;width:min(100%,420px)}.blackjack-controls,.blackjack-finished-panel{min-height:280px}.blackjack-action{min-height:56px}}@media (prefers-reduced-motion:reduce){.blackjack-card-entry{animation:none}.blackjack-start-button:hover:not(:disabled),.blackjack-next-button:hover,.blackjack-action:hover:not(:disabled),.blackjack-chip-choice:hover:not(:disabled),.blackjack-placed-chip:hover,.blackjack-start-button:active:not(:disabled),.blackjack-next-button:active,.blackjack-action:active:not(:disabled),.blackjack-chip-choice:active:not(:disabled),.blackjack-placed-chip:active{transform:none}}.set-game-meta{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-align:center;text-transform:uppercase;margin:0 auto 16px;font-size:12px}.set-game-table{background:var(--surface-raised);border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));place-items:stretch stretch;width:min(100%,560px);padding:12px}@supports (color:color-mix(in lab, red, red)){.set-game-table{background:color-mix(in srgb,var(--surface-raised)92%,transparent)}}.set-game-table .set-game-card{aspect-ratio:1;min-width:0;width:100%!important;height:auto!important}@media (max-width:520px){.set-game-table{gap:8px;width:min(100%,420px);padding:8px}}.set-game-card{aspect-ratio:1;transition:transform .22s cubic-bezier(.32,.72,0,1),border-color .18s,box-shadow .18s,opacity .18s;box-shadow:0 10px 24px #00000029;border-color:#e9ecf333!important;border-radius:12px!important}.set-game-card:not(:disabled):hover{transform:translateY(-4px);box-shadow:0 16px 30px #0000003d;border-color:var(--amber)!important}.set-game-card:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.set-game-card--selected{transform:translateY(-4px);box-shadow:0 0 0 3px #ff8a3d2e,0 16px 30px #00000047;border-color:var(--amber)!important}.set-game-card--empty{box-shadow:none;background:var(--surface-soft)!important;border-style:dashed!important}.game-runtime-tictactoe-board{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:12px;padding:12px;display:grid;box-shadow:0 24px 60px #0000003d}.game-runtime-tictactoe-cell{border:1px solid var(--border);background-color:var(--surface-raised);min-width:80px;min-height:80px;color:var(--text);border-radius:10px;font-size:36px}.game-runtime-tictactoe-cell:hover:not(:disabled){border-color:var(--amber);background-color:var(--surface-strong)}.game-runtime-battleships-grid{border-color:var(--border-strong)!important;background-color:var(--surface-raised)!important;background-image:none!important;border-radius:12px!important;box-shadow:0 18px 44px #00000038!important}.game-runtime-battleships-grid>div{border-color:#e9ecf31a!important}@media (max-width:760px){.game-runtime-shell{padding-top:72px;overflow-y:auto}.game-runtime-game-region{padding:12px 0}.game-runtime-surface,.game-runtime-result{padding:20px 16px}.game-runtime-title{font-size:24px}.game-runtime-side-panel{width:min(100%,520px)}.game-runtime-thousand-layout{flex-direction:column;justify-content:flex-start;align-items:center;padding:0 0 16px;overflow-y:auto}.game-runtime-thousand-layout>.flex-1{flex:none;width:100%}.game-runtime-thousand-layout .game-runtime-table{width:min(100%,100vw - 32px);height:auto;max-height:none}.game-runtime-thousand-layout>.game-runtime-side-panel{flex:none;width:min(100%,520px);height:auto}.game-runtime-tictactoe-cell{min-width:64px;min-height:64px}}@media (prefers-reduced-motion:reduce){.game-runtime-button:hover:not(:disabled),.game-runtime-link-button:hover,.game-runtime-asset-button:hover:not(:disabled),.game-runtime-button:active:not(:disabled),.game-runtime-link-button:active,.game-runtime-asset-button:active:not(:disabled),.set-game-card:not(:disabled):hover,.set-game-card--selected{transform:none}}.waiting-room-shell{width:100%;min-height:0;color:var(--text);flex:auto;justify-content:center;align-items:center;padding:72px 16px 96px;display:flex;overflow-y:auto}.waiting-room-card{border:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#141414e6;border-radius:16px;width:min(100%,760px);min-width:0;padding:32px;animation:.76s cubic-bezier(.32,.72,0,1) both motion-enter;box-shadow:0 24px 60px #00000047}.waiting-room-header{text-align:center;justify-items:center;gap:8px;display:grid}.waiting-room-eyebrow{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.waiting-room-header h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:2.25rem;font-weight:700;line-height:1.1}.waiting-room-status{max-width:52ch;color:var(--muted);text-wrap:pretty;margin-top:8px;font-size:14px;line-height:1.5}.waiting-room-status-detail{color:var(--text-secondary);letter-spacing:.04em;margin-block-start:8px;font-size:12px;font-weight:700;display:inline-block}.waiting-room-seat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:32px;display:grid}.waiting-room-seat-item{min-width:0}.waiting-room-seat{border:1px solid var(--border);width:100%;min-width:0;min-height:104px;color:var(--text);text-align:start;background:#242424b8;border-radius:12px;align-items:center;gap:12px;padding:16px;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:flex}.waiting-room-seat--empty{cursor:pointer}.waiting-room-seat--empty:hover,.waiting-room-seat--empty:focus-visible{border-color:var(--amber);background:#ff8a3d1a;transform:translateY(-3px);box-shadow:0 18px 36px #0003}.waiting-room-seat--empty:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.waiting-room-seat--current{background:#ff8a3d1f;border-color:#ff8a3d80}.waiting-room-seat__icon{border:1px dashed var(--border-strong);width:40px;height:40px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:24px;font-weight:400;line-height:1;transition:border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1),transform .42s cubic-bezier(.32,.72,0,1);display:grid}.waiting-room-seat--empty:hover .waiting-room-seat__icon,.waiting-room-seat--empty:focus-visible .waiting-room-seat__icon{border-color:var(--amber);color:var(--amber);transform:rotate(90deg)}.waiting-room-seat__copy{flex:1;gap:4px;min-width:0;display:grid}.waiting-room-seat__label,.waiting-room-seat__ready{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.35}.waiting-room-seat__action,.waiting-room-seat__name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.35;overflow:hidden}.waiting-room-seat__action{color:var(--focus)}.waiting-room-seat__ready{color:var(--amber)}.waiting-room-seat__you{color:var(--amber);letter-spacing:.1em;flex:none;font-size:10px;font-weight:700}.waiting-room-seat__arrow{color:var(--amber);flex:none;transition:transform .42s cubic-bezier(.32,.72,0,1)}.waiting-room-seat--empty:hover .waiting-room-seat__arrow,.waiting-room-seat--empty:focus-visible .waiting-room-seat__arrow{transform:translate(3px,-3px)}.waiting-room-actions{gap:12px;margin-top:24px;display:grid}.waiting-room-action-stack{justify-items:stretch;gap:12px;display:grid}.waiting-room-action-stack .room-observer-setting{justify-content:center}.waiting-room-start-button{width:100%;min-height:48px}.waiting-room-waiting-message{border:1px solid var(--border);background:var(--surface-raised);min-height:48px;color:var(--muted);text-align:center;text-wrap:pretty;border-radius:12px;place-items:center;padding:12px 16px;font-size:14px;font-weight:700;line-height:1.4;display:grid}@media (max-width:640px){.waiting-room-shell{align-items:flex-start;padding:72px 12px 96px}.waiting-room-card{padding:24px 16px}.waiting-room-header h1{font-size:1.875rem}.waiting-room-seat-grid{grid-template-columns:1fr;gap:8px;margin-top:24px}.waiting-room-seat{min-height:88px;padding:12px}}@media (prefers-reduced-motion:reduce){.waiting-room-card{animation:none}.waiting-room-seat--empty:hover,.waiting-room-seat--empty:focus-visible,.waiting-room-seat--empty:hover .waiting-room-seat__icon,.waiting-room-seat--empty:focus-visible .waiting-room-seat__icon,.waiting-room-seat--empty:hover .waiting-room-seat__arrow,.waiting-room-seat--empty:focus-visible .waiting-room-seat__arrow{transform:none}}.room-observer-setting{border:1px solid var(--border);min-height:40px;color:var(--text-secondary);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:700;line-height:1.35;display:inline-flex}.room-observer-setting input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.room-observer-setting__box{border:1px solid var(--border-strong);color:#0000;border-radius:7px;place-items:center;width:24px;height:24px;display:grid}.room-observer-setting:has(input:checked){color:var(--text);background:#ff8a3d14;border-color:#ff8a3d6b}.room-observer-setting:has(input:checked) .room-observer-setting__box{border-color:var(--amber);background:var(--amber);color:#111}.room-observer-setting:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.spectator-strip{z-index:9990;right:50%;bottom:max(88px,calc(env(safe-area-inset-bottom) + 72px));max-width:min(100vw - 32px,680px);min-height:56px;color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414eb;border:1px solid #ff8a3d47;border-radius:16px;align-items:center;gap:16px;padding:8px 12px;display:flex;position:fixed;transform:translate(50%);box-shadow:0 18px 44px #00000052,0 0 0 1px #ff8a3d0a}.spectator-strip__heading{flex:none;gap:2px;display:grid}.spectator-strip__eyebrow{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.2}.spectator-strip__count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;line-height:1.3}.spectator-strip__list{gap:8px;min-width:0;max-width:100%;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.spectator-strip__avatar{background:var(--surface-raised);cursor:default;border:1px solid #ff8a3d57;border-radius:12px;outline:none;place-items:center;width:40px;height:40px;transition:transform .18s cubic-bezier(.32,.72,0,1),border-color .18s;display:grid;position:relative}.spectator-strip__avatar:hover,.spectator-strip__avatar:focus-visible{border-color:var(--amber);transform:translateY(-2px)}.spectator-strip__avatar.is-disconnected{opacity:.55;filter:grayscale(.35)}.spectator-strip__offline{border:2px solid var(--surface);background:var(--danger);border-radius:999px;width:10px;height:10px;position:absolute;bottom:-3px;right:-3px}@media (max-width:560px){.spectator-strip{max-width:none;left:12px;right:12px;transform:none}.spectator-strip__heading{min-width:86px}}@media (prefers-reduced-motion:reduce){.spectator-strip__avatar:hover,.spectator-strip__avatar:focus-visible{transform:none}}#app-content.page-transition{height:var(--page-viewport-height);min-height:var(--page-viewport-height);overscroll-behavior:none;overflow:clip hidden}#app-content.page-transition>:not(.game-runtime-shell){height:var(--page-viewport-height);min-height:var(--page-viewport-height);overscroll-behavior:contain;overflow:hidden auto}#app-content.page-transition>.game-runtime-shell{height:var(--page-viewport-height);min-height:var(--page-viewport-height);overflow:hidden auto}#app-content.page-transition>div:not([class]){height:var(--page-viewport-height);min-height:var(--page-viewport-height);overscroll-behavior:none}#app-content.page-transition>div:not([class])>:not(.game-runtime-shell){height:var(--page-viewport-height);min-height:var(--page-viewport-height);overscroll-behavior:contain;overflow:hidden auto}#app-content.page-transition>div:not([class])>.game-runtime-shell{height:var(--page-viewport-height);min-height:var(--page-viewport-height);overflow:hidden auto}@media (min-width:700px){.create-room-shell{padding-top:64px;padding-bottom:24px}.create-room-frame{gap:16px}.create-room-title{font-size:2.25rem}.create-room-subtitle{margin-top:8px;font-size:14px;line-height:1.4}.create-room-context{gap:4px;margin-top:12px}.create-room-context span{min-height:32px;padding:6px 8px;font-size:11px}.create-room-card-header{padding:16px 20px 14px}.create-room-card-header h2{font-size:20px}.create-room-form{gap:12px;padding:16px 20px 20px}.create-room-field{gap:8px}.create-room-fieldset>*+*{margin-block-start:8px}.create-room-input{min-height:40px;padding:8px 12px;font-size:14px}.create-choice{min-height:40px;padding:8px}.create-room-password-toggle{min-height:36px;font-size:13px}.create-room-submit{min-height:44px;padding:10px 16px}}@media (max-width:699px){.game-select-shell{padding-top:64px;padding-bottom:12px}.page-heading{margin-bottom:12px}.page-heading h1{font-size:1.875rem}.page-heading .page-subtitle{margin-top:8px;font-size:12px;line-height:1.35}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-card__image{aspect-ratio:16/9}.game-card__content{min-height:0;padding:8px}.game-card__content h2{font-size:14px}.game-card__content p{display:none}.create-room-shell{padding-top:64px;padding-bottom:16px}.create-room-frame{gap:16px}.create-room-title{font-size:1.875rem}.create-room-subtitle{margin-top:8px;font-size:12px;line-height:1.35}.create-room-context{gap:4px;margin-top:8px}.create-room-context span{min-height:28px;padding:5px 6px;font-size:10px}.create-room-card-header{padding:14px 12px 12px}.create-room-card-header h2{font-size:18px}.create-room-form{gap:8px;padding:14px 12px 16px}.create-room-field{gap:6px}.create-room-fieldset>*+*{margin-block-start:6px}.create-room-input{min-height:36px;padding:8px 10px;font-size:14px}.create-choice{min-height:36px;padding:6px 4px;font-size:11px}.create-room-password-toggle{min-height:32px;font-size:12px}.create-room-checkbox{width:22px;height:22px}.create-room-submit{min-height:40px;padding:8px 12px}}.chess-room-shell{padding:72px clamp(16px,3vw,48px)max(24px,env(safe-area-inset-bottom));justify-content:center;align-items:center;overflow-y:auto}.chess-room-backdrop{z-index:0;pointer-events:none;background:#0000006b;position:absolute;inset:0}.chess-room-layout{z-index:1;grid-template-columns:minmax(0,1fr) minmax(0,640px) minmax(0,1fr);align-items:center;gap:24px;width:min(100%,1440px);margin:auto;display:grid;position:relative}.chess-room-layout--active{grid-template-columns:minmax(180px,280px) minmax(0,640px) minmax(220px,320px);justify-content:center}.chess-active-player-rail{grid-column:1;align-content:center;width:100%;min-width:0;display:grid}.chess-active-player-rail>div{gap:16px;min-width:0;display:grid}.chess-active-player-rail__slot,.chess-active-player-rail .player-tile,.chess-active-player-rail .participant-zone__empty-seat{width:100%;min-width:0}.chess-waiting-room{border:1px solid var(--border);background:#181818b8;border-radius:16px;gap:24px;width:min(100%,840px);min-width:0;margin-inline:auto;padding:24px;display:grid;box-shadow:0 24px 60px #0003}.chess-waiting-room__players{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.chess-waiting-room__slot,.chess-waiting-room__slot>*{min-width:0}.chess-waiting-room__slot .player-tile,.chess-waiting-room__slot .participant-zone__empty-seat{min-height:128px}.chess-waiting-room__slot .player-tile{align-content:start}.chess-waiting-room__message{text-align:center;gap:8px;padding-block:8px;display:grid}.chess-waiting-room__message p,.chess-waiting-room__message strong{margin:0}.chess-waiting-room__message p{color:var(--muted);font-size:14px}.chess-waiting-room__message strong{color:var(--amber);font-size:16px}.chess-waiting-room__controls{gap:12px;width:min(100%,420px);margin-inline:auto;display:grid}.chess-waiting-room__controls>*{width:100%}.chess-board-column{grid-column:2;grid-template-columns:minmax(0,1fr);align-content:start;justify-self:center;gap:16px;width:100%;min-width:0;max-width:640px;display:grid}.chess-player-slot{width:100%;min-width:0;display:grid}.chess-player-slot>*{min-width:0}.chess-player-slot .player-tile{width:100%;min-height:96px}.chess-player-slot .participant-zone__empty-seat{min-height:96px}.chess-player-card{border:1px solid var(--border);width:100%;min-width:0;min-height:52px;color:var(--muted);background:#181818db;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;box-shadow:0 12px 28px #00000029}.chess-player-card--active{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.chess-player-card--active{border-color:color-mix(in srgb,var(--amber)58%,transparent)}}.chess-player-card--active{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.chess-player-card--active{background:color-mix(in srgb,var(--amber)10%,var(--surface))}}.chess-player-card--active{color:var(--text)}.chess-player-card__identity{align-items:center;gap:10px;min-width:0;display:flex}.chess-player-card__name{min-width:0;max-width:20ch;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.3;overflow:hidden}.chess-player-card__clock{color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;flex:none;font-size:16px;font-weight:700}.chess-board-holder{width:min(640px,100%);margin-inline:auto}.chess-side-panel{border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#181818e6;border-radius:16px;grid-column:3;align-content:center;justify-self:end;gap:16px;width:min(320px,100%);min-height:248px;padding:16px;display:grid;box-shadow:0 24px 60px #0000003d}.chess-side-header{gap:8px;display:grid}.chess-side-kicker{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.chess-side-status{color:var(--muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.45}.chess-side-controls{gap:8px;display:grid}.chess-side-action{border:1px solid var(--border);background:var(--surface-raised);width:100%;min-height:44px;color:var(--text);cursor:pointer;font:inherit;text-align:center;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:700;line-height:1.35;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s,opacity .22s;display:inline-flex}.chess-side-action:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-strong);transform:translateY(-2px)}.chess-side-action:active:not(:disabled){transform:scale(.96)}.chess-side-action:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.chess-side-action:disabled{cursor:not-allowed;opacity:.48}.chess-side-action--primary{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.chess-side-action--primary{border-color:color-mix(in srgb,var(--amber)62%,transparent)}}.chess-side-action--primary{background:var(--amber);color:#141414}.chess-side-action--primary:hover:not(:disabled){border-color:var(--amber);background:#ff9b58}.chess-side-action--danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.chess-side-action--danger{border-color:color-mix(in srgb,var(--danger)42%,transparent)}}.chess-side-action--danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.chess-side-action--danger{background:color-mix(in srgb,var(--danger)10%,var(--surface-raised))}}.chess-side-action--danger{color:#ffc0ca}.chess-side-waiting-message{border:1px solid var(--border);background:var(--surface-raised);min-height:44px;color:var(--muted);letter-spacing:.04em;text-align:center;text-transform:uppercase;border-radius:10px;place-items:center;padding:8px 12px;font-size:12px;font-weight:700;line-height:1.35;display:grid}.chess-side-panel .room-observer-setting{border-radius:10px;justify-content:flex-start;width:100%;min-height:44px;padding:8px 12px;font-size:12px}.chess-result-overlay{z-index:5;background:#00000094;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.chess-result-card{border:1px solid var(--border-strong);background:var(--surface);text-align:center;border-radius:12px;justify-items:center;gap:12px;width:min(100%,360px);padding:24px;display:grid;box-shadow:0 24px 60px #0000005c}.chess-result-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.chess-result-card h2,.chess-result-card p:not(.chess-result-kicker){margin:0}.chess-result-card h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;font-size:24px;font-weight:700;line-height:1.15}.chess-result-card p:not(.chess-result-kicker){color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.45}.chess-connection-toast{right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:30;border:1px solid var(--border);max-width:min(360px,100vw - 32px);color:var(--text-secondary);text-align:center;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#141414e6;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700;line-height:1.35;position:fixed}@media (max-width:1120px){.chess-room-shell{justify-content:flex-start}.chess-room-layout{grid-template-columns:1fr;gap:16px;width:min(100%,640px)}.chess-board-column,.chess-active-player-rail{grid-column:auto;width:100%}.chess-active-player-rail>div{grid-template-columns:repeat(2,minmax(0,1fr))}.chess-side-panel{grid-column:auto;justify-self:stretch;width:100%;min-height:0;padding:20px 16px}}@media (max-width:760px){.chess-room-shell{align-items:flex-start;padding-top:72px}.chess-room-layout{grid-template-columns:1fr;width:min(100%,640px);margin-block:0}.chess-waiting-room{padding:16px}.chess-side-panel{min-height:0;padding:16px}}@media (max-width:480px){.chess-player-strip{gap:8px}.chess-player-card{gap:8px;min-height:48px;padding:8px 10px}.chess-player-card__name{font-size:12px}.chess-player-card__clock{font-size:14px}.chess-result-overlay{padding:12px}}@media (max-height:680px){.chess-room-shell{padding-top:48px;padding-bottom:12px}.chess-room-shell .multiplayer-shell{gap:12px}.chess-room-shell .multiplayer-shell__header{gap:8px}.chess-room-shell .multiplayer-shell__context h1{font-size:24px}}@media (max-height:520px){.chess-room-shell{padding-top:40px}.chess-active-player-rail .player-tile,.chess-active-player-rail .participant-zone__empty-seat,.chess-waiting-room__slot .player-tile,.chess-waiting-room__slot .participant-zone__empty-seat{min-height:72px}.chess-active-player-rail .player-tile__role,.chess-waiting-room__slot .player-tile__role{display:none}.chess-active-player-rail .player-tile__metric,.chess-waiting-room__slot .player-tile__metric{border-block-start:0;padding-block-start:0}}@media (prefers-reduced-motion:reduce){.chess-side-action:hover:not(:disabled),.chess-side-action:active:not(:disabled){transform:none}}#app-content.page-transition>.game-runtime-shell.chess-room-shell,#app-content.page-transition>div:not([class])>.game-runtime-shell.chess-room-shell{overflow-y:auto}.game-runtime-shell--thousand{padding:60px clamp(12px,3vw,48px)max(16px,env(safe-area-inset-bottom));background:#13120938}.game-runtime-shell--thousand .game-runtime-game{align-items:stretch;gap:16px;position:relative}.game-runtime-shell--thousand .waiting-room-card{background:#181818;border-color:#ffb37d38;box-shadow:0 28px 72px #00000057,0 0 0 8px #ffb37d08}.game-runtime-shell--thousand .waiting-room-seat{background:#1f1f1f;border-color:#ffb37d24}.game-runtime-shell--thousand .waiting-room-seat--current,.game-runtime-shell--thousand .waiting-room-seat--empty:hover,.game-runtime-shell--thousand .waiting-room-seat--empty:focus-visible{background:#ff8a3d1a;border-color:#ffb37d85}.game-runtime-shell--thousand .return-arrow{background:#141414e0}.thousand-game-header{flex:none;justify-content:space-between;align-items:flex-end;gap:24px;width:min(100%,1440px);min-width:0;margin:0 auto;animation:.72s cubic-bezier(.32,.72,0,1) both thousand-rise-in;display:flex}.thousand-game-heading{gap:4px;min-width:0;display:grid}.thousand-game-heading__eyebrow,.thousand-rail-heading__eyebrow,.thousand-stock-reveal>p,.thousand-hand-heading,.thousand-rail-summary span,.thousand-rail-tip,.thousand-header-stat span,.thousand-table__trump>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.35}.thousand-game-heading__eyebrow{color:var(--amber)}.thousand-game-heading h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.thousand-game-header__meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.thousand-stage-pill,.thousand-header-stat{border:1px solid var(--border);min-height:40px;color:var(--text-secondary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#141414b8;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.thousand-stage-pill{text-overflow:ellipsis;white-space:nowrap;max-width:24ch;overflow:hidden}.thousand-stage-pill__dot,.thousand-player-seat__dot{background:var(--text-subtle);border-radius:999px;flex:none;width:7px;height:7px;display:inline-block}.thousand-stage-pill.is-active{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.thousand-stage-pill.is-active{border-color:color-mix(in srgb,var(--success)46%,var(--border))}}.thousand-stage-pill.is-active{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.thousand-stage-pill.is-active{background:color-mix(in srgb,var(--success)10%,var(--surface))}}.thousand-stage-pill.is-active{color:var(--text)}.thousand-stage-pill.is-active .thousand-stage-pill__dot,.thousand-player-seat.is-active .thousand-player-seat__dot{background:var(--success);box-shadow:0 0 0 4px #59d38c1f}.thousand-header-stat{gap:6px}.thousand-header-stat strong{color:var(--amber);font-variant-numeric:tabular-nums;font-size:16px;line-height:1}.thousand-header-stat--trump .thousand-suit{font-size:20px}@media (min-width:961px){.thousand-game-header__meta{z-index:40;position:absolute;top:16px;right:calc(16px - clamp(12px,3vw,48px))}}.game-runtime-shell--thousand .game-runtime-thousand-layout{--thousand-rail-column:286px;grid-template-columns:minmax(0,1fr)minmax(0,min(calc(100dvh - 168px),calc(100% - var(--thousand-rail-column) - var(--thousand-rail-column) - 48px)))minmax(0,1fr);align-items:stretch;justify-content:initial;flex:auto;column-gap:24px;width:min(100%,1440px);max-width:100%;min-height:0;margin:0 auto;display:grid}.thousand-board-column{grid-column:2;justify-content:center;align-items:center;width:100%;min-width:0;display:flex}.game-runtime-shell--thousand .thousand-table{aspect-ratio:1;background:#131209;border:1px solid #ffb37d3d;border-radius:24px;width:100%;max-width:100%;height:auto;max-height:100%;position:relative;overflow:hidden;box-shadow:0 28px 72px #0000005c,inset 0 0 0 8px #ffffff06,inset 0 0 0 9px #ffb37d14}.thousand-table:before{content:"";pointer-events:none;border:1px solid #ffb37d1f;border-radius:16px;position:absolute;inset:20px}.thousand-table:after{aspect-ratio:1;content:"";pointer-events:none;border:1px solid #ffb37d1a;border-radius:999px;width:44%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.thousand-table__mark{z-index:1;color:#ffb37d2e;pointer-events:none;font-family:Georgia,serif;font-size:24px;position:absolute}.thousand-table__mark--top{top:20px;inset-inline-start:28px}.thousand-table__mark--bottom{inset-inline-end:28px;bottom:20px}.thousand-table__top,.thousand-table__bottom,.thousand-table__side{z-index:3;justify-content:center;align-items:center;min-width:0;display:flex;position:absolute}.thousand-table__top{flex-direction:column;gap:8px;min-height:22%;inset:24px 18% auto}.thousand-table__bottom{flex-direction:column;gap:6px;min-height:28%;inset:auto 10px 18px}.thousand-table__side{flex-direction:column;gap:8px;width:22%;top:24%;bottom:24%}.thousand-table__side--left{inset-inline-start:10px}.thousand-table__side--right{inset-inline-end:10px}.thousand-table__center{z-index:2;place-items:center;min-width:0;min-height:0;display:grid;position:absolute;inset:29% 28%}.thousand-table__trump{z-index:4;top:22px;background:#141414b8;border:1px solid #ffb37d3d;border-radius:12px;justify-items:center;gap:2px;min-width:52px;padding:8px 10px;display:grid;position:absolute;inset-inline-end:24px;box-shadow:0 8px 18px #00000038}.thousand-table__trump .thousand-suit{font-size:22px}.thousand-player-seat{width:min(100%,190px);min-width:0;min-height:50px;color:var(--text-secondary);background:#181818e0;border:1px solid #e9ecf31f;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1);display:flex;box-shadow:0 10px 24px #00000038}.thousand-player-seat.is-you{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.thousand-player-seat.is-you{border-color:color-mix(in srgb,var(--amber)58%,var(--border))}}.thousand-player-seat.is-you{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.thousand-player-seat.is-you{background:color-mix(in srgb,var(--amber)10%,var(--surface))}}.thousand-player-seat.is-active{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.thousand-player-seat.is-active{border-color:color-mix(in srgb,var(--success)58%,var(--border))}}.thousand-player-seat.is-active{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.thousand-player-seat.is-active{background:color-mix(in srgb,var(--success)10%,var(--surface))}}.thousand-player-seat.is-active{transform:translateY(-3px)}.thousand-player-seat.is-pausing{opacity:.66;filter:grayscale(.32)}.thousand-player-seat--empty{color:var(--text-subtle);text-align:center;border-style:dashed;justify-content:center;font-size:10px}.thousand-player-seat>.profile-avatar{width:32px;height:32px;font-size:11px}.thousand-player-seat__copy{flex:auto;gap:2px;min-width:0;display:grid}.thousand-player-seat__copy strong,.thousand-player-seat__copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.thousand-player-seat__copy strong{color:var(--text);font-size:12px;font-weight:700}.thousand-player-seat.is-you .thousand-player-seat__copy strong{color:var(--amber)}.thousand-player-seat__copy span{color:var(--muted);font-size:10px;line-height:1.35}.thousand-player-seat__copy b{color:var(--text-secondary);font-variant-numeric:tabular-nums}.thousand-player-seat__dealer{color:var(--amber);letter-spacing:.05em;text-transform:uppercase;flex:none;font-size:9px;font-weight:700}.thousand-player-seat__turn{color:var(--success);flex:none;animation:1.8s cubic-bezier(.32,.72,0,1) infinite thousand-clock-pulse}.thousand-player-seat__offline{width:min(100%,190px);height:50px;position:relative}.thousand-opponent-cards{justify-content:center;width:100%;min-width:0;display:flex}.thousand-opponent-card{aspect-ratio:2/3;background:#242424 url(/blackjack/cards/cardBack.png) 50%/cover;border:1px solid #ffb37d42;border-radius:5px;width:18px;margin-inline-start:-6px;animation:.62s cubic-bezier(.32,.72,0,1) both thousand-deal-in;box-shadow:0 6px 12px #0000004d}.thousand-opponent-card:first-child{margin-inline-start:0}.thousand-hand-block{gap:4px;width:100%;min-width:0;display:grid}.thousand-hand-heading{justify-content:center;align-items:center;gap:8px;display:flex}.thousand-hand-heading>span:first-child{color:var(--text-secondary)}.thousand-hand-count{color:var(--amber);font-variant-numeric:tabular-nums}.thousand-hand{justify-content:center;align-items:flex-end;width:100%;min-height:92px;padding-inline:7%;display:flex}.thousand-hand-card{z-index:1;aspect-ratio:2/3;cursor:pointer;filter:brightness(.82);opacity:.9;background:0 0;border:0;border-radius:6px;flex:0 auto;width:15%;min-width:44px;max-width:72px;margin-inline-start:-4%;padding:0;transition:transform .42s cubic-bezier(.32,.72,0,1),filter .22s cubic-bezier(.32,.72,0,1),opacity .22s cubic-bezier(.32,.72,0,1);animation:.56s cubic-bezier(.32,.72,0,1) both thousand-card-in;display:block;position:relative;transform:translateY(4px)rotate(0)}.thousand-hand-card:first-child{margin-inline-start:0}.thousand-hand-card img{object-fit:contain;outline-offset:-1px;border-radius:6px;outline:1px solid #ffffff1a;width:100%;height:100%;display:block}.thousand-hand-card.is-valid{filter:brightness();opacity:1;transform:translateY(0)}.thousand-hand-card.is-valid:hover:not(:disabled),.thousand-hand-card.is-valid:focus-visible{z-index:4;filter:brightness(1.08);transform:translateY(-16px)rotate(-2deg)}.thousand-hand-card.is-valid:active:not(:disabled){transform:translateY(-10px)scale(.96)}.thousand-hand-card.is-invalid{filter:brightness(.48)saturate(.55);opacity:.62}.thousand-hand-card:disabled{cursor:default}.thousand-hand-card:focus-visible,.thousand-stock-card:focus-visible,.thousand-action-button:focus-visible,.thousand-declare-form input:focus-visible,.thousand-result-action:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.thousand-dealer-note{color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.thousand-dealer-note{color:color-mix(in srgb,var(--amber)66%,var(--muted))}}.thousand-dealer-note{letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.thousand-suit{font-family:Georgia,serif;font-size:16px;line-height:1;display:inline-block}.thousand-suit.is-red{color:#fb7185}.thousand-suit.is-black{color:var(--text-secondary)}.thousand-stock-reveal{justify-items:center;gap:8px;animation:.62s cubic-bezier(.32,.72,0,1) both thousand-center-in;display:grid}.thousand-stock-reveal>p{color:var(--success);margin:0;font-size:10px}.thousand-stock-cards{align-items:flex-end;gap:6px;display:flex}.thousand-stock-card{width:clamp(42px,8vh,70px);animation:.56s cubic-bezier(.32,.72,0,1) both thousand-card-in}.thousand-stock-card__game-card{height:auto;display:block;width:100%!important}.thousand-hidden-card{border:1px solid #ffb37d33;border-radius:6px;width:clamp(42px,8vh,70px);display:block;box-shadow:0 8px 16px #00000047}.thousand-stock-reveal--hidden{gap:12px}.thousand-stake-display{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:#141414c7;border:1px solid #ffb37d3d;border-radius:999px;align-items:baseline;gap:8px;padding:8px 12px;font-size:10px;display:inline-flex}.thousand-stake-display strong{color:var(--amber);font-variant-numeric:tabular-nums;letter-spacing:0;font-size:18px}.thousand-trick{width:100%;height:100%;position:relative}.thousand-trick-card{outline-offset:-1px;border-radius:6px;outline:1px solid #ffffff1a;width:34%;max-width:90px;height:auto;transition:transform .42s cubic-bezier(.32,.72,0,1),opacity .22s cubic-bezier(.32,.72,0,1);animation:.54s cubic-bezier(.32,.72,0,1) both thousand-trick-in;position:absolute;top:50%;left:50%;box-shadow:0 12px 22px #00000061}.thousand-control-rail{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414e0;border:1px solid #ffb37d29;border-radius:16px;flex:0 0 286px;grid-column:3;place-self:center start;gap:16px;width:min(286px,24vw);min-width:250px;max-width:calc(100% - 24px);height:fit-content;min-height:0;max-height:calc(100dvh - 168px);padding:20px;display:flex;overflow-y:auto;box-shadow:0 24px 60px #00000047}.thousand-rail-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.thousand-rail-heading>div{gap:6px;min-width:0;display:grid}.thousand-rail-heading__eyebrow{color:var(--amber);letter-spacing:.1em;font-size:10px}.thousand-rail-heading h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:20px;font-weight:700;line-height:1.15}.thousand-turn-icon{border:1px solid var(--border);width:36px;height:36px;color:var(--muted);border-radius:10px;flex:none;place-items:center;display:grid}.thousand-turn-icon.is-active{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.thousand-turn-icon.is-active{border-color:color-mix(in srgb,var(--success)48%,var(--border))}}.thousand-turn-icon.is-active{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.thousand-turn-icon.is-active{background:color-mix(in srgb,var(--success)10%,var(--surface))}}.thousand-turn-icon.is-active{color:var(--success);animation:1.8s cubic-bezier(.32,.72,0,1) infinite thousand-clock-pulse}.thousand-rail-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.thousand-rail-summary>div{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;gap:5px;min-width:0;padding:10px;display:grid}.thousand-rail-summary span{letter-spacing:.08em;font-size:9px}.thousand-rail-summary strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:16px;line-height:1.1}.thousand-rail-actions{gap:8px;min-height:0;display:grid}.thousand-action-button{justify-content:center;width:100%;min-height:48px}.thousand-action-button small{color:currentColor;font-variant-numeric:tabular-nums;opacity:.7;margin-inline-start:auto;font-size:12px}.thousand-action-button:disabled{cursor:not-allowed}.thousand-declare-form{gap:8px;display:grid}.thousand-declare-form label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.thousand-declare-form input{border:1px solid var(--amber);width:100%;min-height:48px;padding:8px 12px}@supports (color:color-mix(in lab, red, red)){.thousand-declare-form input{border:1px solid color-mix(in srgb,var(--amber)38%,var(--border))}}.thousand-declare-form input{background:var(--surface-raised);color:var(--amber);font:inherit;font-variant-numeric:tabular-nums;text-align:center;border-radius:10px;font-size:16px;font-weight:700}.thousand-declare-form input:focus-visible{border-color:var(--amber);box-shadow:0 0 0 4px #ff8a3d1f}.thousand-waiting-callout{border:1px solid var(--border);background:var(--surface-raised);min-height:48px;color:var(--muted);text-align:center;text-wrap:pretty;border-radius:10px;place-items:center;padding:10px 12px;font-size:12px;font-weight:700;line-height:1.4;display:grid}.thousand-waiting-callout--accent{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.thousand-waiting-callout--accent{border-color:color-mix(in srgb,var(--amber)42%,var(--border))}}.thousand-waiting-callout--accent{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.thousand-waiting-callout--accent{background:color-mix(in srgb,var(--amber)10%,var(--surface-raised))}}.thousand-waiting-callout--accent{color:var(--amber);animation:2.2s cubic-bezier(.32,.72,0,1) infinite thousand-soft-pulse}.thousand-rail-tip{border-top:1px solid var(--border);letter-spacing:0;text-transform:none;text-wrap:pretty;align-items:flex-start;gap:8px;margin-top:auto;padding-top:12px;font-size:11px;font-weight:500;line-height:1.45;display:flex}.thousand-rail-tip>span{color:var(--amber);font-family:Georgia,serif;font-size:18px;line-height:1}.thousand-rail-tip p{margin:0}.thousand-flying-card{outline-offset:-1px;border:1px solid #ffffff29;border-radius:6px;outline:1px solid #ffffff14;box-shadow:0 18px 36px #0000006b}.thousand-result-overlay{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000b8;place-items:center;padding:24px;animation:.52s cubic-bezier(.32,.72,0,1) both thousand-fade-in;display:grid;position:absolute;inset:0}.thousand-result-card{text-align:center;background:#181818;border:1px solid #ffb37d4d;border-radius:24px;justify-items:center;gap:12px;width:min(100%,420px);padding:32px;animation:.72s cubic-bezier(.32,.72,0,1) both thousand-result-in;display:grid;box-shadow:0 28px 72px #00000080,0 0 0 8px #ffb37d0a}.thousand-result-icon{width:60px;height:60px;color:var(--amber);background:#ff8a3d1f;border:1px solid #ffb37d57;border-radius:16px;place-items:center;display:grid}.thousand-result-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:4px 0 0;font-size:11px;font-weight:700;line-height:1.35}.thousand-result-card h1{color:var(--text);letter-spacing:-.04em;margin:0;font-size:30px;font-weight:700;line-height:1.1}.thousand-result-winner{color:var(--text-secondary);margin:0;font-size:18px;font-weight:700}.thousand-result-score{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;gap:4px;min-width:160px;margin-top:4px;padding:12px 16px;display:grid}.thousand-result-score span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.thousand-result-score strong{color:var(--amber);font-variant-numeric:tabular-nums;font-size:24px;line-height:1}.thousand-result-action{width:100%;margin-top:8px}@keyframes thousand-rise-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes thousand-center-in{0%{opacity:0;transform:translateY(10px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes thousand-card-in{0%{opacity:0;transform:translateY(18px)rotate(-3deg)scale(.94)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes thousand-deal-in{0%{opacity:0;transform:translateY(-8px)rotate(-6deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes thousand-trick-in{0%{opacity:0;transform:translate(-50%,-50%)translateY(-12px)rotate(0)scale(.88)}to{opacity:1}}@keyframes thousand-result-in{0%{opacity:0;transform:translateY(24px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes thousand-fade-in{0%{opacity:0}to{opacity:1}}@keyframes thousand-clock-pulse{0%,to{opacity:.68}50%{opacity:1}}@keyframes thousand-soft-pulse{0%,to{box-shadow:0 0 #ff8a3d00}50%{box-shadow:0 0 0 4px #ff8a3d14}}@media (max-width:960px){.game-runtime-shell--thousand .game-runtime-thousand-layout{flex-direction:column;align-items:center;width:100%;padding-bottom:16px;display:flex;overflow-y:auto}.thousand-board-column{flex:none;grid-column:auto;width:100%}.game-runtime-shell--thousand .thousand-table{width:min(100%,100vw - 32px)}.thousand-control-rail{flex:none;grid-column:auto;width:min(100%,560px);min-width:0;max-width:100%;margin-inline-start:0}}@media (max-width:640px){.game-runtime-shell--thousand{padding-top:64px}.thousand-game-header{flex-direction:column;align-items:flex-start;gap:12px}.thousand-game-header__meta{justify-content:flex-start;width:100%}.thousand-game-heading h1{font-size:24px}.thousand-table__top{inset-inline:20%;top:16px}.thousand-table__bottom{inset-inline:4px;bottom:10px}.thousand-table__side{width:26%;top:27%;bottom:27%}.thousand-table__side--left{inset-inline-start:4px}.thousand-table__side--right{inset-inline-end:4px}.thousand-table__center{inset:30% 29%}.thousand-table__trump{top:16px;min-width:44px;padding:6px 8px;inset-inline-end:16px}.thousand-player-seat{min-height:44px;padding:6px 8px}.thousand-player-seat__copy strong{font-size:10px}.thousand-player-seat__copy span{font-size:8px}.thousand-player-seat__dealer{display:none}.thousand-opponent-card{width:14px;margin-inline-start:-5px}.thousand-hand{min-height:76px;padding-inline:4%}.thousand-hand-card{max-width:56px}.thousand-table__mark{font-size:18px}.thousand-table__mark--top{top:14px;inset-inline-start:18px}.thousand-table__mark--bottom{inset-inline-end:18px;bottom:14px}.thousand-control-rail{padding:16px}.thousand-result-card{padding:24px 16px}}#app-content.page-transition>.game-runtime-shell.game-runtime-shell--thousand,#app-content.page-transition>div:not([class])>.game-runtime-shell.game-runtime-shell--thousand{overflow-y:auto}@media (prefers-reduced-motion:reduce){.thousand-game-header,.thousand-result-overlay,.thousand-result-card,.thousand-stock-reveal,.thousand-hand-card,.thousand-opponent-card,.thousand-trick-card{animation:none}.thousand-player-seat.is-active,.thousand-hand-card.is-valid:hover:not(:disabled),.thousand-hand-card.is-valid:focus-visible,.thousand-hand-card.is-valid:active:not(:disabled){transform:none}.thousand-player-seat__turn,.thousand-turn-icon.is-active,.thousand-waiting-callout--accent{animation:none}}.thousand-rules-dock{right:max(76px,calc(env(safe-area-inset-right) + 76px));bottom:max(16px,env(safe-area-inset-bottom));z-index:55;justify-items:end;display:grid;position:absolute}.thousand-rules-dock--left{right:auto;left:max(76px,calc(env(safe-area-inset-left) + 76px));justify-items:start}.thousand-rules-button{width:48px;height:48px;color:var(--amber);cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#181818f0;border:1px solid #ffb37d4d;border-radius:999px;place-items:center;padding:0;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:grid;position:relative;box-shadow:0 14px 32px #00000057}.thousand-rules-button:hover,.thousand-rules-button.is-open{border-color:var(--amber);background:#272727;transform:translateY(-3px);box-shadow:0 18px 40px #0006,0 0 0 4px #ff8a3d1a}.thousand-rules-button:active{transform:scale(.96)}.thousand-rules-button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.thousand-rules-button__icon{opacity:0;filter:blur(4px);place-items:center;transition:opacity .22s cubic-bezier(.32,.72,0,1),transform .42s cubic-bezier(.32,.72,0,1),filter .42s cubic-bezier(.32,.72,0,1);display:grid;position:absolute;transform:scale(.25)}.thousand-rules-button__icon.is-visible{opacity:1;filter:blur();transform:scale(1)}.thousand-rules-panel{width:min(320px,100vw - 32px);color:var(--text);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#181818;border:1px solid #ffb37d3d;border-radius:16px;gap:12px;padding:16px;animation:.52s cubic-bezier(.32,.72,0,1) both thousand-rules-pop;display:grid;position:absolute;bottom:60px;right:0;box-shadow:0 24px 60px #0000007a,0 0 0 8px #ffb37d08}.thousand-rules-dock--left .thousand-rules-panel{left:0;right:auto}.thousand-rules-panel__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.thousand-rules-panel__header>div{gap:4px;display:grid}.thousand-rules-panel__eyebrow{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1.35}.thousand-rules-panel h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:20px;font-weight:700;line-height:1.15}.thousand-rules-panel__mark{color:#ffb37d6b;font-family:Georgia,serif;font-size:24px;line-height:1}.thousand-rules-panel__intro{color:var(--muted);text-wrap:pretty;margin:0;font-size:13px;line-height:1.45}.thousand-rules-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.thousand-rules-list li{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px;animation:.42s cubic-bezier(.32,.72,0,1) both thousand-rule-item-in;display:grid}.thousand-rules-list__number{color:var(--amber);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px;line-height:1.4}.thousand-rules-list li>span:last-child{gap:3px;min-width:0;display:grid}.thousand-rules-list strong{color:var(--text);font-size:12px;font-weight:700;line-height:1.35}.thousand-rules-list li>span:last-child>span{color:var(--muted);text-wrap:pretty;font-size:11px;line-height:1.45}@keyframes thousand-rules-pop{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes thousand-rule-item-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.thousand-rules-panel{width:min(320px,100vw - 32px);right:-60px}.thousand-rules-dock--left .thousand-rules-panel{left:-60px;right:auto}}@media (prefers-reduced-motion:reduce){.thousand-rules-panel,.thousand-rules-list li{animation:none}.thousand-rules-button:hover,.thousand-rules-button.is-open,.thousand-rules-button:active{transform:none}}.admin-shell{isolation:isolate;height:100dvh;min-height:100dvh;color:var(--text);padding:32px 20px 64px;position:relative;overflow-y:auto}.admin-shell--loading{color:var(--muted);place-content:center;justify-items:center;gap:12px;display:grid}.admin-shell--loading p{margin:0;font-size:14px}.admin-backdrop{z-index:-1;pointer-events:none;background:#00000070;position:fixed;inset:0}.admin-container{width:min(1440px,100%);margin:0 auto;position:relative}.admin-header{grid-template-columns:minmax(120px,1fr) minmax(0,2fr) minmax(120px,1fr);align-items:start;gap:24px;margin-bottom:32px;display:grid}.admin-header .return-arrow{justify-self:start;margin-top:4px;position:static}.admin-header__copy{text-align:center;gap:8px;display:grid}.admin-header__copy h1,.admin-section-header h2,.admin-section-heading h2,.admin-modal h2,.admin-overview-note h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-weight:700;line-height:1.12}.admin-header__copy h1{font-size:30px}.admin-header__copy>p:last-child,.admin-section-header>div>p:last-child,.admin-overview-note p,.admin-modal-heading p{color:var(--muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.5}.admin-kicker,.admin-eyebrow{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;justify-content:center;align-items:center;gap:8px;margin:0;font-size:11px;font-weight:700;line-height:1.4;display:flex}.admin-eyebrow{color:var(--text-subtle);justify-content:flex-start}.admin-online-dot{background:var(--success);border-radius:999px;width:8px;height:8px;box-shadow:0 0 0 4px #59d38c1f}.admin-alert{color:#ffd7df;background:#64192aa3;border:1px solid #fb718559;border-radius:12px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.admin-alert p{flex:1;margin:0;font-size:14px;line-height:1.45}.admin-alert button,.admin-icon-button,.admin-search button{color:currentColor;cursor:pointer;background:0 0;border:0;place-items:center;min-width:32px;min-height:32px;padding:0;display:grid}.admin-stats-section{margin-bottom:24px}.admin-stats-heading{align-items:center;margin-bottom:16px}.admin-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:0;display:grid}.admin-stat-card{border:1px solid var(--border);background:#141414e0;border-radius:16px;align-items:center;gap:12px;min-height:86px;padding:16px;display:flex;box-shadow:0 12px 32px #00000029}.admin-stat-card>div{gap:3px;min-width:0;display:grid}.admin-stat-card strong{color:var(--text);font-size:24px;font-weight:700;line-height:1}.admin-stat-card>div>span{color:var(--muted);font-size:12px;line-height:1.35}.admin-stat-icon{background:var(--surface-soft);width:36px;height:36px;color:var(--text-secondary);border-radius:10px;flex:0 0 36px;place-items:center;display:grid}.admin-stat-card--green .admin-stat-icon{color:var(--success);background:#59d38c1f}.admin-stat-card--red .admin-stat-icon{color:var(--danger);background:#fb71851f}.admin-stat-card--amber .admin-stat-icon{color:var(--amber);background:#ff8a3d1f}.admin-stat-card--blue .admin-stat-icon{color:#8eb8ff;background:#6691de24}.admin-stat-card--purple .admin-stat-icon{color:#c5a2ff;background:#a67de824}.admin-tabs{border:1px solid var(--border);background:#141414c7;border-radius:14px;gap:4px;margin-bottom:20px;padding:4px;display:flex;overflow-x:auto}.admin-tab{min-height:42px;color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:600;transition:color .18s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);display:inline-flex}.admin-tab:hover{color:var(--text);background:var(--surface-soft)}.admin-tab:active{transform:scale(.96)}.admin-tab.is-active{background:var(--amber);color:#17110b}.admin-tab-content{min-height:420px}.admin-tab-content>section,.admin-tab-content [role=tabpanel]{outline:none}.admin-overview-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:16px;display:grid}.admin-card{border:1px solid var(--border);background:#141414e0;border-radius:16px;min-width:0;padding:24px;box-shadow:0 18px 48px #0000002e}.admin-section-heading,.admin-section-header,.admin-detail-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.admin-section-heading{margin-bottom:20px}.admin-section-heading h2,.admin-section-header h2{font-size:22px}.admin-section-heading>svg{color:var(--amber)}.admin-count{background:var(--surface-soft);min-width:32px;min-height:28px;color:var(--text-secondary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;padding:0 8px;font-size:12px;display:inline-grid}.admin-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-quick-action{border:1px solid var(--border);background:var(--surface-raised);min-height:62px;color:var(--text);cursor:pointer;text-align:start;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);display:grid}.admin-quick-action:hover{border-color:var(--border-strong);background:var(--surface-soft);transform:translateY(-2px)}.admin-quick-action:active{transform:scale(.98)}.admin-quick-action>span{width:32px;height:32px;color:var(--amber);background:#ff8a3d1f;border-radius:9px;place-items:center;display:grid}.admin-quick-action strong{font-size:13px;line-height:1.3}.admin-quick-action>svg{color:var(--muted)}.admin-online-list,.admin-history-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.admin-online-list{max-height:360px;padding-inline-end:4px;overflow-y:auto}.admin-online-list li{border-bottom:1px solid #e9ecf312;align-items:center;gap:10px;min-height:48px;padding:6px 0;display:flex}.admin-online-list li:last-child{border-bottom:0}.admin-avatar{background:var(--surface-soft);width:32px;height:32px;color:var(--amber);border-radius:10px;flex:0 0 32px;place-items:center;font-size:13px;font-weight:700;display:grid}.admin-online-name{flex:1;gap:2px;min-width:0;display:grid}.admin-online-name strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-online-name small{color:var(--muted);font-size:11px}.admin-online-dot{width:7px;height:7px;box-shadow:0 0 0 3px #59d38c1f}.admin-online-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-inline-start:8px;display:flex}.admin-online-actions .admin-action-button{min-height:30px;padding-inline:8px}.admin-guest-bans-section{margin-top:24px}.admin-overview-note{align-items:center;gap:14px;margin-top:16px;padding:16px 20px;display:flex}.admin-overview-note__icon{width:36px;height:36px;color:var(--amber);background:#ff8a3d1f;border-radius:10px;flex:0 0 36px;place-items:center;display:grid}.admin-overview-note h2{letter-spacing:0;font-size:15px}.admin-overview-note p{font-size:13px}.admin-overview-note>div:nth-child(2){flex:1}.admin-link-button{min-height:36px;color:var(--amber);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex}.admin-link-button:hover{color:var(--focus)}.admin-link-button--danger{color:var(--danger)}.admin-section-header{align-items:end;margin-bottom:20px}.admin-section-header>div{gap:7px;display:grid}.admin-section-header .admin-eyebrow{margin-bottom:1px}.admin-toolbar{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:16px;display:flex}.admin-search,.admin-select-wrap{border:1px solid var(--border);min-height:42px;color:var(--muted);background:#141414e0;border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.admin-search{width:min(380px,100%)}.admin-search:focus-within,.admin-select-wrap:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px #ffb37d1f}.admin-search input,.admin-select-wrap select{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:14px}.admin-search input::placeholder{color:var(--text-subtle)}.admin-search>svg{flex:none}.admin-select-wrap{gap:10px}.admin-select-wrap span{color:var(--muted);white-space:nowrap;font-size:12px}.admin-select-wrap select{cursor:pointer;min-width:150px}.admin-select-wrap option{background:var(--surface-raised);color:var(--text)}.admin-checkbox{min-height:42px;color:var(--text-secondary);cursor:pointer;align-items:center;gap:9px;padding:0 4px;font-size:13px;display:inline-flex}.admin-checkbox input{width:18px;height:18px;accent-color:var(--amber)}.admin-table-wrap{border:1px solid var(--border);background:#141414d1;border-radius:14px;overflow-x:auto}.admin-table{border-collapse:collapse;text-align:start;width:100%;min-width:940px}.admin-table th{background:var(--surface-raised);color:var(--text-subtle);letter-spacing:.07em;text-align:start;text-transform:uppercase;white-space:nowrap;padding:12px 14px;font-size:11px;font-weight:700}.admin-table td{color:var(--text-secondary);vertical-align:middle;border-top:1px solid #e9ecf312;padding:14px;font-size:13px}.admin-table tbody tr{transition:background-color .16s cubic-bezier(.32,.72,0,1)}.admin-table tbody tr:hover{background:#ff8a3d0d}.admin-table td:first-child{color:var(--text)}.admin-table-subtext{color:var(--muted);margin-top:4px;font-size:11px;display:block}.admin-user-cell{align-items:center;gap:10px;min-width:170px;display:flex}.admin-user-cell>span:last-child{gap:3px;min-width:0;display:grid}.admin-user-cell strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-user-cell small{color:var(--muted);font-size:11px}.admin-reason{max-width:280px;line-height:1.45}.admin-mono{font-family:var(--font-mono);color:var(--muted)!important;font-size:11px!important}.admin-row-actions{flex-wrap:wrap;gap:6px;min-width:420px;display:flex}.admin-action-button{min-height:34px;color:var(--text);cursor:pointer;font:inherit;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:700;transition:background-color .16s cubic-bezier(.32,.72,0,1),border-color .16s cubic-bezier(.32,.72,0,1),transform .16s cubic-bezier(.32,.72,0,1);display:inline-flex}.admin-action-button:hover:not(:disabled){border-color:currentColor;transform:translateY(-1px)}.admin-action-button:active:not(:disabled){transform:scale(.96)}.admin-action-button:disabled{cursor:not-allowed;opacity:.42}.admin-action-button--neutral{background:var(--surface-soft);color:var(--text-secondary)}.admin-action-button--red{color:#ff9caf;background:#fb718521}.admin-action-button--green{color:#8ce5ae;background:#59d38c21}.admin-action-button--amber{color:var(--focus);background:#ffb37d21}.admin-action-button--blue{color:#a8c8ff;background:#8eb8ff21}.admin-status{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.admin-status.is-success{color:var(--success)}.admin-status.is-danger{color:var(--danger)}.admin-status.is-admin{color:var(--focus)}.admin-status.is-muted{color:var(--muted)}.admin-muted{color:var(--muted);font-size:13px}.admin-action-badge{background:var(--surface-soft);color:var(--text-secondary);white-space:nowrap;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.admin-action-badge--ban,.admin-action-badge--guest_ban{color:#ff9caf;background:#fb718524}.admin-action-badge--unban,.admin-action-badge--guest_unban{color:#8ce5ae;background:#59d38c24}.admin-action-badge--kick,.admin-action-badge--guest_kick{color:var(--focus);background:#ffb37d24}.admin-action-badge--make_admin,.admin-action-badge--revoke_admin{color:#a8c8ff;background:#8eb8ff24}.admin-action-badge--reset_stats,.admin-action-badge--notify{color:#d5baff;background:#c5a2ff24}.admin-empty{border:1px dashed var(--border-strong);min-height:220px;color:var(--muted);text-align:center;border-radius:14px;place-content:center;justify-items:center;gap:8px;padding:28px;display:grid}.admin-empty svg{color:var(--amber)}.admin-empty strong{color:var(--text);font-size:15px}.admin-empty p{max-width:360px;color:var(--muted);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}.admin-pagination{color:var(--muted);justify-content:center;align-items:center;gap:12px;margin-top:20px;font-size:13px;display:flex}.admin-pagination span{text-align:center;min-width:74px}.admin-pagination strong{color:var(--text);font-variant-numeric:tabular-nums}.admin-pagination button{border:1px solid var(--border);background:var(--surface-raised);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:9px;place-items:center;display:grid}.admin-pagination button:hover:not(:disabled){border-color:var(--focus);color:var(--focus)}.admin-pagination button:disabled{cursor:not-allowed;opacity:.35}.admin-modal-layer{z-index:100;overscroll-behavior:contain;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.admin-modal-backdrop{cursor:default;background:#000000c2;border:0;width:100%;height:100%;position:absolute;inset:0}.admin-modal{border:1px solid var(--border-strong);background:var(--surface-raised);border-radius:16px;width:min(560px,100%);max-height:calc(100dvh - 40px);padding:24px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #00000094}.admin-modal-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.admin-modal-heading h2{font-size:22px}.admin-icon-button{color:var(--muted);border-radius:8px;flex:0 0 32px}.admin-icon-button:hover{background:var(--surface-soft);color:var(--text)}.admin-form{gap:8px;display:grid}.admin-form label{color:var(--text-secondary);font-size:13px;font-weight:700}.admin-form textarea,.admin-form select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:10px;outline:0;margin-bottom:8px;padding:11px 12px;font-size:14px;line-height:1.45}.admin-form textarea::placeholder{color:var(--text-subtle)}.admin-form textarea:focus,.admin-form select:focus{border-color:var(--focus);box-shadow:0 0 0 3px #ffb37d1f}.admin-form select{cursor:pointer}.admin-form select option{background:var(--surface-raised)}.admin-character-count{color:var(--muted);font-variant-numeric:tabular-nums;justify-self:end;margin-top:-5px;font-size:11px}.admin-modal-actions{flex-direction:row-reverse;gap:10px;margin-top:24px;display:flex}.admin-button{cursor:pointer;min-height:42px;font:inherit;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:700;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);display:inline-flex}.admin-button:hover:not(:disabled){transform:translateY(-1px)}.admin-button:active:not(:disabled){transform:scale(.96)}.admin-button:disabled{cursor:not-allowed;opacity:.45}.admin-button--primary{background:var(--amber);color:#17110b}.admin-button--danger{background:var(--danger);color:#260910}.admin-button--secondary{border-color:var(--border);background:var(--surface-raised);color:var(--text-secondary)}.admin-button--secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.admin-detail-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:20px;font-size:12px;display:flex}.admin-detail-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:24px;display:grid}.admin-detail-stats>div{background:var(--surface);text-align:center;border-radius:10px;gap:4px;padding:12px;display:grid}.admin-detail-stats strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:20px}.admin-detail-stats span{color:var(--muted);font-size:11px}.admin-detail-section{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.admin-detail-section h3{color:var(--text);margin:0 0 12px;font-size:14px}.admin-detail-heading{align-items:center}.admin-detail-heading h3{margin:0}.admin-stats-list{gap:6px;display:grid}.admin-stats-list>div{background:var(--surface);color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex}.admin-stats-list strong{color:var(--text-secondary)}.admin-inline-loading{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.admin-history-list{gap:8px}.admin-history-list li{color:var(--text-secondary);border-bottom:1px solid #e9ecf312;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;font-size:12px;display:grid}.admin-history-list li:last-child{border-bottom:0}.admin-history-list li>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-history-list small{color:var(--muted);white-space:nowrap}.admin-modal-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:24px;display:flex}.admin-shell button:focus-visible,.admin-shell input:focus-visible,.admin-shell textarea:focus-visible,.admin-shell select:focus-visible,.admin-shell [role=tab]:focus-visible{outline:2px solid var(--focus);outline-offset:3px}@media (max-width:1120px){.admin-header{grid-template-columns:minmax(120px,1fr) minmax(0,2fr) minmax(120px,1fr)}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:780px){.admin-shell{padding:20px 14px 48px}.admin-header{grid-template-columns:1fr;gap:16px}.admin-header .return-arrow{justify-self:start}.admin-header__copy{text-align:start;grid-column:auto}.admin-kicker{justify-content:flex-start}.admin-overview-grid{grid-template-columns:1fr}.admin-section-header{flex-direction:column;align-items:flex-start}.admin-section-header>.admin-button{align-self:stretch}.admin-card{padding:18px}}@media (max-width:560px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-stat-card{min-height:74px;padding:12px}.admin-stat-card strong{font-size:20px}.admin-stat-icon{flex-basis:32px;width:32px;height:32px}.admin-tabs{margin-inline:-2px}.admin-tab{flex:1 0 auto;padding-inline:11px}.admin-action-grid{grid-template-columns:1fr}.admin-toolbar{flex-direction:column;align-items:stretch}.admin-search{width:100%}.admin-select-wrap{justify-content:space-between}.admin-select-wrap select{min-width:0}.admin-overview-note{flex-wrap:wrap;align-items:flex-start}.admin-overview-note .admin-link-button{margin-inline-start:50px}.admin-modal-layer{padding:12px}.admin-modal{max-height:calc(100dvh - 24px);padding:18px}.admin-modal-actions{flex-direction:column}.admin-modal-actions .admin-button{width:100%}.admin-modal-footer{flex-direction:column-reverse;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.admin-tab,.admin-quick-action,.admin-action-button,.admin-button,.admin-table tbody tr{transition:none}.admin-tab:active,.admin-quick-action:active,.admin-action-button:active,.admin-button:active,.admin-quick-action:hover,.admin-action-button:hover:not(:disabled),.admin-button:hover:not(:disabled){transform:none}}.game-runtime-shell--stratego{min-height:100dvh;padding-top:64px;padding-bottom:max(32px,env(safe-area-inset-bottom));overflow-y:auto}.game-runtime-shell--stratego .return-arrow{z-index:3;background:#141414d6;top:16px;left:clamp(16px,3vw,48px)}.game-runtime-shell--stratego .game-runtime-game{width:min(100%,1440px);margin-inline:auto}.stratego-kicker,.stratego-section-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700;line-height:1.35}.stratego-stage-header{justify-content:space-between;align-items:flex-end;gap:24px;width:100%;max-width:1120px;margin-inline:auto;padding-inline:4px;display:flex}.stratego-stage-heading{gap:6px;min-width:0;display:grid}.stratego-stage-heading h2{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.stratego-stage-heading p:last-child{max-width:62ch;color:var(--muted);text-wrap:pretty;margin:4px 0 0;font-size:14px;line-height:1.5}.stratego-setup-counter{border:1px solid var(--border);background:var(--surface-raised);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:12px;flex:none;justify-items:end;gap:4px;padding:12px 16px;font-size:10px;font-weight:700;line-height:1.35;display:grid}.stratego-setup-counter strong{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:24px;line-height:1}.stratego-setup-counter strong span{color:var(--text-subtle);font-size:14px}.stratego-setup-counter.is-red{border-color:#fb71855c}.stratego-setup-counter.is-blue{border-color:#60a5fa5c}.stratego-setup-counter.is-red strong,.stratego-side-badge.is-red,.stratego-setup-piece.is-red,.stratego-inventory-piece.is-red{color:#fb7185}.stratego-setup-counter.is-blue strong,.stratego-side-badge.is-blue,.stratego-setup-piece.is-blue,.stratego-inventory-piece.is-blue{color:#60a5fa}.stratego-setup-layout{grid-template-columns:minmax(0,720px) minmax(260px,320px);align-items:start;gap:16px;width:100%;max-width:1056px;margin-inline:auto;display:grid}.stratego-setup-board-panel,.stratego-setup-tray{border:1px solid var(--border);background:var(--surface);border-radius:16px;min-width:0;padding:20px}@supports (color:color-mix(in lab, red, red)){.stratego-setup-board-panel,.stratego-setup-tray{background:color-mix(in srgb,var(--surface)90%,transparent)}}.stratego-setup-board-panel,.stratego-setup-tray{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000038}.stratego-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.stratego-section-heading h3{color:var(--text);letter-spacing:-.02em;margin:4px 0 0;font-size:18px;font-weight:700;line-height:1.2}.stratego-section-heading>svg{color:var(--amber)}.stratego-side-badge{letter-spacing:.1em;border:1px solid;border-radius:999px;align-items:center;gap:6px;min-height:28px;padding:4px 8px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.stratego-side-badge span{background:currentColor;border-radius:50%;width:6px;height:6px}.stratego-setup-board-panel{justify-self:center;width:min(100%,720px,68dvh)}.stratego-setup-board{aspect-ratio:1;border:1px solid var(--border-strong);background-color:#131209;background-position:50%;background-size:100% 100%;border-radius:12px;grid-template-rows:repeat(10,minmax(0,1fr));grid-template-columns:repeat(10,minmax(0,1fr));gap:0;width:100%;padding:0;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #00000052,0 18px 40px #0000003d}.stratego-setup-cell{min-width:0;min-height:0;color:var(--text);cursor:pointer;background:#0f121c5c;border:1px solid #e9ecf31a;border-radius:0;place-items:center;padding:2px;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),transform .22s cubic-bezier(.32,.72,0,1);display:grid;position:relative}.stratego-setup-cell:hover,.stratego-setup-cell:focus-visible{border-color:var(--amber);background:#ff8a3d1f}.stratego-setup-cell:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.stratego-setup-cell--locked{cursor:default;pointer-events:none;background:0 0;border-color:#0000}.stratego-setup-cell.is-drag-over{border-color:var(--success);background:#59d38c29;box-shadow:0 0 0 2px #59d38c33}.stratego-setup-piece,.stratego-inventory-piece__image{cursor:grab;background:#00000052;border:1px solid;border-radius:7px;place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.stratego-setup-piece{width:84%;height:84%}.stratego-setup-piece:active,.stratego-inventory-piece:active{cursor:grabbing}.stratego-setup-piece img,.stratego-inventory-piece__image img{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.stratego-setup-piece>span,.stratego-inventory-piece__image>span{color:#fff;background:#000000c7;border-radius:0 0 0 5px;padding:2px 4px;font-size:10px;font-weight:700;line-height:1;position:absolute;top:0;right:0}.stratego-piece-inventory{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.stratego-inventory-piece{border:1px solid var(--border);background:var(--surface-raised);min-width:0;min-height:76px;color:var(--text-secondary);cursor:grab;border-radius:10px;place-items:center;gap:4px;padding:6px;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),opacity .18s;display:grid}.stratego-inventory-piece:hover:not(:disabled),.stratego-inventory-piece:focus-visible,.stratego-inventory-piece.is-selected{border-color:var(--amber);background:#ff8a3d1f}.stratego-inventory-piece:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.stratego-inventory-piece.is-selected{transform:translateY(-2px);box-shadow:0 0 0 3px #ff8a3d1a}.stratego-inventory-piece.is-empty,.stratego-inventory-piece:disabled{cursor:default;opacity:.34}.stratego-inventory-piece__image{width:48px;height:48px}.stratego-inventory-piece__count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700;line-height:1}.stratego-setup-actions{gap:8px;margin-top:16px;display:grid}.stratego-setup-actions .game-runtime-button{width:100%}.stratego-setup-confirm:disabled{border-color:var(--border);background:var(--surface-soft);color:var(--text-subtle)}.stratego-state-stage,.stratego-result-stage{flex:auto;place-items:center;width:100%;min-height:0;padding:24px;display:grid}.stratego-state-card,.stratego-result-card{border:1px solid var(--border);text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#141414e6;border-radius:16px;justify-items:center;gap:12px;width:min(100%,480px);padding:32px;animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter;display:grid;box-shadow:0 24px 60px #00000047}.stratego-state-card__icon,.stratego-result-card__icon{width:56px;height:56px;color:var(--amber);background:#ff8a3d1a;border:1px solid #ff8a3d70;border-radius:16px;place-items:center;display:grid}.stratego-state-card__icon.is-waiting{color:var(--focus)}.stratego-state-card h2,.stratego-result-card h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:24px;font-weight:700;line-height:1.15}.stratego-state-card p:last-child,.stratego-result-card__reason{max-width:42ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.5}.stratego-result-card{border-color:#ff8a3d61;gap:16px}.stratego-result-card__winner{color:var(--text-secondary);margin:0;font-size:18px;line-height:1.4}.stratego-result-card__winner strong{color:var(--text)}.stratego-result-card__action{width:100%;margin-top:4px}.stratego-match{justify-content:flex-start;align-items:stretch;gap:16px}.stratego-match-layout{grid-template-columns:minmax(0,1fr);justify-content:center;align-items:center;gap:16px;width:min(100%,820px,84dvh);max-width:820px;margin-inline:auto;display:grid}.stratego-player-rail{align-self:center;min-width:0;display:grid}.stratego-player-card{border:1px solid var(--border);background:#181818db;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:52px;padding:12px 16px;transition:border-color .22s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:flex;box-shadow:0 12px 28px #00000029}.stratego-player-card.is-red{border-color:#fb718542}.stratego-player-card.is-blue{border-color:#60a5fa42}.stratego-player-card.is-active{border-color:var(--amber);background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.stratego-player-card.is-active{background:color-mix(in srgb,var(--amber)10%,var(--surface))}}.stratego-player-card.is-active{box-shadow:0 16px 36px #0000003d,0 0 0 2px var(--amber)}@supports (color:color-mix(in lab, red, red)){.stratego-player-card.is-active{box-shadow:0 16px 36px #0000003d,0 0 0 2px color-mix(in srgb,var(--amber)18%,transparent)}}.stratego-player-card__meta,.stratego-combat-card__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.stratego-player-card__identity{align-items:center;gap:10px;min-width:0;display:flex}.stratego-player-card__identity strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.2;overflow:hidden}.stratego-player-card__meta{color:var(--text-subtle);letter-spacing:.12em;font-size:10px;font-weight:700}.stratego-player-card.is-red .stratego-player-card__meta svg{color:#fb7185}.stratego-player-card.is-blue .stratego-player-card__meta svg{color:#60a5fa}.stratego-board-column{align-content:start;justify-self:center;gap:8px;width:min(100%,820px,84dvh);min-width:0;display:grid}.stratego-board-frame{background:#131209;border-color:#e9ecf32e;width:100%;padding:6px;box-shadow:0 24px 60px #00000057,0 0 0 6px #ff8a3d08}.stratego-game-board{aspect-ratio:1;background-color:#181818;background-position:50%;background-size:100% 100%;border:1px solid #e9ecf338;border-radius:6px;grid-template-rows:repeat(10,minmax(0,1fr));grid-template-columns:repeat(10,minmax(0,1fr));width:100%;display:grid;overflow:hidden}.stratego-board-cell-shell{border:1px solid #e9ecf314;place-items:center;min-width:0;min-height:0;display:grid}.stratego-board-cell{width:100%;min-width:0;height:100%;min-height:0;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;place-items:center;padding:0;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),filter .18s;display:grid;position:relative}.stratego-board-cell--empty:hover:not(:disabled),.stratego-board-cell--empty:focus-visible{background:#ffffff14;border-color:#ffffff47}.stratego-board-cell--red,.stratego-board-cell--blue{background:#00000038}.stratego-board-cell--lake{cursor:not-allowed;pointer-events:none}.stratego-board-cell--red:hover:not(:disabled),.stratego-board-cell--red:focus-visible{filter:brightness(1.08);border-color:#fb7185cc}.stratego-board-cell--blue:hover:not(:disabled),.stratego-board-cell--blue:focus-visible{filter:brightness(1.08);border-color:#60a5facc}.stratego-board-cell:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.stratego-board-cell.is-selected{z-index:2;border-color:var(--amber);background:#ff8a3d29;transform:scale(1.02);box-shadow:0 0 0 3px #ff8a3d33}.stratego-board-cell.is-last-source,.stratego-board-cell.is-last-destination{box-shadow:0 0 0 2px #ffffff80}.stratego-board-cell.is-last-source{background:#ffffff14}.stratego-board-cell.is-last-destination{border-color:var(--success);background:#59d38c1f}.stratego-board-cell:disabled{cursor:default}.stratego-board-piece{object-fit:contain;filter:drop-shadow(0 4px 6px #0000006b);pointer-events:none;border-radius:4px;width:82%;height:82%;display:block}.stratego-board-piece__rank{color:#fff;pointer-events:none;background:#000000d1;border-radius:0 0 0 4px;padding:2px 3px;font-size:10px;font-weight:700;line-height:1;position:absolute;top:0;right:0}.stratego-board-piece__unknown{color:#ffffffc7;font-size:18px;font-weight:700}.stratego-board-cell.has-fallback:after{color:#fff;content:attr(data-fallback);font-size:14px;font-weight:700}.stratego-combat-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414eb;border:1px solid #ff8a3d4d;border-radius:12px;gap:10px;width:min(100%,420px);margin:0 auto;padding:12px 16px;display:grid;box-shadow:0 18px 40px #00000047}.stratego-combat-card__header{color:var(--amber)}.stratego-combat-card__pieces{justify-content:center;align-items:center;gap:16px;display:flex}.stratego-combat-card__pieces>div{justify-items:center;gap:4px;display:grid}.stratego-combat-card__pieces img{object-fit:contain;width:40px;height:40px}.stratego-combat-card__pieces span,.stratego-combat-card__pieces strong{color:var(--muted);letter-spacing:.1em;font-size:10px;font-weight:700;line-height:1}.stratego-combat-card__result{text-align:center;letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:700;line-height:1.35}.stratego-combat-card__result.is-win{color:var(--success)}.stratego-combat-card__result.is-loss{color:var(--danger)}.stratego-combat-card__result.is-draw{color:var(--muted)}@media (max-width:1100px){.stratego-setup-layout{grid-template-columns:minmax(0,1fr) minmax(240px,300px)}.stratego-match-layout,.stratego-board-column{width:min(100%,820px,84dvh)}}@media (max-width:760px){.game-runtime-shell--stratego{padding-top:64px}.stratego-stage-header{flex-direction:column;align-items:flex-start;gap:12px}.stratego-setup-layout{grid-template-columns:1fr}.stratego-setup-tray{order:2}.stratego-match-layout{grid-template-columns:1fr}.stratego-board-column{grid-area:auto;width:min(100%,820px,84dvh)}.stratego-player-rail{grid-row:auto}.stratego-player-card{padding:12px}}@media (max-width:520px){.game-runtime-shell--stratego{padding-left:12px;padding-right:12px}.game-chat--game.game-chat__bubble{border-radius:999px;width:48px;height:48px;max-height:none}.stratego-stage-heading h2{font-size:24px}.stratego-stage-header{padding-inline:0}.stratego-setup-counter{justify-items:start;width:100%}.stratego-setup-board-panel,.stratego-setup-tray{padding:12px}.stratego-setup-board{gap:0;padding:0}.stratego-setup-piece>span,.stratego-inventory-piece__image>span,.stratego-board-piece__rank{font-size:8px}.stratego-piece-inventory{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.stratego-inventory-piece{min-height:64px;padding:4px}.stratego-inventory-piece__image{width:40px;height:40px}.stratego-state-stage,.stratego-result-stage{padding:16px 0}.stratego-state-card,.stratego-result-card{padding:24px 16px}.stratego-player-rail{width:100%}.stratego-player-card{gap:10px}}@media (prefers-reduced-motion:reduce){.stratego-state-card,.stratego-result-card{animation:none}.stratego-setup-cell,.stratego-inventory-piece,.stratego-board-cell,.stratego-player-card{transition:none}.stratego-inventory-piece.is-selected,.stratego-player-card.is-active,.stratego-board-cell.is-selected{transform:none}}.settings-page-shell{overscroll-behavior-y:contain;min-height:100%;color:var(--text);align-content:start;justify-items:center;padding:72px clamp(16px,4vw,64px) 40px;display:grid;overflow:hidden visible}.settings-page-frame{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:24px;width:min(100%,640px);padding:clamp(16px,3vw,32px);display:grid}@supports (color:color-mix(in lab, red, red)){.settings-page-frame{background:color-mix(in srgb,var(--surface)90%,transparent)}}.settings-page-frame{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 60px #00000047}.settings-page-frame--loading{place-items:center;min-height:180px}.settings-loading{color:var(--muted);font-size:16px}.settings-page-header{gap:12px;display:grid}.settings-page-header h1,.settings-section h2,.settings-dialog h2{color:var(--text);text-wrap:balance;margin:0;font-weight:700}.settings-page-header h1{letter-spacing:-.04em;font-size:clamp(24px,5vw,40px);line-height:1.05}.settings-page-header p,.settings-section-heading p,.settings-dialog__header p{max-width:60ch;color:var(--muted);text-wrap:pretty;margin:8px 0 0;font-size:14px;line-height:1.5}.settings-kicker{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.3;display:block}.settings-sections{gap:16px;display:grid}.settings-section{border:1px solid var(--border);background:var(--surface-raised);border-radius:16px;gap:20px;padding:20px;display:grid}@supports (color:color-mix(in lab, red, red)){.settings-section{background:color-mix(in srgb,var(--surface-raised)72%,transparent)}}.settings-section--danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.settings-section--danger{border-color:color-mix(in srgb,var(--danger)38%,var(--border))}}.settings-section--danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.settings-section--danger{background:color-mix(in srgb,var(--danger)5%,var(--surface-raised))}}.settings-section-heading{align-items:flex-start;gap:12px;display:flex}.settings-section-heading>svg{color:var(--amber);flex:none;margin-top:2px}.settings-section--danger .settings-section-heading>svg{color:var(--danger)}.settings-section h2{font-size:20px;line-height:1.25}.settings-form{gap:12px;min-width:0;display:grid}.settings-field{gap:8px;min-width:0;display:grid}.settings-field>span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.settings-field input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--text);font:inherit;border-radius:10px;padding:10px 12px;font-size:16px}.settings-field input::placeholder{color:var(--text-subtle)}.settings-field input:focus-visible,.settings-language-switch button:focus-visible,.settings-button:focus-visible,.settings-icon-button:focus-visible,.settings-switch-row input:focus-visible+.settings-switch{outline:2px solid var(--focus);outline-offset:3px}.settings-field input:focus-visible{border-color:var(--amber)}.settings-field small,.settings-readonly-value span,.settings-switch-row small{color:var(--muted);font-size:12px;line-height:1.4}.settings-language-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.settings-language-switch button{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text-secondary);cursor:pointer;font:inherit;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1)}.settings-language-switch button:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.settings-language-switch button:active,.settings-button:active{transform:scale(.96)}.settings-language-switch button.is-selected{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.settings-language-switch button.is-selected{border-color:color-mix(in srgb,var(--amber)65%,var(--border))}}.settings-language-switch button.is-selected{color:var(--text);background:#ff8a3d24}.settings-readonly-value{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-content:center;gap:4px;min-height:44px;padding:10px 12px;display:grid}.settings-readonly-value strong{overflow-wrap:anywhere;color:var(--text);font-size:16px}.settings-switch-row{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-height:52px;padding:12px;display:grid;position:relative}.settings-switch-row>span:first-child{gap:4px;min-width:0;display:grid}.settings-switch-row strong{color:var(--text);font-size:14px}.settings-switch-row input{opacity:0;cursor:pointer;width:44px;height:44px;position:absolute;inset-inline-end:12px}.settings-switch{pointer-events:none;border:1px solid var(--border-strong);background:var(--surface-soft);border-radius:999px;width:52px;height:30px;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1);display:inline-block;position:relative}.settings-switch:after{background:var(--muted);content:"";border-radius:50%;width:20px;height:20px;transition:background-color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);position:absolute;top:4px;left:4px}.settings-switch-row input:checked+.settings-switch{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.settings-switch-row input:checked+.settings-switch{border-color:color-mix(in srgb,var(--amber)68%,var(--border))}}.settings-switch-row input:checked+.settings-switch{background:#ff8a3d33}.settings-switch-row input:checked+.settings-switch:after{background:var(--amber);transform:translate(22px)}.settings-form-message{text-wrap:pretty;align-items:center;gap:6px;margin:0;font-size:13px;line-height:1.4;display:flex}.settings-form-message--error{color:var(--danger)}.settings-form-message--success{color:var(--success)}.settings-button{width:fit-content;min-height:44px;color:var(--text);cursor:pointer;font:inherit;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);display:inline-flex}.settings-button:disabled{cursor:wait;opacity:.58}.settings-button--primary{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.settings-button--primary{border-color:color-mix(in srgb,var(--amber)55%,var(--border))}}.settings-button--primary{background:#ff8a3d29}.settings-button--primary:hover:not(:disabled){border-color:var(--amber);background:#ff8a3d42}.settings-button--secondary{border-color:var(--border);background:var(--surface-soft);color:var(--text-secondary)}.settings-button--secondary:hover:not(:disabled){border-color:var(--border-strong);color:var(--text)}.settings-button--danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.settings-button--danger{border-color:color-mix(in srgb,var(--danger)55%,var(--border))}}.settings-button--danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.settings-button--danger{background:color-mix(in srgb,var(--danger)12%,transparent)}}.settings-button--danger{color:var(--danger)}.settings-button--danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.settings-button--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger)20%,transparent)}}.settings-danger-copy,.settings-inline-warning{color:var(--muted);text-wrap:pretty;margin:0;font-size:13px;line-height:1.5}.settings-inline-warning{color:var(--danger)}.settings-dialog-layer{z-index:10000;overscroll-behavior:contain;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.settings-dialog-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b8;position:absolute;inset:0}.settings-dialog{border:1px solid var(--danger);width:min(560px,100%);max-height:calc(100dvh - 40px);padding:24px;position:relative;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.settings-dialog{border:1px solid color-mix(in srgb,var(--danger)48%,var(--border-strong))}}.settings-dialog{background:var(--surface-raised);border-radius:16px;box-shadow:0 28px 80px #00000094}.settings-dialog__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.settings-dialog h2{font-size:24px;line-height:1.2}.settings-icon-button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;border-radius:10px;flex:none;place-items:center;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1);display:grid}.settings-icon-button:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.settings-dialog__actions{justify-content:flex-end;gap:12px;padding-top:4px;display:flex}html[data-reduced-motion=true] *,html[data-reduced-motion=true] :before,html[data-reduced-motion=true] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (max-width:520px){.settings-page-shell{padding:76px 12px 24px}.settings-page-frame{gap:24px;padding:16px}.settings-section{padding:16px}.settings-dialog-layer{padding:12px}.settings-dialog{padding:16px}.settings-dialog__actions{flex-direction:column-reverse}.settings-dialog__actions .settings-button{width:100%}}.haxball-map-preview{outline-offset:-1px;outline:1px solid #ffffff1a;width:100%;height:auto;display:block}.haxball-map-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.haxball-map-choice{border:1px solid var(--border);background:var(--surface-raised);min-width:0;color:var(--text);cursor:pointer;font:inherit;text-align:start;border-radius:12px;gap:12px;padding:12px;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),box-shadow .22s cubic-bezier(.32,.72,0,1);display:grid;position:relative}.haxball-map-choice:hover{border-color:var(--border-strong);background:var(--surface-soft);transform:translateY(-3px)}.haxball-map-choice:active{transform:scale(.96)}.haxball-map-choice:focus-visible,.haxball-map-mini:focus-visible,.haxball-duration-choice:focus-visible,.haxball-team-panel__join:focus-visible,.haxball-seat:focus-visible,.haxball-ready-button:focus-visible,.haxball-tool-button:focus-visible,.haxball-kick-button:focus-visible,.haxball-joystick:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.haxball-map-choice.is-selected{border-color:var(--amber);background:#ff8a3d1a;box-shadow:0 0 0 3px #ff8a3d1a}.haxball-map-choice__copy{gap:4px;min-width:0;display:grid}.haxball-map-choice__copy strong{color:var(--text);letter-spacing:.02em;font-size:16px;font-weight:700}.haxball-map-choice__copy span{color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.45}.haxball-map-choice__check{color:var(--amber);position:absolute;top:16px;right:16px}.haxball-page-shell{min-height:100dvh;color:var(--text);padding:88px clamp(16px,4vw,64px) 48px;overflow-y:auto}.haxball-waiting-layout{width:min(100%,1120px);margin:0 auto}.haxball-waiting-card{border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141414eb;border-radius:16px;gap:24px;padding:clamp(16px,3vw,32px);animation:.76s cubic-bezier(.32,.72,0,1) both motion-enter;display:grid;box-shadow:0 24px 60px #00000047}.haxball-waiting-header,.haxball-settings-heading,.haxball-waiting-actions{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.haxball-waiting-splash{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;flex:none;width:min(100%,760px);height:clamp(140px,20vw,220px);position:relative;overflow:hidden;box-shadow:0 18px 44px #0000003d}.haxball-waiting-splash img{object-fit:cover;object-position:center 30%;opacity:.9}.multiplayer-active-shell--haxball-lobby .haxball-waiting-header{text-align:center;flex-direction:column;align-items:center}.multiplayer-active-shell--haxball-lobby .haxball-room-facts{justify-content:center}.haxball-waiting-header h1,.haxball-settings-heading h2,.haxball-result-card h1,.haxball-loading-card h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:32px;font-weight:700;line-height:1.1}.haxball-waiting-header p:last-child,.haxball-current-map p,.haxball-settings-heading .haxball-readonly-note{color:var(--muted);text-wrap:pretty;margin:8px 0 0;font-size:14px;line-height:1.5}.haxball-eyebrow,.haxball-section-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700;line-height:1.35}.haxball-room-facts{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.haxball-room-facts span{border:1px solid var(--border);background:var(--surface-raised);min-height:36px;color:var(--text-secondary);letter-spacing:.04em;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:700;display:inline-flex}.haxball-room-facts svg{color:var(--amber)}.haxball-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.haxball-team-panel,.haxball-settings-card{border:1px solid var(--border);background:#242424b8;border-radius:12px;min-width:0;padding:20px}.haxball-team-panel--red{border-color:#f06a7857}.haxball-team-panel--blue{border-color:#65a8f857}.haxball-team-panel__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.haxball-team-panel__header h2{color:var(--text);letter-spacing:-.02em;margin:0;font-size:20px;font-weight:700}.haxball-team-panel__kicker{color:var(--muted);letter-spacing:.12em;margin:0 0 4px;font-size:12px;font-weight:700}.haxball-team-panel__count{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-size:12px;display:inline-flex}.haxball-team-panel__players{gap:8px;display:grid}.haxball-seat{border:1px solid var(--border);background:var(--surface-raised);min-width:0;min-height:64px;color:var(--text);text-align:start;border-radius:10px;align-items:center;gap:12px;padding:10px;display:flex}button.haxball-seat{cursor:pointer;width:100%;font:inherit;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1)}button.haxball-seat:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-soft);transform:translateY(-2px)}.haxball-seat.is-current{border-color:var(--amber)}.haxball-seat--empty{color:var(--muted)}.haxball-seat:disabled{cursor:not-allowed;opacity:.66}.haxball-seat__copy{gap:2px;min-width:0;display:grid}.haxball-seat__copy strong,.haxball-seat__copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.haxball-seat__copy strong{color:var(--text);font-size:14px;font-weight:700}.haxball-seat__copy span{color:var(--muted);font-size:12px}.haxball-seat__plus{border:1px dashed var(--border-strong);width:40px;height:40px;color:var(--amber);border-radius:10px;flex:none;place-items:center;font-size:24px;display:grid}.haxball-seat__status{background:var(--danger);border-radius:999px;width:8px;height:8px;margin-inline-start:auto}.haxball-seat__status.is-connected{background:var(--success);box-shadow:0 0 0 4px #59d38c1f}.haxball-team-panel__join{border:1px solid var(--border);width:100%;min-height:44px;color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;border-radius:10px;justify-content:space-between;align-items:center;margin-top:12px;padding:8px 12px;font-size:14px;font-weight:700;transition:background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1);display:flex}.haxball-team-panel__join:hover:not(:disabled){border-color:var(--amber);color:var(--text);background:#ff8a3d14}.haxball-team-panel__join:disabled{cursor:not-allowed;opacity:.55}.haxball-current-map{grid-template-columns:minmax(180px,.52fr) minmax(0,1fr);align-items:center;gap:16px;margin-top:16px;display:grid}.haxball-map-scroll{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.haxball-map-mini,.haxball-duration-choice{border:1px solid var(--border);background:var(--surface-raised);min-width:0;color:var(--text-secondary);cursor:pointer;font:inherit;text-align:center;border-radius:10px;gap:8px;padding:8px;font-size:12px;font-weight:700;transition:transform .42s cubic-bezier(.32,.72,0,1),background-color .22s cubic-bezier(.32,.72,0,1),border-color .22s cubic-bezier(.32,.72,0,1),color .22s cubic-bezier(.32,.72,0,1);display:grid}.haxball-map-mini:hover,.haxball-duration-choice:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text);transform:translateY(-2px)}.haxball-map-mini.is-selected,.haxball-duration-choice.is-selected{border-color:var(--amber);color:var(--text);background:#ff8a3d1a}.haxball-duration-row{gap:8px;margin-top:12px;display:flex}.haxball-duration-choice{flex:1 1 0;min-height:44px;display:block}.haxball-waiting-actions{flex-wrap:wrap;align-items:center;padding-top:4px}.haxball-ready-button.is-ready{color:#b4f4ce;background:#59d38c1f;border-color:#59d38c8a}.haxball-waiting-host,.haxball-spectator-note{color:var(--muted);font-size:14px;line-height:1.45}.haxball-loading-card{border:1px solid var(--border);text-align:center;background:#141414eb;border-radius:16px;place-content:center;gap:8px;width:min(100% - 32px,560px);min-height:240px;margin:auto;padding:32px;display:grid}.haxball-loading-card span{color:var(--muted);font-size:14px}.haxball-runtime-page{height:100%;min-height:0;max-height:100%;color:var(--text);background:0 0;overflow:hidden}.haxball-match-shell{background-color:#0000;background-image:var(--bg-image);background-repeat:no-repeat;background-size:cover;background-position:var(--bg-position);grid-template-rows:auto minmax(0,1fr);gap:12px;height:100%;min-height:0;padding:16px clamp(16px,4vw,64px) 24px;display:grid;position:relative}.haxball-match-shell.is-goal-flash .haxball-arena-stage{box-shadow:0 0 0 2px #ff8a3de6,0 0 48px #ff8a3d38}.haxball-match-hud{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;width:min(100%,920px);margin:0 auto;padding:12px 16px;display:grid;position:relative}.haxball-match-team-score{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;font-size:14px;font-weight:700;display:flex}.haxball-match-team-score strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:32px;line-height:1}.haxball-match-team-score--blue{justify-content:flex-end}.haxball-match-team-score--red span{color:#f6a3ad}.haxball-match-team-score--blue span{color:#a6cafa}.haxball-match-clock{justify-items:center;gap:4px;display:grid}.haxball-match-clock span{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.haxball-match-clock strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:24px;line-height:1}.haxball-match-tools{gap:8px;display:flex}.haxball-tool-button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;border-radius:10px;place-items:center;transition:background-color .18s cubic-bezier(.32,.72,0,1),border-color .18s cubic-bezier(.32,.72,0,1),color .18s cubic-bezier(.32,.72,0,1),transform .18s cubic-bezier(.32,.72,0,1);display:grid}.haxball-tool-button:hover{border-color:var(--amber);color:var(--amber);transform:translateY(-2px)}.haxball-tool-button[aria-pressed=false]{color:var(--text-subtle)}.haxball-match-main{grid-template-columns:minmax(150px,190px) minmax(0,1fr) minmax(150px,190px);align-items:center;gap:16px;width:min(100%,1240px);min-height:0;margin:0 auto;display:grid}.haxball-arena-stage{aspect-ratio:2;border:1px solid var(--border);background:0 0;border-radius:16px;width:100%;min-height:0;transition:box-shadow .18s cubic-bezier(.32,.72,0,1);position:relative;overflow:hidden}.haxball-canvas-wrap,.haxball-canvas{width:100%;height:100%;display:block}.haxball-live-sidebar{align-content:center;gap:8px;display:grid}.haxball-live-player{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;gap:8px;min-width:0;padding:8px;display:flex}.haxball-live-player.is-current{border-color:var(--amber)}.haxball-live-player--red{border-inline-start:3px solid #f06a78}.haxball-live-player--blue{border-inline-start:3px solid #65a8f8}.haxball-live-player__copy{gap:2px;min-width:0;display:grid}.haxball-live-player__copy strong,.haxball-live-player__copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.haxball-live-player__copy strong{color:var(--text);font-size:12px;font-weight:700}.haxball-live-player__copy span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.haxball-countdown,.haxball-goal-callout,.haxball-observer-badge{z-index:3;background:#141414e6;border:1px solid #ff8a3d80;border-radius:12px;justify-items:center;gap:4px;padding:12px 16px;display:grid;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 18px 36px #0000004d}.haxball-countdown{top:50%;transform:translate(-50%,-50%)}.haxball-countdown span,.haxball-goal-callout span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:700}.haxball-countdown strong{color:var(--amber);font-variant-numeric:tabular-nums;font-size:48px;line-height:1}.haxball-goal-callout{text-align:center;top:16px}.haxball-goal-callout strong{color:var(--text);font-size:16px}.haxball-observer-badge{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:700;top:16px}.haxball-touch-controls{z-index:4;pointer-events:none;justify-content:space-between;align-items:flex-end;display:none;position:absolute;bottom:16px;left:16px;right:16px}.haxball-joystick,.haxball-kick-button{pointer-events:auto;touch-action:none}.haxball-joystick{width:96px;height:96px;color:var(--text);background:#141414c2;border:1px solid #e9ecf342;border-radius:999px;place-items:center;display:grid;position:relative}.haxball-joystick__ring{border:1px solid #e9ecf33d;border-radius:999px;position:absolute;inset:14px}.haxball-joystick__knob{background:var(--amber);border:1px solid #ff8a3dbf;border-radius:999px;width:32px;height:32px}.haxball-kick-button{color:#141414;cursor:pointer;letter-spacing:.08em;background:#ff8a3dd6;border:1px solid #ff8a3db3;border-radius:999px;place-items:center;gap:2px;min-width:80px;min-height:80px;font-size:12px;font-weight:800;display:grid}.haxball-kick-button span:first-child{font-size:22px}.haxball-kick-button:active{transform:scale(.96)}.haxball-result-overlay{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.haxball-result-card{border:1px solid var(--border-strong);background:var(--surface);text-align:center;border-radius:16px;gap:16px;width:min(100%,560px);padding:32px;animation:.52s cubic-bezier(.32,.72,0,1) both motion-enter;display:grid;box-shadow:0 28px 80px #0000006b}.haxball-result-score{color:var(--text);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:16px;font-size:48px;line-height:1;display:flex}.haxball-result-score b{color:var(--muted);font-size:24px}.haxball-result-reason{color:var(--muted);margin:0;font-size:14px}.haxball-result-players{text-align:start;gap:8px;display:grid}.haxball-result-player{border:1px solid var(--border);background:var(--surface-raised);min-height:48px;color:var(--text-secondary);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.haxball-result-player strong{color:var(--text);font-variant-numeric:tabular-nums;margin-inline-start:auto}.haxball-result-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.haxball-landscape-notice{display:none}@media (max-width:1000px){.haxball-match-hud{grid-template-columns:1fr auto 1fr}.haxball-match-main{grid-template-columns:minmax(120px,160px) minmax(0,1fr) minmax(120px,160px)}}@media (max-width:760px){.haxball-map-choice-grid,.haxball-team-grid,.haxball-current-map{grid-template-columns:1fr}.haxball-map-scroll{grid-template-columns:repeat(2,minmax(0,1fr))}.haxball-waiting-header,.haxball-settings-heading,.haxball-waiting-actions{flex-direction:column;align-items:stretch}.haxball-room-facts{justify-content:flex-start}.haxball-match-main{grid-template-columns:1fr}.haxball-live-sidebar{order:2;grid-template-columns:repeat(2,minmax(0,1fr))}.haxball-live-sidebar--blue{order:3}.haxball-arena-stage{order:1}.haxball-touch-controls{display:flex}}@media (max-width:520px){.haxball-page-shell{padding:80px 12px 24px}.haxball-waiting-card,.haxball-team-panel,.haxball-settings-card,.haxball-result-card{padding:16px}.haxball-waiting-header h1,.haxball-settings-heading h2,.haxball-result-card h1,.haxball-loading-card h1{font-size:24px}.haxball-match-shell{padding:8px}.haxball-match-hud{gap:8px;padding:10px}.haxball-match-team-score{gap:6px;font-size:11px}.haxball-match-team-score strong{font-size:24px}.haxball-match-clock strong{font-size:20px}.haxball-live-sidebar{grid-template-columns:1fr}.haxball-result-score{font-size:40px}}@media (orientation:portrait) and (max-width:900px){.haxball-match-shell{min-height:100svh}.haxball-landscape-notice{z-index:20;background-color:#000;background-image:var(--bg-image);background-repeat:no-repeat;background-size:cover;background-position:var(--bg-position);color:var(--text);text-align:center;place-content:center;gap:8px;padding:24px;display:grid;position:fixed;inset:0}.haxball-landscape-notice span:first-child{color:var(--amber);font-size:40px}.haxball-landscape-notice strong{font-size:20px}.haxball-landscape-notice span:last-child{color:var(--muted);font-size:14px}}@media (prefers-reduced-motion:reduce){.haxball-map-choice,.haxball-map-mini,.haxball-duration-choice,.haxball-seat,.haxball-tool-button,.haxball-arena-stage{transition:none}.haxball-match-shell.is-goal-flash .haxball-arena-stage{box-shadow:0 0 0 2px #ff8a3de6}}.haxball-mode-choice{text-transform:uppercase}.room-tile__map{max-width:100%;color:var(--amber);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex;overflow:hidden}.room-tile__map svg{flex:none}.haxball-history-panel{gap:16px;display:grid}.haxball-history-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.haxball-history-heading h2{color:var(--text);letter-spacing:-.03em;margin:0;font-size:24px;font-weight:700;line-height:1.2}.haxball-history-heading>p{max-width:34ch;color:var(--muted);text-align:end;text-wrap:pretty;margin:0;font-size:14px;line-height:1.5}.haxball-history-list{gap:8px;display:grid}.haxball-history-row{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;grid-template-columns:minmax(120px,.8fr) minmax(160px,1.2fr) auto minmax(100px,.8fr);align-items:center;gap:16px;padding:12px;display:grid}.haxball-history-result,.haxball-history-map,.haxball-history-stats{gap:3px;min-width:0;display:grid}.haxball-history-result strong{letter-spacing:.08em;text-transform:uppercase;font-size:12px}.haxball-history-result strong.is-win{color:var(--success)}.haxball-history-result strong.is-loss{color:var(--danger)}.haxball-history-result strong.is-draw{color:var(--amber)}.haxball-history-result span,.haxball-history-map span,.haxball-history-stats span{color:var(--muted);font-size:12px}.haxball-history-map strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.haxball-history-score{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:18px}.haxball-history-stats{text-align:end;justify-items:end}.haxball-history-empty{border:1px dashed var(--border-strong);color:var(--muted);text-align:center;border-radius:10px;padding:24px}.haxball-history-empty p{margin:0;font-size:14px}@media (max-width:700px){.haxball-history-heading{flex-direction:column}.haxball-history-heading>p{text-align:start}.haxball-history-row{grid-template-columns:1fr auto}.haxball-history-stats{text-align:start;justify-items:start}}.game-runtime-shell--battleships{padding:76px clamp(16px,3.5vw,48px) 32px;overflow-y:auto}.game-runtime-battleships{width:100%;color:var(--text);justify-content:flex-start;align-items:stretch;gap:24px}.battleships-command-header{grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;gap:16px;width:min(100%,1320px);min-height:48px;margin:0 auto;padding:0 4px;display:grid}.battleships-command-brand,.battleships-command-status,.battleships-command-signal,.battleships-eyebrow,.battleships-key-hint,.battleships-placement-footer span,.battleships-panel-note,.battleships-telemetry-note,.battleships-board-card__code{align-items:center;gap:8px;display:inline-flex}.battleships-command-brand{gap:10px}.battleships-command-brand__mark{border:1px solid var(--amber);place-items:center;width:36px;height:36px;display:grid}@supports (color:color-mix(in lab, red, red)){.battleships-command-brand__mark{border:1px solid color-mix(in srgb,var(--amber)50%,transparent)}}.battleships-command-brand__mark{background:var(--amber);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.battleships-command-brand__mark{background:color-mix(in srgb,var(--amber)12%,var(--surface))}}.battleships-command-brand__mark{color:var(--amber)}.battleships-command-brand__title,.battleships-command-brand__subtitle{display:block}.battleships-command-brand__title{color:var(--text);letter-spacing:.14em;font-size:14px;font-weight:700}.battleships-command-brand__subtitle,.battleships-command-status,.battleships-command-signal{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.battleships-command-status{color:var(--text-secondary);justify-content:center}.battleships-command-status__divider{background:var(--border-strong);width:1px;height:16px}.battleships-live-dot,.battleships-turn-indicator__dot{background:var(--success);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #59d38c1f}.battleships-command-signal{color:var(--success);justify-content:flex-end}.battleships-stage{gap:24px;width:min(100%,1320px);margin:0 auto;display:grid}.battleships-stage-heading{justify-content:space-between;align-items:end;gap:32px;padding:24px 0 8px;display:flex}.battleships-stage-heading h1{color:#fff;letter-spacing:-.04em;text-wrap:balance;max-width:680px;margin:0;font-size:36px;font-weight:700;line-height:1.1}.battleships-eyebrow,.battleships-panel-kicker{color:var(--amber);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:700;line-height:1.35}.battleships-eyebrow{margin-bottom:12px}.battleships-stage-description{max-width:62ch;color:var(--muted);text-wrap:pretty;margin:12px 0 0;font-size:14px;line-height:1.5}.battleships-progress-meter{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex:0 0 184px;gap:8px;padding:12px 14px;display:grid}.battleships-progress-meter>span:first-child{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.battleships-progress-meter strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:24px;line-height:1}.battleships-progress-meter strong small{color:var(--muted);font-size:14px;font-weight:500}.battleships-progress-meter__track{background:var(--surface-strong);border-radius:999px;height:4px;display:block;overflow:hidden}.battleships-progress-meter__track span{border-radius:inherit;background:var(--amber);height:100%;transition:width .42s cubic-bezier(.32,.72,0,1);display:block}.battleships-setup-layout{grid-template-columns:minmax(216px,.75fr) minmax(440px,1.25fr) minmax(216px,.75fr);align-items:start;gap:16px;display:grid}.battleships-panel,.battleships-board-card,.battleships-placement-board{border:1px solid var(--border);background:#141414e0;border-radius:16px;min-width:0;box-shadow:0 20px 48px #00000038}.battleships-panel{flex-direction:column;gap:16px;min-height:100%;padding:20px;display:flex}.battleships-panel-heading,.battleships-board-label-row,.battleships-board-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.battleships-panel-heading>svg,.battleships-panel-heading>div+svg{color:var(--amber);flex:none}.battleships-panel-kicker{color:var(--text-subtle);margin-bottom:6px;font-size:11px}.battleships-panel h2,.battleships-board-label-row h2,.battleships-board-card h2{color:var(--text);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:18px;font-weight:700;line-height:1.2}.battleships-ship-list,.battleships-stat-list{gap:8px;display:grid}.battleships-ship-picker{border:1px solid var(--border);background:var(--surface-raised);width:100%;min-height:64px;color:var(--text);cursor:grab;text-align:start;border-radius:10px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;font-family:inherit;transition:transform .42s cubic-bezier(.32,.72,0,1),border-color .22s,background-color .22s,opacity .22s;display:grid}.battleships-ship-picker:hover,.battleships-ship-picker:focus-visible,.battleships-ship-picker.is-selected{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.battleships-ship-picker:hover,.battleships-ship-picker:focus-visible,.battleships-ship-picker.is-selected{border-color:color-mix(in srgb,var(--amber)70%,transparent)}}.battleships-ship-picker:hover,.battleships-ship-picker:focus-visible,.battleships-ship-picker.is-selected{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.battleships-ship-picker:hover,.battleships-ship-picker:focus-visible,.battleships-ship-picker.is-selected{background:color-mix(in srgb,var(--amber)9%,var(--surface-raised))}}.battleships-ship-picker:hover,.battleships-ship-picker:focus-visible{transform:translateY(-2px)}.battleships-ship-picker:active{cursor:grabbing;transform:scale(.96)}.battleships-ship-picker:focus-visible,.battleships-cell:focus-visible,.battleships-confirm-button:focus-visible,.battleships-result-card__action:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.battleships-ship-picker.is-complete{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.battleships-ship-picker.is-complete{border-color:color-mix(in srgb,var(--success)38%,var(--border))}}.battleships-ship-picker.is-complete{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.battleships-ship-picker.is-complete{background:color-mix(in srgb,var(--success)7%,var(--surface-raised))}}.battleships-ship-picker.is-complete{cursor:default;opacity:.8}.battleships-ship-picker__visual{width:40px;min-height:32px;color:var(--success);place-items:center;display:grid}.battleships-ship-picker__copy{gap:4px;min-width:0;display:grid}.battleships-ship-picker__copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.battleships-ship-picker__copy small,.battleships-ship-picker__count,.battleships-player-status small,.battleships-board-card__header p,.battleships-turn-indicator small{color:var(--muted);font-size:11px;line-height:1.35}.battleships-ship-picker__count{font-variant-numeric:tabular-nums}.battleships-ship-preview{color:var(--amber);gap:3px;display:flex}.battleships-ship-preview.is-vertical{flex-direction:column}.battleships-ship-preview>span{border:1px solid var(--amber);width:24px;height:24px;display:block}@supports (color:color-mix(in lab, red, red)){.battleships-ship-preview>span{border:1px solid color-mix(in srgb,var(--amber)72%,transparent)}}.battleships-ship-preview>span{background:var(--amber);border-radius:4px}@supports (color:color-mix(in lab, red, red)){.battleships-ship-preview>span{background:color-mix(in srgb,var(--amber)22%,var(--surface-strong))}}.battleships-ship-preview>span{box-shadow:inset 0 0 0 2px #ffffff0a}.battleships-ship-preview.is-small>span{border-radius:3px;width:14px;height:14px}.battleships-panel-note,.battleships-telemetry-note{border-top:1px solid var(--border);color:var(--muted);text-wrap:pretty;margin-top:auto;padding-top:16px;font-size:12px;line-height:1.45}.battleships-panel-note svg,.battleships-telemetry-note svg{color:var(--amber);flex:none}.battleships-placement-board{background:#141414b8;gap:16px;padding:20px;display:grid}.battleships-board-label-row{align-items:end}.battleships-key-hint{max-width:180px;color:var(--muted);text-align:end;justify-content:flex-end;font-size:11px;line-height:1.35}.battleships-key-hint svg{color:var(--amber);flex:none}.battleships-key-hint kbd{border:1px solid var(--border-strong);background:var(--surface-strong);min-width:24px;min-height:24px;color:var(--text);font-family:var(--font-mono);border-radius:5px;place-items:center;font-size:11px;display:inline-grid}.battleships-board-frame{--cell-size:32px;border:1px solid var(--border-strong);background:#10222b;border-radius:12px;grid-template-rows:24px minmax(0,auto);grid-template-columns:24px minmax(0,auto);width:max-content;max-width:100%;margin:0 auto;padding:10px;display:grid;box-shadow:inset 0 0 0 1px #ffffff08,0 16px 36px #0003}.battleships-axis-corner{grid-area:1/1}.battleships-axis{color:var(--text-subtle);font-family:var(--font-mono);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;font-size:10px;line-height:1;display:grid}.battleships-axis--top{grid-area:1/2;grid-template-columns:repeat(10,var(--cell-size));place-items:center}.battleships-axis--side{grid-area:2/1;grid-template-rows:repeat(10,var(--cell-size));place-items:center end;padding-right:8px}.battleships-grid{grid-area:2/2;grid-template-columns:repeat(10,var(--cell-size));grid-template-rows:repeat(10,var(--cell-size));background:#183744;border:1px solid #82c0d352;border-radius:8px;display:grid;overflow:hidden}.battleships-cell{width:var(--cell-size);height:var(--cell-size);color:var(--text);cursor:default;border:0;background:#183744;border-bottom:1px solid #9dd7e71c;border-right:1px solid #9dd7e71c;place-items:center;padding:0;font-family:inherit;transition:background-color .18s,box-shadow .18s,transform .18s cubic-bezier(.32,.72,0,1);display:grid;position:relative}.battleships-cell:nth-child(10n){border-right:0}.battleships-cell:nth-last-child(-n+10){border-bottom:0}.battleships-cell.is-ship{background:#9a7144;box-shadow:inset 0 0 0 2px #ffe2a929}.battleships-cell.is-targetable{cursor:crosshair}.battleships-cell.is-targetable:hover{z-index:1;background:#2d6374;transform:scale(.94);box-shadow:inset 0 0 0 2px #ffc66bb8}.battleships-cell.is-dragged{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.battleships-cell.is-dragged{background:color-mix(in srgb,var(--amber)30%,#183744)}}.battleships-cell.is-dragged{opacity:.58}.battleships-cell.is-miss{background:#214958}.battleships-cell.is-hit{background:#8e414b;box-shadow:inset 0 0 0 2px #ffc5b52e}.battleships-cell__miss{background:#e1f6fb61;border:1px solid #e1f6fbb3;border-radius:50%;width:7px;height:7px}.battleships-cell__hit{color:#ffe0d3}.battleships-cell__ship-mark{background:#ffefc49e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #ffd4801f}.battleships-placement-footer{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:16px;font-size:11px;display:flex}.battleships-placement-footer svg{color:var(--amber)}.battleships-player-status{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;align-items:center;gap:10px;min-height:58px;padding:10px;display:flex}.battleships-player-status.is-ready{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.battleships-player-status.is-ready{border-color:color-mix(in srgb,var(--success)48%,var(--border))}}.battleships-player-status.is-ready{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.battleships-player-status.is-ready{background:color-mix(in srgb,var(--success)8%,var(--surface-raised))}}.battleships-player-status__icon{border:1px solid var(--border-strong);width:30px;height:30px;color:var(--muted);font-family:var(--font-mono);border-radius:8px;flex:none;place-items:center;font-size:10px;display:grid}.battleships-player-status.is-ready .battleships-player-status__icon{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.battleships-player-status.is-ready .battleships-player-status__icon{border-color:color-mix(in srgb,var(--success)48%,transparent)}}.battleships-player-status.is-ready .battleships-player-status__icon{color:var(--success)}.battleships-player-status>span:last-child{gap:4px;min-width:0;display:grid}.battleships-player-status strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.battleships-readiness-spacer{flex:1}.battleships-confirm-button{border:1px solid var(--amber);justify-content:center;align-items:center;gap:8px;width:100%;min-height:46px;padding:8px 12px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.battleships-confirm-button{border:1px solid color-mix(in srgb,var(--amber)60%,transparent)}}.battleships-confirm-button{background:var(--amber);color:#141414;cursor:pointer;letter-spacing:.04em;text-align:center;text-transform:uppercase;border-radius:10px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.35;transition:transform .18s cubic-bezier(.32,.72,0,1),background-color .18s,border-color .18s,opacity .18s}.battleships-confirm-button:hover:not(:disabled){border-color:var(--focus);background:#ff9b58;transform:translateY(-2px)}.battleships-confirm-button:active:not(:disabled){transform:scale(.96)}.battleships-confirm-button:disabled{cursor:not-allowed;opacity:.42}.battleships-command-status,.battleships-command-signal,.battleships-stage,.battleships-observer-banner{animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter}.battleships-combat-stage{gap:20px}.battleships-stage-heading--combat{align-items:center}.battleships-turn-indicator{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;min-width:180px;padding:12px 14px;display:grid}.battleships-turn-indicator__dot{background:var(--danger);grid-row:span 2;box-shadow:0 0 0 4px #fb71851f}.battleships-turn-indicator.is-yours{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.battleships-turn-indicator.is-yours{border-color:color-mix(in srgb,var(--success)48%,var(--border))}}.battleships-turn-indicator.is-yours .battleships-turn-indicator__dot{background:var(--success);box-shadow:0 0 0 4px #59d38c1f}.battleships-turn-indicator strong{color:var(--text);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.battleships-turn-indicator small{text-transform:uppercase;grid-column:2}.battleships-combat-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(200px,.5fr);align-items:start;gap:16px;display:grid}.battleships-board-card{gap:16px;padding:16px;display:grid;overflow:hidden}.battleships-board-card--friendly{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.battleships-board-card--friendly{border-color:color-mix(in srgb,var(--amber)38%,var(--border))}}.battleships-board-card--enemy{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.battleships-board-card--enemy{border-color:color-mix(in srgb,var(--danger)36%,var(--border))}}.battleships-board-card__identity{align-items:center;gap:10px;min-width:0;display:flex}.battleships-board-card__identity>div{min-width:0}.battleships-board-card__icon{border:1px solid var(--border-strong);width:34px;height:34px;color:var(--amber);border-radius:9px;flex:none;place-items:center;display:grid}.battleships-board-card--enemy .battleships-board-card__icon{color:var(--danger)}.battleships-board-card h2{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.battleships-board-card__header p{text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;overflow:hidden}.battleships-board-card__code{color:var(--text-subtle);font-family:var(--font-mono);letter-spacing:.08em;white-space:nowrap;flex:none;font-size:10px}.battleships-board-card--enemy .battleships-board-card__code{color:var(--danger)}.battleships-board-card__footer{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;gap:12px;font-size:10px;display:flex}.battleships-board-card__footer>span{align-items:center;gap:5px;display:inline-flex}.battleships-legend-dot{background:var(--surface-strong);border-radius:2px;width:7px;height:7px;display:inline-block}.battleships-legend-dot.is-ship{background:#9a7144}.battleships-legend-dot.is-miss{background:#e1f6fb61;border:1px solid #e1f6fbb3;border-radius:50%}.battleships-legend-dot.is-hit{background:#8e414b}.battleships-stat-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.battleships-stat-list>div:last-child{border-bottom:0}.battleships-stat-list span{color:var(--muted);text-transform:uppercase;font-size:11px;line-height:1.35}.battleships-stat-list strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:20px}.battleships-telemetry-panel{min-height:100%}.battleships-drag-ghost{z-index:100;pointer-events:none;filter:drop-shadow(0 12px 16px #0000004d);gap:8px;display:grid;position:fixed}.battleships-drag-ghost>span:last-child{color:var(--amber);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.battleships-observer-banner{border:1px solid var(--border);background:var(--surface);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-self:center;align-items:center;gap:8px;padding:8px 12px;font-size:11px;font-weight:700;display:inline-flex}.battleships-observer-banner svg{color:var(--amber)}.battleships-result-overlay{z-index:80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000c2;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.battleships-result-card{border:1px solid var(--amber);justify-items:center;gap:12px;width:min(100%,420px);padding:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.battleships-result-card{border:1px solid color-mix(in srgb,var(--amber)44%,var(--border))}}.battleships-result-card{background:var(--surface);text-align:center;border-radius:16px;box-shadow:0 28px 72px #00000075}.battleships-result-card__icon{border:1px solid var(--amber);place-items:center;width:56px;height:56px;display:grid}@supports (color:color-mix(in lab, red, red)){.battleships-result-card__icon{border:1px solid color-mix(in srgb,var(--amber)50%,transparent)}}.battleships-result-card__icon{background:var(--amber);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.battleships-result-card__icon{background:color-mix(in srgb,var(--amber)12%,var(--surface-raised))}}.battleships-result-card__icon{color:var(--amber)}.battleships-result-card .battleships-eyebrow{margin:8px 0 0}.battleships-result-card h2{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:30px;line-height:1.1}.battleships-result-card p:not(.battleships-eyebrow){color:var(--muted);margin:0 0 12px;font-size:14px}.battleships-result-card p strong{color:var(--text)}.battleships-result-card__action{text-decoration:none}@media (max-width:1120px){.battleships-setup-layout{grid-template-columns:minmax(220px,.7fr) minmax(400px,1.3fr)}.battleships-readiness-panel{grid-column:1/-1;grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(180px,1fr)) minmax(220px,.9fr);align-items:center;display:grid}.battleships-readiness-panel .battleships-panel-heading{display:block}.battleships-readiness-panel .battleships-panel-heading>svg,.battleships-readiness-spacer{display:none}.battleships-combat-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.battleships-telemetry-panel{grid-column:1/-1;min-height:auto}.battleships-telemetry-panel .battleships-panel-heading,.battleships-telemetry-panel .battleships-stat-list{align-self:start}.battleships-telemetry-panel{grid-template-columns:minmax(180px,.8fr) minmax(240px,1.2fr);align-items:center;gap:20px;display:grid}.battleships-telemetry-note{grid-column:1/-1}}@media (max-width:760px){.game-runtime-shell--battleships{padding:72px 12px 24px}.battleships-command-header{grid-template-columns:1fr auto;gap:12px}.battleships-command-status{order:3;grid-area:2/1/auto/-1;justify-content:flex-start}.battleships-command-signal{justify-content:flex-end}.battleships-command-status__divider{display:none}.battleships-stage-heading,.battleships-stage-heading--combat{flex-direction:column;align-items:stretch;gap:16px}.battleships-stage-heading h1{font-size:30px}.battleships-progress-meter,.battleships-turn-indicator{width:100%}.battleships-setup-layout,.battleships-combat-layout{grid-template-columns:1fr}.battleships-fleet-panel{order:2}.battleships-placement-board{order:1}.battleships-readiness-panel,.battleships-telemetry-panel{order:3;grid-column:auto;display:flex}.battleships-telemetry-panel .battleships-stat-list{width:100%}.battleships-board-card{padding:12px}.battleships-board-frame{--cell-size:min(8vw,32px);padding:8px}.battleships-axis--side{padding-right:6px}.battleships-placement-board{padding:16px 10px}.battleships-board-label-row{flex-direction:column;align-items:flex-start;gap:10px}.battleships-key-hint{text-align:start;justify-content:flex-start;max-width:none}.battleships-board-card__code{display:none}}@media (max-width:420px){.battleships-command-brand__subtitle,.battleships-command-signal span,.battleships-command-status span:last-child{display:none}.battleships-stage-heading h1{font-size:24px}.battleships-stage-description{font-size:12px}.battleships-board-frame{--cell-size:min(7vw,28px)}.battleships-placement-footer{flex-direction:column;align-items:flex-start;gap:8px}}@media (prefers-reduced-motion:reduce){.battleships-progress-meter__track span,.battleships-ship-picker,.battleships-cell,.battleships-confirm-button,.battleships-command-status,.battleships-command-signal,.battleships-stage,.battleships-observer-banner{transition:none;animation:none}.battleships-ship-picker:hover,.battleships-ship-picker:focus-visible,.battleships-ship-picker:active,.battleships-cell.is-targetable:hover,.battleships-confirm-button:hover:not(:disabled),.battleships-confirm-button:active:not(:disabled){transform:none}}.multiplayer-shell{--multiplayer-gap:16px;width:100%;min-width:0;color:var(--text);flex-direction:column;gap:24px;display:flex}.multiplayer-shell__header{justify-content:space-between;align-items:flex-end;gap:16px;min-width:0;padding-inline:4px;display:flex}.multiplayer-shell--lobby .multiplayer-shell__header{text-align:center;flex-direction:column;align-items:center}.multiplayer-shell--lobby .multiplayer-shell__context{text-align:center;justify-items:center}.multiplayer-shell--lobby .multiplayer-shell__status{text-align:center}.multiplayer-shell__context{gap:4px;min-width:0;display:grid}.multiplayer-shell__context h1{color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:30px;font-weight:700;line-height:1.1}.multiplayer-shell__status{max-width:42ch;color:var(--muted);text-align:end;text-wrap:pretty;font-size:14px;line-height:1.5}.multiplayer-shell__content{grid-template-columns:minmax(220px,280px) minmax(0,1fr) minmax(0,280px);align-items:start;gap:24px;min-width:0;display:grid}.multiplayer-shell__content--lobby{flex-direction:column;align-items:center;gap:24px;display:flex}.multiplayer-shell__content--lobby>.participant-zone{width:min(100%,640px)}.multiplayer-shell__content--lobby>.multiplayer-shell__arena{align-items:center;width:min(100%,416px)}.multiplayer-shell__content--lobby>.multiplayer-shell__arena>*{width:100%}.multiplayer-shell__content--solo{grid-template-columns:minmax(0,1fr)}.multiplayer-shell__content--solo>.multiplayer-shell__arena{width:100%}.multiplayer-shell__arena{align-content:start;gap:16px;min-width:0;display:grid}.multiplayer-shell__actions{gap:12px;display:grid}.multiplayer-shell__aside{min-width:0}.multiplayer-shell__chat{z-index:4;position:relative}.participant-zone{align-content:start;gap:12px;min-width:0;display:grid}.participant-zone__header{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.participant-zone__header h2{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700;line-height:1.35}.participant-zone__count{border:1px solid var(--border);min-width:28px;min-height:28px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;font-size:12px;display:inline-grid}.participant-zone__rail-wrap{min-width:0;position:relative}.participant-zone__list{gap:8px;min-width:0;display:grid}.participant-zone--grid .participant-zone__list{grid-template-columns:repeat(2,minmax(0,1fr))}.participant-zone__scroll-cue{border:1px solid var(--border-strong);background:var(--surface);width:32px;height:32px;color:var(--amber);pointer-events:none;border-radius:999px;place-items:center;display:none;position:absolute;inset-block-start:50%;inset-inline-end:4px;transform:translateY(-50%)}.player-tile{border:1px solid var(--border);background:var(--surface-raised);min-width:0;color:var(--text);border-radius:12px;gap:8px;padding:12px;display:grid;box-shadow:0 12px 28px #00000024}.player-tile.is-self{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.player-tile.is-self{border-color:color-mix(in srgb,var(--amber)62%,var(--border))}}.player-tile.is-self{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.player-tile.is-self{background:color-mix(in srgb,var(--amber)8%,var(--surface-raised))}}.player-tile.is-unavailable{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.player-tile.is-unavailable{border-color:color-mix(in srgb,var(--danger)36%,var(--border))}}.player-tile--compact{box-shadow:none;padding:8px}.participant-zone--lobby .player-tile,.participant-zone--lobby .participant-zone__empty-seat{height:112px;min-height:112px}.participant-zone--lobby .player-tile{align-content:start}.player-tile__identity{align-items:center;gap:10px;min-width:0;display:flex}.player-tile__copy{flex:1;gap:2px;min-width:0;display:grid}.player-tile__name,.player-tile__role{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.player-tile__name{color:var(--text);font-size:14px;font-weight:700;line-height:1.35}.player-tile__role{color:var(--muted);font-size:11px;line-height:1.35}.player-tile__self{color:var(--amber);letter-spacing:.08em;text-transform:uppercase;flex:none;font-size:10px;font-weight:700}.participant-status{min-width:0;color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:700;line-height:1.35;display:inline-flex}.participant-status span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.participant-status--active,.participant-status--playing,.participant-status--ready{color:var(--success)}.participant-status--reconnecting,.participant-status--waiting{color:var(--amber)}.participant-status--disconnected,.participant-status--eliminated,.participant-status--lost{color:var(--danger)}.participant-status--won{color:var(--success)}.player-tile__metric{border-block-start:1px solid var(--border);min-width:0;color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;padding-block-start:4px;font-size:11px;display:flex}.player-tile__metric strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:14px}.player-tile__actions{gap:8px;min-width:0;padding-block-start:4px;display:flex}.player-tile__action,.player-tile__menu summary,.player-tile__menu-list button{border:1px solid var(--border);background:var(--surface-soft);min-height:44px;color:var(--text-secondary);cursor:pointer;font:inherit;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.player-tile__action{width:100%}.player-tile__action:hover:not(:disabled),.player-tile__menu summary:hover,.player-tile__menu-list button:hover{border-color:var(--amber);color:var(--text)}.player-tile__action:active:not(:disabled),.player-tile__menu summary:active,.player-tile__menu-list button:active{transform:scale(.96)}.player-tile__action.is-destructive,.player-tile__menu-list button.is-destructive{color:#ffc0ca}.player-tile__action:disabled,.player-tile__menu-list button:disabled{cursor:not-allowed;opacity:.48}.player-tile__action:focus-visible,.player-tile__menu summary:focus-visible,.player-tile__menu-list button:focus-visible,.participant-zone__empty-seat:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.player-tile__menu{margin-inline-start:auto;position:relative}.player-tile__menu summary{width:44px;list-style:none}.player-tile__menu summary::-webkit-details-marker{display:none}.player-tile__menu-list{z-index:5;border:1px solid var(--border-strong);background:var(--surface);border-radius:12px;gap:4px;min-width:180px;padding:8px;display:grid;position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;box-shadow:0 18px 36px #00000052}.player-tile__menu-list button{background:0 0;border:0;justify-content:flex-start}.participant-zone__empty-seat{border:1px dashed var(--border-strong);width:100%;min-width:0;min-height:112px;color:var(--muted);cursor:pointer;font:inherit;text-align:start;background:0 0;border-radius:12px;align-items:center;gap:10px;padding:12px;display:flex}.participant-zone__empty-seat:hover:not(:disabled){border-color:var(--amber);background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.participant-zone__empty-seat:hover:not(:disabled){background:color-mix(in srgb,var(--amber)8%,transparent)}}.participant-zone__empty-seat:hover:not(:disabled){color:var(--text)}.participant-zone__empty-seat:disabled{cursor:default}.participant-zone__empty-icon{border:1px dashed;border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}.participant-zone__empty-seat>span:last-child{gap:3px;min-width:0;display:grid}.participant-zone__empty-seat strong{font-size:12px;line-height:1.35}.participant-zone__empty-seat small{color:var(--amber);font-size:11px}.observer-strip{border-block-start:1px solid var(--border);gap:8px;min-width:0;padding-block-start:8px;display:grid}.observer-strip__header,.observer-strip summary{min-height:32px;color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.observer-strip summary{cursor:pointer;list-style:none}.observer-strip summary::-webkit-details-marker{display:none}.observer-strip summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.observer-strip__header svg,.observer-strip summary svg{color:var(--amber)}.observer-strip__content{gap:8px;min-width:0;padding-block-end:4px;display:flex;overflow-x:auto}.observer-strip__item{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;gap:4px;min-width:96px;padding:8px;display:grid}.observer-strip__name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.observer-strip__connection{color:var(--muted);align-items:center;gap:4px;font-size:10px;display:inline-flex}.player-tile--loading{min-height:112px}.player-tile__skeleton-avatar,.player-tile__skeleton-copy{background:var(--surface-soft);display:block}.player-tile__skeleton-avatar{border-radius:10px;flex:none;width:40px;height:40px}.player-tile__skeleton-copy{border-radius:6px;width:60%;height:14px}.multiplayer-state-view{border:1px solid var(--border);background:var(--surface);border-radius:16px;justify-items:center;gap:12px;width:min(100%,560px);margin:auto;padding:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.multiplayer-state-view{background:color-mix(in srgb,var(--surface)92%,transparent)}}.multiplayer-state-view{color:var(--text);text-align:center}.multiplayer-state-view__icon{color:var(--amber)}.multiplayer-state-view h1,.multiplayer-state-view p{text-wrap:balance;max-width:42ch;margin:0}.multiplayer-state-view h1{font-size:24px;font-weight:700;line-height:1.2}.multiplayer-state-view p{color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.5}@media (max-width:960px){.multiplayer-shell__content,.multiplayer-shell__content--lobby{grid-template-columns:minmax(180px,220px) minmax(0,1fr)}.multiplayer-shell__content--solo{grid-template-columns:minmax(0,1fr)}.multiplayer-shell__content--solo>.multiplayer-shell__arena{grid-column:1}.multiplayer-shell__aside{grid-column:2}}@media (max-width:680px){.multiplayer-shell{gap:16px}.multiplayer-shell__header{flex-direction:column;align-items:flex-start}.multiplayer-shell__context h1{font-size:24px}.multiplayer-shell__status{text-align:start;max-width:none}.multiplayer-shell__content,.multiplayer-shell__content--lobby{flex-direction:column;gap:16px;display:flex}.participant-zone{width:100%}.participant-zone__rail-wrap{margin-inline:-12px;padding-inline:12px}.participant-zone__list,.participant-zone--grid .participant-zone__list{overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;scrollbar-width:thin;gap:8px;width:max-content;max-width:none;padding-block:2px 6px;padding-inline-end:32px;display:flex;overflow-x:auto}.participant-zone__list>*{scroll-snap-align:start;width:min(76vw,240px);min-width:min(76vw,240px)}.participant-zone__scroll-cue{display:grid}.participant-zone__empty-seat{min-height:112px}.multiplayer-shell__arena,.multiplayer-shell__aside{width:100%}.multiplayer-shell__aside{order:3}.multiplayer-shell__chat{position:static}.multiplayer-shell__content--lobby .participant-zone__list,.multiplayer-shell__content--lobby .participant-zone--grid .participant-zone__list{scroll-snap-type:none;width:100%;max-width:none;padding-block:0;padding-inline-end:0;display:grid;overflow:visible}.multiplayer-shell__content--lobby .participant-zone__list>*{width:100%;min-width:0}.multiplayer-shell__content--lobby .participant-zone__scroll-cue{display:none}}@media (max-width:360px){.multiplayer-shell__header{padding-inline:0}.multiplayer-state-view{padding:24px 16px}}@media (prefers-reduced-motion:reduce){.player-tile__action:active:not(:disabled),.player-tile__menu summary:active{transform:none}}.multiplayer-active-shell{width:100%;min-width:0;min-height:0}.multiplayer-active-shell .multiplayer-shell__arena{min-width:0}.multiplayer-active-shell--haxball{gap:12px;height:100%;min-height:0}.multiplayer-active-shell--haxball .multiplayer-shell__content{flex:auto;min-height:0}.multiplayer-shell__content--haxball{grid-template-columns:minmax(0,1fr)}.multiplayer-active-shell--haxball .multiplayer-shell__arena,.multiplayer-active-shell--haxball .haxball-match-shell{min-height:0}.chess-player-zone .participant-zone__list{gap:8px}.chess-player-zone .player-tile__metric strong{font-family:var(--font-mono)}@media (max-width:680px){.multiplayer-active-shell--haxball{height:auto;min-height:100%}.multiplayer-active-shell--haxball .multiplayer-shell__content{min-height:0}}.room-observer-setting,.online-players-close,.haxball-tool-button{min-width:44px;min-height:44px}.participant-zone--large .participant-zone__list{max-height:min(70dvh,720px);padding-inline-end:4px;overflow-y:auto}@media (max-width:680px){.participant-zone--large .participant-zone__list{max-height:none;overflow-y:hidden}}.action-zone{gap:12px;min-width:0;display:grid}.rankings-shell{place-items:start center;padding-top:104px}.rankings-frame{border:1px solid var(--border);background:var(--surface);border-radius:24px;width:min(100%,1080px);min-width:0;padding:32px}@supports (color:color-mix(in lab, red, red)){.rankings-frame{background:color-mix(in srgb,var(--surface)88%,transparent)}}.rankings-frame{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 60px #00000038}.rankings-frame:has(>.account-required-state){width:min(100%,560px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;padding:0}.rankings-header{grid-template-columns:minmax(0,1fr) 240px;align-items:end;gap:32px;padding:8px 8px 32px;animation:.7s cubic-bezier(.32,.72,0,1) both motion-enter;display:grid}.rankings-header__copy{min-width:0}.rankings-kicker,.rankings-board__kicker{color:var(--amber);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 16px;font-size:12px;font-weight:700;line-height:1.35;display:flex}.rankings-header h1{max-width:680px;color:var(--text);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:3rem;font-weight:700;line-height:1.05}.rankings-header__subtitle{max-width:56ch;color:var(--muted);text-wrap:pretty;margin:16px 0 0;font-size:16px;line-height:1.6}.rankings-header__signal{border:1px solid var(--amber);align-content:start;gap:8px;min-width:0;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.rankings-header__signal{border:1px solid color-mix(in srgb,var(--amber)30%,var(--border))}}.rankings-header__signal{background:var(--amber);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.rankings-header__signal{background:color-mix(in srgb,var(--amber)8%,var(--surface-raised))}}.rankings-header__signal-icon{border:1px solid var(--amber);place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.rankings-header__signal-icon{border:1px solid color-mix(in srgb,var(--amber)42%,transparent)}}.rankings-header__signal-icon{background:var(--amber);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.rankings-header__signal-icon{background:color-mix(in srgb,var(--amber)12%,var(--surface))}}.rankings-header__signal-icon{color:var(--amber)}.rankings-header__signal-label,.rankings-header__signal-count{color:var(--muted);font-size:12px;line-height:1.4}.rankings-header__signal-label{letter-spacing:.1em;text-transform:uppercase;margin-top:8px;font-weight:700}.rankings-header__signal strong{overflow-wrap:anywhere;color:var(--text);letter-spacing:-.02em;text-wrap:balance;font-size:20px;font-weight:700;line-height:1.2}.rankings-header__signal-count{color:var(--text-subtle);font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:flex}.rankings-game-tabs{border:1px solid var(--border);background:var(--surface-raised);border-radius:16px;gap:8px;width:100%;padding:8px;display:flex;overflow-x:auto}@supports (color:color-mix(in lab, red, red)){.rankings-game-tabs{background:color-mix(in srgb,var(--surface-raised)86%,transparent)}}.rankings-game-tabs{scrollbar-width:thin;animation:.7s cubic-bezier(.32,.72,0,1) 90ms both motion-enter}.rankings-game-tab{min-width:44px;min-height:44px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:700;line-height:1.25;transition:transform .22s cubic-bezier(.32,.72,0,1),background-color .22s,border-color .22s,color .22s;display:inline-flex}.rankings-game-tab:hover{border-color:var(--border-strong);background:var(--surface-soft);color:var(--text)}.rankings-game-tab:active{transform:scale(.96)}.rankings-game-tab.is-active{border-color:var(--amber)}@supports (color:color-mix(in lab, red, red)){.rankings-game-tab.is-active{border-color:color-mix(in srgb,var(--amber)54%,transparent)}}.rankings-game-tab.is-active{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.rankings-game-tab.is-active{background:color-mix(in srgb,var(--amber)14%,var(--surface-soft))}}.rankings-game-tab.is-active{color:#ffe8d6}.rankings-game-tab:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.rankings-board{border:1px solid var(--border);background:var(--surface-raised);border-radius:16px;margin-top:24px;padding:32px}@supports (color:color-mix(in lab, red, red)){.rankings-board{background:color-mix(in srgb,var(--surface-raised)76%,transparent)}}.rankings-board{animation:.7s cubic-bezier(.32,.72,0,1) .18s both motion-enter}.rankings-board__heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.rankings-board__kicker{color:var(--muted);margin-bottom:8px}.rankings-board__heading h2{color:var(--text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:1.875rem;font-weight:700;line-height:1.2}.rankings-board__hint{max-width:30ch;color:var(--text-subtle);text-align:end;text-wrap:pretty;margin:0;font-size:14px;line-height:1.45}.rankings-podium{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) minmax(0,1fr);align-items:end;gap:16px;margin-top:32px;display:grid}.rankings-podium__item{border:1px solid var(--border);background:var(--surface);text-align:center;border-radius:16px;flex-direction:column;justify-content:flex-start;align-items:center;gap:12px;min-width:0;min-height:256px;padding:24px 16px 16px;transition:transform .22s cubic-bezier(.32,.72,0,1),border-color .22s,background-color .22s;display:flex}.rankings-podium__item:hover{border-color:var(--border-strong);background:var(--surface-soft);transform:translateY(-4px)}.rankings-podium__item.is-place-1{border-color:var(--amber);grid-area:1/2;min-height:288px;padding-top:32px}@supports (color:color-mix(in lab, red, red)){.rankings-podium__item.is-place-1{border-color:color-mix(in srgb,var(--amber)58%,var(--border))}}.rankings-podium__item.is-place-1{background:var(--amber)}@supports (color:color-mix(in lab, red, red)){.rankings-podium__item.is-place-1{background:color-mix(in srgb,var(--amber)10%,var(--surface))}}.rankings-podium__item.is-current,.rankings-list__row.is-current{box-shadow:0 0 0 1px var(--amber)}@supports (color:color-mix(in lab, red, red)){.rankings-podium__item.is-current,.rankings-list__row.is-current{box-shadow:0 0 0 1px color-mix(in srgb,var(--amber)30%,transparent)}}.rankings-podium__place{color:var(--amber);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.rankings-podium__item.is-place-2{grid-area:1/1}.rankings-podium__item.is-place-3{grid-area:1/3}.rankings-podium__item:not(.is-place-1) .rankings-podium__place{color:var(--muted)}.rankings-podium__avatar{border:1px solid var(--amber);place-items:center;width:80px;height:80px;display:grid}@supports (color:color-mix(in lab, red, red)){.rankings-podium__avatar{border:1px solid color-mix(in srgb,var(--amber)32%,var(--border))}}.rankings-podium__avatar{background:var(--surface-soft);border-radius:50%}.rankings-podium__item:not(.is-place-1) .rankings-podium__avatar{width:64px;height:64px}.rankings-podium__avatar .profile-avatar{width:56px;height:56px;font-size:16px}.rankings-podium__avatar .profile-avatar--large{width:72px;height:72px;font-size:18px}.rankings-podium__name{overflow-wrap:anywhere;max-width:18ch;color:var(--text);text-wrap:balance;font-size:18px;font-weight:700;line-height:1.2}.rankings-current-badge{border:1px solid var(--amber);align-items:center;min-height:22px;padding:2px 8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.rankings-current-badge{border:1px solid color-mix(in srgb,var(--amber)42%,transparent)}}.rankings-current-badge{background:var(--amber);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.rankings-current-badge{background:color-mix(in srgb,var(--amber)12%,transparent)}}.rankings-current-badge{color:var(--amber);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.2}.rankings-podium__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:auto;display:grid}.rankings-podium__stats>div{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;gap:2px;min-width:0;padding:8px;display:grid}.rankings-podium__stats strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:20px;line-height:1.2}.rankings-podium__stats span{overflow-wrap:anywhere;color:var(--text-subtle);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.25}.rankings-list__header,.rankings-list__row{grid-template-columns:72px minmax(0,1fr) 100px 100px;align-items:center;gap:16px;display:grid}.rankings-list__header{color:var(--text-subtle);letter-spacing:.1em;text-transform:uppercase;margin-top:32px;padding:0 16px 8px;font-size:11px;font-weight:700;line-height:1.3}.rankings-list__header span:nth-child(n+3),.rankings-list__row>.rankings-list__metric{text-align:end}.rankings-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.rankings-list__row{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-height:64px;padding:12px 16px;transition:transform .22s cubic-bezier(.32,.72,0,1),border-color .22s,background-color .22s}.rankings-list__row:hover{border-color:var(--border-strong);background:var(--surface-soft);transform:translateY(-2px)}.rankings-list__position{color:var(--muted);font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.rankings-list__player{align-items:center;gap:12px;min-width:0;display:flex}.rankings-list__player .profile-avatar{flex-basis:36px;width:36px;height:36px}.rankings-list__name{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.rankings-list__metric{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:16px;line-height:1.2}.rankings-list__metric:last-child{color:var(--text)}.rankings-empty-state{text-align:center;align-content:center;justify-items:center;gap:12px;min-height:240px;padding:32px 16px;display:grid}.rankings-empty-state__icon{border:1px solid var(--amber);place-items:center;width:48px;height:48px;display:grid}@supports (color:color-mix(in lab, red, red)){.rankings-empty-state__icon{border:1px solid color-mix(in srgb,var(--amber)38%,transparent)}}.rankings-empty-state__icon{background:var(--amber);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.rankings-empty-state__icon{background:color-mix(in srgb,var(--amber)10%,var(--surface))}}.rankings-empty-state__icon{color:var(--amber)}.rankings-empty-state h3,.rankings-empty-state p{margin:0}.rankings-empty-state h3{color:var(--text);text-wrap:balance;font-size:18px;font-weight:700}.rankings-empty-state p{max-width:42ch;color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.5}.rankings-empty-state .game-secondary-button{margin-top:8px}.rankings-skeleton{gap:16px;margin-top:32px;animation:1.2s ease-in-out infinite alternate rankings-pulse;display:grid}.rankings-skeleton__leaders{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.rankings-skeleton__leaders span,.rankings-skeleton__rows span{border:1px solid var(--border);background:var(--surface);border-radius:16px;display:block}.rankings-skeleton__leaders span{min-height:256px}.rankings-skeleton__rows{gap:8px;display:grid}.rankings-skeleton__rows span{border-radius:12px;min-height:64px}@keyframes rankings-pulse{0%{opacity:.5}to{opacity:1}}@media (max-width:760px){.rankings-shell{padding-top:88px}.rankings-frame{padding:24px}.rankings-header{grid-template-columns:1fr;gap:24px;padding-inline:0}.rankings-header__signal{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px}.rankings-header__signal-icon{grid-row:span 3}.rankings-header__signal-label,.rankings-header__signal-count{margin-top:0}.rankings-board{padding:24px}.rankings-podium{grid-template-columns:1fr;align-items:stretch}.rankings-podium__item,.rankings-podium__item.is-place-1{grid-column:auto;min-height:0;padding:24px 16px 16px}.rankings-podium__item.is-place-1{order:-1}.rankings-skeleton__leaders{grid-template-columns:1fr}.rankings-skeleton__leaders span{min-height:180px}}@media (max-width:520px){.rankings-shell{padding:80px 16px 32px}.rankings-frame{border-radius:16px;padding:16px}.rankings-header{gap:16px;padding-bottom:24px}.rankings-header h1{font-size:2.25rem}.rankings-header__subtitle{font-size:14px}.rankings-game-tabs{width:calc(100% + 16px);margin-inline:-8px}.rankings-game-tab{padding-inline:12px}.rankings-board{margin-top:16px;padding:16px}.rankings-board__heading{flex-direction:column;align-items:start;gap:8px}.rankings-board__heading h2{font-size:1.5rem}.rankings-board__hint{text-align:start;max-width:none}.rankings-podium{gap:12px;margin-top:24px}.rankings-list__header,.rankings-list__row{grid-template-columns:40px minmax(0,1fr) 60px 64px;gap:8px}.rankings-list__header{letter-spacing:.06em;margin-top:24px;padding-inline:8px;font-size:10px}.rankings-list__row{min-height:56px;padding:8px}.rankings-list__player{gap:8px}.rankings-list__player .profile-avatar{flex-basis:32px;width:32px;height:32px;font-size:10px}.rankings-list__name,.rankings-list__metric{font-size:14px}}@media (prefers-reduced-motion:reduce){.rankings-header,.rankings-game-tabs,.rankings-board,.rankings-skeleton{animation:none}.rankings-game-tab,.rankings-podium__item,.rankings-list__row{transition:none}.rankings-game-tab:active,.rankings-podium__item:hover,.rankings-list__row:hover{transform:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
