:root{--pink-light: #ffb6c1;--pink-deep: #ff1493;--pink-mid: #ff4da6;--pink-soft: #ffc2dc;--pink-faint: #fff5fb;--magenta-pop: #ff00aa;--violet-light: #e6e6fa;--violet-mid: #b388ff;--violet-deep: #8a2be2;--lemon: #fff700;--brown-warm: #8b4513;--violet: var(--violet-mid);--surface: #ffffff;--surface-tint: #fffafd;--hairline-pink: rgba(255, 45, 155, .14);--hairline-violet: rgba(138, 43, 226, .18);--panel: rgba(255, 255, 255, .97);--panel-dark: linear-gradient(145deg, rgba(200, 140, 170, .94), rgba(168, 110, 145, .96));--text: #4a1538;--text-on-dark: #fff8fc;--muted: rgba(74, 21, 56, .55);--border: rgba(255, 20, 147, .28);--shadow-sm: 0 1px 0 var(--hairline-pink), 0 8px 28px rgba(138, 43, 226, .07);--shadow-card: 0 1px 0 rgba(255, 255, 255, .95) inset, 0 10px 40px rgba(255, 20, 147, .12), 0 2px 10px rgba(255, 0, 170, .06);--shadow: var(--shadow-card);--glow-pink: 0 4px 20px rgba(255, 0, 170, .32);--glass-blur: 18px;--glass-blur-strong: 22px;--glass-border: rgba(255, 255, 255, .62);--glass-border-pink: rgba(255, 160, 210, .42);--glass-highlight: inset 0 1px 0 rgba(255, 255, 255, .78);--chrome-glass-bg: linear-gradient( 165deg, rgba(255, 242, 252, .88) 0%, rgba(255, 228, 244, .78) 42%, rgba(238, 228, 255, .62) 100% );--panel-glass-bg: linear-gradient( 168deg, rgba(255, 254, 255, .78) 0%, rgba(255, 244, 250, .7) 50%, rgba(252, 238, 255, .65) 100% );--dock-width: .65rem;--dock-card-width: 15.25rem;--chrome-top-min: 0px;--runway-safe-top: max(0px, env(safe-area-inset-top, 0px));--chrome-compact-bar-h: 0px;--chrome-compact-inner: 3.22rem;--chrome-cta-dock-block: 2.9rem;--chrome-top-stack-a: max(var(--runway-safe-top), .28rem);--hud-edge-inset-top: calc( var(--chrome-top-stack-a) + var(--chrome-compact-inner) + .3rem + var(--chrome-cta-dock-block) );--chrome-results-banner-extra: 0px;--chrome-bottom: min(28vh, 11.5rem);--nav-bar-bottom-clear: max(3.45rem, calc(3.52rem + env(safe-area-inset-bottom, 0px)) );--chrome-pad: .65rem;--radius-lg: 22px;--radius-md: 16px;--radius-sm: 10px;--radius-pill: 999px;--hot-pink: var(--pink-deep);--text-main: var(--text);--text-muted: var(--muted)}:root:has(#chrome-message-strip:not([hidden])){--chrome-top-stack-a: calc(max(.22rem, env(safe-area-inset-top, 0px)) + .22rem + clamp(2.5rem, 12vmin, 6.75rem)) }:root:has(#chrome-message-strip:not([hidden])) .hud-top-bar{padding-top:.28rem}*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100%;min-height:100dvh;min-height:100svh;width:100%;overflow:hidden;overscroll-behavior:none;font-family:Fredoka,Segoe UI,system-ui,sans-serif;font-weight:500;-webkit-font-smoothing:antialiased;background-color:#fff5f9;background-image:radial-gradient(ellipse 100% 80% at 50% -20%,rgba(255,186,230,.55) 0%,transparent 55%),radial-gradient(ellipse 70% 55% at 100% 15%,rgba(210,190,255,.42) 0%,transparent 50%),radial-gradient(ellipse 65% 50% at 0% 25%,rgba(255,210,195,.45) 0%,transparent 48%),radial-gradient(ellipse 88% 72% at 50% 118%,rgba(255,160,200,.28) 0%,rgba(255,218,230,.22) 42%,transparent 60%);background-repeat:no-repeat;color:var(--text)}#c{--runway-canvas-top: var(--hud-edge-inset-top);position:fixed;display:block;top:var(--runway-canvas-top);left:0;right:0;width:100%;height:calc(100vh - var(--runway-canvas-top));height:calc(100dvh - var(--runway-canvas-top));height:calc(100svh - var(--runway-canvas-top));margin:0;padding:0;border:none;z-index:0;border-radius:0;box-shadow:none;touch-action:none}.runway-css2d-host{position:fixed;top:var(--hud-edge-inset-top);left:0;right:0;width:100%;height:calc(100vh - var(--hud-edge-inset-top));height:calc(100dvh - var(--hud-edge-inset-top));height:calc(100svh - var(--hud-edge-inset-top));pointer-events:none;z-index:1;overflow:visible}.runway-css2d-host *{pointer-events:none!important}.lobby-joystick{position:fixed;z-index:19;left:max(.55rem,env(safe-area-inset-left,0px));bottom:calc(var(--nav-bar-bottom-clear) + .42rem);width:min(32vw,8.5rem);height:min(32vw,8.5rem);min-width:5.75rem;min-height:5.75rem;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:opacity .22s ease,visibility .22s ease}.lobby-joystick--hidden{opacity:0;visibility:hidden;pointer-events:none}.lobby-joystick__base{position:relative;width:100%;height:100%;border-radius:50%;background:#ffffff38;border:2px solid rgba(255,20,147,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 20px #4a15380f;touch-action:none;cursor:grab}.lobby-joystick__base:active{cursor:grabbing}.lobby-joystick__knob{position:absolute;left:50%;top:50%;width:44%;height:44%;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 32% 28%,#ffffff80,#ff69b473 42%,#ff149366);border:1px solid rgba(255,255,255,.38);box-shadow:0 2px 8px #8a2be21f,inset 0 1px #ffffff47;pointer-events:none;will-change:transform}.runway-winner-star-wrap{line-height:0;pointer-events:none}.runway-winner-star{display:inline-block;font-size:clamp(1.35rem,4.5vw,2.1rem);line-height:1;filter:drop-shadow(0 0 .2rem rgba(255,215,0,.95)) drop-shadow(0 .06rem .12rem rgba(255,105,180,.45));animation:runway-winner-star-pulse 1.1s ease-in-out infinite;pointer-events:none}@keyframes runway-winner-star-pulse{0%,to{transform:scale(1) translateY(0);opacity:1}50%{transform:scale(1.12) translateY(-.04em);opacity:.92}}.runway-nameplate{background:#ffffff94;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--text);padding:.2rem .55rem;border-radius:var(--radius-pill);font-family:inherit;font-weight:700;font-size:clamp(.65rem,1.1vw,.78rem);letter-spacing:.04em;border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),0 4px 16px #c86ea024;white-space:nowrap;pointer-events:none;max-width:min(11rem,38vw);box-sizing:border-box;text-align:center;line-height:1.2;overflow:hidden;text-overflow:ellipsis}.ui-root{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10020}.ui-root *{pointer-events:auto}.fatal-load-error{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:max(1.25rem,env(safe-area-inset-top,0px)) 1.25rem max(1.25rem,env(safe-area-inset-bottom,0px));background:var(--surface);color:var(--text);text-align:center;pointer-events:auto;box-sizing:border-box}.fatal-load-error__title{margin:0;font-size:1.15rem;font-weight:800;color:var(--pink-deep)}.fatal-load-error__text{margin:0;font-size:.88rem;line-height:1.45;color:var(--text);max-width:24rem}.fatal-load-error__hint{margin:0;font-size:.72rem;line-height:1.4;color:var(--muted)}.app-boot{pointer-events:none;flex-direction:column}.app-boot__inner{display:flex;flex-direction:column;align-items:center;gap:1.1rem;max-width:min(92vw,22rem)}.app-boot__logo-stage{position:relative;width:min(78vw,300px);max-width:100%}.app-boot__logo-stage img{display:block;width:100%;height:auto}.app-boot__logo--ghost{opacity:.25;filter:grayscale(.25) contrast(.92) drop-shadow(0 2px 8px rgba(0,0,0,.3))}.app-boot__logo-fill{position:absolute;top:0;right:0;bottom:0;left:0;clip-path:inset(0 0 100% 0);animation:app-boot-logo-fill 2.35s ease-in-out infinite}.app-boot__logo-fill img{width:100%;height:auto;filter:drop-shadow(0 .2rem 1rem rgba(255,20,147,.22))}.app-boot__hint{margin:0;font-family:Fredoka,Segoe UI,system-ui,sans-serif;font-size:clamp(.78rem,2.4vw,.88rem);font-weight:600;color:#ffffffd9;letter-spacing:.06em;text-align:center;text-shadow:0 1px 6px rgba(0,0,0,.4)}.app-boot--leave{animation:app-boot-fade-out .48s ease forwards}@keyframes app-boot-logo-fill{0%{clip-path:inset(0 0 100% 0)}50%{clip-path:inset(0 0 0 0)}to{clip-path:inset(0 0 100% 0)}}@keyframes app-boot-fade-out{to{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.app-boot__logo-fill{animation:none;clip-path:inset(0 0 0 0);opacity:.92}.app-boot--leave{animation:none;opacity:0;visibility:hidden}}.chrome-top{position:static;left:auto;right:auto;min-height:0;padding:0;margin:0;display:block;z-index:auto;pointer-events:none;background:transparent;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.chrome-top__hud-stack{position:fixed;top:0;left:0;right:0;z-index:36;display:flex;flex-direction:column;align-items:stretch;pointer-events:none}.chrome-top__hud-stack>*{pointer-events:auto}.chrome-top__message-strip{flex:0 0 auto;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-left:max(.5rem,env(safe-area-inset-left,0px));padding-right:max(.5rem,env(safe-area-inset-right,0px));padding-bottom:.22rem;padding-top:max(.22rem,env(safe-area-inset-top,0px));box-sizing:border-box;pointer-events:none;background:linear-gradient(180deg,#fffcfef7,#fff6fae0 55%,#fff0f88c);border-bottom:1px solid rgba(255,180,210,.35);box-shadow:0 1px #ffffffa6 inset}.chrome-top__message-strip[hidden]{display:none!important}.hud-top-bar{position:relative;flex:0 0 auto;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:clamp(.35rem,1.4vw,1rem);min-height:var(--chrome-compact-inner);padding-top:max(.28rem,env(safe-area-inset-top,0px));padding-bottom:.32rem;padding-left:max(.5rem,env(safe-area-inset-left,0px));padding-right:max(.5rem,env(safe-area-inset-right,0px));box-sizing:border-box;background:var(--chrome-glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:none;box-shadow:var(--glass-highlight),0 8px 28px #c864aa24;pointer-events:auto;width:100%}.chrome-top__cta-dock{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:100%;padding:.28rem max(.55rem,env(safe-area-inset-left,0px)) .38rem max(.55rem,env(safe-area-inset-right,0px));box-sizing:border-box;background:#fffcfeeb;border-bottom:1px solid var(--glass-border-pink);box-shadow:0 1px #ffffff8c inset,0 6px 18px #c864aa14;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.hud-top-bar>*{pointer-events:auto}.hud-top-bar__identity{grid-column:1;justify-self:start;min-width:0}.hud-top-float{width:100%;max-width:min(28rem,calc(100vw - 1rem));display:flex;flex-direction:column;align-items:center;gap:.22rem;pointer-events:none}.hud-top-float>*{pointer-events:none}.hud-top-bar>.chrome-top__currencies{grid-column:2;justify-self:end}.chrome-top__start-btn{max-width:min(13.5rem,58vw);width:auto;min-width:min(8.5rem,42vw)}@media(min-width:768px){:root{--chrome-compact-inner: 3.95rem;--chrome-cta-dock-block: 2.42rem;--hud-edge-inset-top: calc( var(--chrome-top-stack-a) + var(--chrome-compact-inner) + .32rem + var(--chrome-cta-dock-block) )}.chrome-top__cta-dock{padding-top:.22rem;padding-bottom:.32rem;background:#fffeffc7;box-shadow:0 1px #ffffff80 inset}.hud-top-float{max-width:min(22rem,42vw)}.chrome-top__start-btn{max-width:min(13.5rem,34vw);min-width:8.5rem}}@media(max-width:767px){.chrome-top__currencies{padding:.2rem .3rem;gap:.26rem .38rem}.player-identity__avatar{width:1.2rem;height:1.2rem}.player-identity__name{font-size:.68rem}.player-identity__level{font-size:.72rem}.player-identity__bar{height:.38rem}}.chrome-top__shell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(.45rem,1.6vw,1rem);width:100%;min-width:0}.chrome-top__identity{justify-self:start;min-width:0}.chrome-top__phase-slot{justify-self:center;display:flex;align-items:center;justify-content:center;min-width:0;max-width:min(36rem,100%);position:relative;z-index:12}.chrome-top__start-btn{width:100%;max-width:min(14rem,88vw);min-height:2.35rem;letter-spacing:.08em;touch-action:manipulation;position:relative;z-index:2}.chrome-top__phase-slot .flow-row--pills{width:100%;justify-content:center}.chrome-top__currencies{justify-self:end;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.38rem .55rem;min-width:0;padding:.28rem .42rem;border-radius:var(--radius-lg);background:#ffffff6b;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.55);box-shadow:var(--glass-highlight),0 6px 22px #aa5f9624}.player-identity{display:flex;align-items:center;gap:.45rem;min-width:0}.player-identity__avatar{flex-shrink:0;width:1.32rem;height:1.32rem;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px #ffffffd9,0 6px 18px #8a2be238}.player-identity__avatar-canvas{display:block;width:100%;height:100%;object-fit:cover}.player-identity__meta{display:flex;flex-direction:column;gap:.12rem;min-width:0;width:auto;max-width:min(10rem,40vw)}.player-identity__level-row{display:flex;align-items:center;gap:.2rem;line-height:1;min-width:0}.player-identity__name{flex:1 1 auto;min-width:0;font-size:.72rem;font-weight:800;color:var(--violet-deep);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-identity__sep{flex-shrink:0;font-size:.72rem;font-weight:800;color:#4a15568c}.player-identity__level{flex-shrink:0;font-size:.78rem;font-weight:800;color:var(--violet-deep);letter-spacing:.02em}.player-identity__star{flex-shrink:0;font-size:.62rem;line-height:1;filter:drop-shadow(0 1px 0 rgba(255,255,255,.9))}.player-identity__bar{height:.42rem;border-radius:var(--radius-pill);background:#ffe6f5f2;border:1px solid rgba(255,160,210,.35);overflow:hidden;box-shadow:inset 0 1px 2px #4a153814}.player-identity__bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet-mid) 0%,var(--violet-deep) 100%);box-shadow:0 0 12px #8a2be259;transition:width .35s ease}.hud-pill.stars-hud{display:flex;align-items:center;gap:.28rem;padding:.16rem .42rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,#ffc88c38,#ffffff80);border:1px solid rgba(255,160,80,.38);box-shadow:var(--glass-highlight),0 2px 10px #ff8c3c1f;font-size:.72rem;font-weight:800;color:#c65a12;font-variant-numeric:tabular-nums}.stars-hud__icon{display:flex;align-items:center;justify-content:center;line-height:0}.stars-hud__icon svg{display:block}html.slay-rhythm-focus .hud-top-bar__identity{opacity:.16;pointer-events:none;transition:opacity .25s ease}html.slay-rhythm-focus .chrome-top__cta-dock .chrome-top__phase-slot{opacity:.22;pointer-events:none;transition:opacity .25s ease}html.slay-rhythm-focus .hud-top-bar .chrome-top__currencies .coin-hud,html.slay-rhythm-focus .hud-top-bar .chrome-top__currencies .stars-hud{opacity:.2;pointer-events:none;transition:opacity .25s ease}html.slay-rhythm-focus .hud-top-float .timer-block{opacity:.95}html.slay-rhythm-focus .runway-rhythm-hud__meta-bar{top:calc(var(--hud-edge-inset-top) + .12rem)}html.slay-rhythm-focus .runway-rhythm-hud__legend-btn{top:calc(var(--hud-edge-inset-top) + .08rem)}html.slay-rhythm-focus .runway-rhythm-hud__runway-score-bar{top:calc(var(--hud-edge-inset-top) + 1.02rem)}html.slay-rhythm-focus .runway-rhythm-hud__top{top:calc(var(--hud-edge-inset-top) + 3.35rem)}html.slay-rhythm-focus .runway-rhythm-hud__right-panel .runway-rhythm-hud__score{font-size:clamp(1.25rem,5.2vw,1.85rem)}html.slay-rhythm-focus .runway-rhythm-hud__combo-big{font-size:clamp(1.55rem,6.5vw,2.45rem)}.brand-lockup{display:flex;align-items:center;max-width:min(22rem,40vw);min-width:0}.brand-logo-plate{display:flex;align-items:center;justify-content:flex-start;background:#fff6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-md);padding:.22rem .5rem;min-height:0;max-height:100%;border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),0 6px 22px #aa5f961f}.brand-logo{display:block;width:auto;max-width:100%;height:auto;max-height:2.35rem;object-fit:contain;object-position:left center}.flow-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.25rem .35rem;margin-bottom:0;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.flow-row[hidden],#flow-row[hidden],#btn-start[hidden],.theme-banner[hidden],#theme-banner[hidden],.timer-block[hidden],#timer-hud-block[hidden],#chrome-message-strip[hidden]{display:none!important}.flow-step{padding:.22rem .48rem;border-radius:999px;background:#ffffff7a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.55);box-shadow:var(--glass-highlight),0 2px 10px #c86ea01a;transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}.flow-step.is-active{color:#fff;background:linear-gradient(180deg,#ffc8dd 0%,var(--pink-deep) 48%,var(--magenta-pop) 100%);border-color:#ffffffbf;box-shadow:0 0 0 2px #ffffff8c,0 6px 22px #ff3ca073,0 2px #ffc8e659 inset,inset 0 -2px 12px #c8007826;transform:scale(1.04)}.flow-step.is-done{color:var(--pink-deep);background:#ffd6e8a6;border-color:#ff8cc873}.flow-row--pills{flex-wrap:nowrap;gap:.2rem .32rem}@media(max-width:380px){.flow-row--pills{flex-wrap:wrap}}.theme-banner{font-size:clamp(.72rem,1.1vw + .65rem,.84rem);line-height:1.35;color:var(--text);min-height:1.85rem;max-height:3.1rem;overflow:hidden;display:flex;align-items:center;justify-content:center;text-wrap:balance;width:100%;padding:.35rem .55rem;box-sizing:border-box;text-shadow:0 1px 0 rgba(255,255,255,.95),0 2px 12px rgba(255,180,220,.35)}.hud-top-float>.theme-banner{text-align:center}.flow-sep{color:#ff69b48c;font-weight:500}.hud-top-float>.theme-banner:not([hidden]){background:#fffafceb;border:1px solid rgba(255,180,210,.42);border-radius:var(--radius-md);box-shadow:var(--glass-highlight),0 8px 28px #aa5f962e;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.theme-banner.theme-banner--results{max-height:none;overflow:visible}.theme-banner strong{color:var(--pink-deep)}.connection-toast{position:fixed;bottom:max(1rem,env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:10120;max-width:min(22rem,calc(100vw - 2rem));padding:.65rem 1rem;font-size:.85rem;font-weight:600;color:#4a2040;text-align:center;background:#fffafdf5;border:1px solid rgba(255,120,180,.45);border-radius:var(--radius-pill);box-shadow:0 6px 28px #78286433;pointer-events:none}.timer-block{display:flex;align-items:baseline;justify-content:center;gap:.65rem;margin-top:.1rem}.timer-block--float{margin-top:0;justify-content:center;padding:.12rem .55rem .18rem;border-radius:var(--radius-pill);background:#fffcfee6;border:1px solid rgba(200,160,230,.35);box-shadow:var(--glass-highlight),0 6px 20px #8c50a01f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.timer-label{font-size:1.65rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.04em;background:linear-gradient(180deg,#f0e8ff 0%,#c9a8ff 35%,var(--violet-deep) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 1px 0 rgba(255,255,255,.95)) drop-shadow(0 3px 14px rgba(160,100,220,.4))}.timer-label--sync{background:none;-webkit-background-clip:unset;background-clip:unset;color:var(--violet-deep);filter:none;animation:timer-sync-pulse 1.1s ease-in-out infinite}@keyframes timer-sync-pulse{0%,to{opacity:1}50%{opacity:.42}}.phase-chip{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--violet-deep);padding:.24rem .58rem;border-radius:var(--radius-pill);background:#ffffff85;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.58);box-shadow:var(--glass-highlight),0 3px 12px #9664c81f}.hud-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.chrome-top__phase-slot .chrome-top__start-btn{touch-action:manipulation;position:relative;z-index:1}.btn-pink,.btn-soft{cursor:pointer;border-radius:999px;font-size:.78rem;font-weight:700;padding:.42rem .9rem;border:2px solid transparent;transition:transform .15s,box-shadow .15s,opacity .15s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn-pink{color:#fff;background:linear-gradient(180deg,#ffc4d8 0%,var(--pink-deep) 38%,#e01090 100%);box-shadow:0 0 0 2px #ffffffe0,0 4px #d2469638,0 10px 28px #ff32967a,inset 0 2px #ffffff8c,inset 0 -3px 14px #ff00821f;border:2px solid rgba(255,255,255,.45);text-shadow:0 1px 2px rgba(160,30,100,.25)}.btn-pink:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 0 2px #fffffff2,0 6px #d246962e,0 14px 36px #ff3ca08c,inset 0 2px #fff9,inset 0 -3px 14px #ff008224}.btn-soft{color:var(--pink-deep);background:#ffffff85;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.72);box-shadow:var(--glass-highlight),0 4px 16px #be6ea024}.btn-soft:hover:not(:disabled){background:#ffffffb8;border-color:#ffc8e6f2;box-shadow:var(--glass-highlight),0 6px 22px #c878aa33}.chrome-top__phase-slot .btn-pink,.hud-top-float .btn-soft{min-height:2.05rem;padding:.34rem .74rem;display:inline-flex;align-items:center;justify-content:center;gap:.28rem;border-radius:var(--radius-pill);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-width:1px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chrome-top__phase-slot .btn-pink{color:#fff;background:linear-gradient(165deg,#ff59adeb,#df2890f2);border-color:#ffd6eceb;box-shadow:var(--glass-highlight),0 4px 14px #df289057,inset 0 1px #ffffff6b}.hud-top-float .btn-soft{color:var(--pink-deep);background:#ffffff94;border-color:#ffd6ecdb;box-shadow:var(--glass-highlight),0 4px 14px #b464a02e}.chrome-top__phase-slot .btn-pink:hover:not(:disabled),.hud-top-float .btn-soft:hover:not(:disabled){transform:translateY(-1px)}.hud-action-btn__icon{font-size:.82rem;line-height:1;opacity:.92}.hud-action-btn__label{line-height:1}button:disabled{opacity:.45;cursor:not-allowed;transform:none}:is(.btn-pink,.btn-soft,.outfit-chip,.swatch,.vote-star-btn,.layer-colour-trigger,.vote-modal-submit,.theme-reveal-dismiss,.welcome-cta,.dock-mobile-tab,.roster-mobile-tab,.lobby-toggle):focus-visible{outline:2px solid var(--violet-deep);outline-offset:2px}:is(.btn-pink,.btn-soft):focus-visible:disabled{outline:none}.roster-head{display:flex;align-items:center;justify-content:space-between;gap:.45rem;margin-bottom:.35rem;flex-wrap:wrap}.roster-head .roster-title{margin:0;flex:1 1 auto;min-width:5rem}.lobby-toggle{font-size:.68rem!important;padding:.32rem .55rem!important;flex:1 1 8.5rem;max-width:100%}.roster-name-section{margin-bottom:.45rem;padding-bottom:.5rem;border-bottom:1px solid var(--hairline-violet)}.roster-name-section label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .2rem}.roster-name-section input[type=text]{width:100%;padding:.38rem .45rem;border-radius:var(--radius-sm);border:1px solid rgba(255,140,200,.45);background:#fffffff2;font-size:.85rem}.roster-me-tag{font-weight:600;color:var(--muted);font-size:.9em}.roster-account-section{margin-top:.55rem;padding-top:.5rem;border-top:1px solid var(--hairline-violet)}.roster-account-heading{margin:0 0 .35rem;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--violet-deep)}.roster-account-sub{margin:.65rem 0 .35rem;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.auth-guest-btn{width:100%;margin-top:.35rem}.roster-account-section label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:.45rem 0 .2rem}.roster-account-section label:first-of-type{margin-top:.25rem}.roster-account-section input[type=text]{width:100%;padding:.38rem .45rem;border-radius:var(--radius-sm);border:1px solid rgba(255,140,200,.45);background:#fffffff2;font-size:.85rem}.roster-account-section input[type=text]:focus-visible{outline:2px solid var(--violet-deep);outline-offset:2px;border-color:#8a2be259}.auth-account-banner{margin:0 0 .5rem;font-size:.78rem;font-weight:600;line-height:1.35;color:var(--text)}.auth-error-line{margin-top:.35rem!important;margin-bottom:.35rem!important;color:#b8326f!important;font-weight:600}.seed-auth-section{margin-top:.3rem}.seed-auth-buttons{display:flex;gap:.4rem;margin:.4rem 0}.seed-auth-buttons .btn-pink,.seed-auth-buttons .btn-soft{flex:1}.seed-word-display{display:flex;flex-direction:column;gap:.5rem;margin:.6rem 0;padding:.75rem;border-radius:var(--radius-md);background:#fffdf7;border:2.5px dashed rgba(255,20,147,.35)}.seed-word-chip{display:flex;align-items:center;padding:.55rem .75rem;border-radius:.6rem;background:#fff;border:2px solid rgba(255,20,147,.2);color:#1a1033;font-family:Courier New,Lucida Console,Consolas,monospace;font-size:1.25rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;-webkit-user-select:all;user-select:all;box-shadow:0 1px 3px #0000000f}.seed-word-chip:before{content:attr(data-num);display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;margin-right:.6rem;border-radius:50%;background:linear-gradient(135deg,var(--hot-pink),var(--violet-mid));color:#fff;font-family:Fredoka,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:0;text-transform:none;flex-shrink:0}.seed-reveal-hint{font-weight:700;font-size:.85rem;color:var(--hot-pink)!important;line-height:1.4}.seed-input-grid{display:flex;flex-direction:column;gap:.5rem;margin:.5rem 0}.seed-word-input{width:100%;padding:.6rem .75rem;border:2px solid var(--hairline-pink);border-radius:.6rem;font-family:Courier New,Lucida Console,Consolas,monospace;font-size:1.15rem;font-weight:700;letter-spacing:.1em;color:#1a1033;background:#fff;text-transform:lowercase;text-align:center}.seed-word-input::placeholder{font-family:Fredoka,sans-serif;font-size:.85rem;font-weight:500;letter-spacing:0;color:#0000004d;text-transform:none}.seed-word-input:focus{border-color:var(--hot-pink);outline:none;box-shadow:0 0 0 3px #ff149326}.roster-room-section{margin-top:.55rem;padding-top:.5rem;border-top:1px solid var(--hairline-violet)}.roster-room-section label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .2rem}.roster-room-section input[type=text]{width:100%;padding:.38rem .45rem;border-radius:var(--radius-sm);border:1px solid rgba(255,140,200,.45);background:#fffffff2;font-size:.85rem}.roster-name-section input[type=text]:focus-visible,.roster-room-section input[type=text]:focus-visible{outline:2px solid var(--violet-deep);outline-offset:2px;border-color:#8a2be259}.lobby-form .row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.net-line{margin:.45rem 0 0;font-size:.72rem;color:var(--muted)}.net-line--hint{margin-top:.2rem;margin-bottom:0;font-size:.62rem;line-height:1.35;color:var(--muted)}.net-line--hint strong{color:var(--violet-deep)}.customize-dock{position:fixed;top:max(.45rem,var(--hud-edge-inset-top));right:max(var(--chrome-pad),env(safe-area-inset-right,0px));width:min(var(--dock-card-width),calc(100vw - 1.25rem));max-width:calc(100vw - 1rem);bottom:max(var(--chrome-pad),env(safe-area-inset-bottom,0px));max-height:none;overflow-y:auto;overflow-x:hidden;padding:.7rem .8rem .9rem;border-radius:calc(var(--radius-lg) + 4px);background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),var(--shadow-sm),0 22px 56px #be64a038;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));z-index:7;transition:opacity .2s}.dock-mobile-tab{display:none}.dock-scroll{min-height:0}.dock-lede{display:none}.layer-rows{display:flex;flex-direction:column;gap:.25rem}.layer-row{display:flex;align-items:center;justify-content:space-between;gap:.35rem;padding:.2rem 0;border-bottom:1px solid rgba(255,182,210,.2)}.layer-row:last-child{border-bottom:none}.layer-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text);flex:1;min-width:0}.layer-colour-picker{position:relative;flex-shrink:0}.layer-colour-trigger{display:flex;align-items:center;gap:.3rem;min-height:1.8rem;padding:.25rem .4rem;border:1px solid var(--glass-border);border-radius:10px;background:#ffffff8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;font:inherit;font-weight:600;font-size:.62rem;color:var(--text);box-shadow:var(--glass-highlight),0 2px 10px #b464961a;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.layer-colour-trigger:hover:not(:disabled){border-color:#ff8cc8a6;background:#ffffffc7;box-shadow:var(--glass-highlight),0 4px 16px #ff78b426}.layer-colour-trigger[aria-expanded=true]{border-color:var(--pink-deep)}.layer-colour-dot{width:1.35rem;height:1.35rem;min-width:1.35rem;min-height:1.35rem;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 6px #4a153826;background:var(--swatch, #e8e8e8);flex-shrink:0}.layer-colour-name{font-size:.7rem;font-weight:700;font-family:inherit;letter-spacing:.02em;min-width:4.5rem;max-width:6.5rem;text-align:left;color:var(--pink-deep);line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-colour-chevron{display:inline-flex;width:.85rem;justify-content:center;font-size:.55rem;color:var(--pink-deep);flex-shrink:0}.layer-colour-chevron:after{content:"▾";line-height:1;display:inline-block;transition:transform .18s ease}.layer-colour-trigger[aria-expanded=true] .layer-colour-chevron:after{transform:rotate(180deg)}.layer-colour-popover{width:min(12.25rem,calc(100vw - 16px));padding:.45rem .5rem .55rem;border-radius:var(--radius-md);background:#fffffffa;border:1px solid var(--hairline-pink);box-shadow:0 12px 44px #4a153833;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.layer-colour-popover .layer-swatch-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.38rem}.layer-colour-popover .swatch.layer-swatch{width:1.55rem;height:1.55rem;min-width:1.55rem;min-height:1.55rem;max-width:none;margin:0;aspect-ratio:1;box-sizing:border-box}.customize-dock.is-locked{opacity:.55}.dock-title{font-size:.78rem;font-weight:800;color:var(--pink-deep);margin-bottom:.25rem;text-align:center;letter-spacing:.02em}.dock-section{margin-top:.4rem}.dock-heading{margin:0 0 .25rem;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.swatch-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.25rem}.swatch{aspect-ratio:1;border-radius:50%;border:3px solid rgba(255,255,255,.9);box-shadow:0 2px #ffc8e699 inset,0 4px 14px #ff509640;background:var(--swatch, #fcc);cursor:pointer;padding:0;transition:transform .15s,box-shadow .15s}.swatch:hover:not(:disabled){transform:scale(1.08);box-shadow:0 2px #ffffff80 inset,0 6px 20px #ff3ca061}.swatch.active{outline:3px solid var(--pink-deep);outline-offset:2px}.outfit-grid{display:flex;flex-direction:column;gap:.35rem}.outfit-chip{width:100%;text-align:left;padding:.3rem .45rem;border-radius:10px;border:1px solid rgba(255,255,255,.55);background:#ffffff7a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.78rem;font-weight:600;color:var(--text);cursor:pointer;box-shadow:var(--glass-highlight),0 2px 8px #b4649614;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.outfit-chip:hover:not(:disabled){border-color:#ffa0d2a6;background:#ffffffb8}.outfit-chip.active{border-color:#ffffffbf;background:linear-gradient(100deg,#ffd6e8eb,#ffffffbf);color:var(--pink-deep);box-shadow:var(--glass-highlight),0 4px 16px #ff64aa33}.roster{position:fixed;bottom:max(var(--chrome-pad),env(safe-area-inset-bottom,0px));left:max(var(--chrome-pad),env(safe-area-inset-left,0px));width:min(19rem,calc(100vw - 2 * var(--chrome-pad)));max-height:calc(var(--chrome-bottom) - .25rem);overflow:auto;padding:.65rem .85rem;border-radius:calc(var(--radius-lg) + 4px);background:var(--panel-glass-bg);border:1px solid rgba(255,255,255,.58);box-shadow:var(--glass-highlight),var(--shadow-sm),0 20px 50px #a064c829;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));color:var(--text);font-size:.82rem;font-weight:500;z-index:6}.roster-title{margin:0;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--violet-deep)}.roster-list{list-style:none;margin:0;padding:0;display:grid;gap:.3rem}.roster-list li{display:flex;justify-content:space-between;gap:.5rem;padding:.4rem .55rem;border-radius:12px;background:#fff5fabf;border:1px solid transparent}.roster-list li.is-you{background:#ffb6d247;border:1px solid rgba(255,20,147,.22)}.badge{font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--violet-deep);opacity:.92}.roster-hint{margin:.45rem 0 0;font-size:.72rem;font-weight:500;color:var(--muted)}.roster-mobile-tab{display:none}.roster-body{min-height:0}.vote-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:63;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#c882a047;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.vote-modal[hidden]{display:none!important}.vote-modal-card{width:min(26rem,calc(100vw - 2rem));max-height:min(78vh,34rem);overflow:auto;padding:1.15rem 1.25rem 1.2rem;border-radius:calc(var(--radius-lg) + 6px);background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),var(--shadow-card),0 28px 70px #aa64be38;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong))}.vote-modal-title{margin:0 0 .35rem;font-size:1.15rem;font-weight:800;color:var(--pink-deep);letter-spacing:.02em;text-align:center}.vote-modal-lede{margin:0 0 .85rem;font-size:.78rem;font-weight:500;line-height:1.45;color:var(--muted);text-align:center}.vote-candidates{display:flex;flex-direction:column;gap:.65rem}.vote-star-row{display:flex;flex-direction:column;gap:.35rem;padding:.5rem .55rem;border-radius:var(--radius-md);border:1px solid var(--hairline-pink);background:#fff5faeb}.vote-star-row-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem .75rem}.vote-star-group{display:flex;gap:.12rem;justify-content:flex-end}.vote-star-btn{flex:0 0 auto;width:1.85rem;height:1.85rem;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;font-size:1.35rem;line-height:1;color:#b4a0af8c;cursor:pointer;transition:color .12s ease,transform .12s ease}.vote-star-btn:hover{color:#ffb6c1f2;transform:scale(1.08)}.vote-star-btn.is-on{color:#e6b800;text-shadow:0 0 10px rgba(255,215,0,.35)}.vote-modal-submit{margin-top:.75rem;width:100%;font-size:.82rem!important}.vote-modal .vote-star-btn,.vote-modal .vote-modal-submit{touch-action:manipulation}.vote-candidate-name{font-size:.88rem}.vote-candidate-outfit{font-size:.68rem;font-weight:600;color:var(--violet-deep);opacity:.9}.dog-care-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:54;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.dog-care-modal[hidden]{display:none!important}.dog-care-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffbed261;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:0}.dog-care-modal__card{position:relative;z-index:1;width:min(24rem,calc(100vw - 2rem));padding:1.15rem 1.25rem 1.2rem;border-radius:calc(var(--radius-lg) + 6px);background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),var(--shadow-card),0 26px 64px #c86eaa38;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));text-align:center}.dog-care-modal__title{margin:0 0 .45rem;font-size:1.12rem;font-weight:800;color:var(--pink-deep);letter-spacing:.02em}.dog-care-modal__lede{margin:0 0 .75rem;font-size:.82rem;font-weight:600;line-height:1.45;color:var(--text)}.dog-care-meter-wrap{height:.65rem;border-radius:var(--radius-pill);background:#ffb6d259;border:1px solid rgba(255,140,190,.35);overflow:hidden;margin-bottom:.55rem}.dog-care-meter{height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--pink-light),var(--pink-deep) 55%,var(--magenta-pop));box-shadow:inset 0 1px #ffffff73;transition:width .35s ease;min-width:0}.dog-care-modal__hint{margin:0 0 .85rem;font-size:.68rem;font-weight:500;line-height:1.4;color:var(--muted)}.dog-care-modal__actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center}.dog-care-modal__actions .btn-pink,.dog-care-modal__actions .btn-soft{min-width:7.5rem;touch-action:manipulation}.pacman-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:58;display:flex;align-items:center;justify-content:center;padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left));overscroll-behavior:none;-webkit-overflow-scrolling:touch}.pacman-modal[hidden]{display:none!important}.pacman-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffbed273;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:0}.pacman-modal__card{position:relative;z-index:1;width:min(22rem,calc(100vw - 1.5rem));max-height:min(92vh,32rem);overflow:auto;padding:1rem 1.1rem 1.1rem;border-radius:var(--radius-lg);background:linear-gradient(165deg,#fff8fc,#ffe8f4 45%,#ffd6ea);border:1px solid rgba(255,140,200,.45);box-shadow:var(--shadow-card),0 18px 48px #ff8cb438}.pacman-modal__title{margin:0 0 .25rem;font-size:1.05rem;font-weight:800;color:var(--pink-deep);letter-spacing:.03em;text-align:center}.pacman-modal__lede{margin:0 0 .45rem;font-size:.72rem;line-height:1.4;color:var(--muted);text-align:center}.pacman-modal__swipe-hint{margin:0 0 .5rem;font-size:.68rem;font-weight:600;line-height:1.35;color:#8a466eb8;text-align:center}.pacman-modal__canvas-wrap{touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0 auto;width:100%;max-width:min(310px,92vw);padding:.65rem .5rem;min-height:min(11.5rem,34vh);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:#ffb6c847;box-sizing:border-box}.pacman-modal__canvas{display:block;width:100%;max-width:310px;height:auto;margin:0 auto;border-radius:var(--radius-md);border:2px solid rgba(255,105,180,.45);image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;pointer-events:none}.pacman-modal__touch{display:flex;flex-direction:column;align-items:center;gap:.45rem;margin-top:.65rem;padding-bottom:.15rem}.pacman-modal__touch-mid{display:flex;gap:min(18vw,3.25rem);align-items:center;justify-content:center}.pacman-dir{min-width:min(22vw,4.25rem);min-height:min(22vw,4.25rem);width:min(22vw,4.25rem);height:min(22vw,4.25rem);padding:0;border-radius:var(--radius-md);border:2px solid rgba(255,140,190,.5);background:#ffffffb8;color:var(--pink-deep);font-size:clamp(1.2rem,5.5vw,1.55rem);font-weight:700;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pacman-dir:hover{background:#ffe4f0f2}.pacman-dir:focus-visible{outline:2px solid #ff69b4;outline-offset:2px}.pacman-modal__status{margin:.5rem 0 0;min-height:1.2rem;font-size:.72rem;font-weight:600;text-align:center;color:var(--text)}.pacman-modal__actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;margin-top:.65rem}.pacman-modal__actions .btn-soft,.pacman-modal__actions .btn-pink{min-height:2.75rem;padding-left:1rem;padding-right:1rem;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pacman-modal__actions .btn-soft{background:#ffffffe0;color:var(--pink-deep);border-color:#ff8cc873}.theme-reveal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:42;display:flex;align-items:center;justify-content:center;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));background:#ffc8dc6b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:theme-reveal-enter .45s cubic-bezier(.22,1,.36,1) both;pointer-events:none}.theme-reveal[hidden]{display:none!important}.theme-reveal--leaving{animation:theme-reveal-exit .38s ease-in forwards;pointer-events:none}@keyframes theme-reveal-enter{0%{opacity:0}to{opacity:1}}@keyframes theme-reveal-exit{0%{opacity:1}to{opacity:0}}.theme-reveal-card{width:min(28rem,calc(100vw - 2rem));padding:1.75rem 1.5rem 1.6rem;border-radius:calc(var(--radius-lg) + 6px);background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),var(--shadow-card),0 32px 85px #aa64be40;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));text-align:center;animation:theme-reveal-card-pop .55s cubic-bezier(.22,1,.36,1) .06s both;pointer-events:auto}@keyframes theme-reveal-card-pop{0%{opacity:0;transform:scale(.92) translateY(.75rem)}to{opacity:1;transform:scale(1) translateY(0)}}.theme-reveal-kicker{margin:0 0 .5rem;font-size:.72rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase;color:var(--violet-deep);opacity:.88}.theme-reveal-theme{margin:0 0 .65rem;font-size:clamp(1.45rem,4.2vw,2.15rem);font-weight:900;line-height:1.15;color:var(--pink-deep);letter-spacing:.02em;text-wrap:balance}.theme-reveal-hint{margin:0 0 1.1rem;font-size:.78rem;font-weight:600;line-height:1.45;color:var(--muted)}.theme-reveal-dismiss{min-width:8rem;font-size:.82rem!important}.results-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#1e0a2814;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:auto}.results-overlay[hidden],#results-back-lobby[hidden]{display:none!important}.results-overlay--enter .results-card{animation:results-card-pop .55s cubic-bezier(.22,1,.36,1) both}@keyframes results-card-pop{0%{opacity:0;transform:scale(.88) translateY(1.5rem)}to{opacity:1;transform:scale(1) translateY(0)}}.results-card{width:min(26rem,calc(100vw - 2rem));max-height:min(85vh,36rem);max-height:min(85dvh,36rem);display:flex;flex-direction:column;pointer-events:auto;overflow:hidden;padding:1.5rem 1.25rem 0;border-radius:calc(var(--radius-lg) + 6px);background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),var(--shadow-card),0 28px 70px #a064c840;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));text-align:center}.results-card__scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-bottom:.65rem}.results-card__scroll>.results-header:first-child{padding-top:0}.results-header{display:flex;flex-direction:column;align-items:center;gap:.2rem;margin-bottom:1rem}.results-trophy{font-size:2.8rem;line-height:1;animation:results-trophy-bounce .6s cubic-bezier(.22,1,.36,1) .15s both}@keyframes results-trophy-bounce{0%{transform:scale(0) rotate(-15deg)}60%{transform:scale(1.25) rotate(5deg)}to{transform:scale(1) rotate(0)}}.results-title{font-size:clamp(1.25rem,4vw,1.75rem);font-weight:900;color:var(--pink-deep);letter-spacing:.02em;line-height:1.2}.results-subtitle{font-size:.82rem;font-weight:600;color:var(--muted)}.results-reaction{margin:0 auto .65rem;padding:.4rem .85rem;max-width:14rem;font-size:.95rem;font-weight:900;font-style:italic;letter-spacing:.06em;border-radius:999px;border:2px solid rgba(255,255,255,.35);text-shadow:0 0 14px rgba(0,0,0,.45)}.results-reaction--amazing{color:#fff8e7;background:linear-gradient(135deg,#ff78c88c,#ff3ca073);box-shadow:0 0 22px #ff50b473}.results-reaction--great{color:#f7f2ff;background:linear-gradient(135deg,#78c8ff73,#508cff59);box-shadow:0 0 18px #64b4ff59}.results-reaction--ok{color:#f0e8ff;background:linear-gradient(135deg,#a08cc866,#7864a059)}.results-rewards{margin:0 0 .75rem}.results-rewards__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem .65rem}.results-rewards__pill{display:inline-flex;align-items:center;gap:.2rem;padding:.35rem .65rem;border-radius:999px;font-size:.88rem;font-weight:800;letter-spacing:.02em;background:linear-gradient(135deg,#ffd67859,#ffa0dc38);border:1px solid rgba(255,255,255,.28);color:var(--ink, #2a0f24)}.results-rewards__hint{margin:.45rem 0 0;font-size:.68rem;font-weight:600;color:var(--muted);line-height:1.35;max-width:22rem;margin-inline:auto}.rhythm-intro-card{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));pointer-events:none}.rhythm-intro-card[hidden]{display:none!important}.rhythm-intro-card__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#14061c6b;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto}.rhythm-intro-card__panel{position:relative;z-index:1;width:min(22rem,calc(100vw - 2rem));padding:1.15rem 1.2rem 1.05rem;border-radius:var(--radius-lg);background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-card);text-align:left;pointer-events:auto}.rhythm-intro-card__title{margin:0 0 .45rem;font-size:1.15rem;font-weight:900;color:var(--pink-deep);letter-spacing:.02em}.rhythm-intro-card__body{margin:0 0 .85rem;font-size:.84rem;line-height:1.45;font-weight:600;color:var(--text)}.rhythm-intro-card__btn{min-height:44px;min-width:7.5rem}.user-row--comfort{flex-direction:column;align-items:flex-start;gap:.25rem}.comfort-toggle{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.82rem;color:var(--text);cursor:pointer;min-height:44px}.comfort-toggle input{width:1.05rem;height:1.05rem;flex-shrink:0}.comfort-toggle__hint{margin:0;font-size:.72rem!important}.results-scoreboard{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.results-card__scroll .results-scoreboard:last-child{margin-bottom:.35rem}@media(max-width:640px){.results-overlay{align-items:flex-end;justify-content:center;padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.65rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));background:#1e0a2847}.results-card{width:min(100%,calc(100vw - 1rem));max-height:min(88dvh,38rem);max-height:min(88vh,38rem);padding:.85rem .85rem 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.results-card__scroll{padding-bottom:.45rem}.results-footer{margin:0 -.85rem;padding-left:.85rem;padding-right:.85rem}.results-header{margin-bottom:.6rem;gap:.12rem}.results-trophy{font-size:1.8rem}.results-title{font-size:clamp(1rem,5vw,1.2rem)}.results-subtitle{font-size:.72rem}.results-scoreboard{gap:.28rem;margin-bottom:.55rem}.results-row{padding:.38rem .5rem}.results-name{font-size:.78rem}.results-score{font-size:.82rem}}@media(max-width:640px)and (orientation:portrait){.chrome-top__currencies{gap:.22rem .3rem;padding:.18rem .28rem;align-content:start}.hud-top-float .timer-block{gap:.2rem .32rem}.player-identity__meta{max-width:min(9.5rem,42vw);width:auto}}.results-row{display:flex;align-items:center;gap:.5rem;padding:.45rem .65rem;border-radius:var(--radius-md);background:#fff5fab3;border:1px solid rgba(255,182,210,.2);transition:transform .2s ease}.results-row--winner{background:linear-gradient(135deg,#ffd70033,#ffb6d259);border-color:#ffd70066;box-shadow:0 2px 12px #ffd70026}.results-row--you{border-color:#8a2be259}.results-rank{flex:0 0 2rem;font-size:1.1rem;font-weight:800;text-align:center}.results-name{flex:1;text-align:left;font-size:.85rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.results-you-tag{font-weight:500;font-size:.7rem;color:var(--violet-deep);opacity:.85}.results-score{flex:0 0 auto;font-size:.9rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--pink-deep)}.results-score-note{font-weight:600;font-size:.65rem;color:var(--muted);white-space:nowrap}.results-rematch-hint{font-size:.75rem;line-height:1.4;color:var(--text-body);text-align:center;margin:.15rem .5rem 0;text-wrap:balance}.results-footer{flex-shrink:0;position:relative;isolation:isolate;z-index:1;pointer-events:auto;margin:0 -1.25rem;padding:.55rem 1.25rem .15rem;padding-bottom:max(.35rem,env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,120,180,.18);background:linear-gradient(180deg,#fffafc00,#fff8fcb8 28%,#fff5faf5);display:flex;flex-direction:column;align-items:center;gap:.65rem}.results-countdown{font-size:.72rem;font-weight:600;color:var(--muted);letter-spacing:.04em;text-align:center}.results-lobby-btn{position:relative;z-index:2;min-height:2.85rem;min-width:min(100%,12rem);padding-inline:1.35rem;font-size:.88rem;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}@media(pointer:coarse){.results-row{min-height:2.75rem;padding:.55rem .75rem}}.welcome-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10150;display:flex;align-items:center;justify-content:center;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));background:var(--surface);background-image:radial-gradient(ellipse 80% 55% at 50% 100%,rgba(255,182,193,.18) 0%,transparent 50%),radial-gradient(ellipse 40% 30% at 90% 10%,rgba(230,230,250,.45) 0%,transparent 100%);animation:welcome-in .48s ease-out}@keyframes welcome-in{0%{opacity:0}to{opacity:1}}.welcome-overlay.welcome-leave{opacity:0;transition:opacity .42s ease}.welcome-card{position:relative;text-align:center;max-width:min(34rem,100%)}.welcome-sparkles{position:absolute;top:-1rem;right:-1rem;bottom:-1rem;left:-1rem;pointer-events:none;background-image:radial-gradient(circle,rgba(255,247,0,.95) 0%,transparent 55%),radial-gradient(circle,rgba(255,105,180,.7) 0%,transparent 50%),radial-gradient(circle,rgba(255,247,0,.85) 0%,transparent 45%),radial-gradient(circle,rgba(230,230,250,.9) 0%,transparent 40%);background-size:14px 14px,11px 11px,9px 9px,10px 10px;background-position:6% 18%,94% 12%,90% 78%,12% 82%;background-repeat:no-repeat;opacity:.9}.welcome-logo-plate{position:relative;z-index:1;display:inline-block;padding:.5rem .35rem .65rem;border-radius:var(--radius-lg);background:transparent}.welcome-logo-img{display:block;max-width:min(88vw,400px);width:100%;height:auto;margin:0 auto}.welcome-tagline{position:relative;z-index:1;margin:.85rem 0 1rem;font-size:1.02rem;font-weight:600;color:var(--violet-deep);letter-spacing:.05em}.welcome-cta{position:relative;z-index:1;min-width:11rem;font-size:.95rem!important;padding:.55rem 1.35rem!important}@media(prefers-reduced-motion:reduce){.welcome-overlay{animation:none}.welcome-overlay.welcome-leave{transition:none}.timer-label--sync{animation:none;opacity:.88}.runway-winner-star{animation:none}.flow-step{transition:none}.flow-step.is-active{transform:none}}@media(max-width:1024px){:root{--dock-width: .5rem;--dock-card-width: min(11.5rem, calc(100vw - 2.5rem) );--mobile-bottom-bar-h: 3.2rem;--chrome-bottom: max(3.55rem, calc(var(--mobile-bottom-bar-h) + .38rem))}@media(min-width:640px){:root{--mobile-bottom-bar-h: 3.5rem}}.chrome-top__phase-slot .chrome-top__start-btn{max-width:none}.player-identity__meta{width:auto;max-width:min(10.5rem,46vw)}.flow-row--pills .flow-step{padding:.14rem .34rem;font-size:clamp(.48rem,1.8vw,.58rem);letter-spacing:.04em}.brand-lockup{max-width:100%;min-height:0}.brand-logo-plate{display:none}.theme-banner{font-size:clamp(.55rem,2.5vw,.7rem);padding:.15rem .35rem;max-height:1.6rem;overflow:hidden}.theme-banner.theme-banner--results{display:flex;width:100%;max-width:none;max-height:none;min-height:0;margin:0;padding:.28rem .45rem .32rem;font-size:clamp(.6rem,2.8vw,.74rem);line-height:1.32;text-align:center;box-sizing:border-box;border-radius:var(--radius-md);background:#fffafceb;border:1px solid rgba(255,180,210,.42);text-wrap:balance}.lobby-joystick{bottom:calc(var(--chrome-bottom) + .58rem);z-index:19}.mobile-bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:15;display:flex;flex-direction:row;align-items:stretch;gap:.28rem;min-height:var(--mobile-bottom-bar-h);padding:.28rem max(.45rem,env(safe-area-inset-left,0px)) calc(.28rem + env(safe-area-inset-bottom,0px)) max(.45rem,env(safe-area-inset-right,0px));background:linear-gradient(180deg,#fff6fceb,#ffe8f4e0);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-top:1px solid var(--glass-border);box-shadow:0 -10px 36px #b464a02e,inset 0 1px #ffffffa6;pointer-events:auto}.mobile-bottom-bar>*,.mobile-bottom-bar-slot{pointer-events:auto}body>a[target=_blank][href^="https://vibej.am"],body>a[target=_blank][href^="https://jam.pieter.com"]{bottom:calc(var(--mobile-bottom-bar-h) + .84rem + env(safe-area-inset-bottom,0px) + .45rem)!important;right:max(.3rem,env(safe-area-inset-right,0px))!important;max-width:min(46vw,10.5rem);padding:5px 9px!important;font-size:clamp(.55rem,2.75vw,.7rem)!important;line-height:1.25!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:10000!important}.mobile-bottom-bar-slot{flex:1 1 50%;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:stretch;align-self:stretch}.mobile-bottom-bar>.roster:not(.roster-mobile-open){display:flex!important;flex-direction:column;align-self:stretch;min-height:0;justify-content:stretch}.mobile-bottom-bar .roster{position:relative;flex:1 1 50%;min-width:0;min-height:0;align-self:stretch;width:auto;max-width:none;left:auto;bottom:auto;margin:0;padding:0;overflow:visible;background:transparent;border:none;box-shadow:none}.mobile-bottom-bar .roster:not(.roster-mobile-open){padding:0;max-height:none}.mobile-bottom-bar .roster.roster-mobile-open{position:fixed;left:max(var(--chrome-pad),env(safe-area-inset-left,0px));right:max(var(--chrome-pad),env(safe-area-inset-right,0px));bottom:calc(var(--mobile-bottom-bar-h) + env(safe-area-inset-bottom,0px) + .35rem);z-index:7;width:auto;max-height:min(48vh,15rem);overflow:hidden;display:flex;flex-direction:column;padding:.6rem .85rem .65rem;background:var(--panel-glass-bg);border:1px solid var(--glass-border);border-radius:calc(var(--radius-lg) + 4px);box-shadow:var(--glass-highlight),var(--shadow-sm),0 18px 48px #a064be33;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong))}.mobile-bottom-bar .roster.roster-mobile-open .roster-body{flex:1;min-height:0;overflow:auto;opacity:1;pointer-events:auto}.dock-mobile-tab{display:flex;align-items:center;justify-content:center;position:relative;top:auto;right:auto;transform:none;z-index:1;margin:0;width:100%;flex:1 1 auto;min-height:2.2rem;padding:.28rem .4rem;border-radius:var(--radius-md);border:1px solid var(--glass-border);background:#ffffff8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-highlight),0 3px 14px #b464a01f;font-family:inherit;font-size:.66rem;font-weight:800;color:var(--pink-deep);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;touch-action:manipulation}.mobile-bottom-bar .customize-dock:not(.dock-mobile-open){position:relative!important;flex:1 1 auto;min-width:0;top:auto!important;bottom:auto!important;right:auto!important;left:auto!important;width:auto!important;height:100%;min-height:0;max-height:none!important;padding:0!important;margin:0;overflow:visible;background:transparent!important;border:none!important;box-shadow:none!important;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:auto;display:flex;flex-direction:column;align-items:stretch;align-self:stretch}.customize-dock:not(.dock-mobile-open) .dock-scroll{display:none}.customize-dock.dock-mobile-open{pointer-events:auto;position:fixed;top:max(.35rem,var(--hud-edge-inset-top));right:max(var(--chrome-pad),env(safe-area-inset-right,0px));width:min(var(--dock-card-width),calc(100vw - 1.25rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));bottom:calc(var(--mobile-bottom-bar-h) + env(safe-area-inset-bottom,0px) + .35rem);height:auto;max-height:none;padding:2.4rem .8rem .85rem;background:var(--panel-glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),var(--shadow-sm),0 22px 56px #be64a038;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));overflow-y:auto;overflow-x:hidden;z-index:9}.customize-dock.dock-mobile-open .dock-mobile-tab{position:absolute;right:.55rem;top:.5rem;transform:none;border-radius:var(--radius-pill);border:1px solid var(--hairline-pink);border-right:1px solid var(--hairline-pink);padding:.32rem .65rem;font-size:.65rem;z-index:2}.customize-dock.dock-mobile-open .dock-scroll{display:block}.roster-mobile-tab{display:flex;align-items:center;justify-content:center;width:100%;margin:0 0 .4rem;padding:.28rem .4rem;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.58);background:#ffffff85;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font:inherit;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--violet-deep);cursor:pointer;touch-action:manipulation;box-shadow:var(--glass-highlight),0 3px 14px #9664c81f}.mobile-bottom-bar .roster-mobile-tab{flex:1 1 auto;min-height:2.2rem;margin:0!important}.roster:not(.roster-mobile-open) .roster-body{max-height:0;overflow:hidden;opacity:0;margin:0;padding:0;pointer-events:none}.roster:not(.roster-mobile-open){max-height:none;overflow:visible;padding:.5rem .85rem .55rem}.roster.roster-mobile-open{max-height:min(48vh,15rem);overflow:hidden;display:flex;flex-direction:column;padding:.6rem .85rem .65rem}.roster.roster-mobile-open .roster-body{flex:1;min-height:0;overflow:auto;opacity:1;pointer-events:auto}.roster{width:calc(100vw - 1.25rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-width:none;max-height:none}.flow-row{font-size:.58rem}.timer-label{font-size:1.22rem}.chrome-top__phase-slot .btn-pink{padding:.38rem .65rem;font-size:clamp(.62rem,2.5vw,.72rem)}.vote-modal-card{max-height:min(85dvh,85svh,36rem);width:min(26rem,calc(100vw - 1rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)))}.vote-star-btn{width:2.35rem;height:2.35rem;font-size:1.5rem}@media(orientation:portrait){.runway-nameplate{max-width:min(9.25rem,54vw);font-size:clamp(.54rem,2.9vw,.7rem);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:unset;padding:.16rem .4rem;line-height:1.12}}.welcome-logo-img{max-width:min(72vw,260px)}.welcome-tagline{font-size:.88rem}.mobile-bottom-bar .roster{width:auto!important;max-width:none!important}.mobile-bottom-bar .roster:not(.roster-mobile-open){padding:0!important}@media(hover:none)and (pointer:coarse){.mobile-bottom-bar .dock-mobile-tab,.mobile-bottom-bar .roster-mobile-tab{min-height:2.35rem}}@media(min-width:721px){:root{--dock-card-width: min(13.25rem, calc(100vw - 2.75rem) );--mobile-bottom-bar-h: 3.5rem}.mobile-bottom-bar .roster.roster-mobile-open,.customize-dock.dock-mobile-open{max-height:min(56vh,22rem)}}}@media(hover:none)and (pointer:coarse){.btn-pink,.btn-soft{min-height:2.75rem;padding:.5rem 1rem}.swatch{min-width:2.25rem;min-height:2.25rem}.ui-root input[type=text],.ui-root input[type=email],.ui-root input[type=password],.ui-root input[type=search],.ui-root textarea,.ui-root select{font-size:max(16px,1rem)!important}.vote-star-btn{width:2.65rem;height:2.65rem;min-width:2.65rem;min-height:2.65rem;font-size:1.55rem}.vote-modal-submit{min-height:2.75rem}.outfit-chip{min-height:2.5rem;padding:.38rem .7rem}.lobby-toggle{min-height:2.6rem;padding:.38rem .85rem}.phase-chip{min-height:2.35rem;padding:.28rem .65rem}.welcome-cta{min-height:2.85rem}.layer-colour-trigger{min-height:2.5rem}}@media(min-width:1025px){body>a[target=_blank][href^="https://vibej.am"],body>a[target=_blank][href^="https://jam.pieter.com"]{bottom:max(.45rem,env(safe-area-inset-bottom,0px))!important;right:calc(min(var(--dock-card-width),calc(100vw - 1.25rem)) + var(--chrome-pad) + .5rem)!important;max-width:min(12rem,32vw);padding:6px 11px!important;font-size:.78rem!important;z-index:10000!important}.mobile-bottom-bar,.mobile-bottom-bar-slot{display:contents}.dock-mobile-tab{display:none!important}.customize-dock{pointer-events:auto!important;width:min(var(--dock-card-width),calc(100vw - 1.25rem))!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;padding:.7rem .8rem .9rem!important;background:var(--panel-glass-bg)!important;border:1px solid var(--glass-border)!important;box-shadow:var(--glass-highlight),var(--shadow-sm),0 22px 56px #be64a038!important;backdrop-filter:blur(var(--glass-blur-strong))!important;-webkit-backdrop-filter:blur(var(--glass-blur-strong))!important}.customize-dock .dock-scroll{display:block!important}.roster-mobile-tab{display:none!important}.roster .roster-body{max-height:none!important;opacity:1!important;overflow:visible!important;pointer-events:auto!important;margin:0!important;padding:0!important}.roster.roster-mobile-open{max-height:calc(var(--chrome-bottom) - .25rem)!important;overflow:auto!important;display:block!important}}@media(prefers-reduced-transparency:reduce){.chrome-top,.chrome-top__message-strip,.hud-top-float,.brand-logo-plate,.customize-dock,.roster,.flow-step,.btn-soft,.phase-chip,.layer-colour-trigger,.outfit-chip,.runway-nameplate,.vote-modal-card,.theme-reveal-card,.results-card,.dog-care-modal__card,.mobile-bottom-bar,.dock-mobile-tab,.roster-mobile-tab{backdrop-filter:none;-webkit-backdrop-filter:none}}.coin-hud{display:flex;align-items:center;gap:.32rem;padding:.18rem .48rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,#ffd7002e,#ffffff73);border:1px solid rgba(255,215,0,.35);box-shadow:var(--glass-highlight),0 2px 10px #ffc8001f;font-size:.72rem;font-weight:800;color:#b8860b;font-variant-numeric:tabular-nums;white-space:nowrap;cursor:default}.coin-hud__icon{font-size:.85rem;line-height:1}.coin-hud__count{transition:transform .18s ease}.coin-hud__count.coin-hud__count--bump{animation:coin-bump .42s ease}@keyframes coin-bump{0%{transform:scale(1)}30%{transform:scale(1.28);color:gold}to{transform:scale(1)}}.coin-earn-toast{position:fixed;z-index:10200;pointer-events:none;font-family:inherit;font-size:1.05rem;font-weight:800;color:gold;text-shadow:0 1px 4px rgba(0,0,0,.15),0 0 12px rgba(255,215,0,.5);animation:coin-toast-rise 1.6s ease-out forwards}@keyframes coin-toast-rise{0%{opacity:1;transform:translateY(0) scale(1)}60%{opacity:1;transform:translateY(-2.2rem) scale(1.15)}to{opacity:0;transform:translateY(-3.8rem) scale(.85)}}.react-btn{position:fixed;z-index:13;bottom:max(3.8rem,calc(env(safe-area-inset-bottom,0px) + 3.4rem));right:max(.55rem,env(safe-area-inset-right,0px));width:2.5rem;height:2.5rem;border-radius:50%;border:2px solid rgba(255,255,255,.65);pointer-events:auto;background:linear-gradient(135deg,#fff0f5d9,#ffc8dcd9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-highlight),0 4px 16px #ff64aa40;font-size:1.15rem;line-height:1;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.react-btn:hover{transform:scale(1.08);box-shadow:var(--glass-highlight),0 6px 22px #ff64aa59}.react-panel{position:fixed;z-index:10100;bottom:max(6.8rem,calc(env(safe-area-inset-bottom,0px) + 6.4rem));right:max(.45rem,env(safe-area-inset-right,0px));pointer-events:auto;width:min(16rem,calc(100vw - 1rem));padding:.5rem;border-radius:var(--radius-lg);background:#fffffff2;border:1px solid var(--hairline-pink);box-shadow:0 10px 40px #4a15382e;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:react-panel-pop .22s ease-out}.react-panel[hidden]{display:none!important}@keyframes react-panel-pop{0%{opacity:0;transform:scale(.88) translateY(.5rem)}to{opacity:1;transform:scale(1) translateY(0)}}.react-panel__section{margin-bottom:.35rem}.react-panel__section:last-child{margin-bottom:0}.react-panel__section-title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:.15rem .25rem .25rem}.react-panel__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem}.react-panel__move-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.4rem .2rem;border:1.5px solid rgba(255,20,147,.15);border-radius:.6rem;background:linear-gradient(135deg,#fff0f899,#e6e6fa99);cursor:pointer;touch-action:manipulation;transition:transform .12s,border-color .12s,box-shadow .12s}.react-panel__move-btn:hover{transform:scale(1.06);border-color:var(--hot-pink);box-shadow:0 2px 8px #ff149333}.react-panel__move-icon{font-size:1.3rem;line-height:1}.react-panel__move-label{font-size:.55rem;font-weight:700;color:var(--text-muted);text-align:center;line-height:1.1}.react-panel__emoji-grid{display:flex;flex-wrap:wrap;gap:.25rem}.react-panel__emoji-btn{width:2.2rem;height:2.2rem;border:none;border-radius:var(--radius-sm);background:transparent;font-size:1.25rem;cursor:pointer;transition:background .12s,transform .12s;touch-action:manipulation;display:flex;align-items:center;justify-content:center;padding:0}.react-panel__emoji-btn:hover{background:#ffb6d259;transform:scale(1.12)}.emoji-float{position:fixed;z-index:10200;pointer-events:none;font-size:1.6rem;line-height:1;animation:emoji-float-up 1.8s ease-out forwards}@keyframes emoji-float-up{0%{opacity:1;transform:translateY(0) scale(1)}40%{opacity:1;transform:translateY(-2.5rem) scale(1.2)}to{opacity:0;transform:translateY(-5rem) scale(.7)}}@media(max-width:1024px){.react-btn{bottom:calc(var(--chrome-bottom) + .65rem);right:max(.45rem,env(safe-area-inset-right,0px))}.react-panel{bottom:calc(var(--chrome-bottom) + 3.6rem)}}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10150;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;width:.5rem;height:.5rem;border-radius:2px;opacity:0;animation:confetti-fall 2.4s ease-out forwards}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0) scale(1)}20%{opacity:1}to{opacity:0;transform:translateY(80vh) rotate(720deg) scale(.3)}}.daily-challenges{position:fixed;z-index:12;top:max(3.2rem,calc(env(safe-area-inset-top,0px) + 3rem));left:max(.5rem,env(safe-area-inset-left,0px));width:min(15rem,calc(100vw - 1rem));pointer-events:auto;padding:.6rem .7rem;border-radius:var(--radius-lg);background:#ffffffeb;border:1px solid var(--hairline-pink);box-shadow:0 8px 32px #4a153824;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.72rem;animation:daily-slide-in .3s ease-out}.daily-challenges[hidden]{display:none!important}.daily-challenges__lede{margin:0 0 .55rem;line-height:1.45;color:var(--text-body);font-size:.7rem}.vibejam-panel{position:fixed;z-index:12;top:max(3.2rem,calc(env(safe-area-inset-top,0px) + 3rem));left:max(.5rem,env(safe-area-inset-left,0px));width:min(17rem,calc(100vw - 1rem));pointer-events:auto;padding:.65rem .75rem .7rem;border-radius:var(--radius-lg);background:#fffffff0;border:1px solid var(--hairline-pink);box-shadow:0 8px 32px #4a153824;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.72rem;animation:daily-slide-in .3s ease-out}.vibejam-panel[hidden]{display:none!important}.vibejam-panel__title{font-weight:800;font-size:.78rem;color:var(--hot-pink);margin:0 0 .45rem;display:flex;align-items:center;gap:.35rem}.vibejam-panel__close{margin-left:auto;border:none;background:none;cursor:pointer;font-size:.85rem;color:var(--text-muted);padding:0;line-height:1}.vibejam-panel__lede{margin:0 0 .55rem;line-height:1.45;color:var(--text-body)}.vibejam-panel__links{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.6rem}.vibejam-panel__link{font-weight:700;color:#7c3aed;text-decoration:underline;text-underline-offset:2px}.vibejam-panel__link:hover{color:var(--hot-pink)}.vibejam-panel__actions{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.45rem}.vibejam-panel__primary,.vibejam-panel__secondary{width:100%;font-size:.78rem;padding:.45rem .65rem}.vibejam-panel__hint{margin:0;font-size:.65rem;color:var(--text-muted);line-height:1.35}@keyframes daily-slide-in{0%{opacity:0;transform:translate(-1rem)}to{opacity:1;transform:translate(0)}}.daily-challenges__title{font-weight:800;font-size:.78rem;color:var(--hot-pink);margin:0 0 .4rem;display:flex;align-items:center;gap:.3rem}.daily-challenges__close{margin-left:auto;border:none;background:none;cursor:pointer;font-size:.85rem;color:var(--text-muted);padding:0;line-height:1}.daily-challenge{display:flex;align-items:center;gap:.4rem;padding:.32rem 0;border-bottom:1px solid rgba(255,182,210,.2)}.daily-challenge:last-child{border-bottom:none}.daily-challenge__icon{font-size:.95rem;flex-shrink:0}.daily-challenge__info{flex:1;min-width:0}.daily-challenge__label{font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.daily-challenge__bar{height:4px;border-radius:2px;background:#ffb6d238;margin-top:.15rem;overflow:hidden}.daily-challenge__bar-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--hot-pink),#ff69b4);transition:width .4s ease}.daily-challenge__reward{font-weight:800;color:#b8860b;font-size:.65rem;white-space:nowrap;flex-shrink:0}.daily-challenge--done .daily-challenge__label{text-decoration:line-through;opacity:.6}.daily-challenge__claim-btn{font-size:.6rem;font-weight:700;padding:.12rem .4rem;border:1px solid var(--hot-pink);border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--hot-pink) 0%,#ff69b4 100%);color:#fff;cursor:pointer;flex-shrink:0}.daily-toggle-btn{position:fixed;z-index:13;top:max(3.2rem,calc(env(safe-area-inset-top,0px) + 3rem));left:max(.5rem,env(safe-area-inset-left,0px));width:2.2rem;pointer-events:auto;height:2.2rem;border-radius:50%;border:2px solid rgba(255,255,255,.65);background:linear-gradient(135deg,#fff0f5d9,#ffc8dcd9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-highlight),0 4px 16px #ff64aa40;font-size:.9rem;line-height:1;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center}.daily-toggle-btn[hidden]{display:none!important}.daily-toggle-btn__badge{position:absolute;top:-5px;right:-5px;min-width:1rem;height:1rem;border-radius:.5rem;background:var(--hot-pink);border:1.5px solid #fff;font-size:.55rem;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:center;padding:0 .2rem;line-height:1}.daily-toggle-btn__badge[hidden]{display:none}.shop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10300;background:#1e0a198c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;animation:shop-fade-in .22s ease-out;pointer-events:auto}.shop-overlay[hidden]{display:none!important}@keyframes shop-fade-in{0%{opacity:0}to{opacity:1}}.shop-panel{width:min(28rem,calc(100vw - 2rem));max-height:min(36rem,calc(100vh - 4rem));border-radius:var(--radius-lg);background:#fffffff5;border:1px solid var(--hairline-pink);box-shadow:0 20px 60px #4a153838;display:flex;flex-direction:column;overflow:hidden;animation:shop-pop .28s ease-out}@keyframes shop-pop{0%{transform:scale(.9) translateY(1rem);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.shop-panel__header{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;border-bottom:1px solid rgba(255,182,210,.25);background:linear-gradient(135deg,#fff0f5f2,#ffc8dcf2)}.shop-panel__title{font-weight:800;font-size:.95rem;color:var(--hot-pink)}.shop-panel__coins{font-weight:800;font-size:.82rem;color:#b8860b}.shop-panel__close{border:none;background:none;font-size:1.05rem;cursor:pointer;color:var(--text-muted);padding:.2rem;line-height:1}.shop-tabs{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;border-bottom:1px solid rgba(255,182,210,.2);background:#fff5f899}.shop-tabs::-webkit-scrollbar{display:none}.shop-tab{flex:0 0 auto;padding:.4rem .65rem;border:none;background:none;font-size:.68rem;font-weight:600;cursor:pointer;color:var(--text-muted);white-space:nowrap;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.shop-tab--active{color:var(--hot-pink);border-bottom-color:var(--hot-pink)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.5rem;padding:.65rem;overflow-y:auto;flex:1}.shop-card{border-radius:var(--radius-md);border:1px solid rgba(255,182,210,.2);background:#ffffffd9;padding:.5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;transition:transform .12s,box-shadow .12s;cursor:pointer}.shop-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff64aa26}.shop-card--owned{opacity:.6;pointer-events:none}.shop-card__icon{font-size:1.5rem}.shop-card__name{font-size:.62rem;font-weight:700;text-align:center;line-height:1.2}.shop-card__rarity{font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.shop-card__price{font-size:.62rem;font-weight:800;color:#b8860b}.shop-card__owned-tag{font-size:.55rem;font-weight:700;color:#4ecdc4}.shop-card__apply-btn{padding:.25rem .6rem;border:none;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--hot-pink),var(--violet-mid));color:#fff;font-family:Fredoka,sans-serif;font-size:.6rem;font-weight:700;cursor:pointer;transition:transform .12s;touch-action:manipulation}.shop-card__apply-btn:hover{transform:scale(1.06)}.shop-card--locked{opacity:.58;cursor:not-allowed;filter:grayscale(.35)}.shop-grid--music{display:flex;flex-direction:column;gap:.55rem;padding:.65rem;overflow-y:auto;flex:1;align-items:stretch}.shop-music-hero{flex-shrink:0}.shop-card--music-hero{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:.75rem;row-gap:.15rem;padding:.72rem .85rem!important;cursor:default}.shop-card--music-hero:not(.shop-card--owned):not(.shop-card--locked){cursor:pointer}.shop-card--music-hero .shop-card__icon{grid-column:1;grid-row:1 / span 2;font-size:2.35rem}.shop-card--music-hero .shop-card__name{grid-column:2;grid-row:1;text-align:left;font-size:.78rem;justify-self:start}.shop-card--music-hero .shop-card__rarity{grid-column:2;grid-row:2;text-align:left;justify-self:start}.shop-card--music-hero .shop-card__price,.shop-card--music-hero .shop-card__apply-btn,.shop-card--music-hero .shop-card__owned-tag{grid-column:3;grid-row:1 / span 2;align-self:center;justify-self:end}.shop-grid--music .shop-card--music-hero.shop-card--owned,.shop-grid--music .shop-card--music-hero .shop-card__apply-btn{pointer-events:auto}.shop-music-tracks{display:flex;flex-direction:column;gap:.35rem;min-height:0}.shop-music-tracks__heading{font-family:Fredoka,sans-serif;font-size:.72rem;font-weight:800;color:var(--text);letter-spacing:.03em}.shop-music-tracks__hint{margin:0;font-size:.58rem;font-weight:600;color:var(--muted);line-height:1.35}.shop-music-track-list{display:flex;flex-direction:column;gap:.4rem}.shop-card--music-track{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:.55rem;row-gap:.08rem;padding:.52rem .62rem!important;cursor:pointer}.shop-card--music-track .shop-card__icon{grid-column:1;grid-row:1 / span 2;font-size:1.35rem}.shop-card--music-track .shop-card__name{grid-column:2;grid-row:1;text-align:left;font-size:.68rem;justify-self:start}.shop-card--music-track .shop-card__rarity{grid-column:2;grid-row:2;text-align:left;justify-self:start;font-size:.5rem}.shop-card--music-track .shop-card__price,.shop-card--music-track .shop-card__apply-btn,.shop-card--music-track .shop-card__owned-tag{grid-column:3;grid-row:1 / span 2;align-self:center;justify-self:end}.headphone-music-player{position:fixed;z-index:10035;right:max(.45rem,env(safe-area-inset-right,0px));bottom:max(.5rem,env(safe-area-inset-bottom,0px));width:min(11.75rem,calc(100vw - 1rem));padding:.38rem .48rem .42rem;border-radius:var(--radius-md);background:linear-gradient(155deg,#160c1cf0,#08060ef7);border:1px solid rgba(255,79,163,.35);box-shadow:0 8px 28px #00000080,0 0 0 1px #ffffff0a inset;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:auto;display:flex;flex-direction:column;gap:.22rem}.headphone-music-player--collapsed{width:min(8.25rem,calc(100vw - .55rem));padding:.26rem .36rem .3rem;gap:0}.headphone-music-player[hidden]{display:none!important}.headphone-music-player__header{display:flex;align-items:center;gap:.28rem;min-width:0}.headphone-music-player__body{display:flex;flex-direction:column;gap:.22rem;min-width:0}.headphone-music-player--collapsed .headphone-music-player__body{display:none!important}.headphone-music-player:not(.headphone-music-player--collapsed) .headphone-music-player__btn--peek,.headphone-music-player:not(.headphone-music-player--collapsed) .headphone-music-player__expand-btn{display:none!important}.headphone-music-player--collapsed .headphone-music-player__min-btn{display:none!important}.headphone-music-player__icon-btn{flex-shrink:0;width:1.42rem;height:1.42rem;padding:0;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.22);background:#ffffff1a;color:#fff;font-size:.7rem;line-height:1;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center;transition:background .1s ease,transform .1s ease}.headphone-music-player__icon-btn:hover{background:#ff4fa338;transform:scale(1.04)}.headphone-music-player__track{flex:1;min-width:0;font-family:Fredoka,system-ui,sans-serif;font-size:.62rem;font-weight:700;color:#ffe8f4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.headphone-music-player__progress{height:3px;border-radius:999px;background:#ffffff1f;overflow:hidden}.headphone-music-player__progress-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--hot-pink),#a78bfa);transition:width .12s linear}.headphone-music-player__controls{display:flex;align-items:center;justify-content:center;gap:.28rem}.headphone-music-player__btn{width:1.65rem;height:1.65rem;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;font-size:.68rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;touch-action:manipulation;transition:transform .1s ease,background .1s ease}.headphone-music-player__btn:hover{transform:scale(1.06);background:#ff4fa340}.headphone-music-player__btn--peek{width:1.48rem;height:1.48rem;font-size:.62rem}.headphone-music-player__vol{width:100%;accent-color:var(--hot-pink);height:.72rem}@media(max-width:1024px){.headphone-music-player{bottom:calc(var(--chrome-bottom) + .28rem);right:max(.32rem,env(safe-area-inset-right,0px));width:min(13.5rem,calc(100vw - .55rem));padding:.4rem .55rem .45rem;gap:.22rem;border-radius:var(--radius-md)}.headphone-music-player__header{gap:.42rem}.headphone-music-player__track{font-size:.88rem}.headphone-music-player__controls{gap:.32rem}.headphone-music-player__btn{width:2.2rem;height:2.2rem;font-size:.92rem}.headphone-music-player__progress{height:4px}.headphone-music-player__vol{height:1.05rem}.headphone-music-player--collapsed{width:min(11.1rem,calc(100vw - .45rem));padding:.34rem .45rem .4rem}.headphone-music-player__body{gap:.22rem}.headphone-music-player__icon-btn{width:2rem;height:2rem;font-size:.95rem}.headphone-music-player__btn--peek{width:2.1rem;height:2.1rem;font-size:.88rem}}@media(max-width:520px){.headphone-music-player:not(.headphone-music-player--collapsed){width:min(12.6rem,calc(100vw - .45rem));padding:.34rem .45rem .4rem}.headphone-music-player--collapsed{width:min(10.3rem,calc(100vw - .4rem))}.headphone-music-player:not(.headphone-music-player--collapsed) .headphone-music-player__body{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:.42rem;row-gap:.16rem;align-items:center}.headphone-music-player:not(.headphone-music-player--collapsed) .headphone-music-player__progress{grid-column:1 / -1;grid-row:1}.headphone-music-player:not(.headphone-music-player--collapsed) .headphone-music-player__controls{grid-column:2;grid-row:2;justify-content:flex-end;gap:.2rem}.headphone-music-player:not(.headphone-music-player--collapsed) .headphone-music-player__vol{grid-column:1;grid-row:2;width:100%;min-width:0}}.shop-trigger-btn{position:fixed;z-index:13;top:max(3.2rem,calc(env(safe-area-inset-top,0px) + 3rem));right:max(.5rem,env(safe-area-inset-right,0px));pointer-events:auto;width:2.2rem;height:2.2rem;border-radius:50%;border:2px solid rgba(255,255,255,.65);background:linear-gradient(135deg,#fff8e1e0,#ffd70059);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-highlight),0 4px 16px #ffc80040;font-size:1rem;line-height:1;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.shop-trigger-btn:hover{transform:scale(1.08)}.shop-trigger-btn[hidden]{display:none!important}.leaderboard-btn{position:fixed;z-index:13;top:max(5.8rem,calc(env(safe-area-inset-top,0px) + 5.6rem));left:max(.5rem,env(safe-area-inset-left,0px));width:2.2rem;height:2.2rem;border-radius:50%;pointer-events:auto;background:linear-gradient(135deg,gold,#ff8c00);border:2px solid rgba(255,255,255,.35);box-shadow:0 2px 8px #ffa50066;font-size:1.1rem;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.leaderboard-btn:hover{transform:scale(1.08)}.leaderboard-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10400;background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;pointer-events:auto;padding:1rem}.leaderboard-overlay[hidden]{display:none!important}.leaderboard-card{width:min(420px,100%);max-height:80vh;border-radius:1.2rem;background:linear-gradient(135deg,#1a1033,#2d1b4e,#1a1033);border:2px solid rgba(255,215,0,.3);box-shadow:0 8px 40px #0009,0 0 30px #ffd70026;overflow:hidden;display:flex;flex-direction:column}.leaderboard-header{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;background:linear-gradient(90deg,rgba(255,215,0,.15),transparent);border-bottom:1px solid rgba(255,215,0,.2)}.leaderboard-title{font-size:1.2rem;font-weight:800;background:linear-gradient(90deg,gold,#ff8c00);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.03em}.leaderboard-close{background:none;border:none;color:#ffffff80;font-size:1.2rem;cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s,color .15s}.leaderboard-close:hover{background:#ffffff1a;color:#fff}.leaderboard-subtitle{margin:0;padding:.4rem 1rem .5rem;font-size:.7rem;line-height:1.35;color:#ffffff8c;border-bottom:1px solid rgba(255,255,255,.08)}.leaderboard-empty{padding:2rem 1rem;text-align:center;color:#ffffff80;font-size:.9rem}.leaderboard-list{overflow-y:auto;padding:.5rem 0;flex:1}.leaderboard-row{display:flex;align-items:center;gap:.6rem;padding:.45rem 1rem;transition:background .12s}.leaderboard-row:hover{background:#ffffff0a}.leaderboard-row--top{background:#ffd7000f}.leaderboard-row--top:hover{background:#ffd7001a}.leaderboard-rank{min-width:2rem;text-align:center;font-weight:700;font-size:1rem;color:#fff9}.leaderboard-row--top .leaderboard-rank{font-size:1.3rem}.leaderboard-name{flex:1;font-weight:600;font-size:.9rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-row--top .leaderboard-name{color:gold}.leaderboard-stats{display:flex;align-items:center;gap:.4rem;font-size:.75rem;flex-shrink:0}.leaderboard-level{background:linear-gradient(135deg,#ff1493,#ff69b4);padding:.1rem .4rem;border-radius:.6rem;font-weight:700;color:#fff;font-size:.7rem}.leaderboard-xp{color:#ffffff80;font-weight:500}.leaderboard-streak{color:#ff8c00;font-weight:600}.xp-hud{display:flex;align-items:center;gap:.32rem;padding:.14rem .42rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,#b488ff29,#ffffff6b);border:1px solid rgba(180,136,255,.32);box-shadow:var(--glass-highlight);font-size:.65rem;font-weight:700;color:#7c3aed;cursor:default;white-space:nowrap}.xp-hud__icon{font-size:.8rem;line-height:1}.xp-hud__bar{width:3rem;height:5px;border-radius:3px;background:#b488ff2e;overflow:hidden}.xp-hud__bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#7c3aed,#a855f7);transition:width .5s ease}.xp-hud__level{font-weight:800}.level-up-toast{position:fixed;z-index:10250;top:50%;left:50%;transform:translate(-50%,-50%);padding:1.2rem 2rem;border-radius:var(--radius-lg);background:linear-gradient(135deg,#fff0f5f7,#b488ff66);border:2px solid rgba(180,136,255,.5);box-shadow:0 20px 60px #7c3aed4d;text-align:center;animation:level-up-pop .5s ease-out;pointer-events:none}@keyframes level-up-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.level-up-toast__title{font-size:1.4rem;font-weight:800;color:#7c3aed;display:block}.level-up-toast__subtitle{font-size:.82rem;color:var(--hot-pink);font-weight:600;display:block;margin-top:.3rem}.daily-login-toast{position:fixed;z-index:10250;top:50%;left:50%;transform:translate(-50%,-50%);padding:1rem 1.6rem;border-radius:var(--radius-lg);background:#fffffff5;border:2px solid rgba(255,215,0,.4);box-shadow:0 20px 60px #ffc80040;text-align:center;animation:level-up-pop .5s ease-out;pointer-events:none}.daily-login-toast__title{font-size:1.1rem;font-weight:800;color:#b8860b;display:block}.daily-login-toast__detail{font-size:.75rem;color:var(--text-muted);font-weight:600;display:block;margin-top:.2rem}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10400;background:#1e0a19b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;pointer-events:auto}.onboarding-overlay[hidden]{display:none!important}.onboarding-card{width:min(22rem,calc(100vw - 2rem));padding:1.4rem 1.2rem;border-radius:var(--radius-lg);background:#fffffff7;border:1px solid var(--hairline-pink);box-shadow:0 20px 60px #4a153838;text-align:center;animation:shop-pop .3s ease-out;pointer-events:auto}.onboarding-card__icon{font-size:2.8rem;line-height:1;display:block;margin-bottom:.4rem}.onboarding-card__title{font-size:1.25rem;font-weight:800;color:var(--hot-pink);margin-bottom:.6rem;background:linear-gradient(135deg,var(--hot-pink),var(--violet-mid));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.onboarding-card__steps{display:flex;flex-direction:column;gap:.55rem;margin-bottom:1rem}.onboarding-step{display:flex;align-items:center;gap:.6rem;font-size:.88rem;font-weight:600;color:var(--text-main);text-align:left}.onboarding-step__num{display:flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:50%;background:linear-gradient(135deg,var(--hot-pink),var(--violet-mid));color:#fff;font-size:.72rem;font-weight:800;flex-shrink:0}.onboarding-card__hint{font-size:.65rem;color:var(--text-muted);margin-top:.6rem;font-weight:500}.onboarding-card__btn{display:inline-block;padding:.65rem 2.2rem;border:none;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--hot-pink) 0%,#ff69b4 100%);color:#fff;font-weight:700;font-size:.92rem;cursor:pointer;transition:transform .12s;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:rgba(255,105,180,.3);-webkit-user-select:none;user-select:none;min-height:2.5rem;box-shadow:0 4px 16px #ff69b459}.onboarding-card__btn:hover{transform:scale(1.04)}.onboarding-card__btn--play{padding:.8rem 3rem;font-size:1.1rem;min-height:3rem;animation:play-btn-pulse 1.8s ease-in-out infinite}@keyframes play-btn-pulse{0%,to{box-shadow:0 4px 16px #ff69b459}50%{box-shadow:0 6px 28px #ff69b48c,0 0 40px #ff149333}}.streak-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.1rem .35rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,#ff6b6b2e,#ffc80033);border:1px solid rgba(255,107,107,.3);font-size:.62rem;font-weight:800;color:#e74c3c}.streak-badge[hidden]{display:none}.achievement-toast{position:fixed;z-index:10250;bottom:5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:var(--radius-lg);background:#fffffff5;border:2px solid rgba(180,136,255,.4);box-shadow:0 12px 40px #7c3aed33;animation:achievement-slide .4s ease-out;pointer-events:none;white-space:normal;max-width:calc(100vw - 2rem);text-align:center}@keyframes achievement-slide{0%{opacity:0;transform:translate(-50%) translateY(1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}.achievement-toast__icon{font-size:1.5rem}.achievement-toast__text{font-size:.75rem;font-weight:700;color:#7c3aed}.achievement-toast__name{display:block;font-size:.82rem;font-weight:800}.theme-vote-panel{position:fixed;z-index:12;top:50%;left:50%;pointer-events:auto;transform:translate(-50%,-50%);width:min(18rem,calc(100vw - 2rem));padding:.8rem;border-radius:var(--radius-lg);background:#fffffff2;border:1px solid var(--hairline-pink);box-shadow:0 16px 50px #4a153833;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);text-align:center;animation:shop-pop .28s ease-out}.theme-vote-panel[hidden]{display:none!important}.theme-vote-panel__title{font-weight:800;font-size:.85rem;color:var(--hot-pink);margin-bottom:.5rem}.theme-vote-option{display:flex;align-items:center;justify-content:space-between;padding:.45rem .6rem;border:1px solid rgba(255,182,210,.25);border-radius:var(--radius-md);margin-bottom:.35rem;cursor:pointer;transition:background .12s,border-color .12s;background:#ffffffb3}.theme-vote-option:hover{background:#ffb6d226}.theme-vote-option--selected{border-color:var(--hot-pink);background:#ffb6d22e}.theme-vote-option__name{font-weight:700;font-size:.72rem}.theme-vote-option__count{font-weight:800;font-size:.68rem;color:var(--hot-pink)}.notification-toast{position:fixed;top:4.5rem;left:50%;transform:translate(-50%);padding:.6rem 1.2rem;border-radius:var(--radius-pill);font-family:Fredoka,sans-serif;font-size:.85rem;font-weight:600;z-index:10000;pointer-events:none;white-space:nowrap;animation:notif-slide-in .3s ease-out,notif-fade-out .4s 2.4s ease-in forwards;box-shadow:0 4px 16px #00000026}.notification-toast--info{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.notification-toast--error{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff}.notification-toast--success{background:linear-gradient(135deg,#00b894,#00cec9);color:#fff}@keyframes notif-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes notif-fade-out{0%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-.5rem)}}.dock-mobile-tab,.roster-mobile-tab,.react-btn,.daily-toggle-btn,.shop-trigger-btn,.leaderboard-btn,.mobile-bottom-bar{display:none!important}.nav-bar{position:fixed;bottom:0;left:0;right:0;z-index:15;display:flex;align-items:stretch;justify-content:space-around;gap:0;min-height:3.2rem;padding:.2rem max(.25rem,env(safe-area-inset-left,0px)) calc(.2rem + env(safe-area-inset-bottom,0px)) max(.25rem,env(safe-area-inset-right,0px));background:linear-gradient(180deg,#fffcfefa,#fff2fcf5);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-top:1px solid rgba(255,190,220,.45);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -8px 28px #b464a024,inset 0 1px #ffffffb8;pointer-events:auto}.nav-bar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:.25rem .15rem;border:none;background:none;font:inherit;cursor:pointer;touch-action:manipulation;color:var(--muted);border-radius:var(--radius-sm);transition:color .15s,background .15s;position:relative;-webkit-tap-highlight-color:transparent}.nav-bar__item:hover{color:var(--pink-deep);background:#ff14930f}.nav-bar__item.is-active{color:var(--pink-deep);background:#ff14931a}.nav-bar__icon{font-size:1.25rem;line-height:1}.nav-bar__label{font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.nav-bar__badge{position:absolute;top:.02rem;right:calc(50% - 1.05rem);min-width:1rem;height:1rem;border-radius:999px;background:linear-gradient(180deg,#ff5a7a,#f36);border:2px solid #fff;font-size:.52rem;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:center;padding:0 .22rem;box-shadow:0 2px 8px #ff285a59}.nav-bar__badge[hidden]{display:none}@media(max-width:420px){.nav-bar{min-height:3.4rem;justify-content:space-between}.nav-bar__item{padding:.22rem .1rem;gap:.05rem}.nav-bar__icon{font-size:1.1rem}.nav-bar__label{font-size:.5rem;letter-spacing:.03em}.nav-bar__badge{right:.3rem}}@media(min-width:640px){.nav-bar{min-height:3.5rem}.nav-bar__label{font-size:.62rem}.nav-bar__icon{font-size:1.35rem}}.roster{position:fixed;left:max(var(--chrome-pad),env(safe-area-inset-left,0px));right:max(var(--chrome-pad),env(safe-area-inset-right,0px));bottom:calc(3.4rem + env(safe-area-inset-bottom,0px));z-index:14;width:auto;max-height:min(55vh,20rem);overflow:hidden;display:none;flex-direction:column;padding:.6rem .85rem .65rem;background:var(--panel-glass-bg);border:1px solid var(--glass-border);border-radius:calc(var(--radius-lg) + 4px);box-shadow:var(--glass-highlight),var(--shadow-sm),0 18px 48px #a064be33;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));pointer-events:auto}.roster.roster-mobile-open{display:flex}.roster.roster-mobile-open .roster-body{flex:1;min-height:0;overflow:auto;opacity:1}.customize-dock{position:fixed;right:max(var(--chrome-pad),env(safe-area-inset-right,0px));bottom:calc(3.4rem + env(safe-area-inset-bottom,0px));top:max(3.6rem,calc(env(safe-area-inset-top,0px) + 3.2rem));z-index:14;width:min(11rem,42vw);overflow:hidden;display:none;flex-direction:column;padding:.5rem .6rem;background:#fff6fce0;border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-highlight),0 8px 28px #a064be33;backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));pointer-events:auto}.customize-dock.dock-mobile-open{display:flex}.customize-dock.dock-mobile-open .dock-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.daily-challenges{top:auto!important;bottom:calc(3.4rem + env(safe-area-inset-bottom,0px))!important;left:max(var(--chrome-pad),env(safe-area-inset-left,0px))!important;max-height:min(55vh,20rem)!important;overflow:auto}.vibejam-panel{top:auto!important;bottom:calc(3.4rem + env(safe-area-inset-bottom,0px))!important;left:max(var(--chrome-pad),env(safe-area-inset-left,0px))!important;max-height:min(58vh,22rem)!important;overflow:auto}.react-panel{top:auto!important;bottom:calc(3.4rem + env(safe-area-inset-bottom,0px))!important;right:max(.45rem,env(safe-area-inset-right,0px))!important}.user-row{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.6rem}.user-row__label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.user-row__input{width:100%;padding:.4rem .55rem;border-radius:var(--radius-sm);border:1.5px solid var(--hairline-pink);background:#ffffffb3;font:inherit;font-size:.82rem;color:var(--text-body);outline:none;transition:border-color .15s}.user-row__input:focus{border-color:var(--pink-deep)}.user-row--volume .user-row__range{width:100%;accent-color:var(--pink-deep)}.legal-foot{font-size:.68rem;text-align:center;margin:.45rem 0 .15rem;color:var(--text-muted)}.legal-foot a{color:var(--pink-deep);font-weight:600}.progression-hint strong:first-child{color:var(--violet-deep)}.user-row__mp-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.user-row__mp-actions .btn-soft{font-size:.75rem}.user-row__hint{font-size:.7rem;color:var(--text-muted);margin:0;line-height:1.35}.user-account{border-top:1px solid var(--hairline-pink);padding-top:.5rem;margin-top:.15rem}.user-account__btns{display:flex;gap:.35rem;margin-top:.35rem}.user-account__btns .btn-pink,.user-account__btns .btn-soft{flex:1;font-size:.75rem;padding:.4rem .5rem}.btn-sm{font-size:.7rem!important;padding:.3rem .6rem!important}@media(min-width:640px){.roster{right:auto;width:min(28rem,calc(100vw - 2rem));left:50%;transform:translate(-50%);max-height:min(60vh,24rem)}.customize-dock{width:min(14rem,36vw)}}.runway-rhythm-hud{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end;font-family:system-ui,Segoe UI,Roboto,sans-serif}.runway-rhythm-hud[hidden]{display:none!important}.runway-rhythm-hud__meta-bar{position:absolute;top:max(.5rem,env(safe-area-inset-top,0px));left:.5rem;right:.5rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:clamp(.64rem,2.5vw,.8rem);font-weight:800;color:#f7f2ff;text-shadow:0 0 12px rgba(0,0,0,.75);pointer-events:none;z-index:2}.runway-rhythm-hud__pill{padding:.1rem .42rem;border-radius:999px;background:#ff3cac38;border:1px solid rgba(255,140,220,.45);letter-spacing:.1em;font-size:.58rem}.runway-rhythm-hud__runway-score-bar{position:absolute;top:max(1.55rem,calc(env(safe-area-inset-top,0px) + 1.35rem));left:50%;transform:translate(-50%);width:min(94vw,24rem);z-index:2;pointer-events:none;padding:.38rem .65rem;border-radius:.55rem;background:linear-gradient(90deg,#ff1e829e,#ff5abe7a,#c81e7894);border:1px solid rgba(255,200,240,.55);box-shadow:0 0 26px #ff3ca06b,inset 0 1px #ffffff38;text-align:center;font-weight:900;font-size:clamp(.6rem,2.65vw,.8rem);letter-spacing:.06em;color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.88)}.runway-rhythm-hud__runway-score-bar__inner strong{font-variant-numeric:tabular-nums}.runway-rhythm-hud__legend-btn{position:absolute;top:max(.42rem,env(safe-area-inset-top,0px));right:max(.4rem,env(safe-area-inset-right,0px));z-index:6;width:1.75rem;height:1.75rem;border-radius:50%;pointer-events:auto;touch-action:manipulation;border:1px solid rgba(255,200,255,.55);background:#0c0418c7;color:#ffe8ff;font-weight:900;font-size:.95rem;line-height:1;box-shadow:0 0 14px #ff50c859;cursor:pointer}.runway-rhythm-hud__legend-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;pointer-events:auto;touch-action:manipulation;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#03010ad1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.runway-rhythm-hud__legend-sheet[hidden]{display:none!important;pointer-events:none!important}.runway-rhythm-hud__legend-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:min(22rem,100%);margin-bottom:.55rem;font-weight:900;font-size:clamp(.72rem,3vw,.92rem);letter-spacing:.1em;text-transform:uppercase;color:#ffb8ec}.runway-rhythm-hud__legend-close{pointer-events:auto;width:1.85rem;height:1.85rem;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#00000059;color:#fff;font-size:1.1rem;line-height:1;cursor:pointer}.runway-rhythm-hud__legend-list{list-style:none;margin:0;padding:.55rem .65rem;width:min(22rem,100%);border-radius:.55rem;border:1px solid rgba(255,140,220,.45);background:#080212eb;box-shadow:0 0 22px #ff3ca040}.runway-rhythm-hud__legend-row{display:flex;align-items:center;gap:.55rem;padding:.35rem .15rem;border-bottom:1px solid rgba(255,255,255,.08);font-weight:700;font-size:clamp(.68rem,2.8vw,.82rem);color:#f7f2ff}.runway-rhythm-hud__legend-row:last-child{border-bottom:none}.runway-rhythm-hud__legend-emoji{font-size:1.35rem;line-height:1}.runway-rhythm-hud__legend-name{letter-spacing:.04em}.runway-rhythm-hud__top{position:absolute;top:max(3.5rem,calc(env(safe-area-inset-top,0px) + 3.15rem));left:.5rem;right:.5rem;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:.5rem;align-items:start;pointer-events:none}.runway-rhythm-hud__song{display:flex;gap:.4rem;align-items:center;background:#080210b8;border:1px solid rgba(255,100,200,.35);border-radius:.55rem;padding:.35rem .45rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:100%}.runway-rhythm-hud__art{width:2.35rem;height:2.35rem;border-radius:.35rem;background:linear-gradient(145deg,#f6c,#84f);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#fff;flex-shrink:0}.runway-rhythm-hud__meta{min-width:0;flex:1}.runway-rhythm-hud__title{font-size:clamp(.68rem,2.4vw,.82rem);font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.runway-rhythm-hud__artist{font-size:clamp(.58rem,2vw,.68rem);color:#ffc8f0bf;margin-bottom:.2rem}.runway-rhythm-hud__progress{height:.22rem;border-radius:999px;background:#ffffff1f;overflow:hidden}.runway-rhythm-hud__progress-bar{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#0ef,#f4c);transition:width .08s linear}.runway-rhythm-hud__times{font-size:.58rem;color:#ffffff8c;margin-top:.12rem;font-variant-numeric:tabular-nums}.runway-rhythm-hud__center-panel{text-align:center;min-height:3.2rem}.runway-rhythm-hud__feedback{font-size:clamp(.85rem,3.2vw,1.15rem);font-weight:900;letter-spacing:.06em;min-height:1.2em;text-shadow:0 0 12px rgba(0,255,255,.55)}.runway-rhythm-hud__feedback--perfect{color:#7dffb0;text-shadow:0 0 16px rgba(0,255,200,.75)}.runway-rhythm-hud__feedback--good{color:#ffe566}.runway-rhythm-hud__feedback-pts{font-size:clamp(.62rem,2.2vw,.82rem);font-weight:800;color:#ffffffeb;min-height:1em;font-variant-numeric:tabular-nums}.runway-rhythm-hud__combo-big{font-size:clamp(1.5rem,6vw,2.4rem);font-weight:900;color:#fff;line-height:1;text-shadow:0 0 20px rgba(255,0,200,.65);font-variant-numeric:tabular-nums}.runway-rhythm-hud__combo-label{font-size:.55rem;font-weight:700;letter-spacing:.2em;color:#ffffff80}.runway-rhythm-hud__right-panel{text-align:right;padding:.2rem .35rem;background:#0802108c;border-radius:.5rem;border:1px solid rgba(100,220,255,.25)}.runway-rhythm-hud__score-label{font-size:.52rem;font-weight:700;letter-spacing:.14em;color:#ffffff73}.runway-rhythm-hud__right-panel .runway-rhythm-hud__score{font-size:clamp(1rem,4vw,1.45rem);text-shadow:0 0 14px rgba(255,200,100,.45);font-variant-numeric:tabular-nums}.runway-rhythm-hud__stars{font-size:.62rem;letter-spacing:.06em;color:#ffe066;margin-top:.08rem}.runway-rhythm-hud__acc{font-size:.58rem;color:#c8ffffbf;margin-top:.06rem}.runway-rhythm-hud__side-col{position:absolute;left:max(.35rem,env(safe-area-inset-left,0px));top:42%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:.2rem;pointer-events:none}.runway-rhythm-hud__mult-label{font-size:.5rem;font-weight:800;letter-spacing:.12em;color:#ffb4ffb3}.runway-rhythm-hud__mult-track{width:.42rem;height:5.5rem;border-radius:999px;background:#00000073;border:1px solid rgba(255,100,200,.35);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.runway-rhythm-hud__mult-fill{width:100%;height:8%;border-radius:999px;background:linear-gradient(180deg,#fe8,#f4a);box-shadow:0 0 10px #ff64c899;transition:height .12s ease-out}.runway-rhythm-hud__coach{position:absolute;bottom:max(5.4rem,calc(4.8rem + env(safe-area-inset-bottom,0px)));left:50%;transform:translate(-50%);max-width:min(92vw,22rem);text-align:center;font-weight:900;font-size:clamp(.62rem,2.8vw,.82rem);letter-spacing:.06em;color:#fff;text-shadow:0 0 14px rgba(0,0,0,.85),0 0 22px rgba(255,60,200,.55);pointer-events:none;transition:opacity .2s ease}.runway-rhythm-hud__howto{position:absolute;bottom:max(7.85rem,calc(7.1rem + env(safe-area-inset-bottom,0px)));left:50%;transform:translate(-50%);max-width:min(94vw,24rem);padding:.42rem .65rem .48rem;text-align:center;pointer-events:none;z-index:52;border-radius:.55rem;background:#06020ee0;border:1px solid rgba(255,120,210,.55);box-shadow:0 0 0 1px #000000a6,0 0 22px #ff3cb459}.runway-rhythm-hud__howto-title{display:block;font-size:.52rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#ffdcfaeb;margin-bottom:.2rem;text-shadow:0 0 14px rgba(255,80,200,.45)}.runway-rhythm-hud__howto-copy{margin:0;font-size:clamp(.58rem,2.4vw,.74rem);font-weight:700;line-height:1.35;color:#f7f2ff;text-shadow:0 1px 8px rgba(0,0,0,.9)}.runway-rhythm-hud__howto-copy strong{color:#fff;font-weight:800}.runway-rhythm-hud__howto-pill{display:inline-block;padding:.06rem .28rem;border-radius:999px;font-weight:800;font-size:.92em;border:1px solid rgba(255,255,255,.35)}.runway-rhythm-hud__howto-pill--pink{background:linear-gradient(180deg,#ff50b480,#c814788c);color:#fff}.runway-rhythm-hud__howto-pill--blue{background:linear-gradient(180deg,#3cd2ff73,#1478c88c);color:#fff}.runway-rhythm-hud__howto-pill--orange{background:linear-gradient(180deg,#ffaa5080,#dc64148c);color:#1a0a04}.runway-rhythm-hud__queue-wrap{position:absolute;bottom:max(4.05rem,calc(3.5rem + env(safe-area-inset-bottom,0px)));left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.18rem;pointer-events:none;max-width:min(96vw,26rem)}.runway-rhythm-hud__queue-title{font-size:.48rem;font-weight:900;letter-spacing:.22em;text-transform:uppercase;color:#ffd2fab8;text-shadow:0 1px 8px rgba(0,0,0,.85)}.runway-rhythm-hud__queue-overflow{font-size:clamp(.52rem,2.2vw,.65rem);font-weight:800;color:#ffc878f2;text-shadow:0 0 10px rgba(0,0,0,.75)}.runway-rhythm-hud__queue-strip{display:flex;gap:.22rem;pointer-events:none;flex-wrap:nowrap;justify-content:center}.runway-rhythm-hud__queue-cell{width:1.65rem;height:1.65rem;border-radius:.28rem;border:1px solid rgba(255,255,255,.12);background:#06030d8c;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:.35}.runway-rhythm-hud__queue-cell--filled{opacity:1;border-color:#ff78dc73;box-shadow:0 0 10px #ff50c840}.runway-rhythm-hud__queue-cell--latest{box-shadow:0 0 0 2px #ffffff8c,0 0 12px #ff64c880}.runway-rhythm-hud__queue-cell--done{opacity:.78;border-color:#78ffbe61}.runway-rhythm-hud__queue-cell--current{opacity:1;border-color:#ffe68ce0;box-shadow:0 0 0 2px #ffffff9e,0 0 18px #ffc85a8c;transform:scale(1.1)}.runway-rhythm-hud__queue-cell--pending{opacity:.36}.runway-rhythm-hud__queue-cell--empty{opacity:.18;border-style:dashed}.runway-rhythm-hud__queue-cell--slot-empty{opacity:.28;border-style:dashed;border-color:#ffffff24}.runway-rhythm-hud--perform-mode .runway-rhythm-hud__zones,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__lanes-scroll,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__bottom-row,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__side-col,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__howto,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__runway-score-bar,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__legend-btn,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__top .runway-rhythm-hud__song,.runway-rhythm-hud--perform-mode .runway-rhythm-hud__queue-wrap{display:none!important}.runway-rhythm-hud--perform-mode .runway-rhythm-hud__perform{top:28%}.runway-rhythm-hud--perform-mode .runway-rhythm-hud__coach{bottom:max(38vh,13.25rem);max-width:min(94vw,24rem);font-size:clamp(.66rem,2.9vw,.86rem)}.runway-rhythm-hud__perform-steps{position:absolute;bottom:max(22vh,9.5rem);left:50%;transform:translate(-50%);width:min(98vw,36rem);display:flex;flex-direction:row;flex-wrap:nowrap;gap:.35rem;overflow-x:auto;overflow-y:hidden;padding:.25rem .35rem;pointer-events:none;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.runway-rhythm-hud__perform-steps[hidden]{display:none!important}.runway-rhythm-hud__perform-step{flex:0 0 auto;min-width:4.6rem;max-width:5.5rem;display:flex;flex-direction:column;align-items:center;gap:.12rem;padding:.32rem .28rem .38rem;border-radius:.45rem;border:1px solid rgba(255,255,255,.14);background:#06020eb8;box-shadow:inset 0 0 0 1px #00000059;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.runway-rhythm-hud__perform-step__idx{font-size:.48rem;font-weight:900;letter-spacing:.14em;color:#ffc8f08c}.runway-rhythm-hud__perform-step__emoji{font-size:clamp(1.15rem,4.5vw,1.55rem);line-height:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.55))}.runway-rhythm-hud__perform-step__name{font-size:clamp(.48rem,1.9vw,.58rem);font-weight:900;letter-spacing:.06em;color:#fff8ffeb;text-align:center;line-height:1.1}.runway-rhythm-hud__perform-step[data-perform-state=pending]{opacity:.45}.runway-rhythm-hud__perform-step[data-perform-state=done]{opacity:.72;border-color:#78ffbe59}.runway-rhythm-hud__perform-step[data-perform-state=live]{opacity:1;border-color:#ffe68cf2;box-shadow:0 0 0 2px #ffffff73,0 0 22px #ffc85a8c;transform:scale(1.06)}.runway-rhythm-hud__perform-progress{position:absolute;bottom:max(16vh,7.25rem);left:50%;transform:translate(-50%);width:min(92vw,22rem);pointer-events:none}.runway-rhythm-hud__perform-progress[hidden]{display:none!important}.runway-rhythm-hud__perform-progress__track{height:.38rem;border-radius:999px;background:#00000073;border:1px solid rgba(255,140,220,.35);overflow:hidden}.runway-rhythm-hud__perform-progress__fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#f6c,#6ef,#fc4);box-shadow:0 0 12px #ff78c88c;transition:width .28s ease-out}.runway-rhythm-hud__perform-progress__caption{margin-top:.28rem;text-align:center;font-weight:900;font-size:clamp(.55rem,2.4vw,.72rem);letter-spacing:.05em;color:#fff;text-shadow:0 0 12px rgba(0,0,0,.85),0 0 18px rgba(255,60,180,.45)}.runway-rhythm-hud--perform-mode .runway-rhythm-hud__perform-steps{bottom:max(24vh,10.5rem)}.runway-rhythm-hud--perform-mode .runway-rhythm-hud__perform-progress{bottom:max(17vh,7.75rem)}.runway-rhythm-hud__perform{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);text-align:center;padding:.45rem .85rem;border-radius:.55rem;background:#080212d1;border:1px solid rgba(255,120,220,.5);box-shadow:0 0 28px #ff3cb459;pointer-events:none}.runway-rhythm-hud__perform[hidden]{display:none!important}.runway-rhythm-hud__perform-title{display:block;font-weight:900;font-size:clamp(.85rem,3.5vw,1.05rem);letter-spacing:.12em;color:#ffb8ec}.runway-rhythm-hud__perform-sub{display:block;margin-top:.15rem;font-size:clamp(.58rem,2.2vw,.72rem);color:#ffe6fad9}.runway-rhythm-hud__bottom-row{position:absolute;bottom:calc(38vh + max(.5rem,env(safe-area-inset-bottom,0px)));left:.45rem;right:.45rem;display:flex;justify-content:space-between;align-items:flex-end;gap:.5rem;pointer-events:none}.runway-rhythm-hud__hp{display:flex;align-items:center;gap:.35rem;background:#0802109e;padding:.25rem .45rem;border-radius:.45rem;border:1px solid rgba(100,255,160,.25)}.runway-rhythm-hud__hp-icon{color:#ff6b9d;font-size:.95rem}.runway-rhythm-hud__hp-track{display:flex;gap:.1rem;width:auto;min-width:4.6rem;height:.4rem;align-items:stretch;background:transparent}.runway-rhythm-hud__hp-seg{flex:1;min-width:.48rem;border-radius:.12rem;background:#0000006b;border:1px solid rgba(0,255,140,.18);transition:background .12s ease,box-shadow .12s ease,border-color .12s ease}.runway-rhythm-hud__hp-seg--lit{background:linear-gradient(180deg,#5cffbb,#0c8);border-color:#a0ffd2a6;box-shadow:0 0 8px #00ffb473}.runway-rhythm-hud__next{text-align:right;background:#0802109e;padding:.25rem .45rem;border-radius:.45rem;border:1px solid rgba(255,200,100,.3);min-width:3.2rem}.runway-rhythm-hud__next-label{font-size:.5rem;font-weight:800;letter-spacing:.18em;color:#ffdca0a6}.runway-rhythm-hud__next-emoji{font-size:1.65rem;line-height:1.2}.runway-rhythm-hud__next-lane{font-size:.55rem;color:#ffffff8c}.runway-rhythm-hud__lanes-scroll{flex:0 0 auto;display:flex;flex-direction:column;width:100%;max-height:min(30vh,17.5rem);min-height:10.5rem;padding:0 .28rem;gap:.18rem;pointer-events:none}.runway-rhythm-hud__lanes-scroll[hidden]{display:none!important}.runway-rhythm-hud__lanes-perspective{flex:1 1 auto;min-height:0;perspective:520px;perspective-origin:50% 92%}.runway-rhythm-hud__lanes-perspective .runway-rhythm-hud__lanes-grid{width:100%;height:100%;transform:rotateX(11deg) scale(.97);transform-origin:50% 100%}.runway-rhythm-hud__lanes-grid{flex:1 1 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.12rem;min-height:0}.runway-rhythm-hud__lane-track{position:relative;overflow:hidden;border-radius:.42rem .42rem 0 0;border:1px solid rgba(255,255,255,.16);border-bottom:none;background:linear-gradient(180deg,#0a0416b8,#0a041647);box-shadow:inset 0 0 0 1px #00000059}.runway-rhythm-hud__lane-track--left{box-shadow:inset 0 0 0 1px #00000059,inset 0 -12px 24px #ff288c1f}.runway-rhythm-hud__lane-track--center{box-shadow:inset 0 0 0 1px #00000059,inset 0 -12px 24px #28c8ff1a}.runway-rhythm-hud__lane-track--right{box-shadow:inset 0 0 0 1px #00000059,inset 0 -12px 24px #ffa03c1f}.runway-rhythm-hud:not(.runway-rhythm-hud--perform-mode) .runway-rhythm-hud__lane-track{background:linear-gradient(180deg,#0a041657,#0a04160f)}.runway-rhythm-hud:not(.runway-rhythm-hud--perform-mode) .runway-rhythm-hud__lanes-scroll{max-height:min(26vh,15.5rem)}.runway-rhythm-hud:not(.runway-rhythm-hud--perform-mode) .runway-rhythm-hud__zone--left{background:radial-gradient(ellipse 88% 85% at 50% 100%,rgba(255,60,200,.5) 0%,rgba(255,20,140,.26) 42%,transparent 68%),linear-gradient(180deg,#f0a0,#ff149342 52%,#ff00aa8c)}.runway-rhythm-hud:not(.runway-rhythm-hud--perform-mode) .runway-rhythm-hud__zone--right{background:radial-gradient(ellipse 88% 85% at 50% 100%,rgba(255,200,80,.52) 0%,rgba(255,130,30,.28) 44%,transparent 68%),linear-gradient(180deg,#ffa02800,#ff8c0047 52%,#ff6e008c)}.runway-rhythm-hud:not(.runway-rhythm-hud--perform-mode) .runway-rhythm-hud__zone--center{background:radial-gradient(ellipse 88% 85% at 50% 100%,rgba(80,230,255,.48) 0%,rgba(0,170,255,.28) 44%,transparent 68%),linear-gradient(180deg,#00dcff00,#00c8ff4d,#00aaff94)}.runway-rhythm-hud__lane-bullseye{position:absolute;left:50%;bottom:5%;transform:translate(-50%);width:min(78%,5.5rem);aspect-ratio:1;max-height:52%;pointer-events:none;z-index:1}.runway-rhythm-hud__lane-bullseye__ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;box-sizing:border-box;border-style:solid;border-color:#ffffff61;box-shadow:inset 0 0 14px #ffffff1f,0 0 16px #ffffff2e}.runway-rhythm-hud__lane-bullseye__ring--outer{width:100%;height:100%;border-width:2px;opacity:.85}.runway-rhythm-hud__lane-bullseye__ring--mid{width:62%;height:62%;border-width:2px;opacity:.95}.runway-rhythm-hud__lane-bullseye__dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:22%;height:22%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fffffff2,#ffffff59 55%,#ffffff1f);box-shadow:0 0 0 1px #ffffff8c,0 0 18px #ffffffa6}.runway-rhythm-hud__lane-track--left .runway-rhythm-hud__lane-bullseye__ring{border-color:#ff78c8a6;box-shadow:inset 0 0 18px #ff3ca059,0 0 20px #ff50b473}.runway-rhythm-hud__lane-track--left .runway-rhythm-hud__lane-bullseye__dot{background:radial-gradient(circle at 35% 30%,#fff,#f6c 72%,#ff1493);box-shadow:0 0 0 2px #ffc8f0e6,0 0 22px #ff3cb4d9}.runway-rhythm-hud__lane-track--center .runway-rhythm-hud__lane-bullseye__ring{border-color:#78e6ffb3;box-shadow:inset 0 0 18px #28c8ff59,0 0 20px #3cd2ff73}.runway-rhythm-hud__lane-track--center .runway-rhythm-hud__lane-bullseye__dot{background:radial-gradient(circle at 35% 30%,#fff,#6ef 70%,#00a8ff);box-shadow:0 0 0 2px #c8fafff2,0 0 22px #28c8ffd9}.runway-rhythm-hud__lane-track--right .runway-rhythm-hud__lane-bullseye__ring{border-color:#ffc878b8;box-shadow:inset 0 0 18px #ffa03c61,0 0 20px #ffaa507a}.runway-rhythm-hud__lane-track--right .runway-rhythm-hud__lane-bullseye__dot{background:radial-gradient(circle at 35% 30%,#fff,#fc6 68%,#ff8c22);box-shadow:0 0 0 2px #fff0c8f2,0 0 22px #ffa028e0}.runway-rhythm-hud__lane-track--left{background:radial-gradient(ellipse 95% 72% at 50% 100%,rgba(255,50,160,.42),transparent 58%),linear-gradient(180deg,#0a0416b8,#0a041647)}.runway-rhythm-hud__lane-track--center{background:radial-gradient(ellipse 95% 72% at 50% 100%,rgba(40,200,255,.38),transparent 58%),linear-gradient(180deg,#0a0416b8,#0a041647)}.runway-rhythm-hud__lane-track--right{background:radial-gradient(ellipse 95% 72% at 50% 100%,rgba(255,160,40,.42),transparent 58%),linear-gradient(180deg,#0a0416b8,#0a041647)}.runway-rhythm-hud__lane-note{position:absolute;left:50%;transform:translate(-50%,-50%);font-size:clamp(1.75rem,7vw,2.65rem);line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none;text-shadow:0 2px 10px rgba(0,0,0,.9),0 0 16px rgba(255,100,200,.45);will-change:top,opacity}.runway-rhythm-hud__lanes-hitline{flex:0 0 auto;height:.22rem;margin:0 .15rem;border-radius:999px;background:linear-gradient(90deg,#f6c,#6ef,#fc4);box-shadow:0 0 12px #ffffffbf,0 0 22px #ff50c88c}.runway-rhythm-hud__lanes-scroll:not([hidden])~.runway-rhythm-hud__zones{min-height:28vh}.runway-rhythm-hud__zones{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;min-height:38vh;pointer-events:auto;touch-action:manipulation}.runway-rhythm-hud__zone{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.12rem;padding-bottom:max(1.2rem,env(safe-area-inset-bottom,0px));font-size:clamp(.72rem,2.8vw,.95rem);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fffffff5;text-shadow:0 0 1px rgba(0,0,0,.95),0 2px 12px rgba(74,21,56,.65);background:linear-gradient(180deg,#ff69b400,#ff149324 55%,#ff00aa47);border:1px solid rgba(255,255,255,.22);border-bottom:none;box-shadow:inset 0 0 0 1px #00000059;-webkit-user-select:none;user-select:none;transition:filter .15s ease,border-color .15s ease}.runway-rhythm-hud__zone:active{filter:brightness(1.12)}.runway-rhythm-hud__zone--left{border-radius:0 .5rem 0 0;border-color:#ff8cdcb8;background:radial-gradient(ellipse 88% 85% at 50% 100%,rgba(255,60,200,.72) 0%,rgba(255,20,140,.38) 42%,transparent 68%),linear-gradient(180deg,#f0a0,#ff149361 52%,#ff00aad1);box-shadow:inset 0 0 0 1px #00000059,0 0 28px #ff3cb48c,0 0 60px #ff28a047}.runway-rhythm-hud__zone--right{border-radius:.5rem 0 0;border-color:#ffd28cbf;background:radial-gradient(ellipse 88% 85% at 50% 100%,rgba(255,200,80,.75) 0%,rgba(255,130,30,.42) 44%,transparent 68%),linear-gradient(180deg,#ffa02800,#ff8c0066 52%,#ff6e00d1);box-shadow:inset 0 0 0 1px #00000059,0 0 28px #ffaa3c8c,0 0 60px #ff8c284d}.runway-rhythm-hud__zone--center{border-color:#96f5ffc7;background:radial-gradient(ellipse 88% 85% at 50% 100%,rgba(80,230,255,.68) 0%,rgba(0,170,255,.4) 44%,transparent 68%),linear-gradient(180deg,#00dcff00,#00c8ff6b,#00aaffd9);box-shadow:inset 0 0 0 1px #00000059,0 0 28px #3cdcff85,0 0 60px #28c8ff47}.runway-rhythm-hud__zone span{padding:.35rem .5rem;border-radius:999px;background:#4a153838}.runway-rhythm-hud__lane-shape{font-size:.78rem;line-height:1;opacity:.95;text-shadow:0 1px 4px rgba(0,0,0,.35)}.runway-rhythm-hud__hand-wrap{position:fixed;bottom:max(40vh,8.75rem);left:50%;transform:translate(-50%);z-index:46;pointer-events:none;transition:left .2s ease-out}.runway-rhythm-hud__hand{display:block;font-size:clamp(1.75rem,6vw,2.35rem);filter:drop-shadow(0 3px 8px rgba(0,0,0,.45));animation:runwayRhythmHandNudge .9s ease-in-out infinite}@keyframes runwayRhythmHandNudge{0%,to{margin-top:0}50%{margin-top:-6px}}html.slay-reduce-motion .runway-rhythm-hud__hand{animation:none}html.slay-reduce-motion .runway-rhythm-hud__flash{opacity:0!important;transition:none!important}html.slay-reduce-motion .runway-rhythm-hud--crowd-pulse .runway-rhythm-hud__zone--left{animation:none!important;filter:none!important}.runway-rhythm-hud--crowd-pulse .runway-rhythm-hud__zone--left{animation:runwayRhythmCrowdPulse .38s ease-out}html.slay-reduce-motion .runway-rhythm-hud__lanes-perspective .runway-rhythm-hud__lanes-grid,html.slay-reduce-motion .runway-rhythm-hud__perform-step[data-perform-state=live]{transform:none}@media(max-width:480px){.runway-rhythm-hud__zones{min-height:32vh}.runway-rhythm-hud__next-emoji{font-size:1.95rem}.runway-rhythm-hud__queue-cell{width:1.78rem;height:1.78rem;font-size:1.05rem}}@media(min-width:768px)and (max-width:1024px){.runway-rhythm-hud__next-emoji{font-size:1.85rem}}@keyframes runwayRhythmCrowdPulse{0%{filter:brightness(1)}40%{filter:brightness(1.45) saturate(1.35)}to{filter:brightness(1)}}.runway-rhythm-hud__score{font-weight:800;color:#fff}.runway-rhythm-hud__flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:48;background:#fff;opacity:0;pointer-events:none;transition:opacity .08s ease-out}.runway-rhythm-hud__flash.runway-rhythm-hud__flash--lane-left{background:radial-gradient(ellipse 125% 95% at 50% 100%,rgba(255,120,220,.95) 0%,rgba(255,40,150,.62) 32%,rgba(120,20,80,.28) 55%,transparent 72%)}.runway-rhythm-hud__flash.runway-rhythm-hud__flash--lane-center{background:radial-gradient(ellipse 125% 95% at 50% 100%,rgba(120,240,255,.95) 0%,rgba(30,180,255,.58) 34%,rgba(20,60,100,.26) 56%,transparent 74%)}.runway-rhythm-hud__flash.runway-rhythm-hud__flash--lane-right{background:radial-gradient(ellipse 125% 95% at 50% 100%,rgba(255,220,120,.98) 0%,rgba(255,130,40,.62) 34%,rgba(100,50,20,.28) 56%,transparent 74%)}.runway-rhythm-hud__flash.runway-rhythm-hud__flash--grade-perfect{filter:saturate(1.15) brightness(1.08)}
