/* Dungeon Runner: cold stone, engraved silver and violet arcane light. */
/* Direction artwork uses SVG assets, so device fonts cannot change its shape. */
.menu-enter-arrow{display:block;width:20px;height:20px;pointer-events:none}
#turn-arrow{display:block;width:83px;height:83px;object-fit:contain;margin:5px 0;filter:drop-shadow(0 3px 5px #050917) drop-shadow(0 0 12px #704aaf66)}
#turn-arrow[data-direction="left"]{transform:scaleX(-1)}
.turn-cue.ready #turn-arrow{filter:drop-shadow(0 0 12px #aeedfa80) brightness(1.15)}
@media(max-width:700px){#turn-arrow{width:67px;height:67px}}
@media(max-height:540px) and (min-width:600px){#turn-arrow{width:46px;height:46px}}
:root{--font:'DM Sans',sans-serif;--display:'Cinzel',Georgia,serif;--ink:#e9eaf5;--muted:#9ba5be;--line:#8292b14d;--violet:#b997ff;--gold:#ddc797}
body{background:#100d1c;color:var(--ink)}
button{touch-action:manipulation}button:focus-visible{outline:2px solid #d5c7ff;outline-offset:5px}
[hidden]{display:none!important}
.screen-vignette{background:radial-gradient(ellipse at 64% 48%,transparent 26%,#05081033 70%,#03060ce0 100%)}
.screen-grain{opacity:.05}.site-header{padding:26px 3.5vw;z-index:24}.header-best{background:#101724a6;border:1px solid #9eaac13a;border-radius:2px;box-shadow:none;color:#d4d9e9;padding:9px 14px;gap:10px}.header-best svg{color:#b2a0e1}.header-best span{font:9px var(--font);letter-spacing:2px;color:#8995ae}.header-best strong{font:600 15px var(--font);color:#e2dfef;text-shadow:none}.icon-button{background:#101724b8;border:1px solid #74829e6b;box-shadow:inset 0 1px #ffffff0c;border-radius:3px;color:#c5ccdf}.icon-button:hover{background:#283047;color:#fff}.header-tools{gap:9px}
.menu-overlay{inset:0;overflow:hidden}.menu-shade{background:linear-gradient(90deg,#060b14eb 0%,#0b101bd1 28%,#0b101b66 49%,transparent 72%),linear-gradient(0deg,#060a13f0,transparent 25%);backdrop-filter:none}.carved-border{display:none}
.title-lockup{position:absolute;left:7vw;top:19vh;width:440px;max-width:45vw;z-index:2}.title-kicker{display:flex;align-items:center;gap:11px;color:#af99d9;font:500 9px var(--font);letter-spacing:3.2px;margin-bottom:21px;white-space:nowrap}.title-kicker span{display:block;width:23px;height:1px;background:#b69ad7}.game-title{position:static;transform:none;margin:0;width:auto;max-width:none;font-family:var(--display);text-align:left;filter:none;line-height:1.03;letter-spacing:1px}.game-title span{display:block;font-size:clamp(44px,5.1vw,76px);font-weight:600;color:#d8dfec;background:linear-gradient(#f0f3fc,#a8b5cb 61%,#7685a2);background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 2px 0 #060912)}.game-title strong{display:block;font-size:clamp(51px,5.95vw,88px);font-weight:600;letter-spacing:4px;background:linear-gradient(#e7d8ff,#b79bcf 68%,#726588);background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 0 #080a12)}.title-rule{display:flex;align-items:center;gap:11px;width:84%;margin:16px 0 14px;color:#ad8bd2}.title-rule i{height:1px;flex:1;background:linear-gradient(90deg,transparent,#8a739d)}.title-rule i:last-child{transform:rotate(180deg)}.title-rule svg{width:16px;height:22px;fill:none;stroke:currentColor;stroke-width:1}.title-description{margin:0;font-size:12px;letter-spacing:1px;color:#abb3c7}
.arcane-seal{position:absolute;right:7vw;top:19vh;width:34vw;height:34vw;border:1px solid #b6a1e00e;border-radius:50%;pointer-events:none}.arcane-seal:before,.arcane-seal:after,.arcane-seal i{content:'';position:absolute;inset:15px;border:1px solid #b5a0e01a;border-radius:50%}.arcane-seal:after{inset:40px;border-style:dashed;opacity:.35}.arcane-seal i{inset:25%;border-radius:0;transform:rotate(45deg)}.arcane-seal b{position:absolute;top:-20px;left:calc(50% - 15px);font-size:29px;color:#b5a0e04a;font-weight:400}
.menu-world-label{position:absolute;right:4vw;bottom:17vh;display:flex;align-items:flex-end;flex-direction:column;gap:7px;border-right:2px solid #bca1e655;padding-right:13px;color:#b7c2d2;text-shadow:0 2px 8px #000}.menu-world-label span{font:600 14px var(--display);letter-spacing:5px}.menu-world-label small{font:8px var(--font);letter-spacing:2px;color:#7c8ca5}
.menu-content{left:7vw;top:53vh;bottom:auto;transform:none;width:354px;max-width:40vw;gap:12px;align-items:stretch}.gold-button{border:1px solid #c3a2f3;border-radius:2px;background:linear-gradient(115deg,#6b458d,#463965 75%,#413b61);box-shadow:inset 0 1px #ffffff2e,0 0 25px #9e62e312,0 4px 10px #0005;color:#f5ecff;text-shadow:0 1px 3px #1d0e34}.gold-button:before,.gold-button:after{display:none}.gold-button:hover{filter:brightness(1.18);background:linear-gradient(115deg,#8153a7,#53416e);transform:translateY(-1px)}.play-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:62px;font:600 13px var(--display);letter-spacing:1.3px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}.play-button svg{width:18px;height:18px;fill:none;stroke:#e3cbff;stroke-width:1.4}.play-button b{margin-left:auto;font:20px var(--font);padding-right:17px;color:#bfa9e6}.play-button span{margin-right:auto}.play-button svg{margin-left:20px}.start-note{font-size:7px;color:#68758e;letter-spacing:1.7px;text-align:center;margin-top:-4px;margin-bottom:5px}.stone-button{background:#141c2b9c;border:1px solid #8c99b43b;box-shadow:inset 0 1px #ffffff08;border-radius:2px;color:#aeb9d0;text-shadow:none;height:42px;font-family:var(--font);font-size:9px;font-weight:500;letter-spacing:1.3px}.stone-button:hover{background:#272b44;color:#e6dbff;border-color:#b69bd47a}.stone-button svg{color:#9b94b7;width:15px;height:15px}.menu-secondary{gap:10px}.camera-menu-button{margin:0;height:40px;gap:12px}.camera-menu-button>span:first-child{font-size:8px;color:#8895af}.camera-menu-button strong{font:500 10px var(--font);color:#d0c6e5}.camera-menu-button>span:last-child{font-size:18px;color:#9289a9}
.menu-stats{left:7vw;bottom:7vh;transform:none;width:440px;max-width:43vw;border:0;border-top:1px solid #8392b12e;border-bottom:1px solid #8392b114;padding:17px 0;justify-content:space-between;background:none;box-shadow:none}.menu-stats>div{padding:0 15px;gap:10px;border:0}.menu-stats>div:first-child{padding-left:0}.menu-stats>div+div{border-left:1px solid #8794ae33}.menu-stats span{font:500 8px var(--font);letter-spacing:1.4px;color:#77869f}.menu-stats strong{font:500 22px var(--display);color:#d4dcec;text-shadow:none;gap:5px}.menu-stats strong b{font-weight:500}.menu-stats svg{color:#c9b28b;width:14px}.menu-stats small{font:9px var(--font);color:#8893ad}.menu-footer{left:7vw;bottom:2.5vh;transform:none;display:flex;align-items:center;width:86vw;justify-content:space-between;gap:20px;text-align:left;color:#64718b}.menu-footer>span{font:8px var(--font);letter-spacing:1px}.menu-footer small{font:7px var(--font);letter-spacing:2px;color:#66728a}
/* The HUD keeps the play corridor clear. */
.hud-scores{top:max(25px,env(safe-area-inset-top));right:27px;gap:8px;align-items:flex-end}.score-tablet{display:flex;align-items:center;gap:25px;min-width:187px;background:linear-gradient(110deg,#111a2bea,#182030d9);border:1px solid #a3b5d14a;border-left:2px solid #b9a1eb;border-radius:2px;padding:9px 15px;box-shadow:0 5px 18px #0003}.score-label{font:8px var(--font);letter-spacing:2px;color:#96a3bd}.score-tablet strong{font:500 26px var(--display);color:#e5e8f5;text-shadow:none;letter-spacing:1px}.coin-tablet{background:#121b2cd9;border:1px solid #a4a2ae3b;border-radius:2px;box-shadow:none;min-width:100px;padding:6px 11px;color:#dac19b}.coin-tablet svg{width:16px;height:16px;color:#ccb183}.coin-tablet strong{font:600 16px var(--font);color:#dac7a2;text-shadow:none}.distance-tablet{color:#7f91b2;font:10px var(--font);text-shadow:0 2px #070b12}.distance-tablet b{font:500 13px var(--font);color:#bcc7dc}.idol-meter{left:24px;top:24px;width:41px;filter:none}.meter-idol{color:#b89ddf;fill:#1c243c;stroke:#b5a3df;width:37px;height:44px;filter:drop-shadow(0 0 9px #be73ff44)}.idol-meter strong{left:43px;top:13px;font:600 19px var(--display);color:#d2c3ed;text-shadow:0 2px #070c16}.meter-channel{width:5px;height:98px;border:0;background:#7f6ea22b;border-radius:0;margin:8px auto}.meter-channel i{background:linear-gradient(#c9b1fa,#775aab);box-shadow:0 0 9px #a57ae844}.capture-panel{left:91px;top:24px;min-width:140px;padding:9px 14px;background:#121b2bcb;border:1px solid #9daacd3b;border-radius:2px;box-shadow:none;text-shadow:none;color:#d5d8ec}.capture-mode-label{font:500 8px var(--font);letter-spacing:2px;color:#9589b8}.capture-panel strong{font:500 26px var(--display);color:#e3d8f6}.capture-panel div span{font:8px var(--font);letter-spacing:1px;color:#aaa4be}.capture-panel small{font:9px var(--font);line-height:1.8;color:#6e819e}.capture-panel small b{color:#b5bdd3}.pause-button{right:27px;bottom:26px;width:45px;height:45px;border-radius:2px;box-shadow:none}.pause-button svg{width:19px;stroke-width:2}
.cast-button{position:absolute;bottom:81px;right:27px;width:79px;height:95px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:4px;color:#e7d5ff;border:1px solid #b594e58c;border-radius:5px 5px 18px 5px;background:radial-gradient(ellipse at 50% 30%,#663890aa,#151b30eb 75%);box-shadow:inset 0 0 14px #b583f51a,0 0 17px #9b5ed014;text-shadow:0 1px 2px #100522;overflow:hidden}.cast-button svg{width:30px;height:36px;fill:#b58bea;stroke:#e3caff;stroke-width:1;filter:drop-shadow(0 0 5px #bf7cff)}.cast-button span{font:600 8px var(--font);letter-spacing:2px}.cast-button small{font:6px var(--font);letter-spacing:.3px;color:#a18cb9}.cast-button i{position:absolute;bottom:0;left:0;height:3px;background:#d5afff;width:100%;transform-origin:left}.cast-button.cooling{filter:saturate(.5)}.cast-button:hover{border-color:#e2bfff;box-shadow:0 0 20px #ad66ef40}.play-hint{bottom:26px;background:#0f1728a6;border:1px solid #8090b325;border-radius:2px;padding:9px 13px;font:8px var(--font);letter-spacing:1px;color:#8596b1;text-shadow:none;gap:12px}.play-hint i{background:#6e7e9740}.chase-status{top:151px;background:#3c1524d9;color:#ffb6b0;border:1px solid #c8555577;border-radius:2px;font:600 10px var(--font);letter-spacing:1.4px}.target-cue{bottom:115px;background:#121b30e8;border:1px solid #9d89c258;border-radius:2px;color:#b6a6d5;font:500 9px var(--font);letter-spacing:.7px;box-shadow:none;text-shadow:none}.target-cue.ready{border-color:#d2afff;color:#eedbff;background:#402653e8;box-shadow:0 0 15px #b164df25}.capture-feedback{background:linear-gradient(110deg,#342044ef,#162039f2);color:#e4d0ff;border:1px solid #b48bd5;border-radius:2px;box-shadow:0 0 22px #9d54db24;text-shadow:none;font:600 11px var(--font);letter-spacing:1px}.turn-cue{color:#ded0f8;text-shadow:0 3px 8px #050917,0 0 23px #704aaf77}.turn-cue strong{color:#ded0f8}.turn-cue-kicker{color:#a59ab9;font:500 9px var(--font);letter-spacing:2px}#turn-label{color:#dcc8ff;font:600 12px var(--font);letter-spacing:1px}.turn-cue.ready{color:#aeedfa}.status-toast{top:155px;background:#121b2eea;border:1px solid #9c8dbb50;border-radius:2px;color:#d1c5e6;font:500 11px var(--font);line-height:1.6;letter-spacing:.3px;box-shadow:0 6px 18px #0004;text-shadow:none}.powerup-status{background:#192039e8;border:1px solid #9b89c268;border-radius:2px;color:#c6bbe1;font:9px var(--font);letter-spacing:1px}.coin-gain{color:#ead5b2;text-shadow:0 0 9px #9e73cb}
.modal-overlay{background:#0509149e;backdrop-filter:blur(8px)}.stone-panel{background:linear-gradient(145deg,#202b3af7,#101827fa);border:1px solid #8796b35e;border-top:2px solid #ae8cd5;border-radius:3px;box-shadow:0 25px 90px #0009,inset 0 1px #d6d9ff15;color:#bbc5d8;padding:33px 34px 29px}.stone-panel:before,.stone-panel:after{display:none}.stone-panel h2{color:#ddd8ed;text-shadow:none;font-weight:600;letter-spacing:2px;font-size:30px}.stone-panel>p{color:#8e9cb7}.panel-eyebrow{color:#aa8bcf;font:8px var(--font);letter-spacing:2.3px}.panel-crest svg{color:#b794dd;fill:#47335844}.panel-shortcut{font:8px var(--font);letter-spacing:1.5px;color:#687b99}.wide{font-size:15px;height:51px;font-weight:600;letter-spacing:1px}.outline-button{background:transparent;border:1px solid #8594b14d;border-radius:2px;box-shadow:none;color:#a9b9d0;font:600 12px var(--font);letter-spacing:1px;text-shadow:none}.outline-button:hover{background:#7e60ae1a;border-color:#a58ac9}.text-button{color:#96a3bd;font:9px var(--font);letter-spacing:1px}.result-score{border-color:#8493ac36}.result-score span{color:#8c9db8;font:8px var(--font);letter-spacing:2px}.result-score strong{font-weight:500;color:#dbcaef;text-shadow:none}.result-stats span{color:#7c8ea9;font:8px var(--font);letter-spacing:1px}.result-stats strong{color:#c1cbe0;font-weight:500}.result-stats small{color:#7a8ca8}.result-stats>div+div{border-color:#8a93ad2e}.result-stats svg{color:#c5af89}.new-best{color:#d6b3ff;text-shadow:none;font:600 10px var(--font);letter-spacing:1px}.monkey-result-record{color:#a18ab6!important}.panel-close{top:12px;right:12px}.help-panel{width:570px}.control-list>div{border-color:#8293b32b}.key-cap{background:#3342593b;border:1px solid #8090b565;border-bottom:3px solid #515a79;border-radius:3px;color:#c8b7e1;text-shadow:none}.control-list strong{color:#c3b6d9;font:600 11px var(--font);letter-spacing:1px}.control-list div div span{color:#94a1b9;font-size:11px}.control-note{color:#697e9d}.help-tip{background:#7382ad0b;border-color:#7184ac33;border-radius:2px}.help-tip svg{color:#cbb994}.help-tip p,.monkey-help p{color:#9eabc2}.help-footnote{color:#6e829f}.monkey-help{border-color:#7184ac33}.monkey-help strong{color:#c3aedc;font-weight:500}.objective-item{border-color:#7184ac33}.objective-heading strong{color:#cfc3e0;font-size:12px}.objective-heading span{color:#c0a6d7}.objective-item p{color:#879bb7}.objective-track{background:#8091af20;border:0;height:3px}.objective-track i{background:linear-gradient(90deg,#70569a,#b79cde)}.local-note{color:#6e829f!important}
.camera-intro,.camera-controls{color:#8e9db7!important}.camera-options button{background:#10192b9e;border:1px solid #7c8ca94d;border-radius:2px;box-shadow:none;color:#9baac2}.camera-options button[aria-pressed=true]{background:#50376555;border-color:#ac8bd4;box-shadow:inset 0 0 16px #af83df0f}.camera-options button strong{color:#c3b5db}.camera-options button span{color:#8195b1}.camera-options svg{color:#a496bf}.camera-selection{background:#141b2b;border-color:#8491b12e}.camera-selection strong{color:#d0b8ea}.camera-selection p{color:#8c9db8}.camera-controls span{color:#8f81a4}.lane-indicator{background:#131b2be0;border:1px solid #8a7ea855;color:#9c90b4}.lane-indicator b.active{color:#edddff;background:#684881;border-color:#b89ada}
#touch-controls{gap:7px;bottom:max(22px,env(safe-area-inset-bottom))}#touch-controls button{width:45px;height:44px;font-size:22px;background:#131d31d9;border:1px solid #9b9cc363;border-radius:3px;box-shadow:none;color:#c2b8d9}#touch-controls button:active{background:#624378}.loading-overlay{background:radial-gradient(ellipse at 50% 40%,#24213a,#161126 60%,#100d1c);color:#a995c9;gap:22px}.loading-rune{font-size:57px;color:#bc98eb;filter:drop-shadow(0 0 25px #ac75fa55)}.loading-wordmark{font:500 25px var(--display);letter-spacing:3px;color:#cad4e9}.loading-wordmark strong{color:#c0a2db;font-weight:500}.loading-line{height:2px;border:0;background:#a492c22e}.loading-line:after{background:#b58fd9}#loading-label{font:8px var(--font);letter-spacing:3px;color:#7f90ad}
@media(min-width:1500px){.title-lockup{top:21vh}.menu-content{top:54vh;width:400px}.title-description{font-size:13px}.play-button{height:67px;font-size:14px}}
@media(max-width:900px) and (min-width:701px){.title-lockup{left:5vw;max-width:48vw;top:22vh}.menu-content{left:5vw;max-width:43vw;top:52vh}.game-title span{font-size:51px}.game-title strong{font-size:61px}.menu-stats{left:5vw;max-width:48vw}.menu-world-label{right:3vw}.title-kicker{letter-spacing:2px;font-size:8px}}
@media(max-width:700px){.site-header{padding:14px 17px}.header-best{padding:8px 10px}.header-best span{font-size:7px}.header-best strong{font-size:13px}.header-tools .icon-button{width:37px;height:37px;min-width:37px;min-height:37px}.menu-shade{background:linear-gradient(0deg,#070c16fa 3%,#0a1020e8 25%,#10162622 56%,#090e1be8 96%)}.title-lockup{top:max(83px,calc(env(safe-area-inset-top) + 72px));left:50%;transform:translateX(-50%);width:340px;max-width:85vw;text-align:center}.title-kicker{justify-content:center;font-size:7px;letter-spacing:2.5px;margin-bottom:13px}.title-kicker span{width:17px}.game-title{text-align:center}.game-title span{font-size:clamp(36px,11vw,57px)}.game-title strong{font-size:clamp(43px,13vw,67px);letter-spacing:4px}.title-rule{width:68%;margin:10px auto 8px}.title-rule svg{height:16px}.title-description{font-size:10px;letter-spacing:.5px}.arcane-seal{width:70vw;height:70vw;right:15vw;top:28vh}.menu-world-label{display:none}.menu-content{left:50%;top:auto;bottom:143px;transform:translateX(-50%);width:310px;max-width:calc(100vw - 44px);gap:9px}.play-button{height:53px;font-size:11px;letter-spacing:1px}.start-note{font-size:6px;letter-spacing:1.2px;margin-bottom:0}.camera-menu-button{height:36px;min-height:36px}.menu-secondary .stone-button{height:38px;font-size:8px;letter-spacing:.8px}.menu-stats{left:50%;transform:translateX(-50%);width:320px;max-width:calc(100vw - 44px);bottom:56px;padding:14px 0}.menu-stats>div{gap:8px;padding:0 11px}.menu-stats span{font-size:6px;letter-spacing:.8px}.menu-stats strong{font-size:17px}.menu-stats svg{width:12px}.menu-footer{left:0;bottom:max(23px,env(safe-area-inset-bottom));width:100%;transform:none;justify-content:center;text-align:center}.menu-footer>span{font-size:6px;letter-spacing:.5px}.menu-footer small{display:none}.hud-scores{top:max(15px,env(safe-area-inset-top));right:14px;gap:6px}.score-tablet{min-width:130px;padding:7px 10px;gap:15px}.score-label{font-size:6px;letter-spacing:1px}.score-tablet strong{font-size:20px}.coin-tablet{min-width:72px;padding:5px 9px}.coin-tablet strong{font-size:14px}.coin-tablet svg{width:13px}.idol-meter{left:12px;top:16px;width:30px}.meter-idol{width:27px;height:33px}.idol-meter strong{font-size:15px;left:29px;top:10px}.meter-channel{height:64px;width:3px}.capture-panel{left:65px;top:16px;min-width:103px;padding:7px 9px}.capture-mode-label{font-size:6px;letter-spacing:1.4px}.capture-panel strong{font-size:20px}.capture-panel div span{font-size:6px;letter-spacing:.5px}.capture-panel small{font-size:8px}.capture-panel>div{gap:5px}.pause-button{bottom:max(21px,env(safe-area-inset-bottom));right:14px;width:43px;height:44px}.cast-button{right:14px;bottom:79px;width:61px;height:78px}.cast-button svg{height:29px;width:26px}.cast-button span{font-size:7px}.cast-button small{font-size:5px}.target-cue{bottom:94px;max-width:calc(100vw - 110px);left:44%;font-size:8px;white-space:normal;padding:7px 10px;line-height:1.6}.status-toast{top:123px;font-size:10px;width:300px;max-width:calc(100vw - 32px);line-height:1.6}.chase-status{top:110px;font-size:8px}.capture-feedback{font-size:9px;line-height:1.7}.turn-cue{top:26%}.turn-cue strong{font-size:67px}.turn-cue-kicker{font-size:8px}#turn-label{font-size:11px}.stone-panel{padding:31px 24px 24px}.stone-panel h2{font-size:25px}.panel-close{width:38px;height:38px}.help-panel{padding-top:40px}.control-list>div{padding:11px 0}.control-list div div span{font-size:10px}.control-list strong{font-size:10px}.key-cap{height:35px;width:36px}.play-hint{display:none}.camera-options button strong{font-size:10px}.camera-options button span{font-size:8px}#touch-controls{left:44%;gap:6px}#touch-controls button{width:40px;min-width:40px;font-size:22px}.loading-wordmark{font-size:19px;letter-spacing:2px}.powerup-status{bottom:160px;font-size:8px}}
@media(max-width:370px){.title-lockup{top:78px}.title-kicker{font-size:6px;letter-spacing:2px}.menu-content{bottom:132px;width:285px}.menu-stats{bottom:49px;width:285px}.game-title span{font-size:40px}.game-title strong{font-size:48px}.title-description{font-size:9px}.menu-footer>span{font-size:5.5px}.capture-panel{min-width:88px;left:58px;padding:6px}.capture-panel div span{font-size:5px}.score-tablet{min-width:116px;padding:7px 9px;gap:12px}#touch-controls{left:43%;gap:5px}#touch-controls button{width:36px;min-width:36px}.cast-button{width:57px}}
@media(max-height:730px) and (max-width:700px){.title-lockup{top:75px}.title-kicker{margin-bottom:10px}.game-title span{font-size:42px}.game-title strong{font-size:50px}.title-rule{margin:6px auto}.title-description{font-size:9px}.menu-content{bottom:127px;gap:7px}.play-button{height:48px}.menu-stats{bottom:47px;padding:12px 0}.menu-footer{bottom:18px}.camera-menu-button{height:32px;min-height:32px}.menu-secondary .stone-button{height:35px}}
@media(max-height:540px) and (min-width:600px){.title-lockup{left:6vw;top:18vh;transform:none;max-width:43vw}.title-kicker{font-size:7px;margin-bottom:11px}.game-title{text-align:left}.game-title span{font-size:40px}.game-title strong{font-size:49px}.title-rule{margin:9px 0;width:80%}.title-description{font-size:10px}.menu-content{left:58vw;top:25vh;bottom:auto;transform:none;width:33vw;max-width:none;gap:8px}.play-button{height:48px;font-size:10px}.start-note{font-size:6px}.camera-menu-button{height:34px;min-height:34px}.menu-secondary .stone-button{height:35px;font-size:7px}.menu-stats{left:58vw;bottom:14vh;transform:none;width:33vw;max-width:none;padding:12px 0}.menu-stats span{font-size:6px}.menu-stats strong{font-size:15px}.menu-stats>div{padding:0 9px}.menu-footer{left:6vw;bottom:5vh;width:85vw;justify-content:space-between}.menu-footer>span{font-size:6px}.menu-world-label{display:none}.arcane-seal{width:40vh;height:40vh;right:33vw;top:23vh}.header-best{visibility:visible}.hud-scores{top:12px}.capture-panel{top:12px}.status-toast{top:100px}.idol-meter{top:12px}.meter-channel{height:47px}.play-hint{bottom:13px;font-size:6px}.pause-button{bottom:13px;right:16px}.cast-button{right:16px;bottom:67px;width:58px;height:74px}.cast-button svg{width:22px;height:28px}.cast-button span{font-size:7px}.cast-button small{font-size:5px}.target-cue{bottom:75px;font-size:8px}.powerup-status{bottom:57px}.turn-cue strong{font-size:46px}.stone-panel{padding:24px 28px;max-height:calc(100dvh - 24px)}.stone-panel h2{font-size:23px}.help-panel{padding-top:29px}.control-list>div{padding:7px 0}.key-cap{height:28px;width:32px}.monkey-help{margin-top:10px;padding-top:8px}.monkey-help p{font-size:10px}.wide{height:42px}.panel-crest,.panel-shortcut{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Circular sigil, five life segments and a separate pursuit indicator. */
.idol-meter{width:57px;height:57px;display:grid;place-items:center;background:radial-gradient(circle,#6c3baa99,#19122fe8 52%,#090d17 70%);border:1px solid #b29bc6;border-radius:50%;box-shadow:inset 0 0 0 4px #121727,inset 0 0 0 5px #907390,0 0 13px #a754e732;z-index:2}.idol-meter:before,.idol-meter:after{content:'';position:absolute;inset:-5px 24px;background:#b29bc6;transform:rotate(43deg);z-index:-1;clip-path:polygon(50% 0,100% 10%,70% 50%,100% 90%,50% 100%,0 90%,30% 50%,0 10%)}.idol-meter:after{transform:rotate(-43deg)}.meter-idol{width:32px;height:38px}.idol-meter strong{left:auto;right:-10px;top:auto;bottom:-9px;font:600 11px var(--font);padding:2px 5px;background:#15182a;border:1px solid #796583;color:#dbc4f7;border-radius:3px}.meter-channel{display:none}.arcane-meters{position:absolute;left:90px;top:26px;width:168px;display:flex;flex-direction:column;gap:9px}.arcane-meters span{display:block;margin-bottom:4px;font:500 6px var(--font);letter-spacing:1.5px;color:#b9a8b7}.arcane-meters>div>div{height:8px;border:1px solid #a49b9c99;background:#080c17d9;transform:skewX(-17deg);box-shadow:0 1px 4px #0009;padding:1px}.arcane-meters i{display:block;height:100%;transition:width .08s linear;box-shadow:inset 0 1px #ffffff66}.pursuit-gauge i{background:linear-gradient(#c93f66,#902238);width:100%}.capture-panel{left:24px;top:104px;min-width:130px;padding:8px 11px;background:linear-gradient(90deg,#111a2be0,#141b2b66);border-left:2px solid #a686cc6b}.capture-panel>div{gap:9px}.capture-panel strong{font-size:22px}.capture-panel small{display:inline-block;margin-left:7px}.capture-mode-label{margin-bottom:4px}.score-tablet{border-right:0;border-left:0;border-top:1px solid #bda38944;border-bottom:1px solid #bda38944;background:linear-gradient(90deg,transparent,#141824cc);box-shadow:none}.score-tablet strong{color:#eadfcc}.score-label{color:#a59787}.coin-tablet{border:0;background:#11192799}.coin-tablet strong{font-family:var(--display);font-weight:500;font-size:18px}.chase-status{top:193px}.status-toast{top:193px}
@media(max-width:700px){.idol-meter{left:14px;top:18px;width:41px;height:41px}.idol-meter:before,.idol-meter:after{inset:-4px 17px}.meter-idol{width:24px;height:28px}.idol-meter strong{font-size:8px;right:-6px;bottom:-6px;padding:1px 3px}.arcane-meters{left:62px;top:19px;width:111px;gap:7px}.arcane-meters span{font-size:5px;letter-spacing:1px;margin-bottom:3px}.arcane-meters>div>div{height:6px}.capture-panel{top:86px;left:14px;min-width:115px;padding:6px 8px}.capture-mode-label{font-size:6px}.capture-panel strong{font-size:18px}.capture-panel div span{font-size:6px}.capture-panel small{font-size:7px;margin-left:0}.status-toast{top:163px}.chase-status{top:159px;font-size:7px}.score-tablet{min-width:124px;gap:13px}.hud-scores{right:14px}.score-tablet strong{font-size:22px}.coin-tablet strong{font-size:16px}}
@media(max-width:360px){.arcane-meters{width:93px}.score-tablet{min-width:108px;gap:10px;padding-right:6px;padding-left:6px}.score-tablet strong{font-size:20px}}
@media(max-height:540px) and (min-width:600px){.idol-meter{top:13px;left:17px;width:43px;height:43px}.meter-idol{width:24px;height:30px}.idol-meter:before,.idol-meter:after{inset:-4px 18px}.arcane-meters{top:14px;left:68px;width:139px;gap:6px}.arcane-meters span{font-size:5px;margin-bottom:3px}.arcane-meters>div>div{height:7px}.capture-panel{top:78px;left:17px;min-width:120px;padding:5px 9px}.capture-panel strong{font-size:19px}.status-toast{top:141px}.chase-status{top:135px}}
/* Tarnished metal surrounds the sigil and glass bars; values stay readable. */
.idol-meter{border-color:#bda57d;box-shadow:inset 0 0 0 3px #0d111e,inset 0 0 0 4px #846d57,0 0 0 2px #1b1720,0 0 12px #9c48df44}.idol-meter:before,.idol-meter:after{background:#bda57d}.arcane-meters>div>div{border-color:#b29e7e;background:linear-gradient(#05070df5,#121827);box-shadow:0 0 0 2px #17131c,0 2px 5px #0009;clip-path:polygon(0 0,100% 0,94% 100%,0 100%)}.arcane-meters span{text-shadow:0 1px 4px #000;color:#b4a593}.arcane-meters i{box-shadow:inset 0 1px #ffffff77,inset 0 -1px #0008}.hud-scores{gap:6px}.distance-tablet{order:-1;display:flex;justify-content:flex-end;align-items:baseline;gap:6px;margin:0 0 3px;padding:5px 14px 8px 30px;background:linear-gradient(90deg,transparent,#080e18ba);border-top:1px solid #b49e7544;border-bottom:1px solid #b49e752e;color:#c4b99f;font:17px var(--display);text-shadow:0 2px 5px #000}.distance-tablet b{font:500 34px var(--display);color:#efe3cc;letter-spacing:1px}.score-tablet{min-width:155px;gap:27px;padding:5px 13px;border-color:#b49e751a}.score-tablet strong{font-size:19px;color:#bfb9c8}.score-label{font-size:7px;letter-spacing:2px}.coin-tablet{padding-right:14px;background:linear-gradient(90deg,transparent,#0b111cbb)}.coin-tablet strong{font-size:22px;color:#e9cb80}.coin-tablet svg{color:#dfb85c;width:20px;height:20px;filter:drop-shadow(0 1px 2px #000)}
@media(max-width:700px){.distance-tablet{padding:3px 6px 5px 17px;font-size:11px}.distance-tablet b{font-size:25px}.score-tablet{min-width:111px;gap:14px;padding:3px 6px}.score-tablet strong{font-size:15px}.score-label{font-size:5px;letter-spacing:1px}.coin-tablet{padding:2px 7px}.coin-tablet strong{font-size:18px}.coin-tablet svg{width:15px;height:15px}.hud-scores{gap:5px}}
@media(max-height:540px) and (min-width:600px){.distance-tablet b{font-size:25px}.distance-tablet{font-size:12px;padding-bottom:4px;margin-bottom:0}.score-tablet{min-width:122px;padding:4px 10px}.score-tablet strong{font-size:15px}.coin-tablet strong{font-size:17px}}
.life-gauge>div{display:flex;gap:4px}.life-gauge i{flex:1;background:linear-gradient(#ee6481,#a52747);transition:background .15s,opacity .15s}.life-gauge i.lost{background:#241a25;box-shadow:inset 0 0 3px #000;opacity:.65}.arcane-meters .pursuit-gauge>div{height:5px}.pursuit-gauge{width:82%}.pursuit-gauge i{background:linear-gradient(#f4a66c,#a94b30)}

/* Phones use gestures in portrait and landscape; keep keyboard hints off-screen. */
@media (max-width:700px), (max-width:1000px) and (max-height:500px), (pointer:coarse){
  #touch-controls,.play-hint,.target-cue,.menu-footer>span{display:none!important}
}
