/* Nexus in-game interface. World stays visible; only controls receive pointers. */
.game-shell.is-playing{min-height:0;height:100dvh}
.is-playing>.scene,.is-playing>.topbar,.is-playing>.hero,.is-playing>.scene-story,.is-playing>.footer-bar,.is-playing>.corner-lines{display:none}
#playSession{position:absolute;inset:0;z-index:5;background:#0c2023;color:#eee4cb;overflow:hidden;--game-gold:#d5bd86;--game-mint:#9bd8c3;font-family:var(--ui);touch-action:none;user-select:none;-webkit-user-select:none}
#playSession [hidden],#playSession[hidden]{display:none!important}
#gameCanvas{display:block;width:100%;height:100%;outline:none;touch-action:none;cursor:crosshair}
.game-edge{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 45%,#03141b44 100%);box-shadow:inset 0 0 0 10px #081b2130}
.glass-frame{background:linear-gradient(125deg,#122a30ed,#0c1f2bea);border:1px solid #c5b78066;box-shadow:inset 0 0 0 3px #10242b,inset 0 0 0 4px #b0ba9c1a,0 8px 22px #00101938;backdrop-filter:blur(7px)}
.game-hud-top{position:absolute;inset:22px 26px auto;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;pointer-events:none}
.trainer-card{display:flex;align-items:center;gap:14px;padding:12px 17px 12px 10px;min-width:265px;pointer-events:auto}
.trainer-portrait{position:relative;width:66px;height:66px;display:grid;place-items:center;background:radial-gradient(circle,var(--partner),#1f4c4b33 66%);border:1px solid #adc8ae4d;clip-path:polygon(0 9px,9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%)}
.trainer-portrait img{width:65px;height:65px;object-fit:contain;filter:drop-shadow(0 5px 2px #0412168c)}
.trainer-info{flex:1;min-width:145px}.trainer-type{font:600 8px var(--pixel);letter-spacing:.12em;color:var(--partner);display:flex;justify-content:space-between;gap:14px}.trainer-type i{font:7px var(--pixel);letter-spacing:.12em;color:#95aba9}
.trainer-info>strong{display:block;font:600 18px var(--display);color:#f2deaf;margin:6px 0 7px}.hp-track{height:5px;background:#03141d;border:1px solid #889c7933;overflow:hidden}.hp-track>i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#57a285,#b4e2a7);transition:width .15s}.trainer-info>#gameHealth{font:8px var(--pixel);letter-spacing:.09em;color:#c3d6c3;display:block;text-align:right;margin-top:5px}
.zone-heading{position:absolute;left:50%;top:3px;transform:translateX(-50%);text-align:center;width:330px;text-shadow:0 2px 8px #001318}.zone-heading small{font:7px var(--pixel);letter-spacing:.24em;color:#b6d6cb}.zone-heading h2{font:500 24px var(--display);margin:10px 0;color:#f1dfb3;letter-spacing:.035em}.zone-divider{display:block;margin:auto;width:120px;height:1px;background:linear-gradient(90deg,transparent,#e5c88b,transparent)}
.game-menu-actions{display:flex;gap:8px;pointer-events:auto}.game-icon-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #c8b17b80;background:#112832e6;color:#d8c49b;box-shadow:inset 0 0 0 3px #122f35}.game-icon-button :is(svg,img.art-icon){width:16px;height:16px}.game-icon-button:hover{background:#36564f;color:#ffeac2;border-color:#f0d7a2}
.expedition-card{position:absolute;right:26px;top:262px;width:235px;padding:17px 18px 13px;pointer-events:auto}.expedition-label{display:flex;align-items:center;gap:8px;font:7px var(--pixel);letter-spacing:.13em;color:#9bc3b9;padding-bottom:12px;border-bottom:1px solid #cfca9a26}.expedition-label :is(svg,img.art-icon){width:13px;height:13px}.expedition-label>span{margin-left:auto;color:#dcc38b}.expedition-card>strong{font:600 16px/1.4 var(--display);color:#e8d3a7;display:block;margin:13px 0 8px}.expedition-card>p{font:14px/1.65 var(--ui);color:#b8c9c5;margin:0 0 15px}.quest-progress{height:3px;background:#041822;overflow:hidden}.quest-progress i{display:block;height:100%;width:0;background:#8ddbc2;transition:width .2s}.quest-counter{display:block;font:7px var(--pixel);letter-spacing:.12em;color:#a9bcaa;margin-top:8px}.waypoint-button{display:flex;gap:7px;align-items:center;border:0;border-top:1px solid #a7c1ab24;background:none;color:#c8c7a6;margin-top:15px;padding:12px 0 0;font:11px var(--ui);width:100%;text-align:left}.waypoint-button :is(svg,img.art-icon){width:13px;height:13px;flex-shrink:0}
.minimap-frame{position:absolute;top:79px;right:26px;width:172px;padding:7px;background:#10242ce8;border:1px solid #c5b67d88;box-shadow:inset 0 0 0 3px #142e34,0 8px 25px #071a1c55;pointer-events:none}.minimap-frame :is(svg,img.art-icon){width:100%;height:auto;display:block;border:1px solid #819d8640}.minimap-frame>span{display:block;text-align:center;padding-top:7px;color:#c4c8ad;font:7px var(--pixel);letter-spacing:.2em}.wild-map>rect{fill:#254330}.wild-map>path{stroke:#486249}.wild-map>rect:not(:first-child){opacity:0}
.game-hud-bottom{position:absolute;inset:auto 26px 22px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;pointer-events:none}
.movement-guide{display:flex;align-items:center;gap:13px;color:#d9d8b8;text-shadow:0 1px 4px #091a1b}.movement-guide>span:last-child{font:8px var(--pixel);letter-spacing:.16em}.movement-guide small{display:block;margin-top:7px;color:#b3c4b5;font:7px var(--pixel);letter-spacing:.08em}.key-cluster{width:65px;display:grid;grid-template-columns:repeat(3,19px);gap:3px}.key-cluster i{height:19px;display:grid;place-items:center;background:#112731dd;border:1px solid #d3bb8770;color:#f1e4bc;font:9px var(--pixel)}.key-cluster i:first-child{grid-column:2}.key-cluster i:nth-child(2){grid-column:1}
.ability-bar{pointer-events:auto;position:absolute;left:50%;bottom:0;transform:translateX(-50%);display:flex;align-items:flex-end;gap:7px;padding:9px 11px;background:linear-gradient(#0b2330cc,#0b1f2df0);border:1px solid #c0b38366;box-shadow:inset 0 0 0 3px #112c32,0 8px 28px #07141a66;clip-path:polygon(0 9px,9px 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%)}
.ability-slot{position:relative;width:76px;height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:linear-gradient(#1e3940,#122b36);border:1px solid #c6ba8860;color:#cfbd94;overflow:hidden}.ability-slot :is(svg,img.art-icon){width:24px;height:24px;margin-top:8px}.ability-slot>span:not(.ability-key){font:10px var(--ui);white-space:nowrap}.ability-slot .ability-key{position:absolute;top:4px;left:5px;z-index:1;font:6px var(--pixel);letter-spacing:.08em;color:#c4d1bd}.ability-slot.main-ability{width:100px;height:76px;border-color:#dabd86;background:radial-gradient(circle at center,#356b5344,#16313a)}.main-ability>:is(svg,img.art-icon){color:var(--partner);width:29px;height:29px}.ability-slot:hover{border-color:#f0d5a1;background:#2d4d4c}.ability-slot:active{transform:translateY(2px)}.cooldown-shade{position:absolute;bottom:0;left:0;right:0;background:#061422a8;height:0;pointer-events:none;border-top:1px solid #b5c5a055}.cooling{border-color:#7c94806b}
.shard-counter{display:flex;align-items:center;gap:9px;min-width:155px;justify-content:flex-end;text-shadow:0 2px 5px #00151b}.shard-counter :is(svg,img.art-icon){width:17px;height:17px;color:#d7c792}.shard-counter strong{font:20px var(--display);color:#f3dfaf}.shard-counter>span{font:6px var(--pixel);letter-spacing:.12em;color:#c1cebd;max-width:55px;line-height:1.8}
.interaction-box{position:absolute;left:50%;bottom:132px;transform:translateX(-50%);display:flex;align-items:center;gap:13px;min-width:335px;max-width:90%;padding:11px 14px;background:#0e2531dd;border-color:#b5ba9940;pointer-events:auto;opacity:.8;transition:border-color .2s,opacity .2s}.interaction-box.is-near{border-color:#e0c68b;opacity:1;box-shadow:inset 0 0 0 3px #10242b,0 0 25px #afc68922}.interaction-key{width:30px;height:32px;flex-shrink:0;display:grid;place-items:center;border:1px solid #d7be8170;background:#182f38;color:#ebd39c;font:13px var(--display)}.interaction-box strong{font:14px var(--ui);color:#e6d7b3;display:block}.interaction-box div>span{display:block;font:10px var(--ui);color:#b0c7bf;margin-top:5px}.interaction-box button{margin-left:auto;display:flex;align-items:center;gap:8px;border:0;background:none;color:#dbc28e;padding:7px 4px 7px 10px;font:7px var(--pixel);letter-spacing:.1em}.interaction-box button :is(svg,img.art-icon){width:10px;height:10px}.interaction-box button:disabled{display:none}
.game-notice{position:absolute;top:138px;left:50%;transform:translate(-50%,-8px);opacity:0;pointer-events:none;max-width:calc(100% - 40px);padding:12px 22px;font:14px/1.6 var(--ui);text-align:center;color:#e8ddb9;background:#0b2531f0;border:1px solid #bfb78466;transition:opacity .2s,transform .2s;z-index:9}.game-notice.visible{opacity:1;transform:translate(-50%,0)}
.zone-arrival{position:absolute;left:50%;top:32%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:13px;color:#f6e5b9;pointer-events:none;text-shadow:0 2px 15px #051724;opacity:0;white-space:nowrap}.zone-arrival>span{font:8px var(--pixel);letter-spacing:.35em;color:#d3ead6}.zone-arrival>strong{font:500 44px var(--display);letter-spacing:.08em}.zone-arrival>i{width:180px;height:1px;background:linear-gradient(90deg,transparent,#d6c59a,transparent)}.zone-arrival.arriving{animation:zone-arrival 3.8s ease both}@keyframes zone-arrival{0%{opacity:0;filter:blur(5px)}20%,65%{opacity:1;filter:blur(0)}100%{opacity:0;filter:blur(2px)}}
.game-loading{position:absolute;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:radial-gradient(ellipse,#1d3d42,#0c1d2b);color:#d7c39a}.game-loading strong{font:500 19px var(--display);letter-spacing:.18em}.game-loading>span:last-child{font:15px var(--ui);color:#9fbbb5}.loading-rift :is(svg,img.art-icon){width:65px;height:65px;color:#a6e3cd;animation:loading-breathe 1.5s ease infinite alternate}@keyframes loading-breathe{to{opacity:.4;transform:translateY(-8px)}}
.touch-pad{display:none}
.game-pause{position:absolute;inset:0;z-index:30;display:grid;place-items:center;padding:20px}.pause-scrim{position:absolute;inset:0;background:#06131bb8;backdrop-filter:blur(7px)}.pause-card{position:relative;text-align:center;width:min(570px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:28px 40px 22px;outline:none;box-shadow:inset 0 0 0 5px #112932,inset 0 0 0 6px #b4bc8f35,0 30px 90px #0006}.pause-emblem{display:grid;place-items:center;margin:0 auto 15px;width:55px;height:55px;color:#d9be87}.pause-emblem :is(svg,img.art-icon){width:50px;height:50px}.pause-card>small{font:7px var(--pixel);letter-spacing:.25em;color:#9ac9bb}.pause-card h2{font:500 28px/1.3 var(--display);color:#eddbaf;margin:13px 0}.pause-card>p{font:15px/1.8 var(--ui);color:#b8cbc2;margin:0 auto 24px;max-width:380px}.pause-buttons{display:flex;flex-direction:column;gap:11px}.pause-buttons .panel-action{min-height:45px;font:600 9px var(--pixel);letter-spacing:.1em}.pause-menu-link{border:0;background:none;padding:14px 5px;color:#b6bfa8;font:8px var(--pixel);letter-spacing:.14em}.pause-menu-link:hover{color:#f6dbab}.pause-hint{display:block;margin-top:15px;font:6px var(--pixel);letter-spacing:.16em;color:#8faaa5}
.nexus-map{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center;margin-bottom:24px}.nexus-map>:is(svg,img.art-icon){width:100%;height:auto;box-shadow:0 0 0 1px #c0be8e44}.map-destinations{display:flex;flex-direction:column;gap:6px}.map-destination{display:flex;align-items:center;gap:8px;background:#18363dcc;border:1px solid #a3bc9b40;padding:9px 8px;text-align:left;color:#dbdbbc;font:11px var(--ui)}.map-destination:hover{border-color:#dbbd80;background:#2c514d}.map-destination>:is(svg,img.art-icon){width:14px;height:14px;flex-shrink:0;color:#d6c18f}.map-destination>:is(svg,img.art-icon):last-child{margin-left:auto;width:8px}.wild-map-note{padding:15px;background:#16312e;border:1px solid #b0b98144;margin-bottom:24px}.wild-map-note>:is(svg,img.art-icon){width:25px;height:25px;color:#9dc796;margin:0 auto 12px}.wild-map-note>strong{font:18px var(--display);color:#e4d4ac}.wild-map-note>p{font:14px/1.8 var(--ui);color:#b9cbbb}.wild-map-note>.map-destination{justify-content:center;width:100%;font-size:8px;letter-spacing:.08em}
@media(max-width:1100px){.game-hud-top{inset:17px 18px auto}.trainer-card{min-width:230px;padding:10px;gap:9px}.trainer-portrait{width:56px;height:56px}.trainer-portrait img{width:55px;height:55px}.trainer-info{min-width:135px}.trainer-info>strong{font-size:16px}.zone-heading{width:260px}.zone-heading h2{font-size:20px}.minimap-frame{right:18px;width:145px;top:73px}.expedition-card{right:18px;top:234px;width:195px;padding:14px}.expedition-card>strong{font-size:14px}.expedition-card>p{font-size:13px}.expedition-label{font-size:6px}.game-hud-bottom{left:18px;right:18px}.movement-guide{gap:7px}.movement-guide>span:last-child{font-size:7px}.movement-guide small{font-size:6px}.shard-counter{min-width:120px}.shard-counter>span{font-size:6px}}
@media(max-width:800px){.zone-heading{top:106px;left:18px;transform:none;text-align:left;width:auto}.zone-heading small{font-size:6px}.zone-heading h2{font-size:19px;margin:6px 0}.zone-divider{margin:0;width:80px}.minimap-frame{width:120px;top:65px}.expedition-card{top:auto;bottom:260px;width:180px}.game-menu-actions{gap:5px}.game-icon-button{width:30px;height:30px}.game-hud-bottom{bottom:18px}.movement-guide{display:none}.shard-counter{position:absolute;right:0;bottom:106px}.interaction-box{bottom:128px}.touch-pad{display:grid;position:absolute;left:18px;bottom:20px;width:132px;height:132px;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(3,42px);gap:3px;touch-action:none}.touch-pad button{display:grid;place-items:center;background:#102c39e6;border:1px solid #c5bc8d70;color:#d9d6b2;touch-action:none}.touch-pad button:active{background:#46705d}.touch-pad :is(svg,img.art-icon){width:15px;height:15px}.touch-pad [data-move="up"]{grid-column:2;grid-row:1}.touch-pad [data-move="up"] :is(svg,img.art-icon){transform:rotate(-90deg)}.touch-pad [data-move="left"]{grid-column:1;grid-row:2}.touch-pad [data-move="left"] :is(svg,img.art-icon){transform:rotate(180deg)}.touch-pad [data-move="right"]{grid-column:3;grid-row:2}.touch-pad [data-move="down"]{grid-column:2;grid-row:3}.touch-pad [data-move="down"] :is(svg,img.art-icon){transform:rotate(90deg)}.touch-pad>span{grid-column:2;grid-row:2;background:#122b34b3;border:1px solid #a8b68b33}.ability-bar{left:auto;right:0;transform:none;padding:7px;gap:5px}.ability-slot{width:63px;height:63px}.ability-slot.main-ability{width:78px;height:70px}.ability-slot>span:not(.ability-key){font-size:9px}.ability-slot :is(svg,img.art-icon){width:21px;height:21px}.ability-slot .ability-key{font-size:5px}.zone-arrival>strong{font-size:31px}.zone-arrival>span{font-size:7px}.game-notice{top:186px;font-size:12px;width:max-content;max-width:90%}.pause-card{padding:22px 25px}.pause-card h2{font-size:25px}}
@media(max-width:540px){.game-hud-top{inset:14px 13px auto;gap:8px}.trainer-card{min-width:0;width:215px;padding:8px;gap:8px}.trainer-portrait{width:46px;height:50px}.trainer-portrait img{width:50px;height:50px}.trainer-info{min-width:125px}.trainer-info>strong{font-size:14px;margin:5px 0}.trainer-type{font-size:6px;gap:8px}.trainer-type i{font-size:5px}.trainer-info>#gameHealth{font-size:6px}.game-icon-button{width:28px;height:28px}.game-icon-button :is(svg,img.art-icon){width:13px;height:13px}.game-menu-actions{gap:4px}.zone-heading{top:85px;left:0}.zone-heading small{font-size:5px;letter-spacing:.14em}.zone-heading h2{font-size:17px}.minimap-frame{right:13px;top:57px;width:90px;padding:5px}.minimap-frame>span{font-size:5px;padding-top:5px}.expedition-card{top:154px;bottom:auto;left:13px;right:auto;width:192px;padding:10px 12px;background:#0d2930cb;pointer-events:none}.expedition-label{font-size:5px;padding-bottom:7px;gap:5px}.expedition-label :is(svg,img.art-icon){width:10px}.expedition-card>strong{font-size:12px;margin:8px 0 5px}.expedition-card>p{font-size:11px;margin-bottom:9px;line-height:1.5}.quest-counter{font-size:5px;margin-top:6px}.waypoint-button{pointer-events:auto;margin-top:9px;padding-top:8px;font-size:10px}.waypoint-button :is(svg,img.art-icon){width:10px;height:10px}.game-hud-bottom{left:13px;right:13px;bottom:18px}.ability-bar{padding:5px;gap:4px}.ability-slot{width:51px;height:58px}.ability-slot.main-ability{width:64px;height:64px}.ability-slot>span:not(.ability-key){font-size:8px}.main-ability>:is(svg,img.art-icon){width:24px;height:24px}.touch-pad{left:13px;bottom:18px;width:120px;height:120px;grid-template-columns:repeat(3,38px);grid-template-rows:repeat(3,38px);gap:3px}.shard-counter{bottom:88px;min-width:80px;gap:6px}.shard-counter strong{font-size:16px}.shard-counter :is(svg,img.art-icon){width:13px;height:13px}.shard-counter>span{font-size:5px;max-width:45px}.interaction-box{bottom:155px;min-width:0;width:calc(100% - 26px);max-width:none;padding:10px;gap:9px;pointer-events:auto}.interaction-key{width:25px;height:29px;font-size:11px}.interaction-box strong{font-size:13px}.interaction-box div>span{font-size:9px;max-width:210px}.interaction-box button{font-size:6px;padding-left:5px;gap:3px}.interaction-box button :is(svg,img.art-icon){width:8px}.game-notice{top:auto;bottom:230px;padding:9px 14px;font-size:12px}.zone-arrival{top:43%;width:95%;white-space:normal;text-align:center}.zone-arrival>strong{font-size:26px}.zone-arrival>span{font-size:6px;letter-spacing:.2em}.pause-card{padding:22px 20px}.pause-card h2{font-size:23px}.pause-card>p{font-size:14px}.nexus-map{grid-template-columns:1fr}.nexus-map>:is(svg,img.art-icon){max-height:165px}.map-destination{font-size:11px;padding:10px}.pause-emblem{height:40px;margin-bottom:10px}.pause-emblem :is(svg,img.art-icon){height:40px}.pause-card .panel-action{font-size:8px}.game-loading strong{font-size:16px}}
@media(max-height:550px){.expedition-card,.minimap-frame,.zone-arrival{display:none}.game-hud-top{top:10px}.trainer-card{padding:6px}.zone-heading{top:0;left:50%;transform:translateX(-50%);text-align:center}.game-hud-bottom{bottom:12px}.interaction-box{bottom:105px}.touch-pad{transform:scale(.8);transform-origin:bottom left;bottom:12px}.ability-bar{transform:scale(.85);transform-origin:bottom right}.game-notice{top:98px;bottom:auto}}
@media(prefers-reduced-motion:reduce){.zone-arrival.arriving{animation:none}.game-notice,.hp-track>i,.quest-progress i{transition:none}}
html[data-reduced-motion="true"] .zone-arrival{display:none}

/* The Jade expedition: progression, cartography and encounter telegraphs. */
.trainer-info>#gameXP{display:block;text-align:right;font:6px var(--pixel);letter-spacing:.08em;color:#a5b9d3;margin-top:4px}.xp-track{height:2px;background:#071824;margin-top:6px}.xp-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#6c8fc5,#b6b5ec);transition:width .2s}.trainer-type>#gameLevel{color:#eed7a4;font-weight:700}
.minimap-frame canvas{display:block;width:100%;height:auto;border:1px solid #819d8640;image-rendering:pixelated}
.loot-wallet{display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.jade-wallet{display:flex;align-items:center;gap:8px;color:#a8d9b9;text-shadow:0 2px 5px #00151b}.jade-wallet>:is(svg,img.art-icon){width:13px;height:13px}.jade-wallet>strong{font:15px var(--display)}.jade-wallet>span{font:6px var(--pixel);letter-spacing:.1em}
.boss-banner{position:absolute;top:129px;left:50%;transform:translateX(-50%);width:min(460px,42vw);pointer-events:none;padding:12px 16px 10px;background:linear-gradient(90deg,#132c30c9,#16272cef,#132c30c9);border:1px solid #d1b58383;box-shadow:0 6px 25px #04151b66,inset 0 0 0 3px #12252b}.boss-banner>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:13px}.boss-banner strong{font:500 17px var(--display);color:#f0d8ad;text-align:center}.boss-banner small{font:6px var(--pixel);letter-spacing:.13em;color:#dfb08b;white-space:nowrap}.boss-banner>div>span{font:8px var(--pixel);color:#d7d8b5;white-space:nowrap}.boss-health-track{height:7px;margin-top:10px;background:#081721;border:1px solid #baa57b44}.boss-health-track i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#8c5078,#d89991,#e6c18d);transition:width .12s}.boss-banner p{margin:7px 0 0;text-align:center;color:#b5cbbf;font:10px var(--ui)}
.jade-portal-alert{position:absolute;bottom:180px;right:26px;width:235px;display:flex;align-items:center;gap:10px;text-align:left;padding:14px 13px;background:linear-gradient(135deg,#1a423fef,#0c2931ef);border-color:#9ce5ba;box-shadow:inset 0 0 0 3px #193c37,0 0 25px #65d6a32b;z-index:8}.jade-portal-alert>:is(svg,img.art-icon){color:#a1f3ca;width:25px;height:31px;flex-shrink:0}.jade-portal-alert>:is(svg,img.art-icon):last-child{margin-left:auto;width:14px;height:14px}.jade-portal-alert>span{display:flex;flex-direction:column;gap:6px}.jade-portal-alert small{font:5px var(--pixel);letter-spacing:.15em;color:#a0d7bc}.jade-portal-alert strong{font:14px var(--display);color:#e1edca}.jade-portal-alert span>span{font:6px var(--pixel);letter-spacing:.04em;color:#c2dac1}.jade-portal-alert:hover{background:#285e4f;border-color:#d2ffd8}
.adventure-atlas{margin-bottom:22px}.atlas-heading{display:flex;justify-content:space-between;gap:10px;color:#adc5ad;font:7px var(--pixel);letter-spacing:.1em;margin-bottom:10px}.adventure-atlas>canvas{width:100%;height:auto;display:block;background:#071c23;border:1px solid #a2b89466;box-shadow:inset 0 0 0 4px #091e25;image-rendering:pixelated}.atlas-legend{display:flex;justify-content:center;gap:22px;margin-top:12px;font:6px var(--pixel);letter-spacing:.14em;color:#b9c8bb}.atlas-legend>span{display:flex;align-items:center;gap:7px}.atlas-legend i{width:5px;height:5px;display:block;border-radius:50%}.legend-player{background:#fff0c0}.legend-portal{background:#9bffd1}.legend-danger{background:#db987d}.adventure-atlas>p{font:13px/1.7 var(--ui);color:#b8ccbe;margin:17px 0}.adventure-atlas>.map-destination{width:100%;justify-content:center;font-size:8px;letter-spacing:.08em;min-height:38px}
.player-hit .game-edge{animation:damage-flash .3s ease-out}@keyframes damage-flash{0%{box-shadow:inset 0 0 85px #b9565875}100%{box-shadow:inset 0 0 0 10px #081b2130}}
@media(max-width:1100px){.boss-banner{top:124px;width:370px}.boss-banner strong{font-size:14px}.boss-banner small{font-size:5px}.jade-portal-alert{right:18px;width:195px;padding:12px 10px;gap:8px}.jade-portal-alert strong{font-size:12px}.jade-portal-alert small{font-size:5px}.jade-portal-alert span>span{font-size:5px}.jade-portal-alert>:is(svg,img.art-icon){width:20px;height:25px}}
@media(max-width:800px){.loot-wallet{position:absolute;right:0;bottom:105px;gap:6px}.loot-wallet>.shard-counter{position:static;min-width:0}.jade-wallet{gap:5px}.jade-wallet>span{font-size:5px}.jade-wallet>strong{font-size:12px}.boss-active .expedition-card{display:none}.boss-banner{top:168px;width:calc(100% - 36px);max-width:460px;padding:10px 12px}.boss-banner strong{font-size:15px}.jade-portal-alert{right:18px;bottom:225px;width:225px}.trainer-info>#gameXP{font-size:5px}.zone-heading{top:114px}}
@media(max-width:540px){.xp-track{margin-top:4px}.trainer-info>#gameXP{font-size:5px;margin-top:3px}.trainer-info>#gameHealth{margin-top:3px}.zone-heading{top:93px}.expedition-card{top:163px}.zone-heading h2{font-size:15px}.zone-heading small{font-size:5px;letter-spacing:.08em}.loot-wallet{right:0;bottom:91px;gap:5px}.loot-wallet .shard-counter>span{max-width:45px}.jade-wallet>span{font-size:4px;letter-spacing:.02em}.jade-wallet>:is(svg,img.art-icon){width:11px;height:11px}.jade-wallet>strong{font-size:11px}.boss-banner{top:159px;width:calc(100% - 26px);padding:10px}.boss-banner strong{font-size:14px}.boss-banner p{font-size:10px;line-height:1.5}.jade-portal-alert{bottom:221px;right:13px;width:calc(100% - 26px);padding:11px 14px;gap:12px}.jade-portal-alert strong{font-size:13px}.jade-portal-alert small{font-size:6px}.jade-portal-alert span>span{font-size:6px}.atlas-heading{font-size:6px;letter-spacing:.05em}.atlas-legend{font-size:5px;gap:16px}.adventure-atlas>p{font-size:12px}.zone-arrival>strong{font-size:25px;line-height:1.4}}
@media(max-height:550px){.boss-banner{top:92px;width:350px;padding:7px 10px}.boss-banner p{display:none}.boss-banner strong{font-size:12px}.loot-wallet{bottom:100px}.jade-portal-alert{bottom:184px;width:200px}}
.boss-banner{padding-left:40px}.boss-banner-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.boss-portrait{position:absolute;left:-34px;top:2px;width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 4px 4px #0008)}
@media(max-width:540px){.boss-banner{padding-left:45px}.boss-banner-heading{gap:7px}.boss-portrait{left:1px;top:12px;width:43px;height:43px}.boss-banner strong{font-size:12px}.boss-banner>div>span{font-size:7px}.boss-banner small{font-size:5px}}

/* Combat hierarchy: effects never obscure enemy warnings or touch controls. */
.combat-chain{position:absolute;left:28px;top:174px;width:156px;padding:13px 15px;pointer-events:none;background:linear-gradient(110deg,#102b2ee8,#102b2e28);border-left:2px solid #e8ba73;color:#efce95;text-shadow:0 2px 8px #06181b}
.combat-chain small{display:block;font:6px var(--pixel);letter-spacing:.2em;color:#c9c9a7}.combat-chain strong{display:inline-block;font:38px/1.2 var(--display);margin:5px 12px 3px 0}.combat-chain>span{font:11px var(--ui);color:#b9ebc5}.combat-chain>div{height:2px;background:#051c25}.combat-chain i{display:block;height:100%;background:linear-gradient(90deg,#b9844e,#ffe1a0);transition:width .08s linear}
.in-combat .interaction-box:not(.is-near){opacity:0;pointer-events:none}.in-combat .expedition-card{opacity:.3}.in-combat .expedition-card:hover,.in-combat .expedition-card:focus-within{opacity:1}.expedition-card{transition:opacity .25s}.ability-slot:focus-visible,.game-icon-button:focus-visible{outline:2px solid #e9e7b4;outline-offset:3px}.hp-track>i{box-shadow:0 0 8px #9bdda344}
@media(max-width:800px){.combat-chain{left:18px;top:190px;width:126px;padding:9px 11px}.combat-chain strong{font-size:29px}.in-combat .expedition-card{opacity:0;pointer-events:none}.in-combat .expedition-card button{pointer-events:none}}
@media(max-width:540px){.combat-chain{left:13px;top:158px;width:115px}.combat-chain small{font-size:5px}.combat-chain strong{font-size:27px}.combat-chain>span{font-size:10px}.boss-active .combat-chain{top:247px}.in-combat .zone-heading{opacity:.6}}
@media(max-height:550px){.combat-chain{top:106px;left:18px;padding:6px 10px;width:110px}.combat-chain strong{font-size:25px}.boss-active .combat-chain{top:106px}}
@media(prefers-reduced-motion:reduce){.combat-chain i,.expedition-card{transition:none}.player-hit .game-edge{animation:none}}
html[data-reduced-motion="true"] .combat-chain i,html[data-reduced-motion="true"] .expedition-card{transition:none}
html[data-reduced-motion="true"] .player-hit .game-edge{animation:none}

/* Elemental resource and dedicated cast control. */
.mana-track{height:4px;margin-top:6px;background:#071a2a;border:1px solid #72b1e533;overflow:hidden}.mana-track>i{display:block;height:100%;background:linear-gradient(90deg,#397dc6,#9dd9f5);transition:width .15s}.trainer-info>#gameMana{display:block;text-align:right;color:#9dceec;font:7px var(--pixel);margin-top:4px}.spell-ability{border-color:#79b7df;background:radial-gradient(ellipse at top,#356c8b77,#122b36)}.spell-ability :is(svg,img.art-icon){color:#9dd9f5;width:20px;height:20px}.spell-ability small{font:6px var(--pixel);color:#9dceec;z-index:1}.spell-ability:disabled{opacity:.55;cursor:default}.spell-ability>span:not(.ability-key){z-index:1}
@media(max-width:540px){.ability-slot{width:44px}.ability-slot.main-ability{width:56px}.spell-ability small{font-size:5px}.trainer-info>#gameMana{font-size:5px}.mana-track{margin-top:4px;height:3px}}

.boss-tracker{position:absolute;left:28px;top:168px;display:flex;align-items:center;gap:10px;padding:8px 12px;color:#ead3b1;background:#0c252bd9;border:1px solid #baa77b70;pointer-events:none;z-index:8}.boss-tracker>span{display:block;font:27px Georgia;color:#e6cda3;width:24px;text-align:center}.boss-tracker small{display:block;font:6px var(--pixel);letter-spacing:.12em}.boss-tracker strong{display:block;font:17px var(--display);margin-top:3px}.zone-jade .combat-chain{top:235px}
@media(max-width:540px){.boss-tracker{left:13px;top:115px;padding:5px 8px;gap:6px}.boss-tracker small{font-size:5px}.boss-tracker strong{font-size:13px}.boss-tracker>span{font-size:22px;width:19px}.zone-jade .combat-chain{top:179px}.boss-active .boss-tracker{top:246px}.boss-active .combat-chain{top:303px}}

@media(max-width:540px){.zone-jade .expedition-card{display:none}.boss-tracker{top:155px}.zone-jade .combat-chain{top:220px}.boss-active .boss-tracker{top:246px}.boss-active .combat-chain{top:303px}}

.mew-wallet{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-bottom:5px;color:#edb4dc}.mew-wallet :is(svg,img.art-icon){width:13px;height:13px}.mew-wallet strong{font:17px var(--display)}.mew-wallet span{font:5px var(--pixel);max-width:65px;line-height:1.5}

/* Account access, authoritative connection status and permanent memorial. */
.account-tabs{display:flex;justify-content:center;gap:8px;margin:0 auto 23px}.account-tabs button{min-width:145px;padding:12px 20px;border:1px solid #8fa99a55;background:#142c34;color:#a6c4b7;font:8px var(--pixel);letter-spacing:.1em}.account-tabs button[aria-pressed="true"]{border-color:#c7b589;background:#29433d;color:#f0dfb6}.account-form{display:grid;gap:17px;width:min(390px,100%);margin:0 auto}.account-form label{display:grid;gap:8px;color:#bfd2c7;font:13px var(--ui)}.account-form input{width:100%;min-height:47px;padding:11px 14px;border:1px solid #8dafa366;background:#081e29;color:#f0e8d0;font:16px var(--ui);border-radius:0;outline:none;user-select:text}.account-form input:focus{border-color:#d2c18e;box-shadow:0 0 0 2px #d2c18e22}.account-form .panel-action{margin-top:6px;width:100%;justify-content:center;min-height:48px}.account-permadeath{max-width:550px;margin:24px auto 16px;padding:13px 17px;border-left:2px solid #bb8e8c;background:#af787510;color:#cbbab2;font:13px/1.8 var(--ui);text-align:left}.account-error{color:#f2b5a6;background:#8b3d3426;border:1px solid #cf897260;padding:12px 15px;font:14px/1.6 var(--ui);text-align:center}.account-loading{min-height:180px;display:grid;place-items:center;color:#bfd4c2;font:16px var(--ui)}.account-character{display:flex;align-items:center;gap:25px;width:min(570px,100%);margin:0 auto 24px;padding:22px 25px;border:1px solid #b3b48a66;background:radial-gradient(ellipse at left,#2c514738,#102631cc)}.account-character>img{width:124px;height:124px;object-fit:contain;filter:drop-shadow(0 6px 9px #03191b88)}.account-character small{color:#a3d5b2;font:7px var(--pixel);letter-spacing:.1em}.account-character h3{margin:10px 0;color:#ecd6a8;font:28px var(--display)}.account-character p{color:#abc5b9;font:14px/1.7 var(--ui);margin:0}.account-primary{display:flex;justify-content:center;margin:0 auto;min-height:48px;width:min(570px,100%)}.account-empty{text-align:center;max-width:520px;margin:0 auto;padding:5px 10px 18px}.account-empty>span{display:block;color:#c4b17d}.account-empty>span :is(svg,img.art-icon){width:43px;height:43px;margin:auto}.account-empty h3{font:25px var(--display);color:#e6d7ae;margin:17px 0 9px}.account-empty p{font:14px/1.8 var(--ui);color:#b7cdbf;margin:0 0 22px}.account-empty .panel-action{min-height:46px}.account-history{max-width:600px;margin:28px auto 10px}.account-history h3{font:8px var(--pixel);color:#b6bda7;letter-spacing:.15em;text-align:left}.account-history ol{list-style:none;padding:0;margin:14px 0;display:grid;gap:9px;max-height:260px;overflow:auto}.account-history li{display:flex;gap:14px;align-items:center;padding:12px 16px;background:#0b1f29;border:1px solid #8b9d8740;text-align:left}.account-history img{width:49px;height:49px;object-fit:contain;filter:grayscale(.7);opacity:.75}.account-history strong{display:block;color:#d8c8b0;font:17px var(--display)}.account-history span,.account-history small{display:block;color:#9fb5ab;font:11px/1.7 var(--ui)}.account-history small{color:#b99595}
.network-pill{position:absolute;top:62px;right:27px;z-index:22;display:flex;align-items:center;gap:6px;padding:5px 8px;background:#0a222bd9;border:1px solid #8ea88f55;color:#c5d6c0;pointer-events:none;font:6px var(--pixel);letter-spacing:.05em}.network-pill i{width:5px;height:5px;border-radius:50%;background:#d9b878;box-shadow:0 0 5px #d9b87866}.network-pill[data-status="online"] i{background:#8fdbb0;box-shadow:0 0 5px #8fdbb066}.network-pill[data-status="offline"] i,.network-pill[data-status="dead"] i{background:#d58d89}.network-pill b{font-weight:400;color:#a6bcae;border-left:1px solid #9bb68b44;padding-left:6px}
.network-disconnected{position:absolute;inset:0;z-index:90;display:grid;place-items:center;background:#07131f99;backdrop-filter:blur(3px);padding:20px}.network-disconnected>div{width:min(460px,100%);padding:30px;text-align:center;background:#10252fee}.network-disconnected small{color:#cdb68c;font:7px var(--pixel);letter-spacing:.15em}.network-disconnected h2{font:27px var(--display);color:#e8d5ae}.network-disconnected p{font:14px/1.8 var(--ui);color:#b7c9c0}.network-disconnected .panel-action{min-height:45px;margin-top:12px}
.character-death{position:absolute;inset:0;z-index:110;display:grid;place-items:center;padding:20px;overflow:auto;touch-action:pan-y}.death-scrim{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 38%,#252031e6,#060e18f5);backdrop-filter:blur(6px)}.death-card{position:relative;width:min(510px,100%);padding:28px 37px 20px;text-align:center;background:linear-gradient(160deg,#263036fa,#101b29fc);border-color:#b2938e88;box-shadow:inset 0 0 0 5px #111d2b,inset 0 0 0 6px #b9a48c26,0 25px 100px #0008;outline:none}.death-eyebrow{font:7px var(--pixel);letter-spacing:.2em;color:#bbac99}.death-portrait{width:120px;height:120px;margin:18px auto 9px;position:relative;display:grid;place-items:center}.death-portrait:before{content:"";position:absolute;inset:10px;border:1px solid #bfa99a4d;transform:rotate(45deg);background:radial-gradient(ellipse,#c4b19818,transparent 70%)}.death-portrait img{position:relative;width:110px;height:110px;object-fit:contain;filter:grayscale(.75) sepia(.12) brightness(.85);opacity:.9}.death-card h2{font:500 31px/1.3 var(--display);color:#e4d0b5;margin:10px 0 4px}.death-name{color:#c2b29e;font:19px var(--display);margin:0 0 15px}.death-copy{font:14px/1.8 var(--ui);color:#b2c0bb;margin:0 auto 18px;max-width:350px}.death-record{margin:0 0 15px;text-align:left;border-top:1px solid #a89c8540;border-bottom:1px solid #a89c8540;padding:10px 0;display:grid;gap:9px}.death-record>div{display:flex;justify-content:space-between;align-items:center;gap:15px}.death-record dt{color:#96aaa4;font:6px var(--pixel);letter-spacing:.1em}.death-record dd{margin:0;color:#d7c6ab;font:13px var(--ui);max-width:240px;overflow-wrap:anywhere;user-select:text}.death-cause{font:italic 13px/1.7 var(--ui);color:#c39f9c;margin:0 0 18px}.death-card .panel-action{width:100%;justify-content:center;min-height:47px;font-size:8px}.death-card .pause-menu-link{margin-top:7px}.death-card button:focus-visible,.account-tabs button:focus-visible{outline:2px solid #e1d2a9;outline-offset:3px}
@media(max-width:540px){.account-tabs button{min-width:120px;font-size:7px;padding:12px 14px}.account-character{padding:18px 13px;gap:15px}.account-character>img{width:82px;height:82px}.account-character h3{font-size:23px}.account-character small{font-size:6px}.account-character p{font-size:12px}.account-permadeath{font-size:12px;padding:11px 13px}.account-empty h3{font-size:22px}.account-history li{padding:10px}.network-pill{right:13px;top:auto;bottom:144px;padding:5px 7px;font-size:5px}.network-disconnected>div{padding:25px 20px}.network-disconnected h2{font-size:23px}.death-card{padding:23px 22px 16px}.death-card h2{font-size:26px}.death-portrait{width:95px;height:95px;margin-top:14px}.death-portrait img{width:90px;height:90px}.death-copy{font-size:13px}.death-record dd{font-size:12px;max-width:180px}.death-card .panel-action{font-size:7px}.character-death{padding:13px}}
@media(max-height:650px){.character-death{align-items:start}.death-card{margin:8px auto;padding-top:20px}.death-portrait{width:75px;height:75px;margin:9px auto}.death-portrait img{width:75px;height:75px}.death-card h2{font-size:26px}.death-copy{margin-bottom:13px}}
/* Avoid continuous backdrop readback over an animated canvas. */
#playSession .glass-frame{backdrop-filter:none;-webkit-backdrop-filter:none;background:linear-gradient(125deg,#122a30,#0c1f2b)}
#playSession{contain:layout paint style}
#gameRegen{display:block;color:#a5c9b1;font:10px var(--ui);margin-top:5px;max-width:220px}
.realm-panel{position:absolute;top:70px;left:50%;transform:translateX(-50%);width:280px;padding:6px 12px;background:#10232de8;border:1px solid #ad9b7455;pointer-events:none;color:#d7cfb2;font:9px var(--ui)}
.realm-panel>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:9px}.realm-panel strong{font-weight:500;letter-spacing:.07em}.realm-track{height:4px;background:#06151c;margin:6px 0}.realm-track i{display:block;height:100%;background:linear-gradient(90deg,#72b4a6,#d8c58c);width:0;transition:width .2s}.realm-panel small{font-size:10px;color:#9fb6b3}.realm-panel[data-phase="closing"]{border-color:#de9d77}.realm-panel[data-phase="closing"] small{color:#efba8c}.boss-active .realm-panel{top:70px}
@media(max-width:650px){.realm-panel{top:auto;bottom:104px;width:220px;padding:5px 8px}.boss-active .realm-panel{top:auto}.realm-panel small{font-size:9px}}

@media(min-width:651px) and (max-width:1100px){.realm-panel,.boss-active .realm-panel{top:auto;bottom:110px;width:240px}}
@media(min-width:1101px){.realm-panel,.boss-active .realm-panel{top:90px}.boss-banner{top:160px}}
@media(max-width:540px){
 .trainer-info #gameRegen{font-size:7px;white-space:nowrap;max-width:145px;overflow:hidden;text-overflow:ellipsis}
 .zone-heading{top:125px}.expedition-card{top:190px}
 .realm-panel{top:152px;bottom:auto;left:auto;right:13px;transform:none;width:145px;padding:6px 8px}
 .realm-panel small{font-size:9px}.realm-panel>div:first-child{font-size:8px}
 .boss-banner{top:194px}.boss-active .realm-panel{top:auto;bottom:185px;left:auto;right:13px;transform:none;width:145px}
 .boss-active .boss-tracker{top:282px}.boss-active .combat-chain{top:334px}
}

.diagnostic-support{margin-top:14px;font-size:12px;color:#b7cec7}.diagnostic-support summary{cursor:pointer;padding:8px}.diagnostic-support p{font-size:12px;margin:6px 0}.diagnostic-support[open]{border-top:1px solid #52716c;padding-top:8px}
