@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-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking: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-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:var(--font-figtree);--font-mono:var(--font-geist-mono);--color-emerald-500:#00bb7f;--color-emerald-600:#009767;--color-zinc-50:#fafafa;--color-zinc-100:#f4f4f5;--color-zinc-200:#e4e4e7;--color-zinc-300:#d4d4d8;--color-zinc-400:#9f9fa9;--color-zinc-500:#71717b;--color-zinc-600:#52525c;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--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);--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tight:-.025em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-figtree);--default-mono-font-family:var(--font-geist-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-zinc-50:lab(98.26% 0 0);--color-zinc-100:lab(96.1634% .0993311 -.364041);--color-zinc-200:lab(90.6853% .399232 -1.45452);--color-zinc-300:lab(84.9837% .601262 -2.17986);--color-zinc-400:lab(65.6464% 1.53497 -5.42429);--color-zinc-500:lab(47.8878% 1.65477 -5.77283);--color-zinc-600:lab(35.1166% 1.78212 -6.1173);--color-zinc-700:lab(26.8019% 1.35387 -4.68303);--color-zinc-800:lab(15.7305% .613764 -2.16959)}}}@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-none{pointer-events:none}.invisible{visibility:hidden}.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}.static{position:static}.inset-0{inset:0}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:0}.-right-1{right:calc(var(--spacing) * -1)}.right-0{right:0}.z-10{z-index:10}.z-50{z-index:50}.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}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.aspect-square{aspect-ratio:1}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-\[62\%\]{height:62%}.h-auto{height:auto}.h-full{height:100%}.min-h-0{min-height:0}.min-h-\[28px\]{min-height:28px}.min-h-\[100svh\]{min-height:100svh}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-28{width:calc(var(--spacing) * 28)}.w-\[62\%\]{width:62%}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[320px\]{max-width:320px}.max-w-lg{max-width:var(--container-lg)}.flex-1{flex:1}.shrink{flex-shrink:1}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[board-shake_0\.35s_ease-in-out\]{animation:.35s ease-in-out board-shake}.animate-\[puck-pop_0\.35s_cubic-bezier\(0\.34\,1\.56\,0\.64\,1\)\]{animation:.35s cubic-bezier(.34,1.56,.64,1) puck-pop}.animate-\[swap-tile-fade-in_2s_ease_backwards\]{animation:2s backwards swap-tile-fade-in}.animate-\[tile-pop_0\.3s_ease-out\]{animation:.3s ease-out tile-pop}.animate-\[win-bounce_0\.6s_ease-in-out\]{animation:.6s ease-in-out win-bounce}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.grid-rows-4{grid-template-rows:repeat(4,minmax(0,1fr))}.grid-rows-5{grid-template-rows:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[2px\]{border-radius:2px}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[\#00A300\]{border-color:#00a300}.border-\[\#C0C0C0\]{border-color:silver}.border-\[\#E7E5E4\]{border-color:#e7e5e4}.border-\[\#FFD700\]{border-color:gold}.border-zinc-400{border-color:var(--color-zinc-400)}.bg-\[\#00A300\]{background-color:#00a300}.bg-\[\#C0C0C0\]{background-color:silver}.bg-\[\#FAFAF9\]{background-color:#fafaf9}.bg-\[\#FFD700\]{background-color:gold}.bg-\[dodgerblue\]{background-color:#1e90ff}.bg-black{background-color:var(--color-black)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-white{background-color:var(--color-white)}.bg-zinc-50{background-color:var(--color-zinc-50)}.bg-zinc-200{background-color:var(--color-zinc-200)}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-zinc-700{--tw-gradient-from:var(--color-zinc-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-black{--tw-gradient-to:var(--color-black);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-white{fill:var(--color-white)}.stroke-black{stroke:var(--color-black)}.stroke-emerald-500{stroke:var(--color-emerald-500)}.p-1{padding:var(--spacing)}.p-6{padding:calc(var(--spacing) * 6)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-1{padding-top:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-center{text-align:center}.font-sans{font-family:var(--font-figtree)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--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))}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-\[\#1C1917\]{color:#1c1917}.text-\[\#77776E\]{color:#77776e}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-black{color:var(--color-black)}.text-emerald-600{color:var(--color-emerald-600)}.text-white{color:var(--color-white)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.text-zinc-800{color:var(--color-zinc-800)}.uppercase{text-transform:uppercase}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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-\[0_1px_2px_0_rgb\(0_0_0_\/_0\.05\)\]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-zinc-200{--tw-ring-color:var(--color-zinc-200)}.ring-zinc-300{--tw-ring-color:var(--color-zinc-300)}.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,)}.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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.\[animation-delay\:0\.4s\]{animation-delay:.4s}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-\[\#00C000\]:hover{border-color:#00c000}.hover\:border-\[\#ffcc3e\]:hover{border-color:#ffcc3e}.hover\:bg-zinc-50:hover{background-color:var(--color-zinc-50)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:text-zinc-700:hover{color:var(--color-zinc-700)}.hover\:shadow-lg:hover{--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)}}.focus-visible\:z-20:focus-visible{z-index:20}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-black:focus-visible{--tw-ring-color:var(--color-black)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-inset:focus-visible{--tw-ring-inset:inset}.active\:translate-y-0:active{--tw-translate-y:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (prefers-reduced-motion:reduce){.motion-reduce\:hidden{display:none}}@media (min-width:40rem){.sm\:h-14{height:calc(var(--spacing) * 14)}.sm\:w-14{width:calc(var(--spacing) * 14)}.sm\:flex-none{flex:none}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:pb-3{padding-bottom:calc(var(--spacing) * 3)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}@media (prefers-color-scheme:dark){.dark\:block{display:block}.dark\:hidden{display:none}.dark\:bg-zinc-800{background-color:var(--color-zinc-800)}.dark\:text-zinc-300{color:var(--color-zinc-300)}.dark\:ring-zinc-700{--tw-ring-color:var(--color-zinc-700)}@media (hover:hover){.dark\:hover\:bg-zinc-700:hover{background-color:var(--color-zinc-700)}}}}:root{--font-geist-sans:Arial, Helvetica, sans-serif;--font-geist-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-fraunces:Georgia, "Times New Roman", serif;--font-figtree:"Figtree", sans-serif}html{min-height:100%}body{min-height:100%;margin:0}body,button,input,textarea,select{font:inherit}.launcher{color:#20231f;background:#f7f7f2;place-items:center;min-height:100dvh;padding:32px 20px;display:grid}.launcher-panel{width:min(980px,100%)}.launcher-heading{max-width:620px;margin-bottom:28px}.launcher h1{margin:0;font-size:clamp(2.6rem,8vw,5.5rem);font-weight:900;line-height:.95}.launcher-title-puzzl{color:inherit}.launcher-title-row{align-items:center;gap:.25em;display:flex}.launcher-title-brain{flex:none;width:.75em;height:.75em;margin-top:-.05em}.launcher-title-in{color:var(--color-accent)}.launcher-copy{color:#596157;max-width:560px;margin:16px 0 0;font-size:1.1rem;font-weight:600;line-height:1.6}.not-found-copy{color:#ef4444}.not-found-home-link{color:var(--color-accent);text-decoration:none}.not-found-home-link:hover,.not-found-home-link:focus-visible{text-decoration:underline}.launcher-cta-button{background:var(--color-accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:8px;margin-top:28px;padding:14px 28px;font-size:1.05rem;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 30px #21231f1f}.launcher-cta-button:hover{transform:translateY(-2px);box-shadow:0 16px 36px #21231f2e}.launcher-cta-button:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.launcher-card{min-height:132px;color:inherit;border-radius:20px;grid-template-columns:auto 1fr;align-items:start;gap:16px;padding:18px;text-decoration:none;transition:transform .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 30px #21231f0f}.launcher-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px #21231f1f}.launcher-card:focus-visible{outline-offset:3px;outline:3px solid #4f46e5}.launcher-card--twister{background:#ffc300}.launcher-card--trio{background:#87c830}.launcher-card--flipflop{background:#ffe100}.launcher-card--swap{background:#ba55d3}.launcher-card--stripes{background:#fd039c}.launcher-card--digits{background:#7d5bc6}.launcher-card--buttonjam{background:#cfff04}.launcher-card--fold{background:#f60}.launcher-card--escape{background:#1e90ff}.launcher-card--gears{background:#0aefff}.launcher-card--pipes{background:#5b7c99}.launcher-card--flip{background:#ef4444}.launcher-card--tetra{background:#4f46e5}.launcher-card--center{background:#0d9488}.launcher:not(.launcher--muted) .launcher-card--tetra .launcher-card-title,.launcher:not(.launcher--muted) .launcher-card--tetra .launcher-card-summary,.launcher:not(.launcher--muted) .launcher-card--swap .launcher-card-title,.launcher:not(.launcher--muted) .launcher-card--swap .launcher-card-summary,.launcher:not(.launcher--muted) .launcher-card--stripes .launcher-card-title,.launcher:not(.launcher--muted) .launcher-card--stripes .launcher-card-summary,.launcher:not(.launcher--muted) .launcher-card--flip .launcher-card-title,.launcher:not(.launcher--muted) .launcher-card--flip .launcher-card-summary,.launcher:not(.launcher--muted) .launcher-card--center .launcher-card-title,.launcher:not(.launcher--muted) .launcher-card--center .launcher-card-summary,.launcher:not(.launcher--muted) .launcher-card--escape .launcher-card-title,.launcher:not(.launcher--muted) .launcher-card--escape .launcher-card-summary{color:#fff}.launcher-card-icon-wrap{display:flex;position:relative}.launcher-card-icon{color:#fffefa;background:#20231f;border-radius:8px;place-items:center;width:54px;height:54px;font-size:1.6rem;font-weight:900;display:grid}.launcher-card-solved-badge{width:22px;height:22px;font-size:14px;top:-6px;right:-6px}.launcher-card-icon--twister{background:linear-gradient(135deg,#3f3f46,#000)}.launcher-card-icon--trio{background:#f0f0f0;box-shadow:inset 0 0 0 1px #00000014}.launcher-card-icon--flipflop{background:#000}.launcher-card-icon--swap,.launcher-card-icon--stripes{background:#f0f0f0;box-shadow:inset 0 0 0 1px #00000014}.launcher-card-icon--digits{background:linear-gradient(160deg,#3b3f63,#191b2e)}.launcher-card-icon--buttonjam{background:linear-gradient(160deg,#35507e,#16233c)}.launcher-card-icon--fold{background:linear-gradient(160deg,#5e3a34,#241512)}.launcher-card-icon--gears{background:linear-gradient(160deg,#4b5563,#1f2937)}.launcher-card-icon--pipes{background:linear-gradient(160deg,#3e5570,#1c2733)}.launcher-card-icon--escape{background:#ffe100;box-shadow:inset 0 0 0 1px #00000014}.launcher-card-icon--flip{background:#000;box-shadow:inset 0 0 0 1px #00000014}.launcher-card-icon--tetra,.launcher-card-icon--center{background:#f0f0f0;box-shadow:inset 0 0 0 1px #00000014}.launcher--muted .launcher-card--twister,.launcher--muted .launcher-card--trio,.launcher--muted .launcher-card--flipflop,.launcher--muted .launcher-card--swap,.launcher--muted .launcher-card--stripes,.launcher--muted .launcher-card--buttonjam,.launcher--muted .launcher-card--fold,.launcher--muted .launcher-card--escape,.launcher--muted .launcher-card--flip,.launcher--muted .launcher-card--tetra,.launcher--muted .launcher-card--center{background:#e3e1dc}.launcher--muted .launcher-card-icon--twister{background:#20231f}.launcher--muted .launcher-card-icon--trio{box-shadow:none;background:#fff}.launcher--muted .launcher-card-icon--flipflop{background:#20231f}.launcher--muted .launcher-card-icon--swap,.launcher--muted .launcher-card-icon--stripes{box-shadow:none;background:#fff}.launcher--muted .launcher-card-icon--buttonjam{background:#20231f}.launcher--muted .launcher-card-icon--fold{background:#f60}.launcher--muted .launcher-card-icon--escape{box-shadow:none;background:#1e90ff}.launcher--muted .launcher-card-icon--flip{box-shadow:none;background:#000}.launcher--muted .launcher-card-icon--tetra,.launcher--muted .launcher-card-icon--center{box-shadow:none;background:#fff}.launcher-card-body{gap:6px;display:grid}.launcher-card-title{font-size:1.5rem;font-weight:600}.launcher-card-summary{color:#20231f;font-size:1.05rem;line-height:1.35}.game-shell{background:#f7f7f2;flex-direction:column;height:100dvh;display:flex;position:relative;overflow-x:hidden}.game-shell-header{z-index:70;min-height:calc(64px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 12px 10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f7f2f0;flex:none;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;display:grid;position:sticky;top:0}.game-shell-header-side{align-items:center;display:flex}.game-shell-header-side--left{justify-content:flex-start}.game-shell-header-side--right{justify-content:flex-end}.game-shell-title{color:#1c1917;min-width:0;font-family:var(--font-figtree);letter-spacing:-.02em;text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800;line-height:1}.game-menu,.game-help{z-index:60;position:relative}.game-menu-button{color:#20231f;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #d8d8ce;border-radius:12px;place-items:center;width:44px;height:44px;transition:background-color .14s,border-color .14s;display:grid;box-shadow:0 1px 2px #0000000d}.game-menu-button:hover{background:#fff;border-color:#b8b8ac}.game-menu-button:focus-visible{outline-offset:2px;outline:3px solid #4f46e5}.game-menu-panel{background:#fff;border:1px solid #e7e5e4;border-radius:14px;flex-direction:column;gap:2px;min-width:180px;padding:6px;animation:.15s ease-out fadeIn;display:flex;position:absolute;top:50px;left:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.game-menu-item{color:#20231f;border-radius:9px;align-items:center;gap:10px;padding:7px 14px 7px 10px;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.game-menu-item-icon-wrap{flex:none;display:flex;position:relative}.game-menu-item-icon{flex:none;place-items:center;width:27px;height:27px;display:grid}.game-menu-item-solved-badge{width:13px;height:13px;font-size:8px;top:-4px;right:-4px}.game-menu-streak{color:#b45309;white-space:nowrap;margin-left:auto;padding-left:8px;font-size:.78rem;font-weight:700}.game-menu-streak--broken{opacity:.45}.launcher-card-icon-col{align-items:center;display:flex}.launcher-card-title-streak{color:#20231f;background:#fff;border-radius:0 20px 0 12px;margin:0;padding:4px 10px;font-size:1.05rem;font-weight:500;position:absolute;top:0;right:0;box-shadow:inset 0 0 0 1px #00000014}.game-menu-item .launcher-card-icon{border-radius:5px;width:27px;height:27px;overflow:hidden}.game-menu-item .launcher-card-icon>*{width:20px;height:20px}.game-menu-item:hover{background:#f2f2ec}.game-menu-item:focus-visible{outline-offset:-2px;outline:3px solid #4f46e5}.game-menu-item--home{border-bottom:1px solid #e7e5e4;border-radius:9px 9px 0 0;margin-bottom:4px;padding-bottom:11px}.game-menu-item--current{background:#f2f2ec;font-weight:800}.game-menu-item--credit{color:var(--color-accent);border-top:1px solid #e7e5e4;border-radius:0 0 9px 9px;margin-top:4px;padding-top:11px}.game-menu-item--credit:hover{background:#f2f2ec}.game-shell-body{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;overflow-anchor:none;flex:auto;min-height:0;overflow:hidden auto}.game-shell-body>.trio-game,.game-shell-body>.swap-game,.game-shell-body>.digits-game,.game-shell-body>.buttonjam-game,.game-shell-body>.fold-game,.game-shell-body>.escape-game,.game-shell-body>.gears-game,.game-shell-body>.pipes-game,.game-shell-body>.flip-game,.game-shell-body>.stripes-game,.game-shell-body>.center-game,.game-shell-body>.tetra-game,.game-shell-body>.stripes-game .App{min-height:100%}.game-shell-body>.stripes-game{height:100%}@media (max-width:760px){.launcher{place-items:start center;padding:28px 16px}.game-grid{grid-template-columns:1fr}.launcher-card{min-height:112px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-accent:#1e90ff}body{color:#171717;font-family:var(--font-figtree), Arial, Helvetica, sans-serif;background:#fff}@keyframes puck-pop{0%{transform:scale(1)}45%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes tile-pop{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes board-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes win-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-12px)}}@keyframes draw-line{to{stroke-dashoffset:0}}@keyframes swap-win-reveal{0%{color:#000;background-color:silver;border-color:silver}to{color:#fff;background-color:#00a300;border-color:#00a300}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-6vh)rotate(0)}to{opacity:0;transform:translateY(106vh)rotate(720deg)}}.trio-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-primary:#1c1917;--color-primary-fg:#fafaf9;--color-success:#00a300;--color-success-fg:#fff;--color-warning:#f59e0b;--color-warning-fg:#fff;--color-error:red;--color-error-fg:#fff;--color-correct:#00a300;--color-present:#f90;--color-present-one:#ff0;--color-absent:#b1ada9;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);--font-mono:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100dvh;margin:0;padding:12px 0 0;display:flex;overflow:hidden scroll}.trio-game *,.trio-game :before,.trio-game :after{box-sizing:border-box}.trio-game button{all:unset;box-sizing:border-box;cursor:pointer}.trio-game main{justify-content:center;width:100%;display:flex}.trio-game .container{flex-direction:column;align-items:center;gap:8px;width:390px;max-width:100vw;padding:12px;display:flex}.trio-game .card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);width:100%;padding:24px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes pulse{50%{opacity:.5}}@keyframes flashYellow{0%,to{background-color:#0000}25%,75%{color:#000;background-color:#ff0}50%{color:#000;background-color:#ffe066}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes flipIn{0%{opacity:0;transform:rotateX(90deg)}to{opacity:1;transform:rotateX(0)}}.trio-game .animate-fade-in{animation:.5s ease-out forwards fadeIn}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .animate-shake{animation:.4s ease-in-out shake}.trio-game .animate-pop{animation:.3s cubic-bezier(.175,.885,.32,1.275) popIn}.trio-game .animate-fade-in-delayed{opacity:0;animation:.6s ease-out 1.5s forwards fadeIn}.trio-game h1{letter-spacing:-.05em;color:var(--color-text);margin:0;font-size:2.5rem;font-weight:800}.trio-game p{line-height:1.6}.trio-game .input-group{justify-content:center;gap:12px;margin:0;display:flex}.trio-game .input-slot{border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:60px;height:60px;font-family:var(--font-mono);color:var(--color-text);justify-content:center;align-items:center;font-size:2rem;font-weight:700;transition:all .2s;display:flex}.trio-game .input-slot.active{border-color:var(--color-text);transform:translateY(-2px);box-shadow:0 0 0 4px #0000000d}.trio-game .input-slot.filled{border-color:var(--color-text-muted);background-color:#f5f5f4}.trio-game #virtualKeyboard{flex-direction:column;gap:4px;width:100%;display:flex}.trio-game .keyboard-row{justify-content:center;gap:5px;display:flex}.trio-game .keyboard-key{background:var(--color-surface);border:1px solid var(--color-border);height:46px;color:var(--color-text);font-family:var(--font-sans);-webkit-user-select:none;user-select:none;border-radius:10px;flex:1 1 0;justify-content:center;align-items:center;min-width:20px;font-size:2rem;font-weight:800;transition:transform .1s,opacity .1s;display:flex}.trio-game .keyboard-key:active:not(:disabled){opacity:.85;transform:scale(.92)}.trio-game .keyboard-key.vowel-key{background-color:#d6eaf8;border-color:#aed6f1}.trio-game .keyboard-key.special-key{text-transform:uppercase;letter-spacing:.05em;background-color:#e7e5e4;flex:1;font-size:.85rem}.trio-game .keyboard-key.backspace-key{font-size:1.4rem}.trio-game .keyboard-key:disabled{opacity:.5;cursor:not-allowed;transform:none}.trio-game .keyboard-key.correct{background-color:var(--color-correct);color:#fff;border-color:#00a300}.trio-game .keyboard-key.present{background-color:var(--color-present);color:#000;border-color:#d97706}.trio-game .keyboard-key.present-one{background-color:var(--color-present-one);color:#fff;border-color:#ca8a04}.trio-game .keyboard-key.absent{background-color:var(--color-absent);color:#000;border-color:#57534e}.trio-game #history{flex-flow:wrap;justify-content:center;gap:6px;width:100%;max-width:100%;margin-top:4px;display:flex;position:relative;overflow:visible}.trio-game .history-item-wrapper{width:fit-content;display:inline-block;position:relative;overflow:visible}.trio-game .history-item{background:var(--color-surface);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:.05em;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;width:66px;min-width:66px;padding:5px 10px;font-size:1.35rem;font-weight:700;transition:transform .1s;display:inline-flex}.trio-game .history-item:active{transform:scale(.95)}.trio-game .history-item.zero-off{color:#fff;text-shadow:none;background-color:#00a300}.trio-game .history-item.one-off{color:#000;background-color:#f90}.trio-game .history-item.two-off{color:#000;background-color:#ff0}.trio-game .history-item.three-off{color:#fff;background-color:red}.trio-game .history-item.three-off-zero{color:#000;opacity:.8;background-color:#b1ada9}.trio-game .history-item-wrapper .tooltip{background-color:var(--color-text);width:max-content;min-width:120px;max-width:280px;color:var(--color-bg);border-radius:var(--radius-sm);white-space:normal;text-align:center;word-wrap:break-word;z-index:1000;box-shadow:var(--shadow-lg);pointer-events:none;margin:0;padding:8px 12px;font-size:.9rem;font-weight:600;line-height:1.4;animation:.2s ease-out tooltipFadeIn;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}@media (max-width:480px){.trio-game .history-item-wrapper .tooltip{max-width:250px;padding:6px 10px;font-size:.85rem}}.trio-game .history-item-wrapper .tooltip:after{content:"";border:6px solid #0000;border-top-color:var(--color-text);width:0;height:0;position:absolute;top:100%;left:50%;transform:translate(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.trio-game .error-msg{color:red!important;font-weight:800!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .subtitle-row{text-align:center;justify-content:center;align-items:center;width:100%;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .how-to-play-link{color:var(--color-accent);text-underline-offset:4px;cursor:pointer;margin:9px auto;font-weight:400;text-decoration:underline;text-decoration-thickness:2px;display:inline-block}.how-to-play-button,:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .how-to-play-button{color:#000;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}.how-to-play-button:focus-visible{outline-offset:2px;border-radius:999px;outline:3px solid #4f46e5}.how-to-play-button-icon{width:36px;height:36px}.how-to-play-button-icon text{fill:var(--how-to-play-button-fg,#fff);font-family:var(--font-figtree);dominant-baseline:central;font-size:22px;font-weight:300}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-msg{text-align:center;border-radius:var(--radius-lg);justify-content:center;align-items:center;padding:8px 20px;font-size:1.2rem;font-weight:800;display:flex}.trio-game .last-guess-warning{border-radius:var(--radius-md);padding:6px 12px;font-weight:800;animation:1.6s ease-in-out 2 flashYellow}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-red{color:#fff!important;background-color:red!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-gray{color:#000!important;background-color:#b1ada9!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-yellow{color:#000!important;background-color:#ff0!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-orange{color:#000!important;background-color:#f90!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-amber{color:#000!important;background-color:#a9a9a9!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-green,:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .feedback-success{color:#fff!important;background-color:#00a300!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game,.twister-game) .share-button{border-radius:var(--radius-md);text-align:center;width:100%;transition:transform .1s active;margin-top:16px;padding:14px;font-size:1.1rem;font-weight:800;box-shadow:0 4px 6px -1px #0000001a;background-color:var(--color-accent)!important;color:#fff!important}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game,.twister-game) .share-button:active{transform:scale(.98)}.trio-game .feedback-msg{border-radius:var(--radius-lg);padding:6px 16px;font-size:1.05rem;font-weight:700}.trio-game .share-button{border:1px solid var(--color-accent);width:auto;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.trio-game .share-button:hover{filter:brightness(1.08)}.trio-game .share-button:active{filter:brightness(.95);transform:none}.escape-game .share-button{border:1px solid var(--color-accent);width:auto;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.escape-game .share-button:hover{filter:brightness(1.08)}.escape-game .share-button:active{filter:brightness(.95);transform:none}:is(.fold-game,.flip-game,.gears-game,.swap-game,.buttonjam-game,.stripes-game,.tetra-game) .counter-group{align-items:baseline;gap:6px;display:inline-flex}:is(.fold-game,.flip-game,.gears-game,.swap-game,.buttonjam-game,.stripes-game,.tetra-game) .counter-label{letter-spacing:.09em;text-transform:uppercase;color:#a8a29e;font-size:.68rem;font-weight:700}:is(.fold-game,.flip-game,.gears-game,.swap-game,.buttonjam-game,.stripes-game,.tetra-game) .counter-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800;line-height:1}:is(.fold-game,.flip-game,.gears-game,.swap-game,.buttonjam-game,.stripes-game,.tetra-game) .counter-divider{background:var(--color-border);width:1px;height:14px}:is(.fold-game,.flip-game,.swap-game,.stripes-game) :is(.fold-counter--won,.flip-counter--won,.pill--solved,.stripes-counter--won) .counter-label{color:#ffffffbf}:is(.fold-game,.flip-game,.swap-game,.stripes-game) :is(.fold-counter--won,.flip-counter--won,.pill--solved,.stripes-counter--won) .counter-value{color:#fff}:is(.fold-game,.flip-game,.swap-game,.stripes-game) :is(.fold-counter--won,.flip-counter--won,.pill--solved,.stripes-counter--won) .counter-divider{background:#ffffff59}@media (max-width:480px){.trio-game .keyboard-key.backspace-key{font-size:2.4rem}.trio-game .history-item{min-width:45px;padding:4.5px 9px;font-size:1.215rem}}.twister-game{--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#78716c;--color-border:#e7e5e4;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-lg:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-backdrop{z-index:9998;background-color:#00000080;animation:.2s ease-out fadeIn;position:fixed;inset:0}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-container{z-index:9999;pointer-events:none;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-content{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;border:1px solid var(--color-border);outline:none;width:100%;max-width:500px;max-height:90vh;padding:24px;animation:.3s ease-out modalSlideIn;overflow-y:auto}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-body{color:var(--color-text);line-height:1.6}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-header-text{flex-direction:column;flex:1;gap:4px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-title{color:var(--color-text);font-size:1.5rem;font-weight:800}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-title-divider{background-color:var(--color-border);width:100%;height:4px}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-footer{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;margin-top:20px;padding-top:16px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-footer-tagline{color:var(--color-text);text-align:center;font-size:.85rem}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-footer-link{color:inherit;text-underline-offset:2px;text-decoration:underline}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-footer-link:hover{color:var(--color-text)}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-step-indicators{justify-content:center;gap:6px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-actions{justify-content:flex-end;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-actions-group{gap:8px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-stack{flex-direction:column;gap:4px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-paragraph{font-size:1rem;line-height:1.6}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-feedback-list{flex-direction:column;gap:12px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-feedback-item{align-items:center;gap:12px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-feedback-word{text-align:center;flex:0 0 66px;width:66px;min-width:66px}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-feedback-text{font-size:.95rem;line-height:1.5}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-list{flex-direction:column;gap:12px;padding-left:18px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-list li{line-height:1.6;list-style:outside}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-close-button{border-radius:var(--radius-sm);color:#dc2626;cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:16px;font-size:28px;font-weight:700;line-height:1;transition:all .2s;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-close-button:hover{background-color:var(--color-border);color:#b91c1c}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-button{border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 20px;font-size:.95rem;font-weight:600;transition:all .2s}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-button-primary{background-color:var(--color-accent);color:#fff}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-button-primary:hover{background-color:#1e90ff;transform:translateY(-1px)}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-button-secondary{background-color:var(--color-border);color:var(--color-text)}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-button-secondary:hover{background-color:var(--color-text-muted);color:var(--color-surface)}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .step-indicator{background-color:var(--color-border);border-radius:50%;width:8px;height:8px;transition:all .2s}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .step-indicator-active{background-color:var(--color-accent);border-radius:4px;width:24px}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .how-to-play-link:hover{color:#1e90ff}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.center-game) .how-to-play-link:active{transform:scale(.98)}@media (max-width:480px){:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-content{max-width:100%;max-height:95vh;margin:10px}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .modal-body{font-size:.9rem}}.modal-container.game-completion-container{padding-top:max(58px, calc(env(safe-area-inset-top) + 38px));align-items:flex-start}.game-completion-dialog{text-align:center;width:min(440px,100%);max-height:90dvh;position:relative}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .game-completion-close{position:absolute;top:1px;right:16px}.game-completion-body{flex-direction:column;align-items:center;display:flex}.game-completion-message,.game-completion-title,.game-completion-description{margin:0}.game-completion-message{color:var(--color-accent);font-size:2rem;font-weight:900;line-height:1.15}.game-completion-title{color:var(--color-text,#1c1917);margin-top:8px;font-size:1.35rem;font-weight:600;line-height:1.2}.game-completion-description{color:#57534e;margin-top:10px;font-size:1.05rem;font-weight:700;line-height:1.5}.game-completion-result{flex-direction:column;align-items:center;gap:8px;width:100%;margin-top:22px;display:flex}.game-completion-actions{flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-top:24px;display:flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .game-completion-share{border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;padding:12px 18px;font-size:1rem;font-weight:800;display:inline-flex}:is(.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.swap-game,.stripes-game,.gears-game,.pipes-game,.flip-game,.flipflop-game,.tetra-game,.twister-game) .game-completion-share:hover{background-color:#187bcd}.game-completion-share:focus-visible{outline-offset:3px;outline:3px solid #f59e0b}.game-completion-more{text-align:left;width:100%;margin-top:14px}.game-completion-more-list{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin:0;padding:0;list-style:none;display:grid}.game-completion-more-tile{color:#1c1917;text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:6px;width:100%;padding:12px 6px;text-decoration:none;transition:filter .15s;display:flex}.game-completion-more-tile.launcher-card--tetra,.game-completion-more-tile.launcher-card--swap,.game-completion-more-tile.launcher-card--stripes,.game-completion-more-tile.launcher-card--flip,.game-completion-more-tile.launcher-card--center,.game-completion-more-tile.launcher-card--escape{color:#fff}.game-completion-more-tile:hover{filter:brightness(1.05)}.game-completion-more-tile:focus-visible{outline-offset:2px;outline:3px solid #f59e0b}.game-completion-more-tile-icon-wrap{position:relative}.game-completion-more-tile .launcher-card-icon{border-radius:8px;width:48px;height:48px;overflow:hidden}.game-completion-more-tile .launcher-card-icon>*{width:32px;height:32px}.game-completion-more-tile-name{font-size:.8rem;font-weight:700;line-height:1.2}.solved-badge{color:#fff;background:#16a34a;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 0 0 2px #fff}.game-completion-more-tile-check{width:18px;height:18px;font-size:12px;top:-4px;right:-4px}.flipflop-game{--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--color-error:#ef4444;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;font-family:var(--font-figtree);color:#333;background-color:#fff;min-height:100%;margin:0;padding:0;font-weight:400;line-height:1.6}.flipflop-game .container{max-width:800px;margin:0 auto;padding:12px}.flipflop-game h1{font-family:var(--font-figtree);letter-spacing:-.05em;color:#1c1917;text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.flipflop-game #game-area{text-align:center;font-family:var(--font-figtree);padding:12px}.flipflop-game #score-display{min-width:0;font-size:18px;font-weight:400;font-family:var(--font-figtree);border-radius:4px;flex-wrap:nowrap;justify-content:center;align-items:center;margin-bottom:2px;padding:5px;display:flex}.flipflop-game #score-display span{white-space:nowrap;text-overflow:ellipsis;margin:0 3px;overflow:hidden}@keyframes scoreChange{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.flipflop-game #user-input{opacity:0;pointer-events:auto;text-transform:uppercase;width:1px;height:1px;font-family:var(--font-figtree);border:none;margin:0;padding:0;position:absolute}.flipflop-game #user-input-tiles{cursor:text;gap:8px;margin-top:5px;margin-bottom:10px}.flipflop-game .entry-word-tile-wrap{flex:none;position:relative}.flipflop-game #user-input-score{color:var(--color-text-muted);margin-left:15px;font-size:39px;font-weight:800;line-height:1;transition:color .15s;position:absolute;top:-4px;left:100%}.flipflop-game #user-input-score.valid{color:var(--color-success)}.flipflop-game #user-input-score.invalid{color:var(--color-error)}.flipflop-game #instruction{color:#3498db;font-size:15px;font-weight:700}.flipflop-game #submit-btn{color:#fff;cursor:pointer;width:80%;max-width:300px;font-size:18px;font-family:var(--font-figtree);background-color:#1e90ff;border:none;border-radius:4px;margin-top:5px;margin-left:auto;margin-right:auto;padding:10px;transition:background-color .3s;display:block}.flipflop-game #message{border-radius:var(--radius-md);text-align:center;font-size:1.1rem;font-weight:500;font-family:var(--font-figtree);margin-top:2px;padding:10px}.flipflop-game #message:empty{display:none}.flipflop-game #message.error{color:#fff;background-color:red}.flipflop-game #message.success{background-color:var(--color-success);color:#fff}.flipflop-game #game-history{font-family:var(--font-figtree);border-top:1px solid #e0e0e0;margin-top:1px;padding-top:5px}.flipflop-game .history-item{text-align:center;font-size:18px;font-family:var(--font-figtree);border-radius:4px;justify-content:space-between;margin-bottom:5px;padding:5px;display:flex}.flipflop-game .history-item span{text-align:center;flex:1}.flipflop-game .history-item.you{background-color:#dff2f2}.flipflop-game .history-item.computer{background-color:#f5f0ed}@media (max-width:600px){.flipflop-game #user-input,.flipflop-game #submit-btn{width:90%}.flipflop-game #score-display{flex-direction:row;justify-content:space-between;font-size:1em}.flipflop-game #computer-score-display,.flipflop-game #player-score-display{padding:2px 4px}.flipflop-game .current-word-tile,.flipflop-game .entry-word-tile{flex-basis:56.25px!important;width:56.25px!important;height:56.25px!important}.flipflop-game .current-word-letter,.flipflop-game .entry-word-letter{font-size:47px!important}.flipflop-game .current-word-letter:after,.flipflop-game .entry-word-letter:after{font-size:12px!important;bottom:3px!important;right:5px!important}.flipflop-game #user-input-score{font-size:29px}}.flipflop-game .modal{z-index:1;background-color:#0006;width:100%;height:100%;display:none;position:fixed;top:0;left:0;overflow:auto}.flipflop-game #rules-modal .modal-content{width:80%;max-width:500px;font-family:var(--font-figtree);background-color:#fefefe;border:1px solid #888;border-radius:8px;margin:10% auto;padding:15px 20px}.flipflop-game .close-button{color:#aaa;float:right;font-size:28px;font-weight:700}.flipflop-game .close-button:hover,.flipflop-game .close-button:focus{color:#000;cursor:pointer;text-decoration:none}.flipflop-game #play-button{color:#fff;cursor:pointer;font-size:18px;font-family:var(--font-figtree);background-color:#1e90ff;border:none;border-radius:4px;margin:0 auto;padding:10px 20px;display:block}.flipflop-game #play-button:hover{background-color:#006400}.flipflop-game #give-up-link{text-align:right;color:red;font-weight:700;font-family:var(--font-figtree);margin-top:2px;text-decoration:none;display:block}.flipflop-game #give-up-link:hover{text-decoration:underline}.flipflop-game #computer-score-display,.flipflop-game #player-score-display{text-align:center;min-width:0;max-width:150px;font-family:var(--font-figtree);margin-right:3px;padding:2px 4px}.flipflop-game #score-difference{font-size:18px;font-weight:500;font-family:var(--font-figtree);justify-content:center;align-items:center;display:flex}.flipflop-game #score-difference span{margin:0 10px}.flipflop-game #computer-score-display{font-family:var(--font-figtree);background-color:#f5f0ed;border-radius:4px;padding:4px 8px}.flipflop-game #player-score-display{font-family:var(--font-figtree);background-color:#dff2f2;border-radius:4px;padding:4px 8px}.flipflop-game .game-over-row{justify-content:center;align-items:stretch;gap:8px;margin-top:2px;margin-bottom:16px;display:flex}.flipflop-game .game-over-row #message{align-items:center;min-width:0;margin-top:0;display:flex}.flipflop-game .flipflop-action-button{background-color:var(--color-accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:1.1rem;font-weight:500;font-family:var(--font-figtree);white-space:nowrap;border:none;justify-content:center;align-items:center;padding:10px 20px;transition:filter .15s;display:inline-flex}.flipflop-game .flipflop-action-button:hover{filter:brightness(1.08)}.flipflop-game #play-again-button{margin:0}.flipflop-game #share-result-button{margin:10px auto}.flipflop-game #rules-modal .modal-content h2{color:#3498db;font-family:var(--font-figtree);text-align:center;font-size:1.4rem;font-weight:700}.flipflop-game #rules-modal .modal-content p{margin:.4em 0;font-size:17px;line-height:1.4}.flipflop-game .fade-out{opacity:0}.flipflop-game .fade-in{opacity:1}.flipflop-game .scrabble-tiles{justify-content:center;margin-bottom:10px;display:flex}.flipflop-game #computer-word-tiles{gap:8px}.flipflop-game .current-word-tile,.flipflop-game .entry-word-tile{border-radius:var(--radius-md);color:#000;flex:0 0 70px;width:70px;height:70px;position:relative;overflow:hidden}.flipflop-game .current-word-tile{background:silver;border:0}.flipflop-game .entry-word-tile{border:1px solid var(--color-text);background:var(--color-surface);cursor:text;transition:background-color .15s,border-color .15s}.flipflop-game .entry-word-tile--filled{border-color:var(--color-text-muted);background:#f5f5f4}.flipflop-game .current-word-letter,.flipflop-game .entry-word-letter{text-transform:uppercase;justify-content:center;align-items:center;width:100%;height:100%;font-size:59.5px;font-weight:800;line-height:1;display:flex;position:relative}.flipflop-game .current-word-letter:after,.flipflop-game .entry-word-letter:after{content:attr(data-points);font-size:14px;font-weight:800;line-height:1;position:absolute;bottom:4px;right:6px}.flipflop-game .fade-swap{animation:1.5s ease-in-out fade-swap}@keyframes fade-swap{0%{opacity:1}50%{opacity:0}to{opacity:1}}.flipflop-game .history-item .points{font-size:14px}.flipflop-game .history-item .operator{margin:0 2px;font-size:14px}.flipflop-game .history-item .total-score{font-size:20px;font-weight:700}.flipflop-game .history-item span:last-child{white-space:nowrap}.flipflop-game #hard-mode-container{justify-content:center;align-items:center;margin-bottom:5px;display:flex}.flipflop-game .mode-toggle{background-color:#f5f0ed;border:1px solid #ddd;border-radius:999px;gap:2px;padding:3px;display:flex}.flipflop-game .mode-toggle-button{font-size:14px;font-weight:600;font-family:var(--font-figtree);color:#777;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 16px;transition:background-color .15s,color .15s}.flipflop-game .mode-toggle-button--active{color:#fff;background-color:#1e90ff}.swap-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--accent:#ffcc3e;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.swap-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.swap-game .confetti-piece{opacity:.9;animation:swap-confetti-fall var(--confetti-duration,3.2s) cubic-bezier(.2, .7, .2, 1) forwards, swap-confetti-sway .9s ease-in-out infinite;filter:drop-shadow(0 6px 6px #00000040);border-radius:3px;position:absolute;top:-10%;transform:translateY(-10vh)rotate(0)}@keyframes swap-confetti-fall{0%{transform:translateY(-10vh)rotate(0)}to{transform:translate3d(var(--confetti-drift,20px), 110vh, 0) rotate(var(--confetti-rotate,260deg))}}@keyframes swap-confetti-sway{0%{margin-left:0}50%{margin-left:var(--swap-confetti-sway,12px)}to{margin-left:0}}@keyframes swap-tile-fade-in{0%{opacity:0}to{opacity:1}}.swap-game .swap-card,.swap-game .game-card{box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;min-width:0;box-shadow:var(--shadow-sm);grid-template-columns:none;padding:16px;display:block}.swap-game .controls-row{margin-bottom:calc(var(--spacing) * 4);justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}.swap-game .controls-cluster{align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}.swap-game .pill{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:7px 16px;font-size:.95rem;font-weight:700;display:inline-flex}.swap-game .pill--solved{border-color:var(--color-success);background:var(--color-success);color:#fff}.swap-game .pill--share,.swap-game .pill--play-again{border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;cursor:pointer;align-items:center;gap:6px;transition:filter .15s;display:inline-flex}.swap-game .pill--share:hover,.swap-game .pill--play-again:hover{filter:brightness(1.08)}.swap-game .pill--share:active,.swap-game .pill--play-again:active{filter:brightness(.95)}.swap-game .icon-button{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;transition:border-color .15s,background-color .15s,transform .1s;display:inline-flex}.swap-game .icon-button:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.swap-game .icon-button:active:not(:disabled){transform:scale(.92)}.swap-game .icon-button:disabled{opacity:.35;cursor:not-allowed}.swap-game .grid-row{padding-top:.75rem;position:relative}.swap-game .grid-row:first-child{padding-top:0}.swap-game .grid-row:before{content:"";background:var(--color-border);height:1px;position:absolute;top:0;left:0;right:0}.swap-game .grid-row:first-child:before{display:none}.swap-game .tile-base{aspect-ratio:1;touch-action:none;border-radius:var(--radius-2xl);border-style:var(--tw-border-style);font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height));--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold);text-transform:uppercase;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));-webkit-user-select:none;user-select:none;border-width:1px;justify-content:center;align-items:center;display:flex}@media (min-width:40rem){.swap-game .tile-base{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}.swap-game .tile-win-celebrate{animation:1s ease-out both swap-win-reveal}.swap-game .grid-row:first-of-type .tile-win-celebrate{animation-delay:0s}.swap-game .grid-row:nth-of-type(2) .tile-win-celebrate{animation-delay:1s}.swap-game .grid-row:nth-of-type(3) .tile-win-celebrate{animation-delay:2s}.swap-game .grid-row:nth-of-type(4) .tile-win-celebrate{animation-delay:3s}.swap-game .page-shell{width:100%;padding:0 16px calc(2.5rem + env(safe-area-inset-bottom));justify-content:center;display:flex}.swap-game .page-layout{flex-direction:column;align-items:center;gap:12px;width:440px;max-width:100%;display:flex}.swap-game .swap-feedback{text-align:center;justify-content:center;align-items:center;display:flex}.swap-game .swap-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.swap-game .share-button{margin-top:0}.swap-game .swap-howto-board{position:relative}.swap-game .swap-howto-ghost{z-index:5;pointer-events:none;transition:left .5s,top .5s;position:absolute}.swap-game .swap-howto-finger{z-index:6;pointer-events:none;color:#1c1917;filter:drop-shadow(0 1px 2px #00000059);transition:left .5s,top .5s;position:absolute}.swap-game .confetti-layer{pointer-events:none;z-index:10000;position:fixed;inset:0;overflow:hidden}.swap-game .revealed-words{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;width:100%;display:flex}.swap-game .swap-completion-words-label{color:var(--color-text);margin:0;font-size:1rem;font-weight:700}.swap-game .revealed-words-text{color:var(--color-success);font-size:1.25rem;font-weight:600}.swap-game .revealed-word-pill{background-color:var(--color-success);color:#fff;opacity:0;border-radius:9999px;padding:.375rem .9rem;font-size:1rem;font-weight:600;transition:opacity .3s,transform .3s;transform:scale(.85)}.swap-game .revealed-word-pill--visible{opacity:1;transform:scale(1)}@media (min-width:640px){.swap-game .revealed-words-text{font-size:1.5rem}.swap-game .revealed-word-pill{font-size:1.15rem}}@media (max-width:480px){.swap-game .game-completion-result .revealed-words{flex-wrap:nowrap;gap:.3rem}.swap-game .game-completion-result .revealed-word-pill{text-align:center;flex:1 1 0;min-width:0;padding:.3rem .35rem;font-size:1.1rem;font-weight:600;line-height:1}}body.dragging{width:100%;position:fixed;overflow:hidden}.stripes-game{--grid-size:clamp(240px, 80vw, 420px);--grid-gap:clamp(6px, 2.5vw, 12px);--cell-size:clamp(64px, 22vw, 120px);--cell-radius:clamp(10px, 3vw, 18px);--grid-padding:clamp(8px, 2.5vw, 14px);--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-lg:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a}.stripes-game .App{min-height:100vh;font-family:var(--font-figtree), -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;background-color:#fafaf9;flex-direction:column;align-items:center;padding:12px 0 0;display:flex}.stripes-game h1{letter-spacing:-.05em;color:#1c1917;text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.stripes-game .stripes-status-row{justify-content:center;align-items:center;gap:12px;width:100%;max-width:340px;margin-top:10px;display:flex}.stripes-game .stripes-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:7px 16px;display:inline-flex;box-shadow:0 1px 2px #0000000d}.stripes-game .stripes-counter--won{color:#fff;background:#00a300;border-color:#00a300}.stripes-game .share-button{border-radius:999px;justify-content:center;align-items:center;gap:6px;width:auto;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.stripes-game .game-container{flex-direction:column;flex:1;align-items:center;width:100%;padding:20px;display:flex}.stripes-game .game-grid{touch-action:none;padding:var(--grid-padding);width:var(--grid-size);height:var(--grid-size);gap:var(--grid-gap);-webkit-user-select:none;user-select:none;background:#fff;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 4px 6px #0000001a}.stripes-game .snake-svg{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.stripes-game .grid-row{justify-content:center;align-items:center;gap:var(--grid-gap);display:flex}.stripes-game .grid-cell{width:var(--cell-size);height:var(--cell-size);border-radius:var(--cell-radius);cursor:pointer;justify-content:center;align-items:center;transition:all .3s;display:flex;position:relative}.stripes-game .grid-cell.gap{border:2px dashed}.stripes-game .grid-cell.won{border-radius:50%!important}.stripes-game .grid-cell.secondary:active{opacity:.9;transition:all .1s;transform:scale(.95)}.stripes-game .grid-cell.active-split{box-shadow:inset 0 0 0 3px #ffffffd9}.stripes-game .grid-cell.choosing{overflow:hidden}.stripes-game .split-choice{position:absolute;inset:0}.stripes-game .split-choice-half{cursor:pointer;border:none;width:100%;height:100%;margin:0;padding:0;transition:filter .15s;position:absolute;inset:0}.stripes-game .split-choice-half--tl{clip-path:polygon(0 0,100% 0,0 100%)}.stripes-game .split-choice-half--br{clip-path:polygon(100% 0,100% 100%,0 100%)}.stripes-game .split-choice-half:hover{filter:brightness(1.12)}.stripes-game .split-choice-half:focus-visible{outline-offset:-4px;outline:2px solid #fff}.stripes-game .stripes-howto-ghost{z-index:5;pointer-events:none;transition:left .5s,top .5s;position:absolute}.stripes-game .stripes-howto-finger{z-index:6;pointer-events:none;color:#1c1917;filter:drop-shadow(0 1px 2px #00000059);transition:left .5s,top .5s;position:absolute}.stripes-game .stripes-howto-tap-finger{animation:.7s ease-in-out stripes-howto-double-tap}@keyframes stripes-howto-double-tap{0%,to{opacity:1;transform:scale(1)}20%{opacity:.7;transform:scale(.8)}40%{opacity:1;transform:scale(1)}60%{opacity:.7;transform:scale(.8)}80%{opacity:1;transform:scale(1)}}@keyframes stripes-pill-merge-h{0%{opacity:.85;transform:scaleX(.33)}to{opacity:1;transform:scaleX(1)}}@keyframes stripes-pill-merge-v{0%{opacity:.85;transform:scaleY(.33)}to{opacity:1;transform:scaleY(1)}}.stripes-game .win-pill-h{animation:.45s cubic-bezier(.4,0,.2,1) both stripes-pill-merge-h}.stripes-game .win-pill-v{animation:.45s cubic-bezier(.4,0,.2,1) both stripes-pill-merge-v}.stripes-game .feedback{text-align:center;border-radius:4px;margin-top:24px;padding:8px;font-size:1.05rem;font-weight:700}.stripes-game .feedback-error{color:#b00020}.stripes-game .share-button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:auto;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.stripes-game .share-button:hover{filter:brightness(1.08)}.stripes-game .share-button:active{filter:brightness(.95);transform:none}.digits-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.digits-game *,.digits-game :before,.digits-game :after{box-sizing:border-box}.digits-game button{all:unset;box-sizing:border-box;cursor:pointer}.digits-game main{justify-content:center;width:100%;display:flex}.digits-game .container{flex-direction:column;align-items:center;gap:12px;width:390px;max-width:100vw;padding:12px;display:flex}.digits-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.digits-game .digits-ops-count{color:var(--color-text);font-size:.95rem;font-weight:600}.digits-game .digits-target-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;padding:10px 40px}.digits-game .digits-target-label{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.digits-game .digits-target-value{color:var(--color-text);font-size:3rem;font-weight:800;line-height:1.1}.digits-game .digits-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;display:grid}.digits-game .digits-tile{aspect-ratio:1;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;box-shadow:var(--shadow-sm);color:var(--color-text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;font-size:2.1rem;font-weight:700;transition:all .15s;display:flex}.digits-game .digits-tile--medium{font-size:1.6rem}.digits-game .digits-tile--small{font-size:1.15rem}.digits-game .digits-tile:hover:not(:disabled):not(.digits-tile--empty){border-color:var(--color-text-muted)}.digits-game .digits-tile:active:not(:disabled):not(.digits-tile--empty){transform:scale(.96)}.digits-game .digits-tile.selected{border-color:var(--color-text);transform:translateY(-2px);box-shadow:0 0 0 4px #0000000d}.digits-game .digits-tile--empty{box-shadow:none;background:0 0;border-style:dashed}.digits-game .digits-tile--winner{border-color:var(--color-success);background-color:var(--color-success);color:#fff;animation:2s infinite pulse}.digits-game .digits-tile:disabled{cursor:default}.digits-game .digits-op-row{justify-content:center;gap:10px;width:100%;display:flex}.digits-game .digits-op{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:56px;height:56px;color:var(--color-text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-bottom-width:3px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;transition:all .1s;display:flex}.digits-game .digits-op:active:not(:disabled){border-bottom-width:1px;transform:translateY(2px)}.digits-game .digits-op.selected{background-color:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}.digits-game .digits-op:disabled{opacity:.5;cursor:not-allowed}.digits-game .digits-controls{gap:10px;display:flex}.digits-game .digits-control-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:999px;padding:8px 20px;font-size:.9rem;font-weight:700;transition:all .15s}.digits-game .digits-control-button:hover:not(:disabled){border-color:var(--color-text-muted)}.digits-game .digits-control-button:disabled{opacity:.4;cursor:not-allowed}.digits-game .digits-feedback{text-align:center;justify-content:center;align-items:center;min-height:44px;display:flex}.digits-game .digits-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.digits-game .digits-hint{color:var(--color-text-muted);font-size:.9rem}.digits-game .share-button{margin-top:0}.digits-game .digits-give-up,.buttonjam-game .bj-give-up,.fold-game .fold-give-up,.escape-game .escape-give-up,.swap-game .give-up-button,.gears-game .gears-give-up,.pipes-game .pipes-give-up,.flip-game .flip-give-up,.twister-game .twister-give-up{color:#dc2626;text-underline-offset:4px;font-size:.85rem;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.digits-game .digits-give-up:hover,.buttonjam-game .bj-give-up:hover,.fold-game .fold-give-up:hover,.escape-game .escape-give-up:hover,.swap-game .give-up-button:hover,.gears-game .gears-give-up:hover,.pipes-game .pipes-give-up:hover,.flip-game .flip-give-up:hover,.twister-game .twister-give-up:hover{color:#b91c1c}.twister-game .twister-hint,.escape-game .escape-hint{color:#1e90ff;text-underline-offset:4px;font-size:.85rem;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.twister-game .twister-hint:hover,.escape-game .escape-hint:hover{color:#1361c9}.twister-game .twister-hint:disabled,.escape-game .escape-hint:disabled{pointer-events:none;opacity:.5}.digits-game .digits-solution{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:6px;padding:16px 28px;display:flex}.digits-game .digits-solution-title{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:4px;font-size:.78rem;font-weight:700}.digits-game .digits-solution-step{color:var(--color-text);font-size:1.15rem;font-weight:700}.digits-game .digits-solution-step:last-child{color:var(--color-success)}.digits-game .digits-play-again{color:#fff;border-radius:var(--radius-md);text-align:center;background-color:#00a300;width:100%;padding:14px;font-size:1.1rem;font-weight:800;box-shadow:0 4px 6px -1px #0000001a}.digits-game .digits-play-again:active{transform:scale(.98)}.buttonjam-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.buttonjam-game *,.buttonjam-game :before,.buttonjam-game :after{box-sizing:border-box}.buttonjam-game button{all:unset;box-sizing:border-box;cursor:pointer}.buttonjam-game main{justify-content:center;width:100%;display:flex}.buttonjam-game .container{flex-direction:column;align-items:center;gap:12px;width:390px;max-width:100vw;padding:12px;display:flex}.buttonjam-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.buttonjam-game .bj-target-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;padding:8px 40px}.buttonjam-game .bj-target-label{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.buttonjam-game .bj-target-value{color:var(--color-text);font-size:2.6rem;font-weight:800;line-height:1.1}.buttonjam-game .bj-display{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);padding:10px 16px 8px}.buttonjam-game .bj-display-meta{color:var(--color-text-muted);justify-content:space-between;align-items:baseline;font-size:.78rem;font-weight:600;display:flex}.buttonjam-game .bj-display-meta>span:first-child{align-items:center;gap:8px;display:inline-flex}.buttonjam-game .bj-display-meta .counter-value{font-size:.9rem}.buttonjam-game .bj-display-meta .counter-divider{height:12px}.buttonjam-game .bj-display-op{color:var(--color-text);min-height:1.2em;font-size:1.05rem;font-weight:800}.buttonjam-game .bj-display-value{text-align:right;color:var(--color-text);font-variant-numeric:tabular-nums;font-size:2.4rem;font-weight:800;line-height:1.15}.buttonjam-game .bj-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;display:grid}.buttonjam-game .bj-key{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);height:clamp(46px,11.5vw,58px);color:var(--color-text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-bottom-width:3px;justify-content:center;align-items:center;font-size:1.35rem;font-weight:700;transition:all .1s;display:flex}.buttonjam-game .bj-key:hover:not(:disabled){border-color:var(--color-text-muted)}.buttonjam-game .bj-key:active:not(:disabled){border-bottom-width:1px;transform:translateY(2px)}.buttonjam-game .bj-key--jammed{color:#ccc8c4;cursor:default;background:#f1f0ee;border-bottom-width:1px}.buttonjam-game .bj-key--zero{grid-column:span 3}.buttonjam-game .bj-key--equals{color:#fff;background:#1e90ff;border-color:#1873cc;grid-column:span 2}.buttonjam-game .bj-key--equals:hover:not(:disabled){background:#1e90ff;border-color:#1873cc}.buttonjam-game .bj-key--utility{color:var(--color-text);background:0 0;border-bottom-width:1px;border-radius:999px;font-size:1.05rem;font-weight:700}.buttonjam-game .bj-key--utility:disabled{color:var(--color-text-muted);cursor:default;opacity:.6}.buttonjam-game .bj-feedback{justify-content:center;align-items:center;gap:10px;display:flex}.buttonjam-game .bj-feedback .feedback-msg{min-width:0;padding:6px 14px;font-size:.95rem}.buttonjam-game .share-button{border:1px solid var(--color-accent);width:auto;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.buttonjam-game .share-button:hover{filter:brightness(1.08)}.buttonjam-game .share-button:active{filter:brightness(.95);transform:none}.fold-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--fold-ink:#1c1917;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.fold-game *,.fold-game :before,.fold-game :after{box-sizing:border-box}.fold-game button{all:unset;box-sizing:border-box;cursor:pointer}.fold-game main{justify-content:center;width:100%;display:flex}.fold-game .container{flex-direction:column;align-items:center;gap:12px;width:420px;max-width:100vw;padding:12px;display:flex}.fold-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.fold-game .fold-status-row{justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:340px;display:flex}.fold-game .fold-counter-column{grid-template-columns:max-content;gap:6px;display:grid}.fold-game .fold-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:7px 16px;display:inline-flex}.fold-game .fold-counter--won{color:#fff;background:#00a300;border-color:#00a300}.fold-game .fold-icon-cluster{flex:none;align-items:center;gap:6px;display:flex}.fold-game .icon-button{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;transition:border-color .15s,background-color .15s,transform .1s;display:inline-flex}.fold-game .icon-button:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.fold-game .icon-button:active:not(:disabled){transform:scale(.92)}.fold-game .icon-button:disabled{opacity:.35;cursor:not-allowed}.fold-game .fold-target{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:6px 10px;display:flex}.fold-game .fold-target-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);font-size:.72rem;font-weight:700}.fold-game .fold-target-grid{gap:3px;display:grid}.fold-game .fold-target-cell{border:1.5px solid var(--color-border);background:var(--color-surface);border-radius:4px;width:16px;height:16px}.fold-game .fold-target-cell--ink{background:var(--fold-ink);border-color:var(--fold-ink)}.fold-game .fold-board-wrap{justify-content:center;padding:26px;display:flex}.fold-game .fold-board{perspective:900px;touch-action:none;position:relative}.fold-game .fold-grid{display:grid}.fold-game .fold-cell{aspect-ratio:1;border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);background:#f0efed;transition:opacity .12s}.fold-game .fold-cell--ink{background:var(--fold-ink);border-color:var(--fold-ink)}.fold-game .fold-cell--lifted{opacity:0}.fold-game .fold-cell--ghost{background:#1c19174d;border-color:#1c191726}.fold-game .fold-overlay{z-index:5;filter:drop-shadow(0 6px 10px #0000002e);pointer-events:none;will-change:transform;gap:6px;display:grid;position:absolute}.fold-game .fold-overlay--settle{transition:transform .17s ease-in}.fold-game .fold-crease{z-index:6;pointer-events:none;background:0 0;border:1px dashed #1e90ff;position:absolute}.fold-game .fold-tab{z-index:8;color:#1e90ff;touch-action:none;cursor:grab;-webkit-tap-highlight-color:transparent;place-items:center;width:44px;height:44px;transition:color .15s;display:grid;position:absolute}.fold-game .fold-tab-icon{pointer-events:none;place-items:center;width:26px;height:26px;display:grid}.fold-game .fold-tab-icon svg{width:26px;height:26px}.fold-game .fold-tab-icon--left{transform:rotate(-90deg)}.fold-game .fold-tab-icon--right{transform:rotate(90deg)}.fold-game .fold-tab-icon--bottom{transform:rotate(180deg)}.fold-game .fold-tab:hover{color:#1e90ff}.fold-game .fold-tab--active{cursor:grabbing;color:#1e90ff}.fold-game .fold-tab--left{top:50%;left:-37px;transform:translateY(-50%)}.fold-game .fold-tab--right{top:50%;right:-37px;transform:translateY(-50%)}.fold-game .fold-tab--top{top:-37px;left:50%;transform:translate(-50%)}.fold-game .fold-tab--bottom{bottom:-37px;left:50%;transform:translate(-50%)}.fold-game .fold-solution{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:340px;box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:10px;padding:14px 20px;display:flex}.fold-game .fold-solution-title{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.fold-game .fold-solution-steps{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.fold-game .fold-solution-step{text-transform:capitalize;border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:700}.fold-game .fold-feedback{text-align:center;justify-content:center;align-items:center;display:flex}.fold-game .fold-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.fold-game .fold-lost-pill{border-radius:999px;max-width:none;padding:6px 14px;font-size:.95rem;font-weight:700}.fold-game .share-button{box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:6px;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.fold-game .share-button:hover{filter:brightness(1.08)}.fold-game .share-button:active{filter:brightness(.95);transform:none}.fold-game .fold-play-again{border:1px solid var(--color-accent);box-shadow:var(--shadow-sm);align-items:center;gap:6px;margin-top:0;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex;background-color:var(--color-accent)!important;color:#fff!important;border-radius:999px!important;width:auto!important;padding:6px 14px!important}.fold-demo{perspective:600px;flex-direction:column;align-items:center;gap:14px;margin:10px 0 4px;display:flex}.fold-demo-strip{gap:4px;display:flex;position:relative}.fold-demo-cell{background:#fff;border:2px solid #e7e5e4;border-radius:8px;width:44px;height:44px}.fold-demo-cell--ink{background:#1c1917;border-color:#1c1917}.fold-demo-flap{transform-origin:94px;filter:drop-shadow(0 4px 8px #00000026);gap:4px;transition:transform .7s;display:flex;position:absolute;top:0;left:0}.fold-demo-strip--folded .fold-demo-flap{transform:rotateY(180deg)}.fold-demo-strip--folded .fold-demo-flap .fold-demo-cell:not(.fold-demo-cell--ink){background:0 0;border-color:#0000;transition:background-color .2s .55s,border-color .2s .55s}.fold-demo-strip--folded .fold-demo-cell--flapzone{opacity:0;transition:opacity .3s .3s}.fold-demo-crease{border-left:2px dashed #1e90ff;width:0;position:absolute;top:-6px;bottom:-6px;left:93px}.buttonjam-game .bj-play-again,.escape-game .escape-play-again,.swap-game .swap-play-again,.gears-game .gears-play-again,.pipes-game .pipes-play-again{color:#fff;border-radius:var(--radius-md);text-align:center;background-color:#00a300;width:100%;padding:14px;font-size:1.1rem;font-weight:800;box-shadow:0 4px 6px -1px #0000001a}.buttonjam-game .bj-play-again:active,.escape-game .escape-play-again:active,.swap-game .swap-play-again:active,.gears-game .gears-play-again:active,.pipes-game .pipes-play-again:active{transform:scale(.98)}.buttonjam-game .bj-solution{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:10px;padding:14px 20px;display:flex}.buttonjam-game .bj-solution-title{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.buttonjam-game .bj-solution-keys{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.buttonjam-game .bj-solution-key{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-width:34px;height:34px;color:var(--color-text);border-bottom-width:3px;justify-content:center;align-items:center;padding:0 8px;font-size:1.05rem;font-weight:700;display:inline-flex}.buttonjam-game .bj-solution-key--equals{color:#fff;background:#1e90ff;border-color:#1873cc}.buttonjam-game .bj-lost-pill{border-radius:999px;max-width:none;padding:6px 14px;font-size:.95rem;font-weight:700}.buttonjam-game .bj-play-again-pill{border:1px solid var(--color-accent);background-color:var(--color-accent);color:#fff;width:auto;box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.buttonjam-game .bj-play-again-pill:hover{filter:brightness(1.08)}.buttonjam-game .bj-play-again-pill:active{filter:brightness(.95);transform:none}.fold-game .fold-overlay .fold-cell{position:relative}.fold-game .fold-overlay .fold-cell:after{content:"";border-radius:inherit;opacity:var(--cell-shade,0);pointer-events:none;background:#1c1917;position:absolute;inset:-2px}.fold-game .fold-overlay--settle .fold-cell:after{transition:opacity .17s ease-in}.fold-game .fold-shadow{z-index:4;pointer-events:none;filter:blur(4px);will-change:opacity;position:absolute}.fold-game .fold-shadow--settle{transition:opacity .17s ease-in,width .17s ease-in,height .17s ease-in}.fold-demo-cell{position:relative}.fold-demo-cell:after{content:"";opacity:0;pointer-events:none;background:#1c1917;border-radius:8px;position:absolute;inset:-2px}@keyframes fold-demo-shade{0%{opacity:0}50%{opacity:.26}to{opacity:0}}.fold-demo-strip--folded .fold-demo-flap .fold-demo-cell:after{animation:.7s fold-demo-shade}.escape-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--escape-wall:#2b2724;--escape-pit:#37332f;--escape-green:#00c000;--escape-red:red;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.escape-game *,.escape-game :before,.escape-game :after{box-sizing:border-box}.escape-game button{all:unset;box-sizing:border-box;cursor:pointer}.escape-game button:focus-visible{outline-offset:2px;outline:2px solid #1e90ff}.escape-game main{justify-content:center;width:100%;display:flex}.escape-game .container{flex-direction:column;align-items:center;gap:12px;width:420px;max-width:100vw;padding:12px;display:flex}.escape-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.escape-game .escape-mode-toggle{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;gap:2px;padding:3px;display:flex}.escape-game .escape-mode-button{width:30px;height:30px;color:var(--color-text-muted);border-radius:999px;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;transition:background-color .15s,color .15s;display:flex}.escape-game .escape-mode-button:hover:not(.escape-mode-button--active){color:var(--color-text)}.escape-game .escape-mode-button--active{color:#fff;background:#1e90ff}.escape-game .escape-status-row{justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:350px;display:flex}.escape-game .escape-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;flex:none;align-items:center;gap:10px;padding:7px 16px;display:inline-flex}.escape-game .escape-counter-group{align-items:baseline;gap:6px;display:inline-flex}.escape-game .escape-counter-label{letter-spacing:.09em;text-transform:uppercase;color:#a8a29e;font-size:.68rem;font-weight:700}.escape-game .escape-counter-value{font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800;line-height:1}.escape-game .escape-counter-divider{background:var(--color-border);width:1px;height:14px}.escape-game .escape-counter--won{color:#fff;background:#00a300;border-color:#00a300}.escape-game .escape-counter--won .escape-counter-label{color:#ffffffbf}.escape-game .escape-counter--won .escape-counter-divider{background:#ffffff59}.escape-game .escape-icon-cluster{flex:none;align-items:center;gap:6px;display:flex}.escape-game .icon-button{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;transition:border-color .15s,background-color .15s,transform .1s;display:inline-flex}.escape-game .icon-button:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.escape-game .icon-button:active:not(:disabled){transform:scale(.92)}.escape-game .icon-button:disabled{opacity:.35;cursor:not-allowed}@media (max-width:380px){.escape-game .escape-status-row{gap:6px}.escape-game .escape-counter{gap:8px;padding:6px 12px}.escape-game .escape-counter-value{font-size:.92rem}.escape-game .escape-icon-cluster{gap:5px}.escape-game .icon-button{width:34px;height:34px}}.escape-game .escape-board-wrap{justify-content:center;padding:14px;display:flex}.escape-game .escape-frame{position:relative}.escape-game .escape-rotor{background:var(--color-surface);will-change:transform;border-radius:18px;transition:transform .45s linear,background-color .3s;position:absolute;inset:0;box-shadow:0 1px 2px #1c191712,0 12px 28px -10px #1c191738}.escape-game .escape-rotor--won{background:#77f466}.escape-game .escape-rotor--failed{background:#a9a9a9}.escape-game .escape-rotor--celebrate{background:#ffcc4d}.escape-game .escape-rotor--snap,.escape-game .escape-rotor--snap *{transition:none!important}.escape-game .escape-maze{position:absolute;inset:0}.escape-game .escape-gridline{background:#f0eeec;position:absolute}.escape-game .escape-wall{background:var(--escape-wall);position:absolute}.escape-game .escape-wall--fade{animation:1s forwards escape-wall-fade-out}@keyframes escape-wall-fade-out{0%{opacity:1}to{opacity:0}}.escape-game .escape-pit{background:radial-gradient(72% 72% at 50% 45%,#211e1b 0%,#37332f 62%,#57534e 100%);border-radius:50%;position:absolute}.escape-game .escape-pit-icon{z-index:0;color:#ffffff8c;pointer-events:none;position:absolute;top:0;left:0}.escape-game .escape-pit--shifting{animation:.36s cubic-bezier(.2,.85,.35,1) escape-pit-emerge}.escape-game .escape-pit-icon--shifting{animation:.36s ease-out escape-pit-icon-emerge}@keyframes escape-pit-emerge{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@keyframes escape-pit-icon-emerge{0%{opacity:0}to{opacity:1}}.escape-game .escape-wall-joint{background:var(--escape-wall);position:absolute}.escape-game .escape-face-eyes{transition:transform .35s ease-in-out;position:absolute;inset:0}.escape-game .escape-face-eye{animation:1s 1s backwards escape-face-eye-pop}.escape-game .escape-face-eye-icon{animation:1s 1s backwards escape-face-eye-icon-in}@keyframes escape-face-eye-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes escape-face-eye-icon-in{0%{opacity:0}to{opacity:1}}.escape-game .escape-exit-chute{background:var(--escape-wall);border-radius:999px;position:absolute}.escape-game .escape-ball{z-index:2;pointer-events:none;will-change:transform;border-radius:50%;transition:transform .56s cubic-bezier(.55,0,.85,.4),opacity .56s;position:absolute;top:0;left:0;box-shadow:0 3px 4px #0000004d}.escape-game .escape-ball--green{background:radial-gradient(circle at 32% 26%, #ffffffe6 0%, #fff0 17%), radial-gradient(ellipse at 50% 90%, #0006 0%, #0000 44%), var(--escape-green);box-shadow:0 2px 5px #0000004d,inset 0 0 5px #00000038}.escape-game .escape-ball--red{background:radial-gradient(circle at 32% 26%, #ffffffe6 0%, #fff0 17%), radial-gradient(ellipse at 50% 90%, #0006 0%, #0000 44%), var(--escape-red);box-shadow:0 2px 5px #0000004d,inset 0 0 5px #00000038}.escape-game .escape-ball--escaping-green{overflow:hidden}.escape-game .escape-ball-smile{transform-origin:50%;pointer-events:none;display:block;position:absolute;inset:0}.escape-game .escape-ball-smile:before{content:"";border-bottom:4px solid #ffd400;border-radius:0 0 999px 999px;width:56%;height:30%;position:absolute;top:50%;left:50%;transform:translate(-50%)}.escape-game .escape-ball-smile:after{content:"";background:radial-gradient(circle at 35% 36%,#ffd400 0 5%,#0000 6%),radial-gradient(circle at 65% 36%,#ffd400 0 5%,#0000 6%);position:absolute;inset:0}.escape-game .escape-face-smile{transition:transform .35s ease-in-out;position:absolute;inset:0}.escape-game .escape-face-ball{z-index:3;animation:.32s cubic-bezier(.2,.85,.35,1) backwards escape-face-ball-pop}@keyframes escape-face-ball-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.escape-game .escape-ball--plugged{z-index:1;filter:brightness(.72)saturate(.85)}.escape-game .escape-rotate-row{justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:350px;margin-top:25px;padding:0 10px;display:flex}.escape-game .escape-rotate-button{background:var(--escape-wall);color:#fff;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;width:62px;height:62px;transition:transform .1s,filter .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #1c191733,0 8px 18px -6px #1c191766}.escape-game .escape-rotate-button:hover:not(:disabled){filter:brightness(1.35)}.escape-game .escape-rotate-button:active:not(:disabled){transform:scale(.92);box-shadow:0 1px 2px #1c191733,0 4px 10px -4px #1c191766}.escape-game .escape-rotate-button:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.escape-game .escape-rotate-button.escape-rotate-hint{animation:1.2s ease-out escape-hint-pulse}@keyframes escape-hint-pulse{0%,to{box-shadow:0 1px 2px #1c191733,0 8px 18px -6px #1c191766}15%,55%{box-shadow:0 0 0 6px #1e90ff73,0 1px 2px #1c191733,0 8px 18px -6px #1c191766}}.escape-game .escape-controls-links{justify-content:center;align-items:center;height:62px;display:flex;position:relative}.escape-game .escape-give-up{white-space:nowrap;margin-top:7px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.escape-game .escape-rotate-icon{width:28px;height:28px}.escape-game .escape-solution{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:340px;box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:10px;padding:14px 20px;display:flex}.escape-game .escape-solution-title{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.escape-game .escape-solution-steps{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.escape-game .escape-solution-step{border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:700}.escape-game .escape-wild-badge{color:#765b00;letter-spacing:.09em;text-transform:uppercase;background:#fff3c4;border:1px solid #f2d36a;border-radius:999px;padding:5px 12px;font-size:.7rem;font-weight:800}.escape-game .escape-wild-hint{color:#78716c;text-align:center;max-width:120px;font-size:.78rem;font-weight:700;line-height:1.25}.escape-game .escape-feedback{text-align:center;justify-content:center;align-items:center;display:flex}.escape-game .escape-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.escape-demo{flex-direction:column;align-items:center;gap:12px;margin:6px 0 4px;display:flex}.escape-demo-stage{width:88px;height:88px;margin:14px;position:relative}.escape-demo-rotor{background:#fafaf9;border-radius:10px;transition:transform .32s ease-in-out;position:absolute;inset:0;box-shadow:0 1px 2px #1c191712,0 6px 14px -6px #1c191733}.escape-demo-rotor--snap,.escape-demo-rotor--snap *{transition:none!important}.escape-demo-maze .escape-demo-gridline line{stroke:#f0eeec;stroke-width:2px}.escape-demo-maze .escape-demo-wall line{stroke:var(--escape-wall);stroke-linecap:round}.escape-demo-maze .escape-demo-wall-joint{fill:var(--escape-wall)}.escape-demo-maze .escape-demo-exit-chute{fill:none;stroke:var(--escape-wall);stroke-linecap:round}.escape-game .escape-demo-ball{transition:transform .56s cubic-bezier(.55,0,.85,.4) .34s,opacity .56s .34s}.escape-demo-caption{text-align:center;min-height:2.6em}.escape-demo-rotate-label{vertical-align:middle;align-items:center;gap:4px;display:inline-flex}.escape-demo-rotate-badge{background:var(--escape-wall);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.escape-demo-rotate-badge .escape-demo-rotate-icon{width:13px;height:13px}.escape-demo-rotate-icon{width:16px;height:16px}.escape-game .escape-demo-rotate-button{align-items:center;gap:6px;display:inline-flex}.gears-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--gears-ink:#1c1917;--gears-target:#ffcc3e;--gears-ratchet:#dc2626;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.gears-game *,.gears-game :before,.gears-game :after{box-sizing:border-box}.gears-game button{all:unset;box-sizing:border-box;cursor:pointer}.gears-game main{justify-content:center;width:100%;display:flex}.gears-game .container{flex-direction:column;align-items:center;gap:12px;width:420px;max-width:100vw;padding:12px;display:flex}.gears-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.gears-game .gears-goal{text-align:center;max-width:340px;color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.4}.gears-game .gears-status-row{justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:340px;display:flex}.gears-game .gears-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:7px 16px;display:inline-flex}.gears-game .gears-out{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;display:flex}.gears-game .gears-out-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);font-size:.72rem;font-weight:700}.gears-game .gears-out-dot{border:1.5px dashed var(--color-text-muted);background:0 0;border-radius:50%;width:14px;height:14px}.gears-game .gears-out-dot--done{background:var(--gears-target);border:none;box-shadow:0 1px 2px #00000040}.gears-game .gears-board-wrap{justify-content:center;padding:14px;display:flex}.gears-game .gears-frame{background:var(--color-surface);box-shadow:var(--shadow-lg);border-radius:14px;position:relative}.gears-game .gears-board{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.gears-game .gears-board--snap *{transition:none!important}.gears-game .gears-edge{stroke:var(--color-border);stroke-width:4px}.gears-game .gears-edge--mesh{stroke:var(--gears-ink)}.gears-game .gears-edge--belt{stroke-dasharray:3 5;stroke-linecap:round}.gears-game .gears-gear{fill:#c7cbd1;stroke:#8b92a0;stroke-width:1.5px;stroke-linejoin:round;transition-property:transform;transition-timing-function:ease-in-out}.gears-game .gears-gear--target{stroke:var(--gears-target);stroke-width:3px}.gears-game .gears-gear--matched{fill:#fff6da;stroke:var(--color-success)}.gears-game .gears-matched-check{fill:var(--color-success);font-size:16px;font-weight:700}.gears-game .gears-crank-label{letter-spacing:.06em;fill:var(--color-text-muted);font-size:8px;font-weight:800}.gears-game .gears-gear-hub{fill:var(--gears-ink)}.gears-game .gears-target-wedge{fill:var(--gears-target);opacity:.28}.gears-game .gears-needle{stroke:var(--gears-ink);stroke-width:4px;stroke-linecap:round;transition-property:transform;transition-timing-function:ease-in-out}.gears-game .gears-ghost-needle{stroke:var(--gears-target);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:2 4;opacity:.9}.gears-game .gears-ghost-arrowhead{fill:var(--gears-target)}.gears-game .gears-ratchet-badge{fill:var(--gears-ratchet);font-size:15px;font-weight:700}.gears-game .gears-turn-row{justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:350px;padding:0 10px;display:flex}.gears-game .gears-turn-button{color:#fff;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#2b2724;border-radius:50%;justify-content:center;align-items:center;width:62px;height:62px;transition:transform .1s,filter .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #1c191733,0 8px 18px -6px #1c191766}.gears-game .gears-turn-button:hover:not(:disabled){filter:brightness(1.35)}.gears-game .gears-turn-button:active:not(:disabled){transform:scale(.92);box-shadow:0 1px 2px #1c191733,0 4px 10px -4px #1c191766}.gears-game .gears-turn-button:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.gears-game .gears-turn-icon{width:28px;height:28px}.gears-game .gears-controls{gap:10px;display:flex}.gears-game .icon-button{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;transition:border-color .15s,background-color .15s,transform .1s;display:inline-flex}.gears-game .icon-button:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.gears-game .icon-button:active:not(:disabled){transform:scale(.92)}.gears-game .icon-button:disabled{opacity:.35;cursor:not-allowed}.gears-game .gears-solution{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:340px;box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:10px;padding:14px 20px;display:flex}.gears-game .gears-solution-title{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.gears-game .gears-solution-steps{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.gears-game .gears-solution-step{border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:700}.gears-game .gears-feedback{text-align:center;justify-content:center;align-items:center;display:flex}.gears-game .gears-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.gears-game .share-button{margin-top:0}.gears-demo{flex-direction:column;align-items:center;gap:10px;margin:6px 0 4px;display:flex}.gears-demo-svg{width:100%;max-width:260px;overflow:visible}.gears-demo-crank{stroke:var(--gears-ink);stroke-width:4px}.gears-demo-needle{stroke:var(--gears-ink);stroke-width:4px;stroke-linecap:round;transition:transform .32s ease-in-out}.gears-demo-caption{text-align:center;min-height:3.2em;font-size:.92rem}.gears-demo-actions{gap:10px;display:flex}.gears-demo-reset{font-size:.85rem}.pipes-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--pipes-pipe:#5b7c99;--pipes-pipe-shadow:#3e5570;--pipes-tray-piece:#ffcc3e;--pipes-tray-piece-shadow:#c99a1e;--pipes-valid:#00a300;--pipes-invalid:#dc2626;--pipes-socket:#1c1917;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.pipes-game *,.pipes-game :before,.pipes-game :after{box-sizing:border-box}.pipes-game button{all:unset;box-sizing:border-box;cursor:pointer}.pipes-game main{justify-content:center;width:100%;display:flex}.pipes-game .container{flex-direction:column;align-items:center;gap:12px;width:420px;max-width:100vw;padding:12px;display:flex}.pipes-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.pipes-game .pipes-goal{text-align:center;max-width:340px;color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.4}.pipes-game .pipes-status-row{justify-content:center;align-items:center;width:100%;max-width:340px;display:flex}.pipes-game .pipes-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:700}.pipes-game .pipes-board-wrap{justify-content:center;padding:14px;display:flex}.pipes-game .pipes-board{background:var(--color-surface);box-shadow:var(--shadow-lg);touch-action:none;border-radius:14px}.pipes-game .pipes-gridlines line{stroke:#efedeb;stroke-width:1.5px}.pipes-game .pipes-connection-highlight rect{fill:var(--color-success);opacity:.16}.pipes-game .pipes-socket-edge{stroke:var(--pipes-tray-piece);stroke-width:7px;stroke-linecap:round}.pipes-game .pipes-piece-hitarea{fill:none;stroke:#0000;stroke-width:30px;stroke-linecap:round;stroke-linejoin:round}.pipes-game .pipes-piece-shadow,.pipes-game .pipes-piece-body{fill:none;stroke-linecap:round;stroke-linejoin:round}.pipes-game .pipes-piece-highlight{stroke-linecap:round;display:none}.pipes-game .pipes-piece--placed .pipes-piece-shadow{stroke:var(--pipes-pipe-shadow);stroke-width:15px}.pipes-game .pipes-piece--placed .pipes-piece-body{stroke:var(--pipes-pipe);stroke-width:11px}.pipes-game .pipes-piece--placed .pipes-piece-joint{fill:var(--pipes-pipe);stroke:var(--pipes-pipe-shadow);stroke-width:2px}.pipes-game .pipes-piece--placed .pipes-piece-highlight{stroke:#a8c4dc;stroke-width:2.5px;opacity:.85;display:block}.pipes-game .pipes-piece--tray .pipes-piece-shadow{stroke:var(--pipes-tray-piece-shadow);stroke-width:15px}.pipes-game .pipes-piece--tray .pipes-piece-body{stroke:var(--pipes-tray-piece);stroke-width:11px}.pipes-game .pipes-piece--tray .pipes-piece-joint{fill:var(--pipes-tray-piece);stroke:var(--pipes-tray-piece-shadow);stroke-width:2px}.pipes-game .pipes-piece--tray .pipes-piece-highlight{stroke:#ffe9a8;stroke-width:2.5px;opacity:.85;display:block}.pipes-game .pipes-piece--ghost-valid .pipes-piece-shadow,.pipes-game .pipes-piece--ghost-invalid .pipes-piece-shadow{display:none}.pipes-game .pipes-piece--ghost-valid .pipes-piece-body{stroke:var(--pipes-valid);stroke-width:11px;opacity:.55}.pipes-game .pipes-piece--ghost-valid .pipes-piece-joint{fill:var(--pipes-valid);opacity:.55}.pipes-game .pipes-piece--ghost-invalid .pipes-piece-body{stroke:var(--pipes-invalid);stroke-width:11px;opacity:.55}.pipes-game .pipes-piece--ghost-invalid .pipes-piece-joint{fill:var(--pipes-invalid);opacity:.55}.pipes-game .pipes-placed-piece{cursor:grab}.pipes-game .pipes-tray{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:340px;box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:center;gap:10px;min-height:96px;padding:10px;display:flex}.pipes-game .pipes-tray-item{flex-direction:column;align-items:center;gap:4px;display:flex}.pipes-game .pipes-tray-piece{cursor:grab;touch-action:none}.pipes-game .pipes-tray-rotate{border:1px solid var(--color-border);background:var(--color-bg);width:28px;height:28px;color:var(--color-text);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.pipes-game .pipes-tray-rotate:hover{border-color:var(--color-text-muted)}.pipes-game .pipes-controls{gap:10px;display:flex}.pipes-game .pipes-control-button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:999px;padding:8px 20px;font-size:.9rem;font-weight:700;transition:all .15s}.pipes-game .pipes-control-button:hover:not(:disabled){border-color:var(--color-text-muted)}.pipes-game .pipes-control-button:disabled{opacity:.4;cursor:not-allowed}.pipes-game .pipes-feedback{text-align:center;justify-content:center;align-items:center;display:flex}.pipes-game .pipes-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.pipes-game .share-button{margin-top:0}.pipes-shape-reference{justify-content:center;gap:14px;margin:4px 0;display:flex}.pipes-shape-reference-item{color:#6b7280;flex-direction:column;align-items:center;gap:4px;font-size:.75rem;display:flex}.flip-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--color-error:#ef4444;--flip-changed:var(--color-success);--flip-final:#006400;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);--font-mono:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.flip-game *,.flip-game :before,.flip-game :after{box-sizing:border-box}.flip-game button{all:unset;box-sizing:border-box;cursor:pointer}.flip-game main{justify-content:center;width:100%;display:flex}.flip-game .container{flex-direction:column;align-items:center;gap:12px;width:420px;max-width:100vw;padding:12px;display:flex}.flip-game h1{letter-spacing:-.05em;color:var(--color-text);text-align:center;-webkit-user-select:none;user-select:none;margin:0;font-size:2.5rem;font-weight:800}.flip-game .flip-status-row{justify-content:space-between;align-items:center;gap:10px;width:304px;max-width:100%;display:flex}.flip-game .flip-icon-cluster{align-items:center;gap:8px;display:flex}.flip-game .flip-counter-column{grid-template-columns:max-content;justify-items:center;gap:6px;display:grid}.flip-game .flip-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:7px 16px;display:inline-flex}.flip-game .flip-counter--won{background:var(--color-success);border-color:var(--color-success);color:#fff}.flip-game .share-button{box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:6px;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.flip-game .share-button:hover{filter:brightness(1.08)}.flip-game .share-button:active{filter:brightness(.95);transform:none}.twister-game .share-button{width:auto;box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:6px;margin-top:0;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;display:inline-flex}.twister-game .share-button:hover{filter:brightness(1.08)}.twister-game .share-button:active{filter:brightness(.95);transform:none}.flip-game .icon-button{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;transition:border-color .15s,background-color .15s,transform .1s;display:inline-flex}.flip-game .icon-button:hover:not(:disabled){background:#f5f5f4;border-color:#d6d3d1}.flip-game .icon-button:active:not(:disabled){transform:scale(.92)}.flip-game .icon-button:disabled{opacity:.35;cursor:not-allowed}.flip-game .flip-ladder{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.flip-game .flip-tile-row{justify-content:center;gap:8px;display:flex}.flip-game .flip-tile-cell{border-radius:var(--radius-md);width:70px;height:70px;font-family:var(--font-mono);color:#000;text-transform:uppercase;background:silver;border:0;justify-content:center;align-items:center;font-size:59.5px;font-weight:800;transition:background-color .15s,border-color .15s;display:flex}.flip-game .flip-tile-cell--changed{background:var(--flip-changed);color:#fff}.flip-game .flip-tile-row--guess{cursor:text;position:relative}.flip-game .flip-tile-row--guess .flip-tile-cell{border:1px solid var(--color-text);background:var(--color-surface)}.flip-game .flip-tile-row--guess .flip-tile-cell--filled{border:1px solid var(--color-text-muted);background:#f5f5f4}.flip-game .flip-tile-row--goal-preview{scroll-margin-bottom:calc(env(safe-area-inset-bottom) + 24px)}.flip-game .flip-tile-row--goal-preview .flip-tile-cell{border:1px dashed var(--color-border);color:var(--color-text-muted);background:0 0}.flip-game .flip-tile-row--goal-reached .flip-tile-cell{background:var(--flip-changed);border-color:var(--flip-changed);color:#fff}.flip-game .flip-tile-row--invalid .flip-tile-cell{color:var(--color-error);animation:.4s ease-in-out shake;border:1px solid var(--color-error)!important}.flip-game .flip-hidden-input{opacity:0;cursor:text;border:0;margin:0;padding:0;position:absolute;inset:0}.flip-game .flip-tile-row--added{animation:.3s ease-out fadeIn}.flip-game .flip-play-again{width:auto;scroll-margin-bottom:calc(env(safe-area-inset-bottom) + 24px);border:1px solid var(--color-accent);background-color:var(--color-accent);color:#fff;box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;padding:6px 14px;font-size:.95rem;font-weight:700;transition:filter .15s;animation:.2s ease-out fadeIn;display:inline-flex}.flip-game .flip-play-again:hover{filter:brightness(1.08)}.flip-game .flip-play-again:active{filter:brightness(.95);transform:none}.flip-game .flip-feedback{text-align:center;justify-content:center;align-items:center;display:flex}.flip-game .flip-give-up-recap{scroll-margin-bottom:calc(env(safe-area-inset-bottom) + 24px)}.flip-game .flip-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.flip-game .flip-lost-pill{border-radius:999px;max-width:none;padding:6px 14px;font-size:.95rem;font-weight:700}.flip-game .modal-demo-ladder{gap:5px;width:max-content;margin:4px auto 0}.flip-game .modal-demo-ladder .flip-tile-row{gap:5px}.flip-game .modal-demo-ladder .flip-tile-cell{border-radius:8px;width:52px;height:52px;font-size:44px}@media (max-width:640px){.game-shell-header{min-height:calc(58px + env(safe-area-inset-top));padding:calc(7px + env(safe-area-inset-top)) 10px 7px;grid-template-columns:56px minmax(0,1fr) 56px}.game-shell-title{font-size:2.25rem}.trio-game,.digits-game,.buttonjam-game,.fold-game,.escape-game,.gears-game,.pipes-game,.flip-game{padding-top:0}.swap-game{padding-top:8px}.digits-game,.buttonjam-game{justify-content:flex-start}.trio-game .container,.digits-game .container,.buttonjam-game .container,.fold-game .container,.escape-game .container,.gears-game .container,.pipes-game .container,.flip-game .container{gap:8px;padding-top:8px}.swap-game .page-layout{gap:8px}.stripes-game .App{padding-top:8px}.trio-game .subtitle-row,.digits-game .subtitle-row,.buttonjam-game .subtitle-row,.fold-game .subtitle-row,.escape-game .subtitle-row,.swap-game .subtitle-row,.stripes-game .subtitle-row,.gears-game .subtitle-row,.pipes-game .subtitle-row,.flip-game .subtitle-row{margin-top:4px;margin-bottom:4px}.flipflop-game .container{padding-top:0}.flipflop-game #game-area{padding:8px 12px 12px}}.center-game{--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-text-muted:#b1ada9;--color-border:#e7e5e4;--color-success:#00a300;--center-shape-fill:#1c1917;--radius-lg:16px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--font-sans:var(--font-figtree);background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:12px;display:flex;overflow-x:hidden}.center-game *,.center-game :before,.center-game :after{box-sizing:border-box}.center-game button{all:unset;box-sizing:border-box;cursor:pointer}.center-game main{justify-content:center;width:100%;display:flex}.center-game .container{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:100vw;padding:12px;display:flex}.center-game .center-goal{text-align:center;max-width:340px;color:var(--color-text-muted);margin:0;font-size:.85rem;line-height:1.4}.center-game .center-status-row{justify-content:center;align-items:center;width:100%;display:flex}.center-game .center-counter{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:700}.center-game .center-stage{justify-content:center;width:100%;padding:8px 0;display:flex}.center-game .center-circle{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow-lg);border-radius:50%;flex-shrink:0;position:relative}.center-game .center-circle-dot{background:var(--color-text);border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.center-game .center-tray{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;width:100%;padding:12px;display:flex}.center-game .center-tray-item{cursor:grab;touch-action:none;flex-shrink:0}.center-game .center-tray-item--dragging{visibility:hidden}.center-game .center-overlay{pointer-events:none;z-index:50;position:fixed;inset:0}.center-game .center-loose-shape{pointer-events:auto;cursor:grab;touch-action:none;transition:transform .5s,opacity .5s;position:fixed}.center-game .center-loose-shape--melting{opacity:0;pointer-events:none}.center-game .center-shape-inner{width:100%;height:100%}.center-game .center-shape-fill{fill:var(--center-shape-fill);fill-opacity:.4;stroke:var(--center-shape-fill);stroke-opacity:.55;stroke-width:2px}.center-game .center-feedback{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.center-game .center-feedback .feedback-msg{max-width:340px;font-size:1.05rem}.center-game .center-play-again{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:999px;padding:8px 20px;font-size:.9rem;font-weight:700;transition:all .15s}.center-game .center-play-again:hover{border-color:var(--color-text-muted)}.tetra-game{--tetra-bg:#fff;--tetra-surface:#fff;--tetra-text:#20231f;--tetra-muted:#77736f;--tetra-border:#dedbd5;--tetra-gridline:#d6d3d1;--tetra-board-surface:#fff;--tetra-board-line:#e7e5e4;--tetra-blue:#075bb8;--tetra-red:#c5253b;--tetra-win:#ffd43b;--color-surface:var(--tetra-surface);--color-text:var(--tetra-text);--color-text-muted:var(--tetra-muted);--color-border:var(--tetra-border);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-lg:0 10px 24px #0000002e;background:var(--tetra-bg);min-height:100%;color:var(--tetra-text);font-family:var(--font-figtree);-webkit-font-smoothing:antialiased;justify-content:center;display:flex}.tetra-game *,.tetra-game :before,.tetra-game :after{box-sizing:border-box}.tetra-container{flex-direction:column;align-items:center;gap:12px;width:100%;padding:18px 16px 28px;display:flex}.tetra-score-pill{border:1px solid var(--tetra-border);background:var(--tetra-surface);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:7px 16px;display:inline-flex;box-shadow:0 1px 3px #00000012}.tetra-score-group--player .counter-value{color:var(--tetra-blue)}.tetra-score-group--computer .counter-value{color:var(--tetra-red)}.tetra-top-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.tetra-mode-toggle{background-color:#f5f0ed;border:1px solid #ddd;border-radius:999px;gap:2px;padding:3px;display:flex}.tetra-mode-toggle-button{appearance:none;color:#777;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:600;transition:background-color .15s,color .15s}.tetra-mode-toggle-button--active{color:#fff;background-color:#1e90ff}.tetra-mode-toggle-button:focus-visible{outline:3px solid var(--tetra-win);outline-offset:2px}.tetra-status{min-height:24px;color:var(--tetra-text);text-align:center;margin:0;font-size:1rem;font-weight:800}.tetra-status--player{color:var(--tetra-blue)}.tetra-status--computer{color:var(--tetra-red)}.tetra-status--draw{color:var(--tetra-muted)}.tetra-claim-picker{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;min-height:36px;display:flex}.tetra-claim-option{appearance:none;border:2px solid var(--tetra-border);background:var(--tetra-surface);color:var(--tetra-text);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:800;transition:border-color .12s,background .12s,color .12s,transform .12s}.tetra-claim-option:hover,.tetra-claim-option--active{border-color:var(--tetra-blue);background:var(--tetra-blue);color:#fff}.tetra-claim-option:active{transform:scale(.97)}.tetra-claim-option:focus-visible{outline:3px solid var(--tetra-win);outline-offset:2px}.tetra-board{aspect-ratio:1;background:var(--tetra-board-surface);isolation:isolate;border:5px solid #111;border-radius:23px;grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,1fr);width:min(92vw,560px);transition:background-color .22s;display:grid;position:relative;overflow:hidden;box-shadow:0 1px 2px #1c191712,0 12px 28px -10px #1c191738}.tetra-board--complete{background:#bbb}.tetra-cell{appearance:none;width:100%;min-width:0;height:100%;min-height:0;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;border-radius:0;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.tetra-cell:not(:nth-child(8n)){border-right:1px solid var(--tetra-board-line)}.tetra-cell:nth-child(-n+56){border-bottom:1px solid var(--tetra-board-line)}.tetra-cell[aria-disabled=true]{cursor:default}.tetra-cell--last-computer{background:#ffffe0}.tetra-board:not(.tetra-board--waiting) .tetra-cell[aria-disabled=false]:hover:before{content:"";aspect-ratio:1;background:var(--tetra-blue);border-radius:50%;width:28%}@supports (color:color-mix(in lab, red, red)){.tetra-board:not(.tetra-board--waiting) .tetra-cell[aria-disabled=false]:hover:before{background:color-mix(in srgb, var(--tetra-blue) 22%, transparent)}}.tetra-cell:focus-visible{z-index:5;outline:3px solid var(--tetra-win);outline-offset:-3px}.tetra-piece{z-index:4;aspect-ratio:1;border-radius:50%;width:62%;animation:.18s cubic-bezier(.2,.9,.3,1.3) both tetra-mark-in;position:relative;box-shadow:0 1px 3px #0003}.tetra-piece--blue{background:var(--tetra-blue)}.tetra-piece--red{background:var(--tetra-red)}.tetra-piece--claimed{box-shadow:0 1px 3px #0003}.tetra-claim-lines{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tetra-claim-line,.tetra-claim-glow{fill:none;stroke-linecap:round;stroke-linejoin:round}.tetra-claim-line{stroke-width:.3px}.tetra-claim-glow{stroke-width:.52px;opacity:.18}.tetra-claim-line--player{stroke:var(--tetra-blue)}.tetra-claim-line--computer{stroke:var(--tetra-red)}.tetra-claim-choice-line{fill:none;stroke:var(--tetra-blue);stroke-width:.3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.18 .12;animation:.7s linear infinite tetra-claim-choice}.tetra-cell--candidate:after{content:"";z-index:2;border:3px solid var(--tetra-blue);position:absolute;inset:10%}@supports (color:color-mix(in lab, red, red)){.tetra-cell--candidate:after{border:3px solid color-mix(in srgb, var(--tetra-blue) 75%, white)}}.tetra-cell--candidate:after{pointer-events:none;border-radius:9px}.tetra-cell--winning:after{content:"";z-index:2;border:3px solid var(--tetra-win);box-shadow:0 0 12px var(--tetra-win);border-radius:9px;position:absolute;inset:8%}@supports (color:color-mix(in lab, red, red)){.tetra-cell--winning:after{box-shadow:0 0 12px color-mix(in srgb, var(--tetra-win) 70%, transparent)}}.tetra-cell--winning:after{pointer-events:none;animation:.85s ease-in-out infinite alternate tetra-cell-win}.tetra-round-actions{justify-content:center;align-items:center;min-height:38px;display:flex}.tetra-play-again{appearance:none;border:1px solid var(--tetra-border);background:var(--tetra-surface);color:var(--tetra-text);font:inherit;cursor:pointer;border-radius:999px;padding:8px 20px;font-size:.9rem;font-weight:800;transition:transform .12s,border-color .12s;box-shadow:0 1px 2px #0000000d}.tetra-play-again:hover{border-color:var(--tetra-muted)}.tetra-play-again:active{transform:scale(.97)}.tetra-play-again:focus-visible{outline:3px solid var(--tetra-win);outline-offset:2px}.tetra-help-stack{align-items:center}.tetra-example-row{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:16px;width:100%;display:flex}.tetra-example-card{flex-direction:column;align-items:center;gap:6px;width:128px;display:flex}.tetra-example-stage{place-items:center;height:64px;display:grid;position:relative}.tetra-example-value{z-index:5;background:var(--tetra-win);min-width:22px;height:22px;color:var(--tetra-text);border-radius:999px;place-items:center;padding:0 5px;font-size:.7rem;font-weight:800;display:grid;position:absolute;top:-4px;right:-4px;box-shadow:0 1px 3px #00000040}.tetra-example-label{color:var(--tetra-text);font-size:.78rem}.tetra-example-row :is(.tetra-example--l,.tetra-example--z){width:96px}.tetra-example-row .tetra-example--line{width:128px}.tetra-example-row .tetra-example--square{width:64px}.tetra-example-row .tetra-example--t{width:96px}.tetra-example{aspect-ratio:3/2;background:#fff;border:2px solid #d6d3d1;border-radius:12px;flex-shrink:0;grid-template-columns:repeat(3,1fr);width:180px;display:grid;position:relative;overflow:hidden}.tetra-example-cell{background:#fff;place-items:center;display:grid;position:relative}.tetra-example-cell:not(:nth-child(3n)){border-right:1px solid #d6d3d1}.tetra-example-cell:nth-child(-n+3){border-bottom:1px solid #d6d3d1}.tetra-example--line .tetra-example-cell{border-bottom:0;border-right:1px solid #d6d3d1}.tetra-example--line .tetra-example-cell:last-child{border-right:0}.tetra-example--square .tetra-example-cell{border-bottom:0;border-right:0}.tetra-example--square .tetra-example-cell:nth-child(odd){border-right:1px solid #d6d3d1}.tetra-example--square .tetra-example-cell:nth-child(-n+2){border-bottom:1px solid #d6d3d1}.tetra-example-piece{z-index:4;aspect-ratio:1;background:var(--tetra-blue);border-radius:50%;width:62%;position:relative;box-shadow:0 1px 3px #00000040}.tetra-example svg{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tetra-example polyline{fill:none;stroke:var(--tetra-blue);stroke-width:.3px;stroke-linecap:round;stroke-linejoin:round}@keyframes tetra-mark-in{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}@keyframes tetra-claim-choice{to{stroke-dashoffset:-.3px}}@keyframes tetra-cell-win{0%{opacity:.55;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media (min-width:700px){.tetra-board{width:min(92vw,560px,max(320px,100dvh - 280px))}}@media (max-width:520px){.tetra-container{gap:9px;padding:12px 10px 22px}.tetra-board{width:min(94vw,560px)}}@media (prefers-reduced-motion:reduce){.tetra-piece,.tetra-cell--winning:after{animation-duration:1ms;animation-iteration-count:1}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
