/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--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-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--radius-2xl:1rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.z-10{z-index:10}.z-20{z-index:20}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-\[9\/16\]{aspect-ratio:9/16}.aspect-\[19\.5\/9\]{aspect-ratio:19.5/9}.h-3{height:calc(var(--spacing) * 3)}.h-12{height:calc(var(--spacing) * 12)}.h-64{height:calc(var(--spacing) * 64)}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-64{width:calc(var(--spacing) * 64)}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[260px\]{max-width:260px}.max-w-\[560px\]{max-width:560px}.max-w-xl{max-width:var(--container-xl)}.flex-1{flex:1}.grow{flex-grow:1}.-rotate-3{rotate:-3deg}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:2147483647px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.bg-white{background-color:var(--color-white)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-10{padding:calc(var(--spacing) * 10)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-\[0\.95\]{--tw-leading:.95;line-height:.95}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.tracking-\[0\.35em\]{--tw-tracking:.35em;letter-spacing:.35em}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-all{word-break:break-all}.text-white{color:var(--color-white)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}@media (hover:hover){.hover\:text-white:hover{color:var(--color-white)}}@media (width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=48rem){.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}@media (width>=64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[1\.1fr_1fr\]{grid-template-columns:1.1fr 1fr}.lg\:grid-cols-\[340px_1fr\]{grid-template-columns:340px 1fr}}@media (width>=80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--accent:#ff4d6d;--accent-rgb:255 77 109;--bg:#07060b;--glass:#ffffff0f;--glass-hi:#ffffff24;--rim:#ffffff1a;--text:#f4f1ff;--muted:#f4f1ff8c;font-family:Chakra Petch,ui-sans-serif,system-ui,sans-serif}html,body{background:var(--bg);height:100%;color:var(--text);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;overflow:hidden}.backdrop{background:radial-gradient(60% 80% at 15% 85%, rgb(var(--accent-rgb) / .22), transparent 70%), radial-gradient(50% 70% at 90% 20%, rgb(var(--accent-rgb) / .12), transparent 70%), repeating-linear-gradient(0deg, #ffffff06 0 1px, transparent 1px 28px), repeating-linear-gradient(90deg, #ffffff06 0 1px, transparent 1px 28px), var(--bg);animation:14s ease-in-out infinite alternate aurora;position:fixed;inset:0}@keyframes aurora{to{filter:hue-rotate(12deg);background-position:0 0,0 0,0 14px,14px 0,0 0}}.hud{top:max(8px, env(safe-area-inset-top));z-index:20;pointer-events:none;justify-content:center;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.chip{border:1px solid var(--rim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.04em;white-space:nowrap;background:#0a081299;border-radius:999px;align-items:center;gap:6px;height:28px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.chip .dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 10px var(--accent);border-radius:50%}.chip.rtt.good{color:#6ef0a0}.chip.rtt.p2p{border-color:#6ef0a080}.chip.rtt.ok{color:#ffd166}.chip.rtt.bad{color:#ff6b6b}.hud .spacer{width:4px}.hud button{pointer-events:auto;border:1px solid var(--rim);min-width:28px;height:28px;color:var(--text);font:inherit;background:#0a081299;border-radius:999px;padding:0 10px;font-size:12px}.message{top:max(42px, calc(env(safe-area-inset-top) + 34px));text-align:center;color:var(--muted);z-index:15;pointer-events:none;font-size:13px;position:fixed;left:0;right:0}.surface{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;inset:0}.ctl{position:absolute;transform:translate(-50%,-50%)}.btn{--c:var(--accent);background:radial-gradient(circle at 35% 30%, #ffffff38, transparent 45%), radial-gradient(circle at 50% 60%, #ffffff0d, #00000059), var(--c);border-radius:50%;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.btn{background:radial-gradient(circle at 35% 30%, #ffffff38, transparent 45%), radial-gradient(circle at 50% 60%, #ffffff0d, #00000059), color-mix(in oklab, var(--c) 18%, #14111f)}}.btn{border:2px solid var(--c)}@supports (color:color-mix(in lab, red, red)){.btn{border:2px solid color-mix(in oklab, var(--c) 55%, transparent)}}.btn{transition:transform 60ms ease-out,box-shadow .12s ease-out,filter 80ms;box-shadow:0 10px 24px #0000008c,inset 0 -6px 12px #00000059,inset 0 2px #ffffff1f,0 0 0 6px #ffffff05}.btn .lbl{font-weight:700;font-size:calc(var(--size) * .3);color:var(--c)}@supports (color:color-mix(in lab, red, red)){.btn .lbl{color:color-mix(in oklab, var(--c) 70%, white)}}.btn .lbl{text-shadow:0 0 12px var(--c);letter-spacing:.02em;text-align:center;line-height:1}.btn .lbl.long{font-size:calc(var(--size) * .17)}.btn.solid{background:radial-gradient(circle at 35% 28%, #ffffff73, transparent 42%), radial-gradient(circle at 50% 70%, #0000, #00000059), var(--c);border-color:var(--c)}@supports (color:color-mix(in lab, red, red)){.btn.solid{border-color:color-mix(in oklab, var(--c) 60%, white)}}.btn.solid .lbl{color:#fff;text-shadow:0 2px 6px #0006}.btn.down{filter:brightness(1.35)saturate(1.2);box-shadow:0 4px 10px #00000080, 0 0 40px var(--c), inset 0 4px 12px #00000059;transform:translate(-50%,-50%)scale(.92)translateY(2px)}@supports (color:color-mix(in lab, red, red)){.btn.down{box-shadow:0 4px 10px #00000080, 0 0 40px color-mix(in oklab, var(--c) 70%, transparent), inset 0 4px 12px #00000059}}.ripple{border-radius:inherit;border:2px solid var(--c);opacity:0;pointer-events:none;position:absolute;inset:-2px}.btn.down .ripple{animation:.38s ease-out ripple}@keyframes ripple{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}.pill{background:var(--glass);border:1px solid var(--rim);letter-spacing:.14em;color:var(--muted);border-radius:999px;place-items:center;font-size:12px;font-weight:700;transition:transform 60ms,background 80ms,color 80ms;display:grid}.pill.down{background:var(--accent);color:#fff;transform:translate(-50%,-50%)scale(.94)}.shoulder{background:linear-gradient(180deg, var(--glass-hi), var(--glass));border:1px solid var(--rim);color:var(--muted);border-radius:18px 18px 10px 10px;place-items:center;font-size:18px;font-weight:700;transition:transform 60ms,background 80ms;display:grid;box-shadow:0 8px 20px #00000073}.shoulder.down{background:var(--accent);color:#fff;box-shadow:0 0 30px rgb(var(--accent-rgb) / .6);transform:translate(-50%,-50%)translateY(2px)scale(.96)}.dpad{pointer-events:none}.dpad .arm{border:1px solid var(--rim);background:linear-gradient(#ffffff1f,#ffffff0a);transition:background 60ms,box-shadow .1s,transform 60ms;position:absolute;box-shadow:0 10px 24px #00000080,inset 0 1px #ffffff1a}.dpad .up,.dpad .down{width:33.4%;height:36%;left:33.3%}.dpad .left,.dpad .right{width:36%;height:33.4%;top:33.3%}.dpad .up{border-radius:14px 14px 4px 4px;top:0}.dpad .down{border-radius:4px 4px 14px 14px;bottom:0}.dpad .left{border-radius:14px 4px 4px 14px;left:0}.dpad .right{border-radius:4px 14px 14px 4px;right:0}.dpad .hub{background:#ffffff12;width:33.4%;height:33.4%;position:absolute;top:33.3%;left:33.3%}.dpad .hub:after{content:"";background:radial-gradient(circle, rgb(var(--accent-rgb) / .5), transparent 70%);border-radius:50%;position:absolute;inset:28%}.dpad .arm:after{content:"";opacity:.55;border:9px solid #0000;width:0;height:0;margin:auto;position:absolute;inset:0}.dpad .up:after{border-top-width:0;border-bottom-color:#fff}.dpad .down:after{border-top-color:#fff;border-bottom-width:0}.dpad .left:after{border-left-width:0;border-right-color:#fff}.dpad .right:after{border-left-color:#fff;border-right-width:0}.dpad .arm.on{background:linear-gradient(180deg, var(--accent), var(--accent))}@supports (color:color-mix(in lab, red, red)){.dpad .arm.on{background:linear-gradient(180deg, color-mix(in oklab, var(--accent) 90%, white), var(--accent))}}.dpad .arm.on{box-shadow:0 0 34px rgb(var(--accent-rgb) / .7), inset 0 2px 0 #ffffff4d}.dpad .up.on{transform:translateY(2px)}.dpad .down.on{transform:translateY(-2px)}.dpad .left.on{transform:translate(2px)}.dpad .right.on{transform:translate(-2px)}.dpad .arm.on:after{opacity:1}.stick-zone{position:absolute}.stick{border:1px solid var(--rim);pointer-events:none;background:radial-gradient(circle,#0000 54%,#ffffff0f 55%,#0000 56%),radial-gradient(circle,#0000 34%,#ffffff0d 35%,#0000 36%),radial-gradient(circle at 50% 40%,#ffffff14,#ffffff05);border-radius:50%;transition:opacity .14s;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 6px 24px #00000080,0 10px 30px #0006}.stick.idle{opacity:.45}.stick .knob{background:radial-gradient(circle at 38% 30%, #ffffff8c, transparent 40%), radial-gradient(circle at 50% 75%, #00000040, transparent 60%), var(--accent);width:44%;height:44%;box-shadow:0 8px 20px #0000008c, 0 0 30px rgb(var(--accent-rgb) / .45);will-change:transform;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stick .dir{background:conic-gradient(from 0deg, rgb(var(--accent-rgb) / .45) 0 var(--arc,0deg), transparent var(--arc,0deg));transform:rotate(var(--rot,0deg));opacity:var(--mag,0);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 60%,#000 62%);mask:radial-gradient(circle,#0000 60%,#000 62%)}.hint{letter-spacing:.2em;color:var(--muted);pointer-events:none;font-size:12px;position:absolute;transform:translate(-50%,-50%)}.tile{--c:var(--accent);background:radial-gradient(120% 90% at 30% 10%, #ffffff4d, transparent 50%), var(--c);color:#fff;text-shadow:0 3px 10px #00000059;border-radius:24px;place-items:center;font-size:54px;font-weight:700;transition:transform 60ms,filter 80ms,box-shadow .1s;display:grid;box-shadow:0 14px 30px #00000080,inset 0 -8px #0003}.tile.down{filter:brightness(1.25);box-shadow:0 4px 10px #00000080, 0 0 50px var(--c), inset 0 -2px 0 #0003;transform:translate(-50%,-50%)scale(.95)translateY(4px)}.buzzer{background:radial-gradient(circle at 40% 30%, #ffffff8c, transparent 35%), radial-gradient(circle at 50% 80%, #00000059, transparent 60%), var(--accent);border:10px solid var(--accent);border-radius:50%;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.buzzer{border:10px solid color-mix(in oklab, var(--accent) 40%, #111)}}.buzzer{letter-spacing:.1em;color:#fff;text-shadow:0 3px 12px #0006;font-size:44px;font-weight:700;transition:transform 70ms,box-shadow .12s,filter 80ms;box-shadow:0 30px 60px #0009,0 0 0 18px #ffffff0a,inset 0 -18px 30px #0000004d}.buzzer.down{filter:brightness(1.3);box-shadow:0 8px 20px #0009, 0 0 120px var(--accent), 0 0 0 18px #ffffff0f, inset 0 10px 30px #0000004d;transform:translate(-50%,-50%)scale(.93)translateY(8px)}.track{border:1px solid var(--rim);background:linear-gradient(#ffffff0a,#ffffff1a);border-radius:999px;box-shadow:inset 0 8px 20px #00000080}.track .thumb{background:radial-gradient(circle at 40% 25%, #ffffff80, transparent 45%), var(--accent);width:22%;height:130%;box-shadow:0 10px 24px #00000080, 0 0 30px rgb(var(--accent-rgb) / .5);will-change:left;border-radius:18px;position:absolute;top:50%;transform:translate(-50%,-50%)}.pad-area{border:1px solid var(--rim);background:repeating-linear-gradient(0deg,#ffffff0a 0 1px,#0000 1px 22px),repeating-linear-gradient(90deg,#ffffff0a 0 1px,#0000 1px 22px),#ffffff08;border-radius:28px;overflow:hidden;box-shadow:inset 0 10px 30px #00000080}.pad-area .spark{background:radial-gradient(circle, rgb(var(--accent-rgb) / .8), transparent 70%);pointer-events:none;opacity:0;border-radius:50%;width:54px;height:54px;margin:-27px 0 0 -27px;transition:opacity .12s;position:absolute}.wheel{box-shadow:0 0 0 2px var(--rim), inset 0 0 30px #00000080, 0 0 40px rgb(var(--accent-rgb) / .25);will-change:transform;pointer-events:none;border:14px solid #ffffff1f;border-radius:50%}.wheel:before{content:"";background:var(--accent);width:14px;height:22px;box-shadow:0 0 14px var(--accent);border-radius:4px;margin-left:-7px;position:absolute;top:-14px;left:50%}.overlay{z-index:30;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07060bd1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.overlay h1{letter-spacing:.08em;margin:0 0 6px;font-size:34px}.overlay p{color:var(--muted);margin:4px 0}.overlay .big-btn{font:inherit;letter-spacing:.08em;color:#fff;background:var(--accent);box-shadow:0 10px 30px rgb(var(--accent-rgb) / .45);border:0;border-radius:16px;margin-top:18px;padding:14px 28px;font-size:18px;font-weight:700}.codebox{justify-content:center;gap:8px;margin:18px 0 6px;display:flex}.codebox input{border:1px solid var(--rim);background:var(--glass);width:52px;height:64px;color:var(--text);font:inherit;text-align:center;text-transform:uppercase;caret-color:var(--accent);border-radius:14px;font-size:32px;font-weight:700}.codebox input:focus{outline:2px solid var(--accent)}.phone-rotate{border:3px solid var(--text);border-radius:10px;width:46px;height:80px;margin:0 auto 18px;animation:2.4s ease-in-out infinite rotate}@keyframes rotate{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}.pulse-dot{background:var(--accent);border-radius:50%;width:14px;height:14px;margin:0 auto 14px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.hidden,.preview #fullscreen,.preview #rotate{display:none!important}body.font-sans{font-family:Inter,ui-sans-serif,system-ui,sans-serif}body.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}body.font-pixel{font-family:"Press Start 2P",monospace}body.font-pixel .btn .lbl{font-size:calc(var(--size) * .2)}body.font-pixel .btn .lbl.long{font-size:calc(var(--size) * .11)}body.font-pixel .tile,body.font-pixel .buzzer{font-size:26px}body.font-pixel .pill,body.font-pixel .chip{font-size:9px}body.shape-rounded .btn,body.shape-rounded .buzzer{border-radius:26%}body.shape-square .btn,body.shape-square .buzzer,body.shape-square .tile,body.shape-square .pill,body.shape-square .shoulder,body.shape-square .dpad .arm{border-radius:4px}body.style-neon .btn,body.style-neon .tile,body.style-neon .buzzer{border:3px solid var(--c,var(--accent));box-shadow:0 0 18px var(--c,var(--accent)), inset 0 0 18px rgb(var(--accent-rgb) / .35);background:#0000008c}body.style-neon .btn .lbl,body.style-neon .tile,body.style-neon .buzzer{color:#fff;text-shadow:0 0 10px var(--c,var(--accent)), 0 0 24px var(--c,var(--accent))}body.style-neon .dpad .arm{border:2px solid var(--accent);box-shadow:0 0 14px rgb(var(--accent-rgb) / .6);background:#00000080}body.style-neon .stick{border:2px solid var(--accent);box-shadow:0 0 20px rgb(var(--accent-rgb) / .5), inset 0 0 20px rgb(var(--accent-rgb) / .2)}body.style-neon .backdrop{background:radial-gradient(80% 60% at 50% 120%, rgb(var(--accent-rgb) / .35), transparent 70%), repeating-linear-gradient(0deg, rgb(var(--accent-rgb) / .12) 0 1px, transparent 1px 36px), var(--bg)}body.style-flat .btn,body.style-flat .tile,body.style-flat .buzzer,body.style-flat .dpad .arm,body.style-flat .shoulder,body.style-flat .pill{background:var(--c,var(--accent))}@supports (color:color-mix(in lab, red, red)){body.style-flat .btn,body.style-flat .tile,body.style-flat .buzzer,body.style-flat .dpad .arm,body.style-flat .shoulder,body.style-flat .pill{background:color-mix(in oklab, var(--c,var(--accent)) 85%, black)}}body.style-flat .btn,body.style-flat .tile,body.style-flat .buzzer,body.style-flat .dpad .arm,body.style-flat .shoulder,body.style-flat .pill{border:0;box-shadow:0 4px #00000059}body.style-flat .btn .lbl{color:#fff;text-shadow:none}body.style-flat .dpad .arm{background:#ffffff1f}body.style-flat .dpad .arm.on{background:var(--accent);box-shadow:0 4px #00000059}body.style-flat .stick{box-shadow:none;background:#ffffff14;border:0}body.style-flat .backdrop{background:var(--bg);animation:none}body.style-flat .ripple{display:none}body.style-retro .btn,body.style-retro .tile,body.style-retro .buzzer,body.style-retro .shoulder,body.style-retro .pill,body.style-retro .dpad .arm{background:var(--c,var(--accent));image-rendering:pixelated;border:4px solid #000;border-radius:0;box-shadow:6px 6px #000}body.style-retro .btn .lbl,body.style-retro .tile,body.style-retro .buzzer{color:#fff;text-shadow:3px 3px #000}body.style-retro .btn.down,body.style-retro .tile.down,body.style-retro .buzzer.down,body.style-retro .pill.down,body.style-retro .shoulder.down{filter:brightness(1.2);transform:translate(-50%,-50%)translate(4px,4px);box-shadow:2px 2px #000}body.style-retro .dpad .arm{background:#2b2d42}body.style-retro .dpad .arm.on{background:var(--accent);box-shadow:2px 2px #000}body.style-retro .stick{background:#2b2d42;border:4px solid #000;border-radius:0;box-shadow:6px 6px #000}body.style-retro .stick .knob{background:var(--accent);border:4px solid #000;border-radius:0;box-shadow:4px 4px #000}body.style-retro .ripple{display:none}body.style-retro .chip,body.style-retro .hud button{background:#1a1423;border:3px solid #000;border-radius:0;box-shadow:3px 3px #000}body.style-retro .backdrop{background:repeating-conic-gradient(#ffffff08 0 25%, transparent 0 50%) 0 0 / 32px 32px, var(--bg);animation:none}body.style-candy{--bg:#fff0f6;--text:#4a1e3a;--muted:#4a1e3a99;--rim:#4a1e3a1f}body.style-candy .btn,body.style-candy .tile,body.style-candy .buzzer{background:radial-gradient(circle at 35% 25%, #ffffffd9, transparent 40%), var(--c,var(--accent));box-shadow:0 10px 0 var(--c,var(--accent)), 0 18px 30px #00000026;border:0}@supports (color:color-mix(in lab, red, red)){body.style-candy .btn,body.style-candy .tile,body.style-candy .buzzer{box-shadow:0 10px 0 color-mix(in oklab, var(--c,var(--accent)) 60%, black), 0 18px 30px #00000026}}body.style-candy .btn .lbl{color:#fff;text-shadow:0 2px #0003}body.style-candy .btn.down,body.style-candy .tile.down,body.style-candy .buzzer.down{box-shadow:0 2px 0 var(--c,var(--accent));transform:translate(-50%,-50%)translateY(8px)}@supports (color:color-mix(in lab, red, red)){body.style-candy .btn.down,body.style-candy .tile.down,body.style-candy .buzzer.down{box-shadow:0 2px 0 color-mix(in oklab, var(--c,var(--accent)) 60%, black)}}body.style-candy .dpad .arm{background:#ffd6e8;border:0}body.style-candy .dpad .arm:after{filter:invert()}body.style-candy .stick{background:#ffd6e8;border:0;box-shadow:inset 0 6px 14px #0000001a}body.style-candy .chip,body.style-candy .hud button{color:var(--text);background:#fff}body.style-candy .backdrop{background:radial-gradient(60% 60% at 20% 80%, rgb(var(--accent-rgb) / .25), transparent 70%), var(--bg)}.debug{top:max(44px, calc(env(safe-area-inset-top) + 40px));right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));z-index:40;border:1px solid var(--rim);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);touch-action:pan-y;-webkit-user-select:text;user-select:text;background:#0a0812eb;border-radius:16px;width:min(420px,100vw - 24px);padding:14px 16px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;position:fixed;overflow-y:auto}.debug header{letter-spacing:.12em;justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.debug header button{color:var(--text);background:0 0;border:0;font-size:16px}.debug dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;display:grid}.debug dt{color:var(--muted)}.debug dd{color:var(--text);word-break:break-word;margin:0}.debug p{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.5}.ios-hint{left:50%;bottom:max(10px, env(safe-area-inset-bottom));z-index:35;border:1px solid var(--accent);background:#0a0812eb;border-radius:14px;width:min(520px,100vw - 24px);padding:10px 40px 10px 14px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:13px;line-height:1.4;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000080}.ios-hint .share:before{content:"⬆︎ "}.ios-hint button{color:var(--text);background:0 0;border:0;font-size:16px;position:absolute;top:6px;right:8px}@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-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
