/* Exploration overlay: shared glass panels, with a compact portrait arrangement. */
.jp .jp-tooltip.jp-journal-hint{max-width:min(320px,calc(100% - 32px));white-space:normal;text-align:center;line-height:1.5}
.jp-explorer{--hud-edge:28px;--hud-top:24px;--vitals-top:160px;--vitals-height:134px;--hud-glass:linear-gradient(135deg,#183c657a,#09102de8 58%,#101c3bd9);--hud-border:#9dcaf0b3;color:#f6f9ff}
.jp .jp-icon{width:25px;height:25px;flex:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.jp .jp-explorer-toolbar{inset:var(--hud-top) var(--hud-edge) auto;gap:18px}
.jp .jp-explorer-toolbar button,.jp .jp-location,.jp .jp-vitals{border:1px solid var(--hud-border);background:var(--hud-glass);box-shadow:inset 0 1px 7px #bfe7ff20,0 5px 20px #04092152,0 0 15px #699ef31a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.jp .jp-explorer-toolbar button{display:flex;align-items:center;justify-content:center;gap:15px;min-height:54px;padding:12px 21px;border-radius:22px;font-size:16px;font-weight:500;line-height:1.25;transition:border-color .15s,background .15s;touch-action:manipulation}
.jp .jp-explorer-toolbar button:hover{border-color:#e4f5ff;background:linear-gradient(120deg,#29466be8,#182249e8)}
.jp .jp-explorer-toolbar .jp-exit-menu{display:none}.jp .jp-home{margin-left:auto}
.jp .jp-location{position:absolute;top:calc(var(--hud-top) + 66px);left:var(--hud-edge);width:400px;max-width:calc(100% - 2 * var(--hud-edge));min-height:54px;display:flex;align-items:center;gap:17px;padding:12px 24px;border-radius:21px;font-size:16px;line-height:1.35;text-shadow:0 1px 7px #0005}
.jp-location>div{display:flex;align-items:center;gap:12px;min-width:0}.jp-location strong{flex:none;font-weight:550;white-space:nowrap}.jp-location [data-ui=checkpoint-place]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jp-location-dot{color:#cbe4ff}
.jp .jp-vitals{position:absolute;left:var(--hud-edge);top:var(--vitals-top);width:420px;min-height:var(--vitals-height);max-width:calc(100% - 2 * var(--hud-edge));padding:13px 18px;display:grid;gap:10px;border-radius:24px}
.jp .jp-vitals .jp-stamina{position:static;inset:auto;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;width:auto;min-width:0;max-width:none;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#f6f9ff}
.jp-vital-details{min-width:0}.jp .jp-vitals .jp-stamina-caption{display:flex;gap:8px;align-items:baseline;justify-content:space-between;margin-bottom:5px;color:#f8fbff;font-size:17px;line-height:1.25;font-weight:650;letter-spacing:-.15px}
.jp-stamina-caption>[data-ui]{white-space:nowrap;font-variant-numeric:tabular-nums}.jp .jp-vitals .jp-stamina-caption b{font-weight:700}.jp .jp-vitals [data-ui=health-value]{color:#f4f6ff}.jp .jp-vitals [data-ui=health-current]{color:#ff8e95}.jp .jp-vitals [data-ui=stamina-value]{color:#53f5d4}
.jp .jp-vital-icon{display:grid;place-items:center;width:44px;height:44px;border:1.5px solid #39f5dc;border-radius:50%;background:radial-gradient(circle at 30% 25%,#36e7cb4d,#071b37 76%);color:#9affdf;box-shadow:0 0 12px #19ffd455,inset 0 0 9px #45f9df42}
.jp-vital-icon svg{width:31px;height:31px;fill:currentColor;filter:drop-shadow(0 0 4px #59ffe5a6)}
.jp .jp-health .jp-vital-icon{color:#ff69a0;border-color:#ff709f;background:radial-gradient(circle at 30% 25%,#ef2b7a45,#210c2e 76%);box-shadow:0 0 14px #ff087b70,inset 0 0 9px #ff338343}.jp-health .jp-vital-icon svg{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px #ff398bbb)}
.jp .jp-vitals .jp-stamina-track{height:16px;border:1px solid #48f8d255;border-radius:20px;background:#091329;overflow:visible;box-shadow:inset 0 1px 6px #0007}
.jp .jp-vitals .jp-stamina-track>span{border-radius:inherit;background:linear-gradient(90deg,#2ee9cd,#a7ffce);box-shadow:0 0 12px #35f5ce55;will-change:transform}
.jp .jp-vitals .jp-health .jp-stamina-track{border-color:#ff5f9e99;background:#0a0d27}.jp .jp-vitals .jp-health .jp-stamina-track>span{background:linear-gradient(90deg,#ff0069,#ff5a8d 64%,#ffb8a4);box-shadow:0 0 15px #ff267b60}
.jp .jp-lives{top:calc(var(--hud-top) + 86px);right:var(--hud-edge);min-width:144px;height:72px;justify-content:center;gap:16px;padding:11px 19px;border:1.5px solid #ffb5d4;border-radius:26px;background:linear-gradient(125deg,#9b094b99,#200f36e8 65%,#10132be8);box-shadow:inset 0 0 16px #ff3a8b21,0 0 26px #ff087b45,0 6px 22px #0003;font-size:36px;font-weight:750;letter-spacing:.3px;color:#fff5fb;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.jp-lives svg{width:40px;height:40px;flex:none;filter:drop-shadow(0 0 9px #ff217e66)}.jp-lives:before,.jp-lives:after{content:"";position:absolute;width:4px;height:4px;background:#ffeef8;border-radius:50%;box-shadow:0 0 8px 2px #ff126d;pointer-events:none}.jp-lives:before{left:-12px;top:8px}.jp-lives:after{left:-7px;bottom:9px;width:3px;height:3px}
.jp .jp-explorer-status{left:var(--hud-edge);top:calc(var(--vitals-top) + var(--vitals-height) + 12px);max-width:420px;padding:9px 14px;border:1px solid #8dbde84d;border-radius:13px;background:#0c1b3cdb;color:#eaf6ff;font-size:12px;line-height:1.5;backdrop-filter:blur(12px);box-shadow:0 3px 14px #0002}
.jp[data-mode=explore] .jp-collect-notice{left:28px;top:354px;max-width:420px;border-radius:14px;background:#101d3ee8;backdrop-filter:blur(12px);border-color:#a5d8fc99;color:#edfaff}
.jp .jp-explorer-guide{left:50%;right:auto;bottom:16px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 48px);padding:7px 15px;border:1px solid #aacfee30;border-radius:24px;background:#0c183bad;font-size:11px;backdrop-filter:blur(10px)}
.jp .jp-explorer [data-ui=interact]{bottom:150px;border:1px solid #bcdcf5bd;border-radius:18px;background:linear-gradient(130deg,#294368e8,#0a183be8);color:#f7f5dd;box-shadow:0 5px 22px #0004,0 0 14px #a4dfff16;backdrop-filter:blur(12px)}
.jp .jp-border-notice{border-color:#ccb4f4b3;border-radius:20px;background:linear-gradient(130deg,#351e60e8,#101632eb);box-shadow:0 0 22px #ae69fa40;backdrop-filter:blur(14px)}
.jp[data-mode=explore] .jp-tooltip{padding:8px 15px;border-color:#9dbfeaa6;border-radius:15px;background:linear-gradient(125deg,#234668de,#102342eb);color:#f7fbff;font-size:13px;box-shadow:inset 0 1px 4px #d6efff20,0 6px 20px #0004;backdrop-filter:blur(12px)}
.jp .jp-death-card{border-color:#c299df99;border-radius:26px;background:linear-gradient(135deg,#283b61fa,#171632fa);box-shadow:inset 0 1px 10px #aecfff16,0 15px 70px #0007}.jp .jp-death-card h2{font-family:inherit;font-size:27px;font-weight:650}.jp .jp-death-actions button:first-child{background:linear-gradient(90deg,#30dfc6,#9af7d2);color:#0a2e35}
@media(max-width:760px){
    .jp-explorer{--hud-edge:14px;--hud-top:max(16px,env(safe-area-inset-top));--vitals-top:calc(var(--hud-top) + 60px);--vitals-height:90px}
    .jp .jp-explorer-toolbar{gap:12px;align-items:flex-start}.jp .jp-explorer-toolbar button{height:44px;min-height:44px;border-radius:17px;padding:6px 8px;font-size:12px;gap:7px}.jp .jp-exit{width:44px;padding:9px!important}.jp .jp-exit>span,.jp .jp-exit-arrow{display:none}.jp .jp-explorer-toolbar .jp-exit-menu{display:block;width:24px;height:24px;stroke-width:2.5}.jp .jp-home{width:104px}.jp .jp-home span{width:52px;flex:none}.jp .jp-home .jp-icon{width:21px;height:21px}
    .jp .jp-location{top:var(--hud-top);left:70px;width:auto;right:130px;max-width:none;height:44px;min-height:44px;padding:6px 10px;border-radius:17px;gap:9px;font-size:13px}.jp .jp-location>.jp-icon{width:19px;height:19px}.jp-location>div{display:block;min-width:0}.jp-location strong{display:block;font-size:13px}.jp-location [data-ui=checkpoint-place]{display:block;font-size:10px;line-height:1.25}.jp-location-dot{display:none}
    .jp .jp-vitals{width:min(300px,calc(100% - 126px));max-width:none;padding:10px;gap:9px;border-radius:19px}.jp .jp-vitals .jp-stamina{grid-template-columns:30px minmax(0,1fr);gap:8px}.jp .jp-vital-icon{width:30px;height:30px}.jp-vital-icon svg{width:23px;height:23px}.jp .jp-vitals .jp-stamina-caption{font-size:clamp(10px,3vw,13px);gap:5px;margin-bottom:4px;letter-spacing:-.1px}.jp .jp-vitals .jp-stamina-track{height:9px}
    .jp .jp-lives{top:calc(var(--hud-top) + 62px);right:var(--hud-edge);height:42px;min-width:78px;gap:8px;padding:7px 11px;border-radius:17px;font-size:25px}.jp-lives svg{width:25px;height:25px}.jp-lives:before{left:-7px;top:4px;width:3px;height:3px}.jp-lives:after{left:-4px;bottom:6px;width:2px;height:2px}
    .jp .jp-explorer-status{max-width:calc(100% - 28px);font-size:11px;padding:7px 12px}.jp[data-mode=explore] .jp-collect-notice{left:14px;top:calc(max(16px,env(safe-area-inset-top)) + 202px);max-width:calc(100% - 28px);font-size:11px}
    .jp .jp-explorer [data-ui=interact]{bottom:155px;font-size:12px;padding:10px 15px}.jp .jp-touch-hint{display:none}.jp .jp-border-notice{bottom:225px;font-size:12px;padding:10px 15px}
}
@media(max-width:760px),(pointer:coarse){
    .jp .jp-stick{left:20px;bottom:max(25px,env(safe-area-inset-bottom));width:116px;height:116px;border:1.5px solid #d9efffdf;background:radial-gradient(circle at 29% 21%,#c4e4ff45,#345b9678 43%,#0e264e9e 76%);box-shadow:inset 0 0 17px #c3e8ff52,0 0 0 4px #7398db19,0 0 21px #81bfff4d;backdrop-filter:blur(9px)}
    .jp .jp-stick [data-ui=thumb]{left:calc(50% - 22px);top:calc(50% - 22px);width:44px;height:44px;border:1px solid #effbff;border-radius:50%;background:linear-gradient(140deg,#f8fcff,#a9cdef);box-shadow:inset 0 1px 7px #fff,0 4px 12px #081c5b8c,0 0 0 7px #a2c6ef29}
    .jp-stick i{position:absolute;width:0;height:0;border:6px solid transparent;opacity:.7}.jp-stick-north{left:calc(50% - 6px);top:4px;border-bottom-color:#c6dfff!important;border-top:0!important}.jp-stick-south{left:calc(50% - 6px);bottom:4px;border-top-color:#c6dfff!important;border-bottom:0!important}.jp-stick-west{left:4px;top:calc(50% - 6px);border-right-color:#c6dfff!important;border-left:0!important}.jp-stick-east{right:4px;top:calc(50% - 6px);border-left-color:#c6dfff!important;border-right:0!important}
    .jp .jp-jump{right:20px;bottom:max(34px,env(safe-area-inset-bottom));width:86px;height:86px;border:1.5px solid #e4f4ffdc;background:radial-gradient(circle at 35% 20%,#9dc6ff55,#193567bb 74%);box-shadow:inset 0 1px 15px #c2e2ff55,0 0 0 4px #6da5ef24,0 0 22px #7fc8ff70;backdrop-filter:blur(9px)}
    .jp .jp-jump>span{font-size:0}.jp .jp-jump>span:before{content:"";display:block;width:25px;height:25px;margin:11px 0 0;border:solid #f4f9ff;border-width:7px 0 0 7px;border-radius:4px;transform:rotate(45deg);filter:drop-shadow(0 2px 3px #16346899)}.jp .jp-jump>small{display:none}
    .jp .jp-jump>.jp-parachute-icon:before{display:none}.jp .jp-jump>.jp-parachute-icon svg{display:block;width:40px;height:40px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 3px #16346899)}
    .jp-explorer[data-vehicle] .jp-jump>span{font-size:27px}.jp-explorer[data-vehicle] .jp-jump>span:before{display:none}.jp-explorer[data-vehicle] .jp-jump>small{display:block}
}
@media(max-height:540px) and (min-width:761px){.jp-explorer{--hud-edge:18px;--hud-top:14px;--vitals-top:114px;--vitals-height:100px}.jp .jp-explorer-toolbar button{min-height:40px;padding:8px 15px;font-size:13px;border-radius:16px}.jp .jp-location{top:64px;min-height:40px;padding:8px 15px;font-size:13px;width:340px}.jp .jp-vitals{width:340px;padding:10px 13px;gap:7px;border-radius:19px}.jp .jp-vitals .jp-stamina{grid-template-columns:32px minmax(0,1fr);gap:11px}.jp .jp-vital-icon{width:32px;height:32px}.jp-vital-icon svg{width:24px;height:24px}.jp .jp-vitals .jp-stamina-caption{font-size:13px}.jp .jp-vitals .jp-stamina-track{height:11px}.jp .jp-lives{height:52px;min-width:110px;font-size:28px}.jp-lives svg{width:30px;height:30px}.jp[data-mode=explore] .jp-collect-notice{top:262px;left:18px}}
@media(prefers-reduced-motion:reduce){.jp .jp-explorer-toolbar button{transition:none}}

/* The speed streaks stay behind the HUD and never intercept controls. */
.jp-speed-lines{position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .2s;mask-image:radial-gradient(ellipse,transparent 30%,#000 85%);-webkit-mask-image:radial-gradient(ellipse,transparent 30%,#000 85%)}
.jp-speed-lines:before,.jp-speed-lines:after{content:"";position:absolute;inset:-40%;background:repeating-conic-gradient(from 7deg,transparent 0deg 17deg,#c5edff80 17.1deg 17.35deg,transparent 17.5deg 30deg);animation:jp-speed-rush .55s linear infinite}
.jp-speed-lines:after{background:repeating-conic-gradient(from 21deg,transparent 0deg 29deg,#e9fbff70 29.1deg 29.3deg,transparent 29.5deg 47deg);animation-delay:-.28s}
.jp-explorer[data-sprinting=true] .jp-speed-lines{opacity:.8}
.jp .jp-sprint{position:absolute;right:112px;bottom:48px;display:grid;place-content:center;gap:2px;width:74px;height:74px;padding:0;border:1.5px solid #bfefffbd;border-radius:50%;background:radial-gradient(circle at 35% 20%,#9dc6ff55,#193567e8 74%);color:#f0fbff;box-shadow:inset 0 1px 12px #c2e2ff40,0 0 15px #7fc8ff40;pointer-events:auto;touch-action:none;user-select:none;backdrop-filter:blur(9px)}
.jp-sprint>span{font-size:36px;line-height:1}.jp-sprint>small{font:600 9px system-ui}.jp .jp-sprint[aria-pressed=true]{border-color:#c2ffdc;background:#17664fe8;box-shadow:0 0 24px #6df8bd70}.jp .jp-sprint:disabled{cursor:default}
.jp-explorer[data-vehicle=dragon] .jp-sprint{right:112px;bottom:132px}
.jp-explorer[data-vehicle=rowboat] .jp-sprint,.jp-explorer[data-dead=true] .jp-sprint{display:none}
@keyframes jp-speed-rush{from{transform:scale(.7);opacity:.3}to{transform:scale(1.15);opacity:1}}
@media(max-width:760px),(pointer:coarse){.jp .jp-sprint{right:114px;bottom:max(40px,env(safe-area-inset-bottom));width:66px;height:66px}.jp-explorer[data-vehicle=dragon] .jp-sprint{right:112px;bottom:132px}}
@media(prefers-reduced-motion:reduce){.jp-speed-lines{display:none}.jp-sprint{transition:none}}
