:root{--lime:#c6ff57;--purple:#c3a4ff;--ink:#141d2b;--muted:#b9c3c8;--line:#ffffff25;font-family:Arial,Helvetica,sans-serif;color:#fff;background:#101722;color-scheme:dark}*{box-sizing:border-box}body{margin:0;overflow:hidden;height:100dvh;overscroll-behavior:none}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:4px}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#111a29c9,transparent 73%),linear-gradient(180deg,#121c3044,transparent 23%,transparent 75%,#17223277)}header{position:fixed;left:35px;right:35px;top:max(25px,env(safe-area-inset-top));display:flex;justify-content:space-between;align-items:center;z-index:5;pointer-events:none}.logo{font-weight:950;font-style:italic;font-size:37px;letter-spacing:-4px;pointer-events:auto;text-shadow:0 3px 10px #0003;line-height:.85}.logo span{font-style:normal;font-size:11px;letter-spacing:0;vertical-align:top;margin-left:4px}.logo small{display:block;font-size:7px;letter-spacing:1.5px;font-style:normal;margin-top:8px}.header-actions{display:flex;gap:8px;pointer-events:auto}.icon{width:43px;height:43px;border:1px solid #ffffff35;border-radius:50%;background:#172231a6;backdrop-filter:blur(12px);font-size:23px;display:grid;place-items:center}.icon:hover{border-color:var(--lime);color:var(--lime)}.home{position:absolute;left:7%;top:21%;max-width:560px;z-index:3}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;line-height:1.5;display:flex;gap:9px;align-items:center}.eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--lime)}h1{font-size:clamp(70px,8vw,116px);font-weight:950;line-height:.86;letter-spacing:-6px;margin:25px 0 21px}em{font-style:normal;color:var(--lime)}.lead{font-size:17px;color:#e0e6e5;line-height:1.5}.features{display:flex;gap:21px;margin:26px 0 20px}.features>span{font-size:9px;color:var(--lime);letter-spacing:1px}.features b{display:block;color:#e1e6e6;font-size:10px;letter-spacing:0;margin-top:6px;font-weight:400}.looks{display:flex;gap:7px;align-items:center;margin:18px 0}.looks>span{font-size:8px;letter-spacing:1px;margin-right:8px;color:#b2bfbf}.looks button{border:1px solid #ffffff45;background:#17223288;padding:8px 14px;font-size:11px;border-radius:4px}.looks button.selected{color:var(--lime);border-color:var(--lime);background:#b6ef3920}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:57px;padding:0 25px;border:0;border-radius:5px;background:var(--lime);color:#17251b;font-size:12px;font-weight:800;letter-spacing:.6px;box-shadow:0 4px 20px #0002}.primary span{font-size:25px;font-weight:400}.primary:hover{background:#d7ff8c}.subtle{background:none;border:0;color:#dbe5d8;padding:13px;font-size:11px}.control-note{font-size:10px;line-height:1.7;color:#c1c9c8;margin-top:18px}.mobile-copy{display:none}.home-foot{display:flex;gap:16px;font-size:8px;color:#aebcc1;margin-top:24px;align-items:center}.home-foot a{color:#edf1e3;white-space:nowrap}.hidden{display:none!important}#hud{position:absolute;inset:0;pointer-events:none;z-index:2}.mission{position:absolute;left:35px;top:105px;padding:18px 22px;background:#192432ce;border:1px solid #ffffff20;border-radius:9px;backdrop-filter:blur(14px);max-width:340px}.mission .eyebrow{font-size:8px;color:#bdd790}.mission h2{font-size:17px;margin:9px 0 6px;letter-spacing:-.2px}.mission p{font-size:10px;color:var(--muted);line-height:1.5;margin:0;max-width:280px}.counters{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:13px;margin-top:14px;font-size:9px;color:#bcc8c6}.counters b{font-size:17px;color:#fff}.counters .coin-icon{font-size:23px;color:#ffcf63;line-height:1}.divider{width:1px;height:20px;background:var(--line);margin:0 4px}.counters button{margin-left:auto;background:none;border:0;color:var(--lime);font-size:23px;pointer-events:auto}.map-wrap{position:absolute;right:35px;top:100px;width:144px;background:#172331d9;border:1px solid #ffffff25;border-radius:12px;overflow:hidden;backdrop-filter:blur(8px)}#map{display:block;width:144px;height:144px}.map-wrap>span{font-size:7px;letter-spacing:2px;text-align:center;display:block;padding:0 0 10px;color:#a9b8bd}.guide{position:absolute;bottom:105px;left:50%;transform:translateX(-50%);display:flex;gap:9px;align-items:center;background:#182536ab;padding:9px 15px;border-radius:40px;border:1px solid #fff2;backdrop-filter:blur(8px)}#guideArrow{font-size:29px;color:var(--lime);display:block;width:26px;text-align:center}.guide b{display:block;font-size:14px}.guide small{display:block;font-size:7px;margin-top:3px;color:#c8d3cb;letter-spacing:1px}.tip{position:absolute;bottom:55px;left:50%;transform:translateX(-50%);font-size:10px;color:#e1e5df;text-align:center;width:min(500px,50%);text-shadow:0 1px 6px #000}.world-actions{position:absolute;bottom:45px;right:35px;display:flex;align-items:end;gap:12px;pointer-events:auto}.action{border:1px solid #e0ffad55;background:#243a2edd;border-radius:12px;min-width:145px;min-height:68px;padding:12px 16px;backdrop-filter:blur(8px)}.action b{display:block;color:var(--lime);font-size:12px;letter-spacing:1px}.action small{display:block;color:#c9d4cb;margin-top:8px;font-size:9px}.action:disabled{opacity:.65}.action.ready{background:var(--lime);border-color:var(--lime);box-shadow:0 0 25px #c6ff5740}.action.ready b,.action.ready small{color:#18271b}.jump{width:68px;height:68px;border-radius:50%;background:#1a2639aa;border:1px solid #fff5;font-size:28px;backdrop-filter:blur(8px);touch-action:none}.jump small{font-size:7px;display:block;margin-top:0}.desktop-help{position:absolute;bottom:28px;left:35px;font-size:9px;color:#d4ded8;letter-spacing:.3px}.desktop-help span{margin:0 13px;color:#b0bfc0}.joystick{display:none;position:absolute;left:28px;bottom:max(40px,env(safe-area-inset-bottom));width:125px;height:125px;border-radius:50%;background:#1b293a70;border:1px solid #ffffff40;pointer-events:auto;touch-action:none;backdrop-filter:blur(5px)}.joystick:before,.joystick:after{content:'';position:absolute;background:#fff1;left:50%;top:15%;width:1px;height:70%}.joystick:after{transform:rotate(90deg)}#stick{position:absolute;width:54px;height:54px;left:35px;top:35px;background:#d8e8be88;border:1px solid #dbffa8;border-radius:50%;box-shadow:0 4px 20px #0003;z-index:1}.world-label{position:absolute;transform:translate(-50%,-100%);white-space:nowrap;font-size:10px;font-weight:800;color:#fff;background:#202c3cbb;border:1px solid #ffffff30;border-radius:5px;padding:7px 10px;pointer-events:none;text-shadow:0 1px 5px #0006}.world-label.school{background:#bdff50;color:#263928;border-color:#bfff64;text-shadow:none;font-size:12px;letter-spacing:1px}.world-label.target{color:var(--lime);border-color:#bdff5080}#labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.battle{position:absolute;right:35px;top:110px;width:370px;padding:20px;background:#172131ed;border:1px solid #b3cb9455;border-radius:10px;z-index:4;box-shadow:0 15px 65px #0004}.battle-title{display:flex;justify-content:space-between;align-items:center}.battle-title .eyebrow{font-size:8px;color:var(--lime)}.battle-title h2{font-size:20px;margin:7px 0}.battle-score{text-align:center;margin-left:10px}.battle-score b{font-size:24px;color:var(--lime);display:block}.battle-score small{font-size:7px;letter-spacing:1px}.battle-rule{font-size:10px;line-height:1.5;color:var(--muted);margin:5px 0 12px}.battle-track{height:320px;position:relative;border-radius:6px;overflow:hidden;background:#101c21}.battle-track canvas{width:100%;height:100%;display:block}.battle-keys{position:absolute;left:3%;right:3%;bottom:12px;display:flex;gap:5px;height:47px}.battle-keys button{flex:1;border:1px solid #d0ffa24d;background:#c5ff4a10;color:#d9ffb2;font-size:28px;border-radius:5px;touch-action:none}.battle-keys button.down{background:var(--lime);color:#16261b}.judge{position:absolute;top:48%;left:0;right:0;text-align:center;font-size:20px;font-weight:800;color:var(--lime);pointer-events:none;text-shadow:0 1px 8px #000;opacity:0}.battle-bottom{display:flex;gap:9px;align-items:center;font-size:8px;margin-top:13px;color:#acbcb9}.battle-bottom>div{flex:1;background:#49574c;height:3px}.battle-bottom i{display:block;background:var(--lime);height:100%;width:0}.overlay{position:fixed;inset:0;background:#111d32a1;backdrop-filter:blur(8px);z-index:7;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}.panel{width:min(500px,100%);background:#172332f2;border:1px solid #ffffff25;padding:35px;text-align:center;border-radius:13px;box-shadow:0 20px 80px #0004}.panel .eyebrow{justify-content:center;font-size:9px;color:var(--lime)}.panel h2{font-size:27px;line-height:1.05;letter-spacing:-1px;margin:24px 0 12px}.panel h3{font-size:18px;color:var(--purple);margin:0 0 25px}.panel p{font-size:12px;line-height:1.7;color:var(--muted)}.record-disc{width:100px;height:100px;border-radius:50%;border:1px solid #d5fd7850;background:repeating-radial-gradient(circle,#273447 0px,#273447 3px,#394440 4px,#394440 5px);margin:22px auto 10px;display:flex;align-items:center;justify-content:center;font-size:35px;color:var(--lime);position:relative}.record-disc span{position:absolute;bottom:18px;font-size:8px;font-weight:800}.result-stats{display:flex;justify-content:center;gap:45px;margin:20px 0}.result-stats b{display:block;font-size:28px}.result-stats span{display:block;font-size:8px;color:var(--muted);letter-spacing:1px;margin-top:7px}.panel .primary{margin-top:12px;width:100%}.secondary{border:1px solid #9aaf9655;border-radius:5px;background:#d3ecc508;padding:15px 20px;font-size:11px}.secondary:hover{border-color:var(--lime)}.final-panel{max-width:550px}.final-mark{font-style:italic;font-size:53px;font-weight:950;color:var(--lime);letter-spacing:-4px;margin-top:22px}.final-panel h2{font-size:50px;letter-spacing:-3px;margin:17px 0 23px}.final-panel p.invitation{font-size:16px;color:#e1e9df;line-height:1.5}.invitation strong{color:#fff}.final-sub{font-size:11px!important}.final-links{display:flex;gap:8px;margin-top:14px}.final-links>*{flex:1}.site-link{display:block;font-size:11px;color:#bdd994;margin-top:24px;text-align:center;line-height:1.5}dialog{border:1px solid #697b6855;border-radius:13px;background:#182635;color:#fff;padding:30px;width:min(430px,calc(100% - 30px));max-height:90dvh;overflow-y:auto;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#111b2bbc;backdrop-filter:blur(6px)}dialog h2{font-size:30px;letter-spacing:-1px;margin:12px 0 22px}dialog p{font-size:12px;line-height:1.7;color:var(--muted)}.full{width:100%;margin-top:13px}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:5px 0 20px}.modal-head .icon{flex:none}label{font-size:12px;display:flex;flex-wrap:wrap;justify-content:space-between;margin:24px 0 12px;gap:14px}input[type=range]{width:100%;accent-color:var(--lime)}input[type=checkbox]{accent-color:var(--lime);width:17px;height:17px}output{color:var(--lime)}.help{font-size:10px!important;color:#97b0b5!important}.toggle{border-top:1px solid #fff2;padding-top:20px;align-items:center}.track-row{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid #fff2}.track-row b{font-size:13px;display:block}.track-row small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.track-row button{border:1px solid var(--lime);border-radius:5px;background:none;color:var(--lime);padding:9px 13px;font-size:11px}.track-row.locked{opacity:.4}#shareUrl{width:100%;padding:13px;background:#0e1a26;border:1px solid #fff3;border-radius:5px;color:#ddf1c4;font-size:12px}.toast{position:fixed;top:80px;left:50%;transform:translateX(-50%);background:var(--lime);color:#1c2b1c;padding:12px 19px;border-radius:6px;font-size:12px;z-index:20;max-width:90vw;box-shadow:0 5px 25px #0003;text-align:center}
@media(pointer:coarse){.joystick{display:block}.desktop-help,.desktop-copy{display:none}.mobile-copy{display:inline}.world-actions{bottom:max(45px,env(safe-area-inset-bottom));right:25px}.tip{bottom:24px;width:60%}.guide{bottom:180px}}
@media(max-width:700px){header{left:18px;right:18px;top:max(19px,env(safe-area-inset-top))}.logo{font-size:33px}.icon{width:37px;height:37px;font-size:20px}.home{left:26px;right:26px;top:19%;max-width:none}h1{font-size:79px;letter-spacing:-5px;margin-top:22px}.home .eyebrow{font-size:8px;letter-spacing:1px}.lead{font-size:15px}.features{gap:24px;margin:22px 0 18px}.looks{margin:17px 0}.control-note{font-size:9px;margin-top:16px}.home-foot{font-size:7px;max-width:350px;line-height:1.5;margin-top:15px}.home .primary{min-height:54px}.mission{left:15px;top:90px;padding:12px 14px;max-width:calc(100% - 127px);border-radius:8px}.mission .eyebrow{font-size:7px;letter-spacing:1px}.mission h2{font-size:13px;line-height:1.3;margin:5px 0}.mission p{font-size:9px}.counters{gap:7px;margin-top:9px;padding-top:9px;font-size:8px}.counters b{font-size:15px}.counters .coin-icon{font-size:19px}.counters button{font-size:20px}.map-wrap{right:15px;top:90px;width:96px}#map{width:96px;height:96px}.map-wrap>span{font-size:6px;letter-spacing:1px;padding-bottom:7px}.joystick{left:22px;width:115px;height:115px}#stick{left:30px;top:30px}.world-actions{gap:8px;right:18px}.action{min-width:100px;max-width:120px;min-height:65px;padding:10px}.action b{font-size:10px}.action small{font-size:8px;line-height:1.3}.jump{width:58px;height:58px}.tip{font-size:9px;bottom:14px;width:80%}.guide{bottom:180px;padding:7px 13px}.guide b{font-size:12px}.guide small{font-size:6px}.battle{top:auto;bottom:max(13px,env(safe-area-inset-bottom));left:12px;right:12px;width:auto;padding:13px 14px;max-width:430px;margin:auto}.battle-title h2{font-size:16px}.battle-title .eyebrow{font-size:7px;letter-spacing:1px}.battle-rule{font-size:9px;margin:3px 0 8px}.battle-track{height:min(37dvh,300px);min-height:230px}.battle-bottom{margin-top:8px}.battle-keys{height:48px}.panel{padding:24px}.final-panel h2{font-size:43px}.final-panel p.invitation{font-size:15px}.final-panel .eyebrow{font-size:8px;letter-spacing:1px}.final-mark{font-size:45px;margin-top:15px}.final-links .secondary{font-size:10px;padding:13px 10px}.world-label{font-size:8px;padding:5px 7px}.world-label.school{font-size:9px}.toast{top:70px;font-size:11px;width:max-content;max-width:90vw}}
@media(max-height:650px) and (min-width:700px){.home{top:19%}h1{font-size:75px;margin:17px 0}.lead{font-size:14px}.features{margin:15px 0}.looks{margin:13px 0}.control-note{margin:10px 0}.home-foot{margin-top:8px}.battle{top:86px;padding:14px;width:330px}.battle-track{height:260px}.mission{top:87px}.map-wrap{top:87px}.tip{bottom:12px}.world-actions{bottom:30px}.panel{padding:23px}.record-disc{width:65px;height:65px;margin:12px auto}.record-disc span{bottom:8px}.panel h2{margin-top:13px}.final-mark{margin:0;font-size:37px}.final-panel h2{font-size:38px;margin:12px 0}.final-panel p.invitation{font-size:14px}}
@media(max-height:520px) and (pointer:coarse) and (orientation:landscape){.home{top:90px;left:30px}.home h1{font-size:57px;line-height:.9;margin:11px 0}.home .lead{display:none}.features{margin:12px 0;position:absolute;left:300px;top:30px;flex-direction:column;gap:14px;width:160px}.looks{margin:12px 0}.control-note{display:none}.home-foot{margin-top:10px}.mission{top:80px;max-width:280px}.mission p{display:none}.mission h2{font-size:13px}.map-wrap{top:75px;width:95px}#map{width:95px;height:95px}.joystick{bottom:18px;left:26px;width:105px;height:105px}#stick{top:25px;left:25px}.world-actions{bottom:18px}.guide{bottom:45px}.tip{display:none}.battle{left:auto;right:14px;top:73px;bottom:12px;width:300px;margin:0;padding:10px}.battle-track{height:calc(100dvh - 190px);min-height:160px}.battle-rule{display:none}.battle-title h2{font-size:15px}.battle-keys{height:42px}.battle-bottom{font-size:7px}.panel{max-height:95dvh;overflow:auto;padding:20px}.final-mark{font-size:36px;margin:0}.final-panel h2{font-size:34px;margin:12px 0}.final-panel p.invitation{font-size:13px}.final-sub{display:none}.final-panel .site-link{margin-top:12px}.record-disc{display:none}.panel h2{font-size:24px;margin-top:15px}.result-stats{margin:15px 0}.panel h3{margin-bottom:10px}}
/* District expansion: readable progression and thumb-sized abilities. */
.side-quests{display:flex;gap:7px;margin-top:13px;padding-top:10px;border-top:1px solid #ffffff20}.side-quests button{pointer-events:auto;flex:1;padding:8px 9px;background:#bd96ff0c;border:1px solid #c0a3e846;border-radius:5px;color:#c9bbec;font-size:9px;white-space:nowrap}.side-quests b{font-weight:700;color:#e0f5ce;margin-left:4px}.world-actions{padding-bottom:9px}.stamina{position:absolute;bottom:0;right:0;width:148px;height:4px;border-radius:4px;background:#3c5359;overflow:hidden}.stamina i{display:block;background:#bfee70;width:100%;height:100%}.dash:disabled{opacity:.35}.dash{color:#d1f1af;font-size:32px}.battle-power{display:flex;align-items:center;gap:14px;margin:12px 0}.battle-power>div{flex:1}.battle-power span{display:flex;justify-content:space-between;color:#b7c6be;font-size:8px;letter-spacing:1px}.crowd-meter{height:4px;background:#4f4856;margin-top:7px;border-radius:3px;overflow:hidden}.crowd-meter i{height:100%;display:block;background:#b9df8a;width:50%}#drive{min-width:127px;min-height:34px;padding:8px 10px;border:1px solid #b7ea68;border-radius:5px;background:#b8e78315;color:#d6ffb6;font-weight:700;font-size:9px;touch-action:manipulation}#drive:disabled{border-color:#647c6988;color:#99ac9a;background:#9bca8310}#drive:not(:disabled){background:#c6ff57;color:#1e3628;box-shadow:0 0 20px #c6ff5730}.battle-rule{min-height:30px}.mission{max-width:355px}.battle-track{height:300px}
@media(max-width:700px){.side-quests{gap:5px;margin-top:8px;padding-top:8px}.side-quests button{font-size:8px;padding:7px 5px}.side-quests b{margin-left:2px}.world-actions{display:grid;grid-template-columns:58px 58px;gap:8px;right:18px;padding-bottom:10px}.action{grid-column:1/3;min-width:124px;max-width:none;min-height:49px;padding:9px}.action small{margin-top:5px}.stamina{width:124px}.mission{max-width:calc(100% - 127px)}.battle-power{margin:8px 0 9px;gap:9px}.battle-power span{font-size:7px;letter-spacing:.5px}#drive{min-width:119px;min-height:34px}.battle-track{height:min(32dvh,270px);min-height:200px}.battle-rule{font-size:9px;min-height:28px}.guide{bottom:198px}.tip{font-size:8px}}
@media(max-height:520px) and (pointer:coarse) and (orientation:landscape){.side-quests{display:none}.battle-track{height:calc(100dvh - 228px);min-height:145px}.battle-power{margin:4px 0}.battle-rule{display:none}.battle-power span{font-size:6px}#drive{min-width:107px;min-height:29px;font-size:8px}.world-actions{display:flex;right:16px;bottom:20px}.world-actions .action{min-width:100px}.guide{bottom:35px}.stamina{width:124px}.mission{max-width:280px}}
/* ZNS Adventure: sunlit world, clear tasks and five large touch commands. */
:root{--lime:#d4ff89;--purple:#d0b8ff;--muted:#d0dce1}body[data-state=roam] .vignette{background:linear-gradient(180deg,#234b7020,transparent 35%,transparent 75%,#18345130)}body[data-state=home] .vignette{background:linear-gradient(90deg,#1a3153ed 0%,#1a3153bf 28%,#284d6633 70%)}.home{top:18%;max-width:650px}h1{font-size:clamp(66px,8.3vw,112px);letter-spacing:-5px}.lead{color:#edf7ee}.primary{border-radius:13px;box-shadow:0 5px 0 #6a974260,0 10px 30px #14283b20}.looks button{border-radius:8px}.mission{max-width:360px;background:#203b53e6;border:1px solid #e2effc65;border-radius:18px;box-shadow:0 8px 30px #22476025}.mission .eyebrow{color:#d4ff89;font-size:9px}.mission h2{font-size:18px;line-height:1.23}.mission p{font-size:11px;line-height:1.4}.quest-progress{display:flex;gap:5px;margin-top:9px}.quest-progress span{display:grid;place-items:center;border-radius:7px;font-size:12px;width:30px;height:23px;background:#9cbccc19;color:#a5bbc3}.quest-progress span.done{background:#bde695;color:#305341}.quest-progress span.active{background:#edd3a0;color:#3a4859;box-shadow:0 0 0 1px #ffeecc}.counters{gap:8px}.score-mini{margin-left:7px;color:#ffe3a2;font-size:10px}.score-mini b{font-size:13px}.side-quests{gap:5px}.side-quests button{font-size:9px;border-radius:8px;padding:8px}.world-actions{display:grid;grid-template-columns:68px 68px 68px;gap:10px;max-width:226px;bottom:46px}.world-actions .action{grid-column:1/4;min-width:226px;max-width:226px;min-height:59px;border-radius:16px;line-height:1.2}.world-actions #dance{grid-column:3;grid-row:2}.world-actions #super{grid-column:3;grid-row:3}.world-actions #jump{grid-column:2;grid-row:3}.world-actions #dash{grid-column:2;grid-row:2}.world-actions .stamina{right:0;bottom:-8px;width:146px}.world-actions .jump{background:#27445ce8;border:2px solid #ccdee599;box-shadow:0 5px 0 #1d324970;font-size:30px}.world-actions .jump small{font-size:7px;font-weight:700;color:#eff8e9}.world-actions .super.ready{background:#735cac;border-color:#dec5ff;color:#e7d1ff}.world-actions .dance{color:#ffddb2}.world-actions .action.ready{background:#d4ff89}.world-actions .action.ready b,.world-actions .action.ready small{color:#244335}.power-hud{position:absolute;bottom:31px;left:50%;transform:translateX(-50%);width:300px;max-width:40vw;padding:12px 15px;background:#2d4268ec;border:1px solid #d9d7fd7a;border-radius:13px}.power-hud strong{font-size:15px;color:#e3d0ff}.power-hud>small{display:block;font-size:9px;line-height:1.4;margin-top:5px}.power-hud>div{height:4px;background:#7895984a;margin-top:8px;border-radius:3px;overflow:hidden}.power-hud i{height:100%;display:block;background:#d7c3fa}.power-hud>span{float:right;font-size:11px;color:#f5dbac}.guide{bottom:143px;background:#25445be6;border-radius:15px}.challenge-timer{position:absolute;top:103px;left:50%;transform:translateX(-50%);padding:10px 18px;border:1px solid #ffe69c;background:#395271eb;color:#ffe5a8;border-radius:15px;font-size:14px;font-weight:800;white-space:nowrap}.reward{position:fixed;z-index:16;top:90px;left:50%;transform:translateX(-50%);border:1px solid #dcffba;background:#2d5753f2;box-shadow:0 10px 25px #243c3d38;border-radius:16px;padding:15px 22px;text-align:center;max-width:90vw;pointer-events:none}.reward strong{display:block;font-size:17px;color:#dcffaf}.reward span{display:block;font-size:11px;color:#eef5d9;margin-top:6px}.toast{background:#fff0c7;color:#32485d;border-radius:14px;top:auto;bottom:14px;max-width:65vw;font-weight:600;pointer-events:none}.world-label{border-radius:9px;background:#38536acf;border-color:#d5e4e870;box-shadow:0 3px 10px #334b5925}.world-label.school{color:#2a5143;background:#d6fbb0}.beat-pulse{color:#d4ff89;letter-spacing:8px;text-align:center;font-size:11px;margin-bottom:8px}.battle{border-radius:18px;background:#20334deb;border-color:#d5eba76b}.battle-track{border-radius:12px}.battle-keys button{border-radius:10px}.panel,dialog{border-radius:20px;background:#20364feb;border-color:#bfd8eb66}.final-panel h2{font-size:43px}.final-panel p.invitation{font-size:15px;line-height:1.6;color:#edf7e3}.celebration{position:absolute;left:50%;bottom:35px;transform:translateX(-50%);text-align:center;z-index:4;color:#fff;text-shadow:0 3px 20px #264035}.celebration .eyebrow{justify-content:center;color:#d4ff89}.celebration h2{font-size:clamp(26px,5vw,56px);letter-spacing:-1px;margin:12px 0}.celebration button{background:#304c67bd}.music-buttons{display:flex;gap:8px}.music-buttons>*{flex:1}.now-playing{color:#d7f4be}.upload-box{margin-top:18px;padding:2px 13px 12px;border:1px solid #cfe3a85a;border-radius:13px;background:#b2d7ad0b}.upload-box .primary{font-size:11px;padding:0 16px;gap:12px}.upload-box p{font-size:11px;overflow-wrap:anywhere}.music-section{font-size:14px;color:#e8ceab;margin-top:27px}.track-row{gap:12px}.track-row button{flex:none;border-radius:8px}.track-row b{font-size:12px;line-height:1.4}.journal-row{display:flex;gap:15px;align-items:center;padding:13px 0;border-bottom:1px solid #ffffff25}.journal-row>span{width:30px;font-size:25px;color:#e9c7a5}.journal-row.done>span{color:#d4ff89}.journal-row b{font-size:14px}.journal-row small{font-size:10px;display:block;margin-top:5px;color:#b9ceda}.desktop-help{font-size:9px;bottom:18px}.joystick{border:2px solid #dcebc19c;background:#26486169;box-shadow:0 5px 20px #2742553a}#stick{background:#e5f0cad0;border:2px solid #f0ffdb;box-shadow:0 4px 12px #2236524f}.map-wrap{border-radius:16px;border-color:#dcf3d875;background:#315773}.tip{bottom:36px;max-width:280px;line-height:1.5}.header-actions .icon{background:#274660cf;border-color:#d7e6df80}.home-foot a{color:#d4ff89}
@media(max-width:700px){.home{top:18%;left:25px;right:20px}h1{font-size:69px;letter-spacing:-4px;line-height:.94;margin-top:15px}.home .lead{font-size:15px}.home .features{gap:14px;margin:20px 0}.home .features b{font-size:9px}.home .looks{gap:5px}.looks>span{font-size:7px}.looks button{padding:8px 12px}.header-actions{gap:5px}.icon{width:35px;height:35px;font-size:19px}.mission{top:81px;left:12px;padding:11px 12px;max-width:calc(100% - 112px);min-width:215px;border-radius:14px}.mission h2{font-size:14px;margin:7px 0 4px}.mission p{font-size:9px;line-height:1.35}.mission .eyebrow{font-size:7px;letter-spacing:.8px}.quest-progress{margin-top:6px;gap:4px}.quest-progress span{width:25px;height:19px;font-size:10px}.counters{margin-top:8px;padding-top:8px;gap:6px;font-size:8px}.counters b{font-size:14px}.score-mini{margin-left:2px;font-size:9px}.score-mini b{font-size:11px}.counters .divider{margin:0}.counters button{font-size:18px}.side-quests{margin-top:7px;padding-top:7px;gap:4px}.side-quests button{padding:6px 4px;font-size:7px}.side-quests button:last-child{min-width:44px}.map-wrap{right:12px;top:82px;width:87px}#map{width:87px;height:87px}.map-wrap>span{font-size:6px}.world-actions{grid-template-columns:55px 55px 55px;gap:8px;right:14px;bottom:max(30px,env(safe-area-inset-bottom));max-width:181px;padding:0}.world-actions .action{min-width:181px;max-width:181px;min-height:52px;padding:9px 12px;border-radius:14px}.action b{font-size:11px}.action small{font-size:7px}.world-actions .jump{width:55px;height:55px;font-size:25px}.world-actions .jump small{font-size:6px}.world-actions .stamina{width:117px;bottom:-10px}.joystick{left:20px;bottom:42px;width:113px;height:113px}#stick{left:28px;top:28px}.guide{bottom:220px;padding:8px 13px;border-radius:14px;left:23%}.guide b{font-size:14px}.guide small{font-size:7px}.power-hud{bottom:222px;left:auto;right:14px;transform:none;max-width:55vw;width:210px;padding:10px 12px}.power-hud strong{font-size:12px}.power-hud small{font-size:8px}.power-hud>span{font-size:9px}.challenge-timer{top:auto;bottom:315px;padding:9px 15px;font-size:12px;max-width:90vw}.tip{bottom:178px;left:23%;width:140px;font-size:8px}.toast{bottom:8px;font-size:10px;padding:9px 14px;max-width:94vw;width:max-content}.reward{top:73px;width:90vw}.reward strong{font-size:15px}.reward span{font-size:10px}.battle{bottom:15px;left:12px;right:12px;top:auto}.battle-track{height:30dvh;min-height:205px}.beat-pulse{margin-bottom:6px;font-size:9px}.battle-rule{font-size:9px}.panel{padding:24px 20px}.final-panel h2{font-size:37px}.final-panel p.invitation{font-size:12px}.final-links .secondary{font-size:9px}.final-sub{font-size:10px!important}.final-mark{font-size:39px}.celebration{width:90%;bottom:40px}.desktop-help{display:none}}
@media(max-height:550px) and (pointer:coarse) and (orientation:landscape){.home{top:78px;left:30px}.home h1{font-size:51px;line-height:.9;margin:9px 0}.home .features{left:300px;top:10px}.home .lead{display:none}.looks{margin:10px 0}.home-foot{margin-top:8px}.home .primary{min-height:45px}.mission{top:74px;max-width:250px;min-width:0;padding:9px 13px}.mission h2{font-size:12px}.mission p,.side-quests,.quest-progress{display:none}.counters{margin-top:6px;padding-top:6px}.map-wrap{top:72px;width:78px}#map{width:78px;height:78px}.world-actions{display:grid;grid-template-columns:49px 49px 49px;right:14px;bottom:18px;gap:6px;max-width:159px}.world-actions .action{min-width:159px;max-width:159px;min-height:39px}.world-actions .action small{display:none}.world-actions .jump{width:49px;height:49px;font-size:22px}.world-actions .jump small{font-size:6px}.joystick{bottom:24px;width:105px;height:105px}#stick{left:24px;top:24px}.guide{bottom:24px;left:36%;padding:7px 12px}.power-hud{bottom:21px;right:191px;width:230px;max-width:30vw;left:auto;transform:none}.power-hud small{font-size:7px}.power-hud strong{font-size:10px}.challenge-timer{top:76px;bottom:auto;font-size:10px}.toast{bottom:4px;font-size:9px;max-width:70vw;padding:6px 12px}.tip{display:none}.battle{width:300px;left:auto;top:70px;right:12px;bottom:10px;padding:9px 12px}.battle-track{height:calc(100dvh - 218px);min-height:135px}.beat-pulse{font-size:7px;margin:0}.battle-rule{display:none}.battle-title h2{font-size:14px}.battle-power{margin:5px 0}.battle-keys{height:42px;bottom:7px}.battle-bottom{font-size:7px}.panel{max-height:94dvh;overflow:auto}.reward{top:70px;width:auto;max-width:65vw}.reward strong{font-size:12px}.reward span{font-size:9px}.final-panel h2{font-size:30px}.final-panel .invitation{font-size:11px}.final-panel .primary{min-height:44px}.final-panel .final-mark{font-size:30px}.celebration{bottom:25px}.celebration h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.primary{transition:none}}
