:root{--visual-viewport-height:100dvh;--visual-viewport-width:100dvw;--visual-viewport-top:0px;--visual-viewport-left:0px;color:#eef2f6;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#17191d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app,#game-root{width:100%;height:var(--visual-viewport-height);margin:0;overflow:hidden}#game-root{background:#080b0d}#game-root canvas{opacity:1;transition:opacity .16s ease-out}#game-root[data-gameplay-visible=false] canvas{visibility:hidden;opacity:0}#app.diagnostics-root{min-height:var(--visual-viewport-height);height:auto;overflow:auto}body:has(.diagnostics-root){min-height:var(--visual-viewport-height);height:auto;overflow:auto}button{color:#121417;min-height:44px;font:inherit;background:#f4c542;border:0;border-radius:8px;padding:0 18px;font-weight:700}button.secondary{color:#eef2f6;background:#2b3038}.sensor-diagnostics{min-height:var(--visual-viewport-height);color:#eef2f6;background:radial-gradient(circle at 18% 14%,#f4c54229,#0000 30%),linear-gradient(135deg,#15181d,#24272f 48%,#111318);padding:clamp(16px,3vw,32px)}.sensor-diagnostics__header{justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 18px;display:flex}.sensor-diagnostics__eyebrow{color:#f4c542;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}.sensor-diagnostics h1,.sensor-diagnostics h2{letter-spacing:0;margin:0}.sensor-diagnostics h1{font-size:clamp(28px,5vw,54px);line-height:1}.sensor-diagnostics h2{margin-bottom:14px;font-size:18px}.sensor-diagnostics__status{color:#101216;text-transform:uppercase;background:#f4c542;border:1px solid #ffffff24;border-radius:8px;flex:none;padding:10px 12px;font-size:13px;font-weight:900}.sensor-diagnostics__status[data-state=sensor-error],.sensor-diagnostics__status[data-state=permission-denied],.sensor-diagnostics__status[data-state=unsupported]{color:#fff;background:#c43d3d}.sensor-diagnostics__controls,.sensor-diagnostics__scenario-bar{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.sensor-diagnostics__scenario{min-height:38px;padding:0 12px;font-size:13px}.sensor-diagnostics__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.sensor-diagnostics__panel{background:#0b0d11bd;border:1px solid #ffffff1f;border-radius:8px;min-width:0;padding:16px;box-shadow:inset 0 1px #ffffff0d}.sensor-diagnostics__panel--visual{grid-template-rows:auto auto 1fr;display:grid}.sensor-diagnostics dl{grid-template-columns:minmax(104px,1fr) minmax(72px,auto);gap:8px 12px;margin:0;font-size:13px;display:grid}.sensor-diagnostics dt{overflow-wrap:anywhere;color:#9ba6b5;min-width:0}.sensor-diagnostics dd{color:#fff;font-variant-numeric:tabular-nums;text-align:right;min-width:0;margin:0}.tilt-pad{aspect-ratio:1;background-color:#ffffff09;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:25% 25%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #f4c5426b;border-radius:8px;width:min(100%,280px);margin:0 auto 16px;position:relative}.tilt-pad:before,.tilt-pad:after{content:"";background:#f4c54259;position:absolute}.tilt-pad:before{height:1px;top:50%;left:0;right:0}.tilt-pad:after{width:1px;top:0;bottom:0;left:50%}.tilt-pad__dot{z-index:1;aspect-ratio:1;background:#f4c542;border-radius:50%;width:28px;position:absolute;top:calc(50% - 14px);left:calc(50% - 14px);box-shadow:0 0 18px #f4c542b8}@media (width<=1080px){.sensor-diagnostics__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sensor-diagnostics__header{display:grid}.sensor-diagnostics__grid{grid-template-columns:1fr}.sensor-diagnostics__controls>button,.sensor-diagnostics__scenario{flex:calc(50% - 8px)}}.overlay{z-index:10;text-align:center;background:radial-gradient(circle at 50% 46%,#2a2f36fa,#0000 62%),#0c0e11fa;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.overlay[data-visible=true]{display:flex}.overlay__panel{z-index:3;width:min(520px,100%);position:relative}.overlay__deda{z-index:2;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 24px 34px #0000008a);width:auto;max-width:34vw;height:min(84vh,760px);position:absolute;bottom:-4vh}.overlay__deda--guide,.overlay__deda--install,.overlay__deda--welcome{left:clamp(-54px,-2.5vw,-12px)}.overlay__deda--install{height:min(88vh,790px);bottom:-9vh}.overlay__deda--calm,.overlay__deda--encourage{right:clamp(-38px,-1.5vw,-8px)}.overlay[data-overlay=start] .overlay__deda{z-index:4;opacity:.34;height:min(72vh,620px)}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]) .overlay__panel{width:min(760px,76vw);margin-left:-8vw}.overlay__command{letter-spacing:0;margin:0 0 12px}.overlay__message,.overlay__action{color:#bac3cf;margin:0 0 20px}.result-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 20px;display:grid}.result-stats[hidden]{display:none}.result-stats div{background:#080a0d9e;border:1px solid #ffffff1f;border-radius:8px;padding:10px}.result-stats dt{color:#9ba6b5;margin:0 0 5px;font-size:12px;font-weight:800}.result-stats dd{color:#fff7df;margin:0;font-size:22px;font-weight:900}.overlay[data-overlay=rotate]{padding:32px}.overlay[data-overlay=rotate] .overlay__panel{width:min(680px,100%)}.overlay[data-overlay=rotate] .overlay__command{text-wrap:balance;font-size:clamp(56px,13vw,88px);line-height:.98}.overlay[data-overlay=rotate] .overlay__message{color:#eef2f6;text-wrap:balance;font-size:clamp(38px,9vw,62px);font-weight:800;line-height:1}.overlay[data-overlay=start]{background:linear-gradient(#000000f5,#100e0afa),#020304;justify-content:center;align-items:center;padding:0;overflow:hidden}.overlay[data-overlay=start] .overlay__panel{grid-template-rows:auto 1fr;width:100%;max-width:none;height:100%;padding-top:0;display:grid;position:relative}.overlay[data-overlay=start] .overlay__command{z-index:1;color:#f8f8f8;text-wrap:balance;text-shadow:0 10px 28px #000000c7;width:min(560px,58vw);margin:clamp(14px,3vh,34px) auto 0;font-size:clamp(34px,8.8vh,92px);font-weight:900;line-height:.94}.overlay[data-overlay=start] .overlay__message{display:none}.overlay[data-overlay=start] .overlay__action{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.overlay[data-overlay=start] .overlay__deda{display:none}.overlay[data-overlay=start] .overlay__actions{align-items:stretch;width:100%;height:100%;min-height:0;display:grid;position:relative}.activity-shell{grid-template-rows:auto auto 1fr auto;gap:clamp(3px,1vh,12px);min-height:0;padding:clamp(10px,2.1vh,22px) clamp(14px,3vw,38px) clamp(70px,14vh,124px);display:grid;position:absolute;inset:0}.activity-shell:before{content:"";opacity:.8;pointer-events:none;border:1px solid #ffc40021;border-radius:50%;position:absolute;inset:10% 14% 6%}.activity-topbar{z-index:2;pointer-events:none;justify-content:flex-end;align-items:flex-start;display:flex;position:absolute;top:clamp(10px,2.4vh,24px);left:clamp(14px,3vw,48px);right:clamp(14px,3vw,48px)}.activity-sparks{background:#080808e0;border:2px solid #ffffff38;border-radius:999px;grid-template-columns:auto auto;align-items:center;column-gap:8px;min-width:clamp(104px,20vh,170px);padding:clamp(7px,1.5vh,13px) clamp(12px,2.6vh,22px);line-height:1;display:grid;box-shadow:inset 0 0 0 1px #ffffff0f}.activity-sparks__bolt{color:#ffc400;font-size:clamp(20px,4.8vh,42px)}.activity-sparks__value{color:#f8f8f8;font-size:clamp(20px,5vh,42px);font-weight:900}.activity-sparks__label{color:#ffc400;text-transform:uppercase;grid-column:1/-1;justify-self:center;margin-top:6px;font-size:clamp(10px,2vh,16px);font-weight:900}.activity-lead{z-index:1;color:#ffffffb8;text-align:center;align-self:start;margin:clamp(16px,4vh,34px) auto 0;font-size:clamp(15px,3.2vh,28px);font-weight:800;line-height:1.05}.activity-enable{z-index:2;color:#121417;text-transform:uppercase;background:#f4c542;border:1px solid #ffc400b8;border-radius:999px;justify-self:center;min-height:clamp(32px,7vh,48px);padding:0 clamp(14px,3vw,24px);font-size:clamp(12px,2.5vh,17px);font-weight:900;line-height:1;box-shadow:0 0 20px #ffc40057}.activity-enable[hidden]{display:none}.activity-stage{z-index:1;grid-template-columns:minmax(76px,.34fr) minmax(430px,920px) minmax(76px,.34fr);justify-content:center;align-items:center;gap:clamp(10px,2vw,28px);min-height:0;display:grid}.activity-select{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:clamp(10px,2vw,18px);min-width:0;display:grid}.activity-card{color:#f8f8f8;opacity:1;text-align:center;transform-origin:50%;background:linear-gradient(#2a271ec7,#0a0a0aeb),#0c0c0ce0;border:1px solid #ffc4006b;border-radius:8px;grid-template-rows:auto minmax(58px,1fr) auto auto auto auto;justify-items:center;min-height:clamp(152px,37vh,360px);padding:clamp(10px,2vh,20px);transition:background .14s,border-color .14s,box-shadow .14s,opacity .14s,transform .14s;display:grid;position:relative;box-shadow:0 16px 38px #00000075,inset 0 0 28px #ffc40014}.activity-card[data-selected=true]{background:linear-gradient(#3a3014d1,#100e0af5),#100e0af5;border-color:#f4c542;transform:translateY(-1.2%);box-shadow:0 0 0 3px #ffc4004d,0 0 34px #ffc40080,inset 0 0 28px #ffc40021}.activity-card[data-selected=true]:after{content:"";pointer-events:none;border:1px solid #ffc40073;border-radius:6px;position:absolute;inset:7px}.activity-card[data-locked=true]{color:#ffffff94;background:linear-gradient(#1c1c1cc2,#070707e6),#070707e6;border-color:#ffffff24;transform:none;box-shadow:inset 0 0 0 999px #00000038}.activity-card[data-locked=true][data-selected=true]{color:#ffffffdb;border-color:#67ddffb8;transform:translateY(-1.2%);box-shadow:0 0 0 3px #67ddff29,0 0 30px #67ddff33,inset 0 0 0 999px #00000024}.activity-card__badge{color:#141414;text-transform:uppercase;background:0 0;border-radius:999px;align-self:start;min-height:clamp(18px,4vh,32px);padding:5px 12px;font-size:clamp(10px,2.2vh,14px);font-weight:900;line-height:1}.activity-card__badge:not(:empty){background:#f4c542}.activity-card[data-locked=true] .activity-card__badge:before{content:"Закрыто";color:#ffffffd6}.activity-card[data-completed=true] .activity-card__badge:before{content:"Пройдено";color:#141414}.activity-card[data-locked=true] .activity-card__badge,.activity-card[data-completed=true] .activity-card__badge{color:#0000;background:#00000085;border:1px solid #ffffff47}.activity-card[data-completed=true] .activity-card__badge{background:#f4c542;border-color:#f4c542b3}.activity-card__art{place-items:center;width:100%;min-height:0;display:grid;position:relative}.activity-card__board{filter:drop-shadow(0 10px 16px #00000080);width:min(92%,230px);height:auto;display:block}.activity-card__object{isolation:isolate;position:absolute;top:10%;left:50%;transform:translate(-50%)}.activity-card__object--water{aspect-ratio:.9;background:linear-gradient(105deg,#0000 0 15%,#ffffffb8 17% 22%,#0000 25% 100%),radial-gradient(at 50% 43%,#a5f2fff2 0 4%,#0000 5%),linear-gradient(178deg,#0000 0 37%,#75e5fff5 38% 43%,#14a7eef0 44% 78%,#0063c5fa 100%),#c2f2ff29;border:2px solid #c7f8fff5;border-top-width:3px;border-radius:10px 10px 19px 19px/7px 7px 15px 15px;width:clamp(40px,9.8vh,80px);box-shadow:inset 4px 0 8px #ffffff38,inset -6px -10px 14px #0054b980,0 8px 12px #0014307a,0 0 20px #49d7ff6b}.activity-card__object--water:before,.activity-card__object--water:after{content:"";position:absolute}.activity-card__object--water:before{background:#75def638;border:2px solid #dafcfff5;border-radius:50%;height:10px;top:-5px;left:-3px;right:-3px;box-shadow:inset 0 -2px 2px #007ac080,0 1px 4px #88eaff85}.activity-card__object--water:after{background:#b3f2ff7a;border:1px solid #e0fbffe6;border-radius:50%;width:5px;height:5px;top:48%;left:27%;box-shadow:13px 8px 0 -1px #c5f6ffb3,5px 14px 0 -1px #b0efff94}.activity-card__object--ball,.activity-card__object--energy{aspect-ratio:1;border-radius:50%;width:clamp(50px,11.5vh,94px)}.activity-card__object--ball{background:radial-gradient(circle at 30% 24%,#fff5c6fa 0 4%,#ffda779e 5% 13%,#0000 24%),linear-gradient(102deg,#0000 0 45%,#542607c7 47% 51%,#ffbc3e73 52%,#0000 54% 100%),linear-gradient(8deg,#0000 0 46%,#5b2906c2 48% 52%,#ffc44661 53%,#0000 55% 100%),radial-gradient(circle at 36% 30%,#ffc85f 0,#dc7f16 48%,#8d3e07 100%);border:2px solid #ffc9519e;overflow:hidden;box-shadow:inset 5px 4px 8px #ffe59347,inset -12px -14px 18px #4b180080,0 10px 14px #00000075,0 0 15px #ff9f1d38}.activity-card__object--ball:before,.activity-card__object--ball:after{content:"";pointer-events:none;position:absolute}.activity-card__object--ball:before{border:3px solid #0000;border-color:#0000 #572606bd;border-radius:50%;inset:-18% 15%;transform:rotate(22deg)}.activity-card__object--ball:after{opacity:.3;mix-blend-mode:multiply;background-image:radial-gradient(circle,#4c2003d9 0 .7px,#0000 .9px);background-size:4px 4px;inset:0}.activity-card__object--energy{background:radial-gradient(circle at 34% 28%, #fffffffa 0 4%, #aefaffbd 5% 12%, transparent 22%), repeating-conic-gradient(from 12deg, #c56effcc 0 9deg, transparent 10deg 31deg), radial-gradient(circle at 50% 50%, #f7ffff 0 10%, #6defff 11% 25%, #7668ff 37%, #191f55 56%, #090b1d 72% 100%);border:2px solid #b3f9ffe6;box-shadow:inset 0 0 10px #d8fdffb8,inset -10px -12px 18px #11043e9e,0 0 8px #bff9ffe6,0 0 22px #6975ffb8,0 8px 16px #0000008a}.activity-card__object--energy:before{content:"";z-index:-1;border:2px solid #bb85ffdb;border-color:#bb85ffdb #6cf4fff5;border-radius:50%;position:absolute;inset:37% -22%;transform:rotate(-16deg);box-shadow:0 0 8px #87daffb8}.activity-card__object--energy:after{content:"";background:radial-gradient(circle at 38% 32%,#fff 0 8%,#9ff8ff 18%,#6b7cff 58%,#281b69 100%);border:1px solid #ffffffd1;border-radius:50%;position:absolute;inset:29%;box-shadow:0 0 5px #d8fdff,0 0 12px #82e1fff2}.activity-card__title{color:#fff;text-wrap:balance;max-width:100%;font-size:clamp(17px,4.1vh,32px);font-weight:900;line-height:1.02;overflow:hidden}.activity-card__description,.activity-card__meta{color:#ffffffb8;text-wrap:balance;max-width:100%;font-size:clamp(11px,2.6vh,18px);font-weight:800;line-height:1.12;overflow:hidden}.activity-card__meta{color:#f4c542;text-transform:uppercase;font-size:clamp(10px,2.2vh,14px)}.activity-card__reward{color:#fff;background:#0000007a;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:5px;padding:5px 14px;font-size:clamp(15px,3.2vh,26px);font-weight:900;line-height:1;display:inline-flex}.activity-card--energy{transform:rotate(2.5deg)}.activity-card--ball{z-index:1;min-height:clamp(172px,41vh,400px);transform:translateY(-2%)}.activity-card--water{transform:rotate(-2.5deg)}.activity-card--energy[data-selected=true]{transform:rotate(2.5deg)translateY(-1.2%)}.activity-card--ball[data-selected=true]{transform:translateY(-3.2%)}.activity-card--water[data-selected=true]{transform:rotate(-2.5deg)translateY(-1.2%)}.activity-card[data-page-position=previous]{transform:rotate(-3deg)scale(.92)}.activity-card[data-page-position=active]{z-index:2;transform:translateY(-3.2%)scale(1.04)}.activity-card[data-page-position=next]{transform:rotate(3deg)scale(.92)}.activity-card[data-page-position=previous][data-selected=true],.activity-card[data-page-position=next][data-selected=true]{transform:translateY(-1.2%)scale(.94)}.activity-os-hint{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.overlay[data-overlay=start] button{min-height:0;font:inherit}.activity-side-hint{color:#ffffffad;text-align:center;text-transform:uppercase;align-content:center;justify-items:center;gap:3px;font-size:clamp(11px,2.6vh,18px);font-weight:900;line-height:1.08;display:grid}.activity-side-hint strong{color:#f8f8f8;font-size:inherit}.activity-side-hint span{color:#ffc400;font-size:.88em}.activity-side-hint__board{filter:drop-shadow(0 8px 8px #000000b8);width:clamp(48px,11vh,82px);height:auto;margin-bottom:4px}.activity-side-hint--left .activity-side-hint__board{transform:perspective(150px)rotateY(-22deg)rotate(-5deg)}.activity-side-hint--right .activity-side-hint__board{transform:perspective(150px)rotateY(22deg)rotate(5deg)}.activity-progress{z-index:1;justify-content:center;gap:12px;display:flex}.activity-progress span{aspect-ratio:1;background:#ffffff6b;border-radius:50%;width:clamp(8px,1.8vh,14px)}.activity-progress__dot--active,.activity-progress span[data-active=true]{box-shadow:0 0 14px #ffc400b8;background:#ffc400!important}.activity-board-preview{z-index:0;opacity:.82;filter:drop-shadow(0 18px 22px #0000008c);width:min(54vw,78vh,680px);height:auto;position:absolute;bottom:clamp(44px,9vh,78px);left:50%;transform:translate(-50%)}.activity-controls{z-index:2;justify-content:space-between;display:flex;position:absolute;bottom:clamp(8px,1.8vh,18px);left:clamp(18px,4vw,54px);right:clamp(18px,4vw,54px)}.activity-control{color:#ffffffb3;text-transform:uppercase;grid-template-columns:auto auto;align-items:center;gap:clamp(7px,1.6vh,13px);min-width:clamp(130px,29vh,220px);font-size:clamp(10px,2vh,15px);font-weight:900;line-height:1.08;display:grid}.activity-control__board{filter:drop-shadow(0 8px 8px #000000b8);width:clamp(64px,14vh,108px);height:auto}.activity-control--back .activity-control__board{transform:perspective(160px)rotateX(-18deg)}.activity-control--select .activity-control__board{transform:perspective(160px)rotateX(18deg)}.activity-control .activity-control__copy{text-align:left;gap:3px;display:grid}.activity-control--select .activity-control__copy{text-align:right;order:-1}.activity-control strong{color:#f8f8f8}.activity-control b{color:#ffc400;font-size:clamp(11px,2.3vh,16px)}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]){justify-content:center;align-items:center;padding:24px}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__panel{justify-items:center;width:min(760px,100%);padding-top:0;display:grid}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__command{text-wrap:balance;text-shadow:0 5px 18px #00000075;margin-bottom:16px;font-size:clamp(40px,9vh,82px);font-weight:900;line-height:.95}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__message{color:#f7fafc;text-wrap:balance;text-shadow:0 4px 14px #0000007a;max-width:780px;margin:0 0 18px;font-size:clamp(22px,4vw,38px);font-weight:800;line-height:1.12}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__action{color:#f4c542;text-wrap:balance;text-shadow:0 4px 14px #0000007a;background:#1214178f;border:2px solid #f4c542b8;border-radius:8px;max-width:780px;min-height:1.4em;margin:0 0 18px;padding:12px 18px;font-size:clamp(18px,3vw,28px);font-weight:900;line-height:1.12}.overlay__message:empty,.overlay__action:empty{display:none}.mockup-overlay,.overlay[data-overlay=preroll][data-mockup-mode=place],.overlay[data-overlay=preroll][data-mockup-mode=stand],.overlay[data-overlay=preroll][data-mockup-mode=ready]{background:#020304;padding:0;overflow:hidden}.mockup-overlay .overlay__panel,.overlay[data-overlay=preroll][data-mockup-mode=place] .overlay__panel,.overlay[data-overlay=preroll][data-mockup-mode=stand] .overlay__panel,.overlay[data-overlay=preroll][data-mockup-mode=ready] .overlay__panel{width:100%;max-width:none;height:100%;padding:0;display:block}.mockup-overlay .overlay__command,.mockup-overlay .overlay__message,.mockup-overlay .overlay__action,.overlay[data-overlay=preroll][data-mockup-mode=place] .overlay__command,.overlay[data-overlay=preroll][data-mockup-mode=place] .overlay__message,.overlay[data-overlay=preroll][data-mockup-mode=place] .overlay__action,.overlay[data-overlay=preroll][data-mockup-mode=stand] .overlay__command,.overlay[data-overlay=preroll][data-mockup-mode=stand] .overlay__message,.overlay[data-overlay=preroll][data-mockup-mode=stand] .overlay__action,.overlay[data-overlay=preroll][data-mockup-mode=ready] .overlay__command,.overlay[data-overlay=preroll][data-mockup-mode=ready] .overlay__message,.overlay[data-overlay=preroll][data-mockup-mode=ready] .overlay__action{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mockup-overlay .overlay__actions,.overlay[data-overlay=preroll][data-mockup-mode=place] .overlay__actions,.overlay[data-overlay=preroll][data-mockup-mode=stand] .overlay__actions,.overlay[data-overlay=preroll][data-mockup-mode=ready] .overlay__actions{width:100%;height:100%;display:block}.onboarding-mockup{object-fit:contain;width:100%;height:100%;display:block}.overlay[data-overlay=preroll] .onboarding-mockup{display:none}.overlay[data-overlay=preroll][data-mockup-mode=place] .onboarding-mockup--place,.overlay[data-overlay=preroll][data-mockup-mode=stand] .onboarding-mockup--stand,.overlay[data-overlay=preroll][data-mockup-mode=ready] .onboarding-mockup--ready{display:block}.overlay[data-overlay=preroll]{z-index:30;background:repeating-linear-gradient(0deg,#ffffff14 0 1px,#0000 1px 7px),radial-gradient(circle at 50% 48%,#0a6bb452,#0000 48%),#12141757;overflow:hidden}.overlay[data-overlay=preroll] .overlay__panel{width:min(720px,100%)}.overlay[data-overlay=preroll] .overlay__message:not(:empty),.overlay[data-overlay=preroll] .overlay__action:not(:empty){margin-top:18px;display:block}.overlay[data-overlay=preroll] .overlay__actions{display:none}.overlay[data-overlay=preroll][data-mockup-mode=place] .overlay__actions,.overlay[data-overlay=preroll][data-mockup-mode=stand] .overlay__actions,.overlay[data-overlay=preroll][data-mockup-mode=ready] .overlay__actions{width:100%;height:100%;display:block}.overlay__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.overlay[data-overlay=hub] .overlay__panel{width:min(900px,100%)}.overlay[data-overlay=hub].mockup-overlay .overlay__panel{width:100%}.overlay[data-overlay=hub] .overlay__command{max-width:860px;margin-bottom:18px;font-size:clamp(46px,8vw,84px);line-height:.96}.overlay[data-overlay=hub] .overlay__message{font-size:clamp(24px,4vw,38px);line-height:1.08}.overlay[data-overlay=hub] .overlay__action{font-size:clamp(18px,2.9vw,26px)}.hub-cards{grid-template-columns:repeat(2,minmax(112px,1fr));gap:8px;width:min(360px,100%);margin:0 auto 4px;display:grid}.hub-cards[hidden]{display:none}.hub-card{color:#eef2f6;background:#2b3038d1;border:1px solid #f4c5425c;border-radius:8px;place-items:center;min-height:54px;padding:8px;font-weight:800;display:grid}.overlay[data-overlay=rotate],.overlay[data-overlay=phone-setup],.overlay[data-overlay=calibration],.overlay[data-overlay=preroll]{background:radial-gradient(circle at 50% 44%,#00a6ff33,#0000 38%),linear-gradient(145deg,#07131d,#030507 66%,#161008);overflow:hidden}.overlay[data-overlay=rotate]:before,.overlay[data-overlay=phone-setup]:before,.overlay[data-overlay=calibration]:before,.overlay[data-overlay=preroll]:before{content:"";opacity:.18;pointer-events:none;background-image:linear-gradient(#7de5ff21 1px,#0000 1px),linear-gradient(90deg,#7de5ff21 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 72%);mask-image:radial-gradient(circle,#000,#0000 72%)}.overlay[data-overlay=rotate] .overlay__panel,.overlay[data-overlay=phone-setup] .overlay__panel,.overlay[data-overlay=calibration] .overlay__panel,.overlay[data-overlay=preroll] .overlay__panel{z-index:1;justify-items:center;width:min(920px,100%);max-width:none;display:grid;position:relative}.overlay[data-overlay=rotate] .overlay__command,.overlay[data-overlay=phone-setup] .overlay__command,.overlay[data-overlay=calibration] .overlay__command,.overlay[data-overlay=preroll] .overlay__command{color:#fff;text-wrap:balance;text-shadow:0 8px 34px #000000b3;max-width:880px;margin:0 0 10px;font-size:clamp(34px,7.5vw,78px);font-weight:950;line-height:.96}.overlay[data-overlay=phone-setup] .overlay__command{z-index:4;position:relative}.overlay[data-overlay=rotate] .overlay__message,.overlay[data-overlay=phone-setup] .overlay__message,.overlay[data-overlay=calibration] .overlay__message,.overlay[data-overlay=preroll] .overlay__message{color:#c7d7e5;text-wrap:balance;max-width:760px;margin:0 0 12px;font-size:clamp(16px,3vw,26px);font-weight:700;line-height:1.2}.overlay[data-overlay=rotate] .overlay__action,.overlay[data-overlay=phone-setup] .overlay__action,.overlay[data-overlay=calibration] .overlay__action,.overlay[data-overlay=preroll] .overlay__action{color:#ffd158;background:#080b0fb8;border-color:#ffbe0094;border-radius:999px;margin:8px 0;padding:8px 18px;font-size:clamp(13px,2vw,18px)}.overlay[data-overlay=rotate] .overlay__actions,.overlay[data-overlay=phone-setup] .overlay__actions,.overlay[data-overlay=calibration] .overlay__actions,.overlay[data-overlay=preroll] .overlay__actions{justify-items:center;gap:8px;width:100%;display:grid}.instruction-step{color:#d3e4efb3;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(11px,1.7vw,15px);font-weight:800}.primary-action{z-index:3;color:#171006;text-transform:uppercase;background:linear-gradient(#ffe16a,#ffad00);border:1px solid #ffd350bf;border-radius:999px;min-height:52px;padding:0 30px;font-size:clamp(15px,2.4vw,21px);font-weight:950;position:relative;box-shadow:0 12px 35px #ffaa0040,inset 0 1px #ffffffb3}.device-instruction{aspect-ratio:1.75;place-items:center;width:min(330px,62vw);margin:4px 0 12px;display:grid;position:relative}.device-instruction__phone{aspect-ratio:2.05;background:#05080b;border:7px solid #232b34;border-radius:22px;place-items:center;width:64%;animation:1.8s ease-in-out infinite alternate phone-settle;display:grid;transform:rotate(-8deg);box-shadow:0 0 0 2px #596573,0 22px 44px #0000008c,0 0 40px #00b2ff38}.device-instruction__screen{color:#ffc62e;letter-spacing:.08em;background:radial-gradient(circle at 50% 40%,#00baff5c,#0000 44%),#081822;border-radius:13px;place-items:center;width:calc(100% - 10px);height:calc(100% - 10px);font-size:clamp(20px,5vw,42px);font-weight:950;display:grid}.device-instruction__orbit{color:#5edaff94;place-items:center;font-size:clamp(110px,25vw,180px);line-height:1;display:grid;position:absolute;inset:0;transform:rotate(-20deg)}.phone-setup-visual,.calibration-visual,.preroll-visual{pointer-events:none;place-items:center;width:min(480px,67vw);height:clamp(105px,24vh,220px);margin:2px 0 8px;display:grid;position:relative}.phone-setup-visual{margin-top:clamp(12px,2.4vh,22px)}.phone-setup-visual__board,.calibration-visual img,.preroll-visual img{filter:drop-shadow(0 22px 24px #0000009e);width:min(100%,470px);height:auto;position:absolute}.phone-setup-visual__phone{z-index:2;aspect-ratio:2.05;color:#ffcb32;background:#071721;border:5px solid #252c34;border-radius:13px;place-items:center;width:clamp(88px,18vw,158px);font-size:clamp(12px,2vw,18px);font-weight:950;display:grid;position:relative;box-shadow:0 8px 22px #0000008f,0 0 22px #00bfff52}.phone-setup-visual__pulse{z-index:1;aspect-ratio:1;border:2px solid #4fd8ff99;border-radius:50%;width:34%;animation:1.8s ease-out infinite setup-pulse;position:absolute}.calibration-visual__ring{aspect-ratio:1;border:4px solid #43d3ff2e;border-top-color:#55dfff;border-radius:50%;width:48%;animation:1.1s linear infinite calibration-spin;position:absolute}.calibration-visual__core{z-index:2;aspect-ratio:1;background:#2dcfff;border:3px solid #fff;border-radius:50%;width:18px;position:absolute;box-shadow:0 0 28px #2dcfff}.preroll-visual__foot{z-index:2;background:radial-gradient(at 50% 12%,#ffffff29,#0000 28%),linear-gradient(#343e49,#0d1116);border:2px solid #ffcf50bf;border-radius:50% 50% 38% 38%;width:15%;height:70%;position:absolute;top:15%;box-shadow:inset 0 0 0 2px #ffffff0f,0 10px 18px #00000073}.preroll-visual__foot:before,.preroll-visual__foot:after{content:"";border-radius:999px;position:absolute;left:24%;right:24%}.preroll-visual__foot:before{border-block:2px solid #ffd5636b;height:16%;top:23%}.preroll-visual__foot:after{background:#ffd5633d;height:13%;bottom:8%}.preroll-visual__foot--left{left:14%;transform:rotate(0)}.preroll-visual__foot--right{right:12%;transform:rotate(0)}.gesture-pill{color:#dce8f0;background:#070a0ec2;border:1px solid #ffc52f6b;border-radius:999px;align-items:center;gap:10px;padding:7px 15px 7px 8px;font-size:clamp(12px,2vw,17px);display:flex}.gesture-pill__arrow{aspect-ratio:1;color:#151008;background:#ffc52d;border-radius:50%;place-items:center;width:34px;font-size:22px;font-weight:950;display:grid}.overlay[data-overlay=hub]{background:linear-gradient(90deg,#02070ab8,#02070a14 50%,#02070ab8),url(/db/assets/game/playroom-background-v1.png) 50%/cover no-repeat;align-items:stretch;padding:0;overflow:hidden}.overlay[data-overlay=hub]:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 52%,#00c6ff1a,#0000 28%),linear-gradient(#00000029,#00000094);position:absolute;inset:0}.overlay[data-overlay=hub] .overlay__panel{z-index:1;width:100%;max-width:none;height:100%;padding:0;display:block;position:relative}.overlay[data-overlay=hub] .overlay__command,.overlay[data-overlay=hub] .overlay__message,.overlay[data-overlay=hub] .overlay__action{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.overlay[data-overlay=hub] .overlay__actions{width:100%;height:100%}.hub-shell{grid-template-rows:auto 1fr auto;width:100%;height:100%;min-height:0;padding:clamp(10px,2.2vh,24px) clamp(14px,2.8vw,38px) clamp(8px,1.6vh,18px);display:grid}.hub-header{grid-template-columns:minmax(190px,27vw) repeat(2,minmax(0,1fr));align-items:center;gap:16px;display:grid}.hub-brand,.hub-wallet,.hub-welcome{align-items:center;display:flex}.hub-brand{color:#fff3db;text-align:left;gap:10px}.hub-brand__mark{aspect-ratio:1;color:#ffbd22;border:2px solid #ffb300;border-radius:50%;place-items:center;width:clamp(38px,5.5vw,64px);font-size:clamp(22px,3.4vw,40px);font-weight:950;display:grid}.hub-brand b{font-size:clamp(20px,3.2vw,42px);line-height:.95;display:block}.hub-brand small{color:#ffc239;letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:clamp(8px,1.25vw,14px);font-weight:850;display:block}.hub-welcome{box-sizing:border-box;text-align:center;background:#050a0dcc;border:1px solid #ffb10073;border-radius:999px;flex-direction:column;justify-content:center;width:100%;min-width:0;height:clamp(38px,8.5vh,54px);padding:7px 24px;box-shadow:0 12px 30px #00000052}.hub-welcome b{font-size:clamp(13px,2vw,24px);line-height:1.1;display:block}.hub-welcome span{color:#aebcca;font-size:clamp(9px,1.4vw,15px)}.hub-wallet{box-sizing:border-box;text-align:center;background:#06090bd1;border:1px solid #ffb7008c;border-radius:999px;grid-template-columns:auto auto auto;justify-content:center;justify-self:end;align-items:center;gap:8px;width:100%;min-width:0;height:clamp(38px,8.5vh,54px);padding:7px 24px;display:grid}.hub-wallet>span{color:#ffc02b;align-self:center;font-size:clamp(18px,2.4vw,28px)}.hub-wallet b{color:#fff;font-size:clamp(15px,2vw,24px);line-height:1}.hub-wallet small{color:#ffc02b;text-transform:uppercase;font-size:clamp(8px,1vw,10px);font-weight:900}.hub-main{grid-template-columns:minmax(215px,1fr) minmax(220px,1.25fr) minmax(205px,1fr);align-items:center;gap:clamp(8px,2vw,28px);min-height:0;display:grid}.hub-activities,.hub-services{align-content:center;gap:clamp(7px,1.6vh,14px);min-height:0;display:grid}.hub-activity{border:1px solid color-mix(in srgb, var(--hub-color) 72%, white 8%);color:#f5fbff;background:radial-gradient(circle at 18% 50%, color-mix(in srgb, var(--hub-color) 32%, transparent), transparent 42%), #040c11db;text-align:left;border-radius:clamp(14px,2vw,24px);grid-template-columns:clamp(56px,8vw,98px) 1fr;align-items:center;min-height:clamp(70px,16vh,132px);padding:8px 14px;transition:transform .18s,box-shadow .18s,opacity .18s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 12px 24px #00000042}.hub-activity--water{--hub-color:#18bfff}.hub-activity--ball{--hub-color:#77ed22}.hub-activity--energy{--hub-color:#d344ff}.hub-activity[data-selected=true]{z-index:1;box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--hub-color) 76%, white), 0 0 28px color-mix(in srgb, var(--hub-color) 36%, transparent), 0 14px 30px #0000005c;transform:translate(8px)scale(1.025)}.hub-activity[data-locked=true]{filter:grayscale(.85);opacity:.48}.hub-activity__icon{place-self:center;display:block;position:relative;inset:auto;transform:none}.hub-activity__copy{gap:2px;min-width:0;display:grid}.hub-activity__copy b{text-transform:uppercase;font-size:clamp(16px,2.6vw,30px);line-height:1}.hub-activity__copy small{color:#c6d0d8;font-size:clamp(9px,1.25vw,14px)}.hub-activity__copy em{color:var(--hub-color);background:#0006;border-radius:999px;justify-self:start;margin-top:3px;padding:3px 8px;font-size:clamp(8px,1.05vw,12px);font-style:normal;font-weight:900}.hub-hero{align-self:stretch;place-items:end center;min-height:0;display:grid;position:relative;overflow:hidden}.hub-hero__halo{aspect-ratio:1;filter:blur(10px);background:radial-gradient(circle,#20beff38,#0000 68%);border-radius:50%;width:82%;position:absolute;top:12%}.hub-hero__character{z-index:1;object-fit:contain;object-position:bottom;filter:drop-shadow(0 0 1px #ffba30cc)drop-shadow(0 18px 16px #000000ad);width:auto;max-width:94%;height:min(70vh,105%);position:absolute;bottom:0;left:50%;transform:translate(-50%)}.hub-services{grid-template-rows:repeat(4,minmax(0,1fr))}.hub-service{text-align:left;background:#031218cc;border:1px solid #4ed5ff59;border-radius:clamp(14px,2vw,24px);grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:clamp(62px,14vh,112px);padding:10px 16px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;position:relative;box-shadow:inset 0 1px #ffffff12}.hub-service[data-selected=true]{z-index:1;border-color:#ffd15b;transform:translate(-8px)scale(1.025);box-shadow:inset 0 0 0 2px #ffd15bb8,0 0 28px #ffbe2d3d,0 14px 30px #00000057}.hub-service--adventures{background:#281803c7;border-color:#ffaf006b}.hub-service--workshop{background:#1e0527cc;border-color:#d543ff6b}.hub-service--roblox{background:radial-gradient(circle at 14%,#c431ff3d,#0000 38%),#1f0528e0;border-color:#d74affb8;grid-template-columns:auto 1fr auto;box-shadow:inset 0 1px #ffffff1f,0 0 22px #b92dff1f}.hub-roblox-mark{aspect-ratio:1;background:linear-gradient(145deg,#f17bff,#8f25dc);border-radius:6px;width:clamp(28px,4vw,48px);position:relative;rotate:12deg;box-shadow:0 0 18px #d543ff6b}.hub-roblox-mark:after{content:"";background:#23062d;position:absolute;inset:31%}.hub-service__arrow{aspect-ratio:1;color:#f2adff;border:1px solid #e786ff75;border-radius:50%;place-items:center;width:clamp(24px,3vw,36px);font-size:clamp(24px,3.2vw,38px);line-height:1;display:grid}.hub-service>span{font-size:clamp(24px,4vw,44px)}.hub-service>.hub-roblox-mark{font-size:0}.hub-service div{gap:3px;display:grid}.hub-service b{text-transform:uppercase;font-size:clamp(13px,2vw,23px)}.hub-service small{color:#b9c5ce;font-size:clamp(9px,1.25vw,14px)}.hub-workshop{min-width:0}.hub-offers{gap:5px;margin-top:4px;display:flex}.hub-offers button{color:#f7d8ff;white-space:nowrap;background:#3a0b46d6;border:1px solid #e474ff6b;border-radius:999px;min-height:28px;padding:0 8px;font-size:clamp(8px,1vw,11px)}.hub-offers button:disabled{opacity:.42}.hub-offers em{color:#8ef4ff;margin-left:3px;font-style:normal}.hub-navigation{color:#c8d2da;text-transform:uppercase;background:#040709db;border:1px solid #ffbe0052;border-radius:999px;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:7px 18px;font-size:clamp(9px,1.35vw,14px);display:grid}.hub-navigation span:last-child{text-align:right}.hub-navigation b{color:#ffc536;font-size:1.2em}.hub-navigation__status{color:#fff1c5;text-align:center;text-transform:none;font-weight:800}@keyframes phone-settle{to{transform:rotate(2deg)scale(1.02)}}@keyframes setup-pulse{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(1.5)}}@keyframes calibration-spin{to{transform:rotate(360deg)}}.debug-panel{right:max(8px, calc(100vw - var(--visual-viewport-left) - var(--visual-viewport-width) + 8px));bottom:max(8px, calc(100vh - var(--visual-viewport-top) - var(--visual-viewport-height) + 8px));z-index:20;width:min(360px, calc(var(--visual-viewport-width) - 16px));max-height:calc(var(--visual-viewport-height) - 16px);color:#d8dee8;text-align:left;background:#0c0e12e0;border:1px solid #ffffff2e;border-radius:8px;padding:10px;font:12px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:fixed;overflow:auto}.debug-panel[data-collapsed=true]{width:min(260px, calc(var(--visual-viewport-width) - 16px));overflow:visible}.debug-panel__toggle{width:100%;min-height:34px;font:inherit;color:#121417;background:#f4c542;border-radius:5px;padding:0 8px}.debug-panel__feedback{color:#ffe08a;overflow-wrap:anywhere;background:#f4c5421f;border:1px solid #f4c54257;border-radius:5px;margin:8px 0 10px;padding:6px 8px;font-weight:800}.debug-panel__body[hidden]{display:none}.debug-panel__actions{z-index:1;background:#0c0e12f5;grid-template-columns:1fr 1fr;gap:6px;margin:-10px -10px 10px;padding:10px;display:grid;position:sticky;top:0}.debug-panel__actions button{min-height:30px;font:inherit;color:#eef2f6;background:#313844;border-radius:5px;padding:0 8px}.debug-panel__wide-action{grid-column:1/-1}.debug-panel dl{grid-template-columns:1fr 1fr;gap:4px 10px;margin:0;display:grid}.debug-panel dt,.debug-panel dd{margin:0}.debug-panel dd{overflow-wrap:anywhere}.navigation-debug-map{background:linear-gradient(#ffffff17 1px,#0000 1px) 0/100% 50%,linear-gradient(90deg,#ffffff17 1px,#0000 1px) 50% 0/50% 100%,#00000038;border:1px solid #ffffff38;border-radius:8px;height:190px;margin-top:12px;position:relative;overflow:hidden}.navigation-debug-map__label{z-index:2;color:#cbd4e1;font-size:10px;position:absolute}.navigation-debug-map__label--forward,.navigation-debug-map__label--back,.navigation-debug-map__label--neutral{left:50%;transform:translate(-50%)}.navigation-debug-map__label--forward{top:5px}.navigation-debug-map__label--back{bottom:5px}.navigation-debug-map__label--neutral{top:calc(50% - 7px)}.navigation-debug-map__label--left{top:calc(50% - 7px);left:6px}.navigation-debug-map__label--right{top:calc(50% - 7px);right:6px}.navigation-debug-map__horizontal,.navigation-debug-map__vertical{pointer-events:none;border:1px dashed #f4c5428c;position:absolute}.navigation-debug-map__horizontal{border-left-width:2px;border-right-width:2px;height:22px;top:calc(50% - 11px);left:8%;right:8%}.navigation-debug-map__vertical{border-top-width:2px;border-bottom-width:2px;width:22px;top:8%;bottom:8%;left:calc(50% - 11px)}.navigation-debug-map__point{z-index:3;left:clamp(4%, var(--navigation-x), 96%);top:clamp(4%, var(--navigation-y), 96%);background:#f4c542;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 10px #f4c542cc}.navigation-debug-map[data-dominant-axis=horizontal] .navigation-debug-map__horizontal,.navigation-debug-map[data-dominant-axis=vertical] .navigation-debug-map__vertical{background:#63b3ed14;border-color:#63b3ed}.navigation-debug-map[data-dominant-axis=diagonal] .navigation-debug-map__point{background:#fc8181}.debug-panel__sliders{gap:8px;margin-top:10px;display:grid}.debug-panel__sliders label{gap:4px;display:grid}.debug-panel__sliders input{width:100%}@media (orientation:landscape) and (height<=520px){button{min-height:36px;padding:0 14px}.overlay{align-items:flex-start;padding:12px}.overlay__panel{max-width:min(460px,100%);padding-top:max(8px, var(--visual-viewport-top))}.overlay__command{margin-bottom:8px;font-size:22px;line-height:1.12}.overlay__message,.overlay__action{margin-bottom:12px;font-size:14px;line-height:1.35}.overlay__actions{gap:8px}.overlay[data-overlay=start]{align-items:center}.overlay[data-overlay=start] .overlay__panel{max-width:none;padding-top:0}.overlay[data-overlay=start] .overlay__command{margin-top:10px;font-size:clamp(26px,6.4vh,38px);line-height:.95}.activity-shell{gap:3px;padding:4px 10px 104px}.activity-lead{margin-top:12px;font-size:12px}.activity-stage{grid-template-columns:62px minmax(320px,1fr) 62px;align-self:start;gap:6px}.activity-select{gap:8px}.activity-card{grid-template-rows:18px minmax(44px,1fr) auto auto auto;min-height:112px;padding:7px 7px 6px}.activity-card[data-selected=true]{transform:translateY(-2px)}.activity-card--ball{min-height:124px}.activity-card__title{font-size:13px;line-height:1}.activity-card__description{font-size:9px;line-height:1.05}.activity-card__meta{font-size:9px}.activity-card__reward{padding:3px 8px;font-size:12px}.activity-card__badge{min-height:16px;padding:4px 9px;font-size:9px}.activity-card__board{width:min(82%,168px)}.activity-card__object--water{width:clamp(30px,7.4vh,46px)}.activity-card__object--ball,.activity-card__object--energy{width:clamp(36px,8.2vh,52px)}.activity-side-hint{gap:2px;font-size:9px}.activity-side-hint__board{width:56px;margin-bottom:2px}.activity-board-preview{width:min(40vw,46vh,340px);bottom:84px}.activity-controls{bottom:62px}.activity-control{gap:6px;min-width:118px;font-size:9px}.activity-control__board{width:52px}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]){align-items:center;padding:12px}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__panel{max-width:min(620px,100%);padding-top:0}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__command{margin-bottom:10px;font-size:clamp(34px,7vw,54px);line-height:.95}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__message{margin-bottom:12px;font-size:clamp(16px,3vw,22px);line-height:1.12}.overlay:is([data-overlay=preroll],[data-overlay=calibration],[data-overlay=result],[data-overlay=hub],[data-overlay=unsupported],[data-overlay=denied]) .overlay__action{margin-bottom:12px;padding:8px 12px;font-size:clamp(14px,2.45vw,19px);line-height:1.12}.overlay[data-overlay=hub]{padding:12px}.overlay[data-overlay=hub] .overlay__panel{max-width:min(760px,100%)}.overlay[data-overlay=hub] .overlay__command{font-size:clamp(36px,7.4vw,56px)}.overlay[data-overlay=hub] .overlay__message{font-size:clamp(18px,3.2vw,24px)}.hub-cards{grid-template-columns:repeat(4,minmax(72px,1fr));gap:6px;width:min(440px,100%)}.hub-card{min-height:42px;padding:6px;font-size:12px;line-height:1.15}.debug-panel{right:max(6px, calc(100vw - var(--visual-viewport-left) - var(--visual-viewport-width) + 6px));bottom:max(6px, calc(100vh - var(--visual-viewport-top) - var(--visual-viewport-height) + 6px));width:min(42vw,420px);max-height:calc(var(--visual-viewport-height) - 12px);padding:8px;font-size:11px}.debug-panel[data-collapsed=true]{width:min(48vw,300px)}.debug-panel__toggle{min-height:30px;padding:0 6px}.debug-panel__feedback{margin:6px 0 8px;padding:5px 6px}.debug-panel__actions{grid-template-columns:repeat(3,minmax(0,1fr));margin:-8px -8px 8px;padding:8px}.debug-panel__actions button{min-height:28px;padding:0 6px}}@media (orientation:landscape) and (height<=360px){.activity-shell{padding-bottom:8px}.activity-controls,.activity-board-preview{display:none}}@media (orientation:landscape) and (height<=560px){.overlay[data-overlay=rotate],.overlay[data-overlay=phone-setup],.overlay[data-overlay=calibration],.overlay[data-overlay=preroll]{align-items:center;padding:6px 12px}.overlay[data-overlay=rotate] .overlay__panel,.overlay[data-overlay=phone-setup] .overlay__panel,.overlay[data-overlay=calibration] .overlay__panel,.overlay[data-overlay=preroll] .overlay__panel{width:min(760px,100%);max-width:none;padding:0}.overlay[data-overlay=rotate] .overlay__command,.overlay[data-overlay=phone-setup] .overlay__command,.overlay[data-overlay=calibration] .overlay__command,.overlay[data-overlay=preroll] .overlay__command{margin-bottom:4px;font-size:clamp(28px,7.5vh,42px);line-height:.96}.overlay[data-overlay=rotate] .overlay__message,.overlay[data-overlay=phone-setup] .overlay__message,.overlay[data-overlay=calibration] .overlay__message,.overlay[data-overlay=preroll] .overlay__message{max-width:660px;margin-bottom:4px;font-size:clamp(13px,3.3vh,18px);line-height:1.08}.overlay[data-overlay=rotate] .overlay__action,.overlay[data-overlay=phone-setup] .overlay__action,.overlay[data-overlay=calibration] .overlay__action,.overlay[data-overlay=preroll] .overlay__action{margin:3px 0;padding:5px 12px;font-size:12px}.device-instruction{width:min(260px,46vw);margin:0 0 4px}.phone-setup-visual,.calibration-visual,.preroll-visual{width:min(290px,44vw);height:clamp(145px,41vh,170px);margin:0 0 3px}.phone-setup-visual{margin-top:14px}.phone-setup-visual__board,.calibration-visual img,.preroll-visual img{width:min(100%,270px)}.phone-setup-visual__phone{border-width:3px;width:clamp(72px,13vw,108px)}.preroll-visual__foot{height:70%;top:10%}.primary-action{min-height:38px;padding:0 22px;font-size:13px}.instruction-step{font-size:9px}.gesture-pill{padding:4px 12px 4px 5px;font-size:11px}.gesture-pill__arrow{width:26px;font-size:17px}.hub-shell{padding:6px 12px}.hub-header{grid-template-columns:minmax(150px,25vw) repeat(2,minmax(0,1fr));gap:8px}.hub-brand__mark{width:34px}.hub-brand b{font-size:clamp(18px,5vh,28px)}.hub-welcome{padding:4px 14px}.hub-wallet{padding:5px 10px}.hub-main{grid-template-columns:minmax(195px,1fr) minmax(160px,.95fr) minmax(180px,1fr);align-items:stretch;gap:8px}.hub-activities,.hub-services{gap:5px;height:100%}.hub-activity{border-radius:13px;grid-template-columns:50px 1fr;min-height:74px;padding:5px 9px}.hub-activity__icon{scale:.72}.hub-activity__copy b{font-size:16px}.hub-activity__copy small,.hub-activity__copy em{font-size:8px}.hub-hero__character{height:min(67vh,98%)}.hub-service{border-radius:13px;min-height:0;padding:4px 10px}.hub-service>span{font-size:25px}.hub-service>.hub-roblox-mark{width:28px;font-size:0}.hub-service>.hub-service__arrow{width:24px;font-size:24px}.hub-service b{font-size:13px}.hub-service small{font-size:8px}.hub-offers{gap:3px;margin-top:2px}.hub-offers button{min-height:20px;padding:0 5px;font-size:7px}.hub-navigation{padding:5px 12px;font-size:8px}}.overlay[data-overlay=start]{background:linear-gradient(90deg,#02070ac7,#02070a2e 50%,#02070ac7),url(/db/assets/game/playroom-background-v1.png) 50%/cover no-repeat}.overlay[data-overlay=start]:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 42%,#00beff1f,#0000 32%),linear-gradient(#0000003d,#000000b3);position:absolute;inset:0}.overlay[data-overlay=start] .overlay__panel{z-index:1}.overlay[data-overlay=start] .overlay__command{color:#fff7e8;text-transform:uppercase;background:#050a0ddb;border:1px solid #ffb10073;border-radius:999px;width:min(34vw,390px);min-height:48px;margin:clamp(10px,2.1vh,22px) auto 0;padding:7px 24px;font-size:clamp(18px,3.2vw,34px);line-height:1;box-shadow:0 12px 30px #0000005c}.activity-shell{gap:clamp(5px,1.1vh,10px);padding:clamp(70px,13vh,92px) clamp(14px,2.8vw,38px) clamp(56px,10vh,72px)}.activity-shell:before{border-color:#32c7ff1f;inset:15% 17% 8%}.activity-topbar{justify-content:space-between;align-items:center}.activity-brand{pointer-events:none}.activity-brand .hub-brand__mark{width:clamp(38px,5.5vw,64px)}.activity-brand b{font-size:clamp(20px,3.2vw,42px)}.activity-sparks{background:#06090bdb;border:1px solid #ffb7008c;border-radius:18px;grid-template-columns:auto auto;min-width:120px;padding:7px 14px;box-shadow:inset 0 1px #ffffff12}.activity-sparks__bolt{font-size:clamp(22px,3vw,38px)}.activity-sparks__value{font-size:clamp(18px,2.8vw,34px)}.activity-sparks__label{justify-self:end;margin-top:0;font-size:10px}.activity-lead{color:#d7e1e8;background:#040a0eb8;border-radius:999px;align-self:center;margin:0 auto;padding:4px 14px;font-size:clamp(11px,1.5vw,16px)}.activity-stage{grid-template-columns:minmax(62px,.25fr) minmax(430px,920px) minmax(62px,.25fr)}.activity-card{--activity-card-color:#ffc94d;border:2px solid color-mix(in srgb, var(--activity-card-color) 58%, transparent);background:radial-gradient(circle at 50% 20%, color-mix(in srgb, var(--activity-card-color) 17%, transparent), transparent 42%), #030e14e6;border-radius:clamp(18px,2.6vw,28px);box-shadow:inset 0 1px #ffffff14,0 16px 34px #0000006b}.activity-card--water{--activity-card-color:#18bfff}.activity-card--ball{--activity-card-color:#77ed22}.activity-card--energy{--activity-card-color:#d344ff}.activity-card[data-selected=true]{background:radial-gradient(circle at 50% 20%, color-mix(in srgb, var(--activity-card-color) 25%, transparent), transparent 44%), #041016f5;box-shadow:inset 0 0 0 2px #ffd86980, 0 0 34px color-mix(in srgb, var(--activity-card-color) 25%, transparent), 0 20px 36px #00000075;border-color:#ffd264}.activity-card[data-selected=true]:after{border-radius:clamp(13px,2vw,22px)}.activity-card__meta,.activity-card__reward span:first-child,.activity-control b{color:#ffc536}.activity-board-preview{display:none}.activity-controls{background:#04080ceb;border:2px solid #ffc52d6b;border-radius:999px;grid-template-columns:1fr 1fr;padding:5px 18px;display:grid;bottom:clamp(8px,1.6vh,18px);left:clamp(14px,2.8vw,38px);right:clamp(14px,2.8vw,38px)}.activity-control{min-width:0}.activity-control--select{justify-self:end}.activity-control__board{width:clamp(42px,9vh,70px)}.hub-section-icon{--hub-section-color:#ffd15c;aspect-ratio:1;border:2px solid color-mix(in srgb, var(--hub-section-color) 64%, white 8%);width:clamp(52px,7.5vw,84px);color:var(--hub-section-color);box-shadow:inset 0 1px 0 #ffffff1a, inset 0 -8px 18px #00000047, 0 0 22px color-mix(in srgb, var(--hub-section-color) 22%, transparent);background:radial-gradient(circle at 34% 28%,#ffffff1f,#0000 38%),#051119db;border-radius:clamp(17px,2.3vw,25px);flex:none;place-items:center;display:grid;position:relative;overflow:hidden;transform:translateZ(0)}.hub-section-icon:before,.hub-section-icon:after{content:"";pointer-events:none;position:absolute}.hub-section-icon:before{border-radius:inherit;border:1px solid #ffffff29;inset:5%}.hub-section-icon:after{filter:blur(5px);background:#ffffff21;border-radius:50%;width:70%;height:48%;top:-22%;left:-8%;transform:rotate(-20deg)}.hub-section-icon svg{z-index:1;width:82%;height:82%;position:relative;overflow:visible}.hub-section-icon--roblox{--hub-section-color:#db56ff;background:radial-gradient(circle at 50% 45%,#73249a,#26072f 72%)}.hub-section-icon--downloads{--hub-section-color:#42d4ff;background:radial-gradient(circle at 50% 45%,#153d4b,#061a22 72%)}.hub-section-game-stack img{z-index:1;aspect-ratio:1;object-fit:cover;border:1px solid #cff9ffe6;border-radius:24%;width:52%;display:block;position:absolute;box-shadow:0 4px 10px #0000007a}.hub-section-game-stack img:first-child{top:9%;left:5%;transform:rotate(-10deg)}.hub-section-game-stack img:nth-child(2){top:9%;right:5%;transform:rotate(10deg)}.hub-section-game-stack img:nth-child(3){z-index:2;border-width:2px;width:56%;bottom:5%;left:24%}.hub-section-icon--online{--hub-section-color:#83f867;background:radial-gradient(circle at 50% 45%,#173f1c,#071b0a 72%)}.hub-section-icon--parents{--hub-section-color:#ffc956;background:radial-gradient(circle at 50% 45%,#4a3412,#211506 72%)}.hub-section-icon__fill{fill:#d75cff;stroke:#f4adff;stroke-width:2px}.hub-section-icon__cutout{fill:#270730}.hub-section-icon__paper{fill:#d39b4c;stroke:#ffe19a;stroke-width:2px}.hub-section-icon__roll{fill:#8f5d25;stroke:#ffd785;stroke-width:2px}.hub-section-icon__stroke{fill:none;stroke:#fff0b8;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.hub-section-icon__game{stroke:#ffffffb8;stroke-width:1.5px}.hub-section-icon__game--water{fill:#159de2}.hub-section-icon__game--ball{fill:#68c837}.hub-section-icon__game--energy{fill:#a140dc}.hub-section-icon__symbol{fill:#f7ffff}.hub-section-icon__symbol--thin{fill:none;stroke:#f7ffff;stroke-width:2px}.hub-section-icon__shield{fill:#c48622;stroke:#ffe195;stroke-width:2px}.hub-service[data-selected=true] .hub-section-icon{box-shadow:inset 0 1px 0 #ffffff29, inset 0 -8px 18px #00000038, 0 0 30px color-mix(in srgb, var(--hub-section-color) 38%, transparent);transform:scale(1.08)rotate(-1deg)}.hub-online-card{--hub-online-color:#38cfff;border-color:color-mix(in srgb, var(--hub-online-color) 66%, transparent);background:radial-gradient(circle at 18% 46%, color-mix(in srgb, var(--hub-online-color) 28%, transparent), transparent 42%), linear-gradient(145deg, #081d26f5, #030c12f5);padding:0;display:block;position:relative;overflow:hidden}.hub-online-card--ball{--hub-online-color:#ffad32}.hub-online-card--energy{--hub-online-color:#a76aff}.hub-online-card:after{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:linear-gradient(180deg, #02080c05 12%, #02080c33 42%, #02080cf0 78%, #02080cfc 100%), linear-gradient(115deg, #ffffff14, transparent 30% 72%, color-mix(in srgb, var(--hub-online-color) 12%, transparent));position:absolute;inset:0}.hub-online-card[data-locked=true]{filter:saturate(.35)}.hub-online-card[data-locked=true][data-selected=true]{filter:saturate(.55)}.hub-online-art{z-index:0;border-radius:inherit;width:100%;min-width:0;height:100%;min-height:0;box-shadow:0 14px 28px #00000061, 0 0 24px color-mix(in srgb, var(--hub-online-color) 20%, transparent);border:0;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.hub-online-art__halo{background:color-mix(in srgb, var(--hub-online-color) 36%, transparent);filter:blur(14px);border-radius:50%;position:absolute;inset:4%}.hub-online-art img{z-index:1;object-fit:cover;filter:saturate(1.08)contrast(1.04);width:100%;height:100%;position:relative;transform:scale(1.035)}.hub-online-card .hub-service__copy,.hub-online-card .hub-service__arrow{z-index:2;position:absolute}.hub-online-card .hub-service__copy{text-align:left;text-shadow:0 2px 5px #000000e6;gap:3px;min-width:0;display:grid;bottom:10px;left:13px;right:48px}.hub-online-card .hub-service__copy b{font-size:clamp(17px,2.2vw,22px);line-height:1}.hub-online-card .hub-service__copy small{color:#eff8fb;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.12;display:-webkit-box;overflow:hidden}.hub-online-card .hub-service__arrow{top:50%;right:12px;transform:translateY(-50%)}.hub-online-card__meta{color:#dceaf1;flex-wrap:wrap;gap:5px 9px;font-size:clamp(9px,1.15vw,13px);font-style:normal;line-height:1.1;display:flex}.hub-online-card__meta span,.hub-online-card__meta strong{border:1px solid color-mix(in srgb, var(--hub-online-color) 46%, transparent);background:#030c12a8;border-radius:999px;padding:4px 8px}.hub-online-card__meta strong{color:#ffd86c}.hub-online-card[data-completed=true] .hub-online-card__meta span{color:#17200b;background:#f4c542;border-color:#f4c542;font-weight:900}@media (orientation:landscape) and (height<=560px){.overlay[data-overlay=start] .overlay__command{width:min(34vw,310px);min-height:36px;margin-top:7px;padding:5px 18px;font-size:clamp(18px,5vh,25px)}.activity-shell{gap:3px;padding:50px 10px 54px}.activity-topbar{top:7px;left:14px;right:14px}.activity-brand .hub-brand__mark{width:34px;font-size:19px}.activity-brand b{font-size:clamp(17px,4.6vh,22px)}.activity-brand small{margin-top:2px;font-size:8px}.activity-sparks{border-radius:14px;min-width:102px;padding:4px 10px}.activity-sparks__bolt,.activity-sparks__value{font-size:20px}.activity-sparks__label{font-size:8px}.activity-lead{margin-top:0;padding:3px 10px;font-size:10px}.activity-stage{align-self:stretch}.activity-card{border-radius:17px;min-height:128px}.activity-card--ball{min-height:140px}.activity-controls{min-height:42px;padding:3px 14px;bottom:6px;left:10px;right:10px}.activity-control__board{width:42px}.hub-section-icon{border-radius:17px;width:clamp(48px,12vh,66px)}}.overlay[data-overlay=hub]:before{background:radial-gradient(circle at 18% 56%,#ffb5301f,#0000 28%),linear-gradient(90deg,#00000029,#0000009e)}.hub-main{grid-template-columns:minmax(150px,27vw) minmax(0,1fr);align-items:stretch;gap:clamp(8px,1.8vw,24px);overflow:hidden}.hub-content{grid-area:1/2;min-width:0;min-height:0;overflow:hidden}.hub-content>.hub-carousel{grid-area:auto;height:100%}.overlay[data-overlay=hub][data-hub-page=sections] .hub-shell{grid-template-rows:auto minmax(0,1fr)}.overlay[data-overlay=hub][data-hub-page=sections] .hub-navigation{display:none}.hub-section-grid{box-sizing:border-box;width:100%;min-width:0;height:100%;min-height:0;padding:clamp(8px,1.8vh,18px) 0}.hub-section-grid .hub-services{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:clamp(8px,1.5vw,18px);width:100%;min-width:0;height:100%;min-height:0;display:grid}.hub-section-grid .hub-service{opacity:1;filter:none;scroll-snap-align:none;border-radius:clamp(15px,2vw,24px);grid-template-columns:clamp(44px,7vw,76px) minmax(0,1fr);align-content:center;gap:clamp(7px,1.2vw,14px);width:100%;min-width:0;height:100%;min-height:0;padding:clamp(8px,1.5vw,18px);transform:none}.hub-section-grid .hub-service[data-selected=true]{border-color:#ffd264;transform:none;box-shadow:inset 0 0 0 1px #ffd8696b,0 0 24px #ffbb302e,0 12px 24px #00000057}.hub-section-grid .hub-service:focus-visible{outline-offset:-3px;outline:3px solid #fff1a6}.hub-section-grid .hub-section-icon{width:100%;max-width:76px}.hub-section-grid .hub-service__copy{gap:clamp(3px,.8vh,7px)}.hub-section-grid .hub-service__copy b{overflow-wrap:anywhere;font-size:clamp(14px,2vw,25px);line-height:1.05}.hub-section-grid .hub-service__copy small{overflow-wrap:anywhere;font-size:clamp(9px,1.15vw,14px);line-height:1.18}.hub-section-grid .hub-service>.hub-service__arrow{width:auto;font-size:clamp(24px,3vw,38px);position:absolute;right:clamp(7px,1vw,12px)}.hub-hero{grid-area:1/1;place-items:end center;overflow:visible}.hub-hero__halo{background:radial-gradient(circle,#ffb83433,#25b1e61a 42%,#0000 70%);width:118%;top:6%;left:-8%}.hub-hero__character{max-width:112%;height:min(72vh,108%);left:45%}.hub-carousel{--hub-carousel-card-width:clamp(220px, 28vw, 330px);grid-area:1/2;grid-template-rows:clamp(44px,12vh,52px) minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.hub-carousel__heading{box-sizing:border-box;width:var(--hub-carousel-card-width);text-align:center;justify-content:center;place-self:center;align-items:baseline;padding:3px clamp(12px,2vw,28px) 0;display:flex}.hub-carousel__heading span{color:#fff5db;text-transform:uppercase;font-size:clamp(18px,3vw,34px);font-weight:950}.hub-carousel__heading b{color:#ffc94d;letter-spacing:.04em;text-transform:uppercase;font-size:clamp(9px,1.25vw,14px)}.hub-carousel__rail{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-width:0;min-height:0;display:grid}.hub-carousel__arrow{appearance:none;z-index:4;aspect-ratio:1;color:#191006;cursor:pointer;touch-action:manipulation;background:linear-gradient(#ffe77e,#ffb21c);border:2px solid #ffd35cc7;border-radius:50%;place-items:center;width:clamp(52px,6.5vw,72px);padding:0 0 5px;font:950 clamp(38px,5.8vw,64px)/1 sans-serif;display:grid;position:relative;box-shadow:0 10px 28px #ffb0194d,inset 0 1px #ffffffc7}.hub-carousel__arrow:active{transform:scale(.94)}.hub-carousel__arrow:disabled{opacity:.3;filter:grayscale(.7);cursor:default}.hub-carousel__viewport{overscroll-behavior-x:contain;scroll-behavior:auto;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pinch-zoom;-webkit-overflow-scrolling:touch;min-width:0;min-height:0;padding-block:clamp(10px,2.6vh,22px);overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}.hub-carousel__viewport::-webkit-scrollbar{display:none}.hub-carousel__track{box-sizing:border-box;width:max-content;min-width:100%;height:100%;padding-inline:max(0px, calc(50% - var(--hub-carousel-card-width) / 2));align-items:center;gap:clamp(10px,1.7vw,22px);display:flex}.hub-carousel__spacer{display:none}.hub-services{display:contents}.hub-service{appearance:none;flex:0 0 var(--hub-carousel-card-width);width:var(--hub-carousel-card-width);opacity:.48;filter:saturate(.72);height:clamp(155px,41vh,250px);min-height:0;color:inherit;font:inherit;text-align:left;cursor:pointer;scroll-snap-align:center;scroll-snap-stop:always;border-width:2px;border-radius:clamp(20px,3vw,34px);grid-template-columns:auto minmax(0,1fr) auto;align-content:center;gap:clamp(10px,1.5vw,18px);padding:clamp(14px,2.4vw,28px);transition:transform .22s,opacity .22s,filter .22s,border-color .22s,box-shadow .22s;transform:scale(.86)}.hub-service[data-selected=true]{z-index:2;opacity:1;filter:none;border-color:#ffd264;transform:scale(1.04);box-shadow:inset 0 0 0 2px #ffd86985,0 0 34px #ffbb303d,0 20px 36px #0000006b}.hub-service--downloads{background:radial-gradient(circle at 15%,#29c4ff47,#0000 38%),#031822e6;border-color:#35cfffa3}.hub-service--online{background:radial-gradient(circle at 15%,#5ce23c3d,#0000 38%),#081f0be6;border-color:#6fef509e}.hub-download-mark,.hub-online-mark{aspect-ratio:1;color:#69dcff;background:#05141cb8;border:2px solid;border-radius:20px;place-items:center;width:clamp(46px,7vw,78px);font-size:clamp(30px,5vw,56px);font-weight:900;line-height:1;display:grid}.hub-online-mark{color:#8df86c;border-radius:50%}.hub-service>.hub-roblox-mark{width:clamp(46px,7vw,78px)}.hub-service div{gap:8px}.hub-service__copy{gap:8px;min-width:0;display:grid}.hub-catalog-card .hub-service__copy{align-content:center;max-height:100%;overflow:hidden}.hub-catalog-card .hub-service__copy b{overflow-wrap:anywhere;max-width:100%;font-size:clamp(13px,2.8vh,16px);line-height:1.08}.hub-catalog-card .hub-service__copy small{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.hub-catalog-icon,.hub-detail__icon{aspect-ratio:1;color:#ffd15c;background:#051119c7;border:2px solid;border-radius:20px;flex:none;place-items:center;width:clamp(46px,7vw,78px);font-size:clamp(25px,4.2vw,48px);font-style:normal;font-weight:950;line-height:1;display:grid;overflow:hidden}.hub-catalog-icon img,.hub-detail__icon img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.hub-service--parents{background:radial-gradient(circle at 15%,#ffbd3438,#0000 38%),#221805e6;border-color:#ffc8529e}.hub-service b{font-size:clamp(20px,3.1vw,34px);line-height:1}.hub-service small{font-size:clamp(11px,1.55vw,17px);line-height:1.2}.hub-service>.hub-service__arrow{width:clamp(30px,4vw,46px);font-size:clamp(28px,4vw,44px)}.hub-carousel__indicators{justify-content:center;gap:8px;min-height:12px;display:flex;transform:translateY(-4px)}.hub-carousel__indicators span{background:#ffffff47;border-radius:999px;width:9px;height:9px;transition:width .18s,height .18s,transform .18s,background .18s,box-shadow .18s}.hub-carousel__indicators span[data-active=true]{background:#ffc536;width:12px;height:12px;transform:scale(1.08);box-shadow:0 0 14px #ffc536a3}.hub-detail,.hub-parents{background:radial-gradient(circle at 8% 20%,#23b4e224,#0000 34%),#040d13e6;border:2px solid #ffc7476b;border-radius:clamp(18px,2.5vw,30px);height:100%;min-height:0;box-shadow:0 18px 42px #00000061}.hub-detail{text-align:left;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(210px,.9fr) minmax(280px,1.35fr);gap:clamp(10px,1.6vw,20px);padding:clamp(12px,2vw,22px);display:grid;overflow:hidden}.hub-detail__intro{align-items:flex-start;gap:clamp(10px,1.5vw,18px);min-width:0;display:flex}.hub-detail__intro h2,.hub-parents h2{color:#fff;margin:0 0 6px;font-size:clamp(18px,2.7vw,30px);line-height:1}.hub-detail__intro p,.hub-detail__intro strong{color:#d6e2ea;margin:0 0 7px;font-size:clamp(10px,1.35vw,15px);line-height:1.25;display:block}.hub-detail__intro strong{color:#ffe08a}.hub-detail__steps{color:#edf5fa;align-content:center;gap:7px;min-height:0;margin:0;padding-left:28px;font-size:clamp(10px,1.35vw,15px);line-height:1.25;display:grid}.hub-detail__steps li::marker{color:#ffc94d;font-weight:950}.hub-platforms{gap:8px;display:flex}.hub-platform{color:#fff;min-width:0;font:inherit;text-align:center;background:#0b1922f0;border:1px solid #ffcd5985;border-radius:14px;place-items:center;padding:8px 13px;display:grid}button.hub-platform{cursor:pointer}.hub-platform[data-selected=true]{background:linear-gradient(135deg,#b56c0b,#df9e1d);border-color:#ffd15b;box-shadow:0 0 18px #ffbe373d}.hub-platform[data-available=false]{opacity:.5}.hub-platform b,.hub-platform small{display:block}.hub-platform small{color:#dce5ea;margin-top:2px;font-size:9px}.hub-detail__note{color:#aebec8;align-self:center;margin:0;font-size:clamp(8px,1.05vw,11px);line-height:1.25}.hub-online-prep{--hub-online-color:#38cfff;border-color:color-mix(in srgb, var(--hub-online-color) 58%, #ffd264 28%);background:radial-gradient(circle at 12% 42%, color-mix(in srgb, var(--hub-online-color) 26%, transparent), transparent 38%), linear-gradient(145deg, #061922f7, #030b11f7);grid-template-columns:minmax(260px,1.15fr) minmax(205px,.9fr)}.hub-online-prep--ball{--hub-online-color:#ffad32}.hub-online-prep--energy{--hub-online-color:#a76aff}.hub-online-prep__intro{align-items:center}.hub-online-prep__art{aspect-ratio:3/2;border:1px solid color-mix(in srgb, var(--hub-online-color) 58%, white 12%);width:clamp(104px,12vw,124px);box-shadow:0 16px 30px #0000006b, 0 0 26px color-mix(in srgb, var(--hub-online-color) 22%, transparent);border-radius:18px;flex:0 0 clamp(104px,12vw,124px);place-items:center;display:grid;position:relative;overflow:hidden}.hub-online-prep__art>img{z-index:1;object-fit:cover;filter:saturate(1.08)contrast(1.04);width:100%;height:100%;position:relative;transform:scale(1.03)}.hub-online-prep__art .hub-online-art__halo{background:color-mix(in srgb, var(--hub-online-color) 38%, transparent)}.hub-online-prep__eyebrow{border:1px solid color-mix(in srgb, var(--hub-online-color) 52%, transparent);color:#fff1bb;letter-spacing:.08em;text-transform:uppercase;background:#030c12ad;border-radius:999px;margin-bottom:7px;padding:3px 7px;font-size:clamp(7px,.82vw,9px);font-weight:900;display:inline-block}.hub-online-prep__intro h2{font-size:clamp(18px,2.2vw,25px)}.hub-online-prep__steps{border-left:1px solid color-mix(in srgb, var(--hub-online-color) 34%, transparent);padding-left:clamp(28px,3.2vw,38px)}.hub-online-prep__reward{border:1px solid color-mix(in srgb, var(--hub-online-color) 42%, transparent);color:#dce8ee;background:#030c12b8;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:8px 12px;font-size:clamp(9px,1.15vw,13px);display:flex}.hub-online-prep__reward span b{color:#fff;margin-bottom:2px;display:block}.hub-online-prep__reward>strong{color:#211600;white-space:nowrap;background:#ffd15b;border-radius:999px;flex:none;padding:5px 9px}.hub-parents{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.3vw,16px);padding:clamp(10px,1.6vw,18px);display:grid;overflow:hidden}.hub-parents article{background:#07161ec7;border:1px solid #68d8ff3d;border-radius:16px;min-width:0;min-height:0;padding:clamp(10px,1.4vw,16px);overflow:auto}.hub-parents ol,.hub-parents ul{color:#dfe9ef;margin:0;padding-left:19px;font-size:clamp(9px,1.25vw,14px);line-height:1.3}.hub-parents li+li{margin-top:6px}.hub-support{flex-direction:column;gap:7px;display:flex}.hub-support a{color:#fff0bd;background:#2c1f0785;border:1px solid #ffc74747;border-radius:10px;padding:7px 9px;font-size:clamp(10px,1.3vw,14px);font-weight:800;text-decoration:none}.hub-navigation button{appearance:none;color:#fff7d8;min-height:clamp(48px,8vh,62px);font:inherit;text-transform:inherit;cursor:pointer;touch-action:manipulation;background:#0e1114f0;border:2px solid #ffd35c9e;border-radius:999px;place-items:center;padding:8px clamp(18px,3vw,34px);font-size:clamp(13px,1.8vw,19px);font-weight:950;display:grid;position:relative}.hub-navigation [hidden]{display:none}.hub-navigation{border-radius:24px;grid-template-columns:minmax(150px,27vw) minmax(0,1fr);align-items:center;min-height:clamp(58px,10vh,76px);padding:6px 10px;display:grid}.hub-navigation__status{grid-area:1/2;justify-self:start}.hub-navigation [data-hub-back]{grid-area:1/1;justify-self:start}.hub-navigation [data-hub-open]{text-align:center;color:#201500;background:linear-gradient(#ffe979,#ffb51d);border-color:#ffe68a;grid-area:1/2;justify-self:center;width:clamp(220px,28vw,330px);margin:0}.hub-navigation [data-hub-open]:disabled{color:#ffffffb8;cursor:default;background:#292d32eb;border-color:#fff3}.hub-navigation [data-hub-open]:disabled>b{display:none}.hub-navigation [data-hub-back]>span,.hub-navigation [data-hub-open]>span{text-align:center;grid-area:1/1}.hub-navigation [data-hub-back]>b,.hub-navigation [data-hub-open]>b{line-height:1;position:absolute}.hub-navigation [data-hub-back]>b{left:clamp(14px,2vw,24px)}.hub-navigation [data-hub-open]>b{right:clamp(14px,2vw,24px)}.overlay[data-overlay=hub]:not([data-hub-page=sections]):not([data-hub-page=parents]) .hub-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.overlay[data-overlay=hub]:not([data-hub-page=sections]):not([data-hub-page=parents]) .hub-navigation [data-hub-back],.overlay[data-overlay=hub]:not([data-hub-page=sections]):not([data-hub-page=parents]) .hub-navigation [data-hub-open]{justify-self:center;width:clamp(220px,28vw,330px)}.overlay[data-overlay=hub]:not([data-hub-page=sections]):not([data-hub-page=parents]) .hub-navigation [data-hub-back]{grid-column:1}.overlay[data-overlay=hub]:not([data-hub-page=sections]):not([data-hub-page=parents]) .hub-navigation [data-hub-open]{grid-column:2}.overlay[data-overlay=hub][data-hub-page=parents] .hub-navigation{grid-template-columns:1fr}.overlay[data-overlay=hub][data-hub-page=parents] .hub-navigation [data-hub-back]{grid-column:1;justify-self:center;width:clamp(220px,28vw,330px)}.gameplay-controls{top:max(10px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));z-index:18;pointer-events:none;position:fixed}.gameplay-controls[data-visible=false]{display:none}.gameplay-controls__exit{pointer-events:auto;color:#fff7e8;text-transform:uppercase;cursor:pointer;touch-action:manipulation;background:#190806e0;border:2px solid #ffe1a4b3;border-radius:999px;min-height:clamp(48px,9vh,64px);padding:8px clamp(18px,3vw,30px);font:900 clamp(13px,1.8vw,18px)/1 sans-serif;box-shadow:0 10px 28px #0000006b}@media (orientation:landscape) and (height<=560px){.hub-main,.hub-navigation{grid-template-columns:minmax(138px,25vw) minmax(0,1fr);gap:6px}.hub-hero__character{height:min(70vh,106%)}.hub-carousel__heading span{font-size:clamp(17px,5vh,25px)}.hub-carousel__heading b{font-size:clamp(8px,2.3vh,11px)}.hub-carousel__viewport{padding-block:6px}.hub-carousel{--hub-carousel-card-width:clamp(205px, 31vw, 285px)}.hub-service{border-radius:19px;height:clamp(142px,43vh,188px);padding:12px 16px}.hub-service b{font-size:clamp(17px,4.8vh,23px)}.hub-service small{font-size:clamp(9px,2.7vh,12px)}.hub-detail{grid-template-columns:minmax(200px,.95fr) minmax(270px,1.4fr);gap:8px 12px;padding:10px 12px}.hub-detail__icon{border-radius:15px;width:54px;font-size:17px}.hub-detail__intro{gap:9px;overflow:hidden}.hub-detail__intro h2,.hub-parents h2{margin-bottom:4px;font-size:22px}.hub-parents h2{font-size:19px}.hub-detail__intro p,.hub-detail__intro strong{margin-bottom:4px;font-size:10px;line-height:1.16}.hub-detail__steps{gap:4px;padding-left:24px;font-size:10px;line-height:1.16}.hub-platform{border-radius:11px;padding:6px 10px;font-size:11px}.hub-detail__note{font-size:8px;line-height:1.15}.hub-parents{gap:7px;padding:8px}.hub-parents article{padding:9px;overflow:hidden}.hub-parents ol,.hub-parents ul{padding-left:17px;font-size:9px;line-height:1.18}.hub-parents li+li{margin-top:3px}.hub-support{gap:4px}.hub-support a{padding:5px 7px;font-size:10px}}:root{--screen-accent:#ffc52d;--screen-cyan:#67ddff;--screen-text:#f8fbff;--screen-muted:#c5d2dc;--screen-surface:#080d12e6;--screen-stroke:#74ddff47;--screen-radius:22px}.overlay{color:var(--screen-text)}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]){background:radial-gradient(circle at 50% 42%,#00aeff38,#0000 42%),linear-gradient(145deg,#07131d,#030507 66%,#161008);overflow:hidden}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]):before{content:"";opacity:.16;pointer-events:none;background-image:linear-gradient(#7de5ff24 1px,#0000 1px),linear-gradient(90deg,#7de5ff24 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 72%);mask-image:radial-gradient(circle,#000,#0000 72%)}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]) .overlay__panel{z-index:1;border:1px solid var(--screen-stroke);border-radius:var(--screen-radius);background:var(--screen-surface);width:min(880px,94vw);padding:clamp(18px,4vh,38px) clamp(24px,5vw,58px);position:relative;box-shadow:0 26px 70px #0000007a,inset 0 1px #ffffff14}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]) .overlay__command{color:var(--screen-text);font-size:clamp(42px,8.5vh,78px)}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]) .overlay__message{color:var(--screen-muted);font-size:clamp(20px,3.4vw,31px)}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]) .overlay__action{color:#ffe28a;background:#ffc52d1a;border-color:#ffc52dad}.overlay[data-overlay=result][data-mode=failure] .overlay__command{color:#fff4c7}.overlay[data-overlay=result][data-mode=failure] .overlay__message{color:#fff}.result-navigation{grid-template-columns:repeat(2,minmax(190px,1fr));gap:12px;width:min(620px,100%);display:grid}.result-navigation button{appearance:none;color:#f7f9fb;cursor:pointer;background:#04080ceb;border:2px solid #ffc52d6b;border-radius:999px;justify-content:center;align-items:center;min-height:54px;padding:8px 18px;font-size:clamp(15px,2.4vw,21px);font-weight:850;display:flex}.result-navigation button:active{transform:translateY(1px)}.setup-navigation{justify-content:center;gap:12px;width:min(620px,100%);display:flex}.secondary-action{appearance:none;color:#f7f9fb;min-height:48px;font:inherit;cursor:pointer;background:#04080cd1;border:2px solid #ffffff47;border-radius:999px;padding:10px 20px;font-weight:850}.overlay[data-overlay=result][data-mode=reward] .result-navigation{display:none}.overlay[data-overlay=preroll]:is([data-mode=preparing],[data-mode=retry]) .gesture-pill__arrow{color:#041116;background:var(--screen-cyan);box-shadow:0 0 24px #67ddffb3}.overlay[data-overlay=preroll] .gesture-pill{border-width:2px;min-height:52px;padding:8px 20px 8px 9px;font-size:clamp(15px,2.3vw,21px);font-weight:750}.overlay[data-overlay=preroll] .gesture-pill__arrow{width:40px;font-size:25px}.overlay[data-overlay=start] .activity-card__title{color:var(--screen-text);font-weight:950}.overlay[data-overlay=start] .activity-card[data-selected=true] .activity-card__title{color:var(--screen-accent)}.overlay[data-overlay=start] .activity-card__description{color:#e5edf3}.overlay[data-overlay=start] .activity-control,.hub-navigation{background:#04080ceb;border-width:2px;border-color:#ffc52d6b}.hub-activity__copy b,.hub-service b,.hub-welcome b{color:var(--screen-text);font-weight:950}.hub-activity__copy small,.hub-service small,.hub-welcome span{color:#d7e1e8}@keyframes start-confirmed{0%{opacity:.72;transform:scaleX(.88)}to{opacity:1;transform:scaleX(1.04)}}@media (orientation:landscape) and (height<=560px){.overlay[data-overlay=phone-setup] .overlay__command,.overlay[data-overlay=calibration] .overlay__command,.overlay[data-overlay=preroll] .overlay__command{max-width:820px;font-size:clamp(34px,9vh,50px)}.overlay[data-overlay=phone-setup] .overlay__message,.overlay[data-overlay=calibration] .overlay__message,.overlay[data-overlay=preroll] .overlay__message{font-size:clamp(16px,4vh,22px);font-weight:800}.overlay[data-overlay=phone-setup] .overlay__action,.overlay[data-overlay=calibration] .overlay__action,.overlay[data-overlay=preroll] .overlay__action{font-size:clamp(14px,3.4vh,18px)}.overlay[data-overlay=start] .overlay__command{font-size:clamp(32px,8.8vh,46px)}.activity-lead{color:#eef5fa;font-size:clamp(13px,3.3vh,16px);font-weight:850}.activity-card__title{font-size:clamp(15px,3.8vh,19px);line-height:1.05}.activity-card__description{font-size:clamp(11px,2.8vh,14px);line-height:1.16}.activity-card__meta{font-size:clamp(10px,2.5vh,12px)}.activity-card__reward{font-size:clamp(13px,3.2vh,16px)}.activity-side-hint,.activity-control{font-size:clamp(10px,2.5vh,12px)}.activity-control b{font-size:clamp(12px,3vh,15px)}.overlay[data-overlay=preroll] .gesture-pill{min-height:42px;font-size:clamp(13px,3.2vh,17px)}.overlay[data-overlay=preroll] .gesture-pill__arrow{width:30px;font-size:19px}.hub-activity__copy b{font-size:clamp(17px,4.4vh,21px)}.hub-activity__copy small,.hub-activity__copy em,.hub-service small{font-size:clamp(10px,2.5vh,12px);line-height:1.12}.hub-service b{font-size:clamp(14px,3.4vh,17px)}.hub-navigation{min-height:clamp(54px,13vh,66px);font-size:clamp(11px,2.7vh,14px)}.overlay:is([data-overlay=result],[data-overlay=unsupported],[data-overlay=denied]) .overlay__panel{width:min(820px,96vw);padding:16px 28px}.result-navigation{gap:8px;width:min(560px,100%)}.result-navigation button{min-height:42px;padding:6px 14px;font-size:clamp(13px,3.2vh,17px)}}.overlay[data-overlay=start] .overlay__command{white-space:nowrap;width:min(34vw,390px);min-height:48px;margin:clamp(10px,2.1vh,22px) auto 0;padding:7px 24px;font-size:clamp(18px,3.2vw,34px);line-height:1}@media (orientation:landscape) and (height<=560px){.overlay[data-overlay=start] .overlay__command{width:min(34vw,310px);min-height:36px;margin-top:7px;padding:5px 18px;font-size:clamp(18px,5vh,25px)}.overlay[data-overlay=start] .activity-lead{margin-top:0;padding:3px 10px;font-size:10px}}
