/* SPACEBAR-inspired red liquid sphere; shared by collection and battle rewards. */
.training-hp-orb{position:relative;width:100%;aspect-ratio:1;border-radius:50%;margin:auto;background:radial-gradient(circle at 36% 28%,#4a1414 0%,#220a0a 55%,#0a0303 100%);box-shadow:inset 0 -8px 16px #000b,inset 0 4px 10px #ff967826,0 0 0 2px #1c130c,0 0 0 4px #8a6c30,0 0 0 5px #cfab54,0 0 0 6px #4a3718,0 6px 16px #000b,0 0 14px #ff503c40;overflow:hidden}
.training-orb-liquid{position:absolute;left:0;right:0;bottom:0;height:0;background:linear-gradient(#ff6b54 0%,#e02a22 40%,#7c1212 100%);box-shadow:inset 0 8px 16px #ff966e80,inset 0 -6px 14px #0006;transition:height .45s ease}
.training-orb-wave{position:absolute;top:-9px;left:0;width:200%;height:14px;display:block;fill:#ff7a60;animation:expedition-orb-wave 3.5s linear infinite}
.training-orb-gloss{position:absolute;top:7%;left:16%;width:40%;height:26%;border-radius:50%;z-index:4;background:radial-gradient(circle at 40% 40%,#ffffffbf,#ffffff1a 60%,transparent 72%)}
.training-orb-rim{position:absolute;inset:0;border-radius:50%;z-index:5;pointer-events:none;box-shadow:inset 0 2px 6px #ffffff40,inset 0 -3px 8px #0009}
@keyframes expedition-orb-wave{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.learning-view[data-presentation="expedition"]{isolation:isolate;background:#121416;color:#e7ddc9}
.learning-view[data-presentation="expedition"]> :not(.training-expedition){display:none!important}
.training-expedition{position:absolute;inset:0;overflow:hidden;background:#141517;font-family:var(--sans);--iron:#9a8972;--panel:linear-gradient(125deg,#343435ee,#1e1d1ded 42%,#111112f5);--metal:linear-gradient(#474541,#222221 48%,#151515);--red:linear-gradient(#7e312d,#471c1b);--trim:inset 0 0 0 1px #070707,inset 0 0 0 3px #aaa08a22,0 5px 20px #0009}
.expedition-map{position:absolute;inset:100px 224px 0 0;overflow:clip;touch-action:none;cursor:grab;background:radial-gradient(ellipse,#467873,#102b38);isolation:isolate}
.expedition-map:active{cursor:grabbing}
.expedition-world{position:absolute;width:1536px;height:1024px;transform-origin:0 0;will-change:transform}
.expedition-world-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}
.expedition-map:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 45px #091a2566;background:linear-gradient(0deg,#1010119c,transparent 24%),linear-gradient(180deg,#11111144,transparent 12%)}
.expedition-roads{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.expedition-road{fill:none;stroke:#e6d9b1;stroke-width:3;stroke-dasharray:2 7;stroke-linecap:round;filter:drop-shadow(0 2px 2px #161b17);opacity:.7}
.expedition-link{fill:none;stroke:#e0ddbf;stroke-width:2;stroke-dasharray:3 8;opacity:.45}
.expedition-sea{stroke:#b9dada;stroke-dasharray:4 10;opacity:.55}
.expedition-spaces,.expedition-regions{position:absolute;inset:0;pointer-events:none}
.expedition-spaces .expedition-space{pointer-events:auto}
.expedition-space{position:absolute;width:34px;height:34px;border:2px solid #b9a77f;transform:translate(-50%,-50%) rotate(45deg);background:linear-gradient(135deg,#55514b,#252a28);box-shadow:inset 0 0 0 2px #171a19,3px 3px 0 #212522,5px 5px 8px #12202180;z-index:3;cursor:pointer;color:#f1dfb3;font:700 12px Georgia;padding:0;transition:background .2s,filter .2s}
.expedition-space span{display:block;transform:rotate(-45deg)}
.expedition-space:hover{filter:brightness(1.25)}
.expedition-space[aria-pressed="true"]{background:linear-gradient(135deg,#b39a64,#52442b);outline:2px solid #fcebc79c;outline-offset:5px;box-shadow:3px 3px 0 #735c33,0 0 23px #fff0a680;z-index:5}
.expedition-space[data-done="true"]{background:linear-gradient(135deg,#56765c,#263e35);border-color:#b5cba3}
.expedition-space[data-boss="true"]{width:40px;height:40px;background:linear-gradient(135deg,#8a443b,#3d171c);color:#ffe3bb;border-color:#dfb592}
.expedition-space[data-done="true"]{background:linear-gradient(135deg,#507359,#183b2b);border-color:#d2d6a2;color:#f6edb9}
.expedition-space span{font-size:11px;white-space:nowrap;text-shadow:0 1px 3px #000}
.expedition-space[data-done="true"]:after{content:"✓";position:absolute;right:-14px;bottom:-13px;width:22px;height:22px;border-radius:50%;transform:rotate(-45deg);display:grid;place-items:center;background:#244833;border:1px solid #d8d49d;color:#fff4c5;font:700 17px var(--sans);box-shadow:0 2px 4px #071710aa}
.expedition-clear-status{display:inline-block;margin:4px 8px 0 0;padding:2px 6px;background:#233e2c;border:1px solid #91ab76;color:#e3e7b4;font:700 10px var(--sans)}
.expedition-clear-status[hidden]{display:none}
.expedition-landmark-label[data-cleared="true"]:after{content:"";position:absolute;bottom:-3px;left:0;height:3px;width:var(--region-progress);background:#c9d897;box-shadow:0 0 4px #a5c481}
.expedition-landmark-label[data-completed="true"]:before{content:"✓";position:absolute;right:0;top:-10px;background:#244833;border:1px solid #d8d49d;border-radius:50%;width:20px;height:20px;display:grid;place-items:center;color:#fff4c5;font:700 15px var(--sans)}
.expedition-space:not(:disabled):active{transform:translate(-50%,-50%) rotate(45deg);filter:brightness(1.1)}
.expedition-boss-art{position:absolute;transform:translate(-50%,-102%);width:78px;height:86px;pointer-events:none;z-index:6;display:flex;flex-direction:column;align-items:center;filter:drop-shadow(0 5px 3px #04171299)}
.expedition-boss-art img{position:absolute;height:calc(68px / var(--art-span,.9));width:auto;max-width:none;left:50%;bottom:18px;transform:translateX(calc(var(--art-center,.5) * -100%)) translateY(calc((1 - var(--art-ground,1)) * 100%));user-select:none}
.expedition-boss-art small{font:700 8px Georgia;letter-spacing:.15em;color:#ffdfb2;background:#401a1fe6;padding:3px 6px;border:1px solid #d79f6d66}
.expedition-boss-art[data-done="true"]{opacity:.5}
.expedition-noa{position:absolute;width:51px;height:68px;object-fit:contain;transform:translate(-50%,-120%);z-index:8;pointer-events:none;filter:drop-shadow(0 4px 3px #0007)}
.expedition-landmark-label{position:absolute;z-index:4;transform:translate(-50%,-50%) scale(var(--inverse-map-zoom,1));text-align:center;color:#f6e9b8;text-shadow:0 2px 5px #07272b,0 0 9px #07272b;background:linear-gradient(#132126e6,#101c22ce);border:1px solid #b8a98488;border-radius:2px;padding:7px 12px;box-shadow:inset 0 0 0 2px #111a1c77,0 3px 7px #0006;cursor:pointer;white-space:nowrap}
.expedition-landmark-label:hover{border-color:#f2dba0;filter:brightness(1.18)}
.expedition-landmark-label[data-selected="true"]{border-color:#f2dba0;box-shadow:inset 0 0 0 2px #111a1c77,0 0 12px #ecd59b44}
.expedition-landmark-label:not(:disabled):active{transform:translate(-50%,-50%) scale(var(--inverse-map-zoom,1))}
.expedition-world[data-overview="true"] .expedition-space:not([data-major="true"]),.expedition-world[data-overview="true"] .expedition-boss-art,.expedition-world[data-overview="true"] .expedition-road{display:none}
.expedition-world[data-overview="true"] .expedition-noa{opacity:.6}
.expedition-world[data-overview="false"] [data-map-region][data-active-region="false"]:not([data-travel-region="true"]){opacity:.22}
/* Selected lesson is a single bottom dock. The map owns the rest of the screen. */
/* One selected stage, not a second stage menu. */
.expedition-selected{position:absolute;bottom:22px;left:max(20px,calc((100% - 744px)/2));width:min(520px,calc(100% - 264px));z-index:10;box-sizing:border-box;background:var(--panel);border:1px solid #8b7d66;padding:12px 14px;box-shadow:var(--trim);display:flex;align-items:center;gap:8px;min-height:74px}
.expedition-selected[hidden]{display:none!important}
.expedition-selected:before,.expedition-collection:before{content:"";position:absolute;left:7px;right:7px;top:4px;height:1px;background:linear-gradient(90deg,transparent,#beb29a80,transparent);pointer-events:none}
.expedition-stage-copy{min-width:0;flex:1}
.expedition-stage-copy>small{display:block;font-size:10px;color:#b9b19d;margin-top:4px}
.expedition-stage-copy h3{font:500 19px var(--serif);margin:0;color:#f2dfb7;line-height:1.35}
.expedition-boss-difficulty{display:inline-block;font-size:10px;line-height:1.45;padding:2px 5px;margin-top:4px;border:1px solid #95825c66;background:#211e19;color:#e0d2a8;white-space:nowrap}
.expedition-boss-difficulty[hidden]{display:none}
.expedition-boss-difficulty:before{content:"難易度 ";font-weight:400}
.expedition-landmark-label small{display:block;margin-top:3px;color:#d6c39c;font-size:8px;letter-spacing:1px}
.expedition-boss-difficulty[data-level="4"]{border-color:#ad805f;color:#f3c396;background:#2d201c}
.expedition-boss-difficulty[data-level="5"]{border-color:#af6860;color:#f6b5a6;background:#311c1c}
.expedition-boss-objective{font-size:10px;line-height:1.5;color:#dacba8;margin:4px 0 0;overflow-wrap:anywhere}
.expedition-boss-objective[hidden]{display:none}
.expedition-region-objective{font-size:12px;line-height:1.6;color:#e0d7c3;margin:0 0 8px}
.expedition-reading-badge{display:inline-block;margin:5px 0 0;padding:2px 5px;background:#1c3032;border:1px solid #73929066;color:#c2dfd9;font-size:10px}
.expedition-reading-badge[hidden]{display:none}
.expedition-route{display:block;margin-top:9px;padding:6px 0 0;width:100%;border:0;border-top:1px solid #8b7d6644;background:none;color:#e2cd9d;text-align:left;font:500 12px var(--sans);cursor:pointer}
.expedition-route[hidden]{display:none}
.expedition-stage-prev,.expedition-stage-next,.expedition-details{flex:0 0 25px;width:25px;min-height:34px;background:none;border:0;color:#d2c2a4;padding:0;cursor:pointer}
.expedition-stage-prev,.expedition-stage-next{font:24px Georgia}
.expedition-stage-prev:disabled,.expedition-stage-next:disabled{opacity:.25;cursor:default}
.expedition-selected .expedition-details{font:11px var(--sans);color:#c5b898;flex-basis:34px;width:34px}
.expedition-details[aria-expanded="true"]{color:#f2dfb7}
.expedition-stage-preview{position:absolute;bottom:calc(100% + 8px);left:0;right:0;padding:12px 16px;background:var(--panel);border:1px solid #8b7d66;box-shadow:var(--trim)}
.expedition-stage-preview[hidden]{display:none}
.expedition-examples{font-size:11px;line-height:1.65;color:#e0d7c3;overflow-wrap:anywhere}
.expedition-selected[data-boss="true"]{border-color:#ae7967}
.expedition-selected .expedition-start{flex:0 0 94px;min-width:0}
.expedition-start,.expedition-claim{min-height:43px;border:1px solid #b78461;box-shadow:inset 0 0 0 1px #2a1010,inset 0 2px 1px #e3b49533,0 2px 4px #0006;background:var(--red);color:#f2dfb7;font:500 12px var(--sans);cursor:pointer;padding:9px 12px}
.expedition-start:hover,.expedition-claim:not(:disabled):hover{filter:brightness(1.2)}
.expedition-collection{position:absolute;top:123px;right:20px;width:164px;z-index:10;box-sizing:content-box;display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--panel);border:1px solid #85785e;padding:17px 12px 12px;box-shadow:var(--trim)}
.expedition-collection>small{font:500 13px var(--serif);letter-spacing:.12em;color:#ddcbaa}
.expedition-orb{position:relative;width:114px;margin:22px 0 14px;aspect-ratio:1}
.expedition-orb-count{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;justify-content:center;text-shadow:0 1px 3px #000,0 0 5px #000;padding-top:14px;pointer-events:none}
.expedition-orb-count strong{font:700 25px Georgia;color:#fff4d7}
.expedition-orb-count span{font-size:10px;color:#f5d4b8;margin-top:4px}
.expedition-orb[data-full="true"]{filter:drop-shadow(0 0 9px #e6af4259)}
.expedition-goal-art{width:145px;height:100px;object-fit:contain;filter:brightness(0) drop-shadow(0 0 5px #bbbaa166);margin:3px 0 8px}
.expedition-goal-art[data-collected="true"]{filter:drop-shadow(0 0 8px #7ac4a855)}
.expedition-collection select{width:100%;padding:8px;color:#ddd1b7;border:1px solid #696359;background:#141414;font-size:10px}
.expedition-claim{width:100%;font-size:11px}
.expedition-claim:disabled{background:var(--metal);color:#8e877a;border-color:#696157;cursor:default}


.expedition-map-toolbar{position:absolute;left:20px;right:244px;top:116px;z-index:10;display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#f1e4c6;pointer-events:none}
.expedition-map-toolbar>div{display:flex;gap:4px;pointer-events:auto}
.expedition-map-toolbar button{background:var(--metal);border:1px solid #847961;color:#e1d8c8;font-size:11px;min-height:33px;min-width:33px;padding:6px 11px;box-shadow:inset 0 0 0 1px #131313,0 2px 5px #0005;cursor:pointer}
.expedition-progress{font-size:10px;text-shadow:0 2px 5px #000}












/* Keep the established central-bottom learning guide and battle harvesting. */
.expedition-battle-orb{height:30%;top:20%;right:4%;width:13%}
.expedition-battle-orb .training-battle-cup{width:77%;height:auto;aspect-ratio:1;margin-bottom:16px}
.expedition-battle-orb .training-hud-goal{height:40%;top:100%}
.expedition-battle-orb.absorbing .training-hp-orb{filter:brightness(1.1)}
.expedition-battle-orb.absorbing .training-orb-liquid{transition:height .18s ease}
.arena:has(.expedition-battle-orb) .training-harvest-orb{background:radial-gradient(ellipse at 32% 22%,#ffcfb855,transparent 40%),radial-gradient(circle at 42% 42%,#6b221c,#350e13 60%,#0a0307);border-color:#d19b626b;box-shadow:inset 0 1px 2px #ffefda5c,inset 0 -3px 4px #000b,0 2px 4px #0008,0 0 9px #ed725440}
.arena:has(.expedition-battle-orb) .training-harvest-orb::before{background:radial-gradient(ellipse at 40% 24%,#ffd8b5aa,transparent 52%),linear-gradient(#ff7458,#a02a26 60%,#370b17);box-shadow:inset 0 1px 1px #ffe8c388,inset 0 -3px 4px #0006}
.arena:has(.expedition-battle-orb) .training-orb-origin{background:radial-gradient(circle,#edb2893b,transparent 62%)}
@media(max-width:1000px){
 .expedition-map{right:188px}.expedition-collection{width:134px;right:14px;padding:15px 10px}.expedition-orb{width:96px}.expedition-goal-art{width:118px;height:75px}.expedition-map-toolbar{right:206px;gap:8px}.expedition-selected{left:max(18px,calc((100% - 744px)/2));width:min(520px,calc(100% - 224px))}
}
@media(max-width:600px){
 .expedition-map{inset:100px 0 0}.expedition-map-toolbar{left:10px;right:10px;top:112px;gap:7px}.expedition-map-toolbar button{font-size:10px;min-height:31px;min-width:29px;padding:5px 8px}.expedition-progress{font-size:9px}
 .expedition-collection{top:166px;right:10px;width:70px;padding:9px 7px;background:linear-gradient(#282624dc,#171617e6)}.expedition-orb{width:58px;margin:10px 0 8px}.expedition-orb-count strong{font-size:16px}.expedition-orb-count span{font-size:7px}.expedition-goal-art{width:62px;height:44px;margin:4px 0}.expedition-collection select{padding:5px 1px;font-size:8px}.expedition-claim{min-height:32px;padding:6px 2px;font-size:8px;margin-top:8px}
 .expedition-selected{left:10px;bottom:13px;width:calc(100% - 20px);padding:10px;min-height:72px;gap:6px}.expedition-stage-copy>small{font-size:9px}.expedition-stage-copy h3{font-size:15px}.expedition-selected .expedition-start{flex-basis:82px;font-size:11px;padding:7px;min-height:39px}.expedition-stage-prev,.expedition-stage-next{flex-basis:20px;width:20px}.expedition-details{flex-basis:21px;width:21px}
 .expedition-landmark-label{padding:5px 8px;font-size:11px}
 .expedition-battle-orb{top:15%;right:6%;width:16%;height:18%}.expedition-battle-orb .training-battle-cup{width:100%;margin-bottom:12px}
}
@media(prefers-reduced-motion:reduce){.training-orb-wave{animation:none}.training-orb-liquid,.expedition-battle-orb.absorbing .training-orb-liquid{transition:none}.expedition-world{will-change:auto}}

.expedition-landmark-label{font:500 12px var(--sans);padding:6px 12px;border-color:#b8a98466;background:#132126a8}
.expedition-landmark-label:focus:not(:focus-visible){outline:none}
.expedition-world[data-overview="false"] .expedition-boss-art[data-active-region="false"]:not([data-travel-region="true"]),.expedition-world[data-overview="false"] .expedition-space[data-active-region="false"]:not([data-travel-region="true"]):not([data-major="true"]){display:none}
.expedition-world[data-overview="true"] .expedition-landmark-label[data-recommended="true"]{border-color:#e8c584;animation:expedition-first-step 2.4s ease-in-out infinite}
@keyframes expedition-first-step{0%,100%{box-shadow:0 0 0 3px #e8c58422,0 0 12px #e8c58422}50%{box-shadow:0 0 0 6px #e8c58444,0 0 22px #e8c58488}}
@media(prefers-reduced-motion:reduce){.expedition-world[data-overview="true"] .expedition-landmark-label[data-recommended="true"]{animation:none;box-shadow:0 0 0 3px #e8c58444}}
.arena[data-training="true"] .learning-keys kbd.anchor-key{outline:1px solid #f4d792;outline-offset:2px;box-shadow:0 0 12px #f4d79244}
.arena[data-training="true"] .learning-hands .anchor-finger:not(.active){border-color:#d8c498;box-shadow:0 0 9px #f4d79233}
.arena[data-training="true"] .learning-guide[data-anchor-intro="true"] #learning-phase-hint{display:block;margin:7px 0 0;font-size:11px;color:#dcd0b6;line-height:1.5;text-align:center}
/* Guide belongs to the existing cockpit so stacked frames cannot cover combat. */
.arena[data-training="true"][data-lesson-presentation="expedition"] .arena-bg{background-image:linear-gradient(0deg,#12171855,transparent 55%),var(--training-bg,url(../assets/learning/training-coastal-terrace-v1.webp));background-position:center;background-color:#46555c}
.arena[data-training="true"][data-lesson-presentation="expedition"] .fighter{top:var(--training-ground-y,56%);--h:var(--training-fighter-height,19cqw)!important}
.arena[data-training="true"][data-lesson-presentation="expedition"] .fighter.player-fighter{left:25%}.arena[data-training="true"][data-lesson-presentation="expedition"] .fighter.cpu-fighter{left:74%}
@media(max-width:600px){.arena[data-training="true"][data-lesson-presentation="expedition"] .fighter.player-fighter{left:22%}.arena[data-training="true"][data-lesson-presentation="expedition"] .fighter.cpu-fighter{left:68%}}
.arena[data-training="true"][data-lesson-presentation="expedition"] .learning-guide{position:relative;left:auto;right:auto;top:auto;bottom:auto;translate:none;transform:none;width:100%;max-width:none;padding:7px 15px 9px;box-sizing:border-box;background:#11141566;border:0;border-top:1px solid #99856844;box-shadow:none}
.arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit{display:block;position:absolute;isolation:isolate;left:50%;translate:-50% 0;bottom:16px;width:min(650px,calc(100% - 32px))}
.arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit::before,.arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit::after,.arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit>.combo-dock{display:block}
.arena[data-lesson-presentation="expedition"][data-training="true"] #battle-cockpit #word-zone{position:relative;left:auto;right:auto;top:auto;bottom:auto;transform:none;translate:none;width:auto;max-width:none;min-height:88px;padding:10px 85px 28px;margin:0;border:0;background:none;box-shadow:none;text-align:center;display:flex}
.arena[data-lesson-presentation="expedition"] #battle-cockpit .combo-step,.arena[data-lesson-presentation="expedition"] #battle-cockpit .accuracy{bottom:calc(var(--learning-guide-height,110px) + 12px)}
.arena[data-lesson-presentation="expedition"] #battle-cockpit #word-kana{font-size:24px;line-height:1.25;text-wrap:balance}
.arena[data-lesson-presentation="expedition"] #battle-cockpit #word-guide{font-size:21px;line-height:1.3;letter-spacing:.04em}
.arena[data-lesson-presentation="expedition"][data-guide-raw="true"] #battle-cockpit #word-zone{min-height:76px}
.arena[data-lesson-presentation="expedition"][data-guide-raw="true"] #battle-cockpit #word-guide{font-size:32px;line-height:1.2}
.arena[data-lesson-presentation="expedition"] #word-guide .next{border:0;color:#f3e8cd;background:linear-gradient(#4c4639,#2b2b24);border-radius:1px;box-shadow:inset 0 -2px #cdb783,0 0 8px #a88b4030}
.arena[data-lesson-presentation="expedition"][data-guide-raw="true"] #word-kana{display:none}
.arena[data-lesson-presentation="expedition"] .learning-phase-track,.arena[data-lesson-presentation="expedition"] .learning-next-key,.arena[data-lesson-presentation="expedition"] #word-zone .next-word{display:none!important}
.arena[data-lesson-presentation="expedition"] .learning-guide-toolbar{border-bottom:0;padding-bottom:3px;color:#bfb398}.arena[data-lesson-presentation="expedition"] #learning-phase-count{display:none}
.arena[data-lesson-presentation="expedition"] .learning-guide-body{border-top:0;padding-top:0}
.arena[data-lesson-presentation="expedition"] .learning-guide[data-guide-ui] .learning-keyboard{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;max-width:560px;margin:0 auto}
.arena[data-lesson-presentation="expedition"] .learning-guide[data-guide-ui] .learning-keys{width:100%;grid-column:2}
.arena[data-lesson-presentation="expedition"] .learning-mini-hand{border-bottom-color:#49463f}
.arena[data-lesson-presentation="expedition"] .learning-mini-hand i{background:#706d63}
.arena[data-lesson-presentation="expedition"] .learning-mini-hand i.active{background:#ffe2a2;box-shadow:0 0 10px #f1d17daa}
.arena[data-lesson-presentation="expedition"] .learning-guide[data-guide-ui] .learning-finger-instruction{position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.arena[data-lesson-presentation="expedition"] #learning-phase-hint{display:none!important}
.arena[data-lesson-presentation="expedition"] .learning-hands .anchor-finger:not(.active){box-shadow:none}
.arena[data-lesson-presentation="expedition"] .learning-keys kbd.anchor-key:not(.active){outline:0;box-shadow:none}
.arena[data-lesson-presentation="expedition"] .learning-guide[data-guide-ui] .learning-key-row kbd{height:22px}
.arena[data-lesson-presentation="expedition"] .learning-keys kbd{background:linear-gradient(#363431,#222425);border-color:#686357;color:#c7c1af;box-shadow:inset 0 1px #d2c9ad15}
.arena[data-lesson-presentation="expedition"] .learning-keys kbd.home-key{border-bottom-color:#b29d6f}
.arena[data-lesson-presentation="expedition"] .learning-keys kbd.active{background:linear-gradient(#e7cf93,#b99855);border-color:#efd79e;color:#282114;box-shadow:0 0 11px #c8a85444}
.training-knowledge{padding:0 4px;margin:0 0 7px;color:#c8bca6;font-size:11px;line-height:1.7;text-align:center}
.training-knowledge[hidden]{display:none}
.training-knowledge>small{font-size:inherit;color:#d0b579;margin-right:6px}.training-knowledge>small:empty{display:none}
.training-knowledge>p{font-size:inherit;line-height:inherit;margin:0;display:inline}
.training-knowledge a{font-size:9px;color:#a99e88;text-decoration:underline;text-underline-offset:3px;margin-left:8px}
.learning-guide-toolbar .training-source{font-size:9px;white-space:nowrap;color:#b6ac96;text-decoration:underline;text-underline-offset:3px}
.training-kana-reading{font:13px/1.5 var(--sans);color:#d4c9b2;margin:2px 0 4px}
.arena[data-lesson-presentation="expedition"][data-reading-exercise="true"] #battle-cockpit #word-kana{font-size:38px;line-height:1.15;letter-spacing:.05em}
.arena[data-reading-exercise="true"] #battle-cockpit #word-zone{padding-top:12px}
.reading-cursor{color:#d1b981}
.training-intro-start{min-height:39px;padding:8px 23px;background:linear-gradient(#71302d,#401b1a);border:1px solid #a87958;color:#f4dfb5;font:12px var(--sans);cursor:pointer;box-shadow:inset 0 1px #e1b68933}
.training-introduction{width:min(590px,calc(100vw - 32px));box-sizing:border-box;padding:30px 35px;background:linear-gradient(145deg,#302d29,#171719);color:#e9ddc7;border:1px solid #9d8a64;box-shadow:inset 0 0 0 4px #aaa08020,0 20px 80px #000b}
.training-introduction::backdrop{background:#07090bbd;backdrop-filter:blur(4px)}
.training-intro-close{position:absolute;right:12px;top:9px;background:none;border:0;color:#b9ab92;font-size:23px;cursor:pointer}
.training-introduction>small{font-size:10px;color:#bca783}
.training-introduction h2{font:500 24px/1.5 var(--serif);margin:8px 0 13px;color:#f3dfb5}
.training-introduction>p{font-size:13px;line-height:1.9;color:#c7bdaa;margin:0}
.training-intro-talk{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px 14px;align-items:center;margin:8px 0}
.training-intro-talk img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 3px 6px #0006)}
.training-intro-talk b{display:block;font-size:11px;font-weight:500;color:#d6b981;margin-bottom:4px}
.training-intro-talk p{margin:0;font-size:13px;line-height:1.8;color:#d4cab7}
.training-home-diagram{display:flex;gap:25px;justify-content:center;margin:23px 0;padding:18px 10px;background:#0b0e0f77;border-top:1px solid #82765755;border-bottom:1px solid #82765755}
.training-home-diagram>div{display:flex;gap:5px;position:relative;padding-top:22px}
.training-home-diagram span{position:absolute;top:0;left:0;font-size:10px;color:#aaa18b}
.training-home-diagram kbd{position:relative;display:grid;place-content:center;width:39px;height:36px;font:15px Consolas;border:1px solid #746c5e;background:#343431;color:#e0d8bd}
.training-home-diagram kbd.anchor{background:linear-gradient(#c4ab72,#817047);color:#131519;border-color:#e7c98b}
.training-home-diagram kbd i{position:absolute;bottom:5px;left:40%;width:20%;height:2px;background:currentColor}
.training-introduction ol{padding:0;list-style:none;counter-reset:steps;display:grid;gap:15px;margin:0 0 25px}
.training-introduction li{counter-increment:steps;position:relative;padding-left:30px}
.training-introduction li:before{content:counter(steps);position:absolute;left:0;top:1px;color:#c3a86d;font:16px Georgia}
.training-introduction li b{font-size:13px;font-weight:500;color:#e3d3af;display:block;margin-bottom:5px}
.training-introduction li span{font-size:11px;line-height:1.7;color:#b8ad97;display:block}
.training-intro-start{width:100%}
/* Victory owns the soul collection. No large collector obstructs live typing. */
.arena[data-lesson-presentation="expedition"] .training-battle-collection{display:none!important}
.training-reward-scene{position:absolute;inset:0;z-index:11;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .35s}
.training-reward-scene[data-phase]{visibility:visible;opacity:1}
.training-reward-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,#06090b11,#06090b9c 65%,#030507ed)}
.training-reward-vessel{position:absolute;left:50%;top:31%;transform:translate(-50%,0);width:174px;aspect-ratio:1;filter:drop-shadow(0 16px 20px #000a)}
.training-reward-vessel:after{content:"";position:absolute;left:-20%;right:-20%;bottom:-24px;height:24px;background:radial-gradient(ellipse,#050508a6,transparent 67%);z-index:-1}
.training-reward-total{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-shadow:0 2px 4px #100303;padding-top:12px}
.training-reward-total b{font:500 37px Georgia;color:#fff2ce}
.training-reward-total span{font:13px Georgia;color:#ddbf9b;margin-top:6px}
.training-reward-gain{position:absolute;top:100%;left:-40%;right:-40%;margin:30px 0 0;text-align:center;color:#e4c99d;font:500 17px var(--serif);letter-spacing:.04em;opacity:0;translate:0 5px;transition:opacity .3s,translate .3s}
.training-reward-scene[data-phase="absorbed"] .training-reward-gain{opacity:1;translate:0 0}
.training-reward-skip{pointer-events:auto;position:absolute;right:24px;top:135px;background:#14171bc9;border:1px solid #7c7054;color:#c2b9a5;padding:7px 15px;font-size:11px;cursor:pointer}
.arena[data-lesson-presentation="expedition"][data-reward-phase="collecting"] .fighter,.arena[data-lesson-presentation="expedition"][data-reward-phase="done"] .fighter{opacity:.17;transition:opacity .35s}
.arena[data-lesson-presentation="expedition"][data-reward-phase="collecting"] #battle-cockpit,.arena[data-lesson-presentation="expedition"][data-reward-phase="done"] #battle-cockpit{display:none!important}
.arena[data-lesson-presentation="expedition"] #battle-cockpit:has(#word-zone[hidden]){display:none!important}
.arena[data-lesson-presentation="expedition"] .training-round-result{left:50%;translate:-50% 0;bottom:12%;width:min(500px,calc(100% - 40px));box-sizing:border-box;background:linear-gradient(145deg,#272525ef,#101114f7);border:1px solid #8e7c58;box-shadow:inset 0 0 0 3px #bfa56a17,0 15px 45px #0008;padding:21px 18px}
.arena[data-lesson-presentation="expedition"] .training-round-result p{font-size:13px;color:#d8c5a0;line-height:1.6}
.arena[data-lesson-presentation="expedition"] .training-round-result .training-continue{background:linear-gradient(#71302d,#401b1a);color:#f3ddb2;border-color:#a87958}
.arena[data-lesson-presentation="expedition"] .training-round-result .training-rest{background:#202021;color:#d4c6a8;border-color:#726650}
:is(.arena[data-lesson-presentation="expedition"],.soul-acquisition) .training-harvest-orb.training-soul{border:0;background:radial-gradient(circle at 45% 40%,#fff1d6 0%,#ff7458 12%,#e71b3dcc 35%,#8d082c55 58%,transparent 74%);box-shadow:0 0 10px #f11a3d99,0 0 22px #a1092944;z-index:12}
:is(.arena[data-lesson-presentation="expedition"],.soul-acquisition) .training-harvest-orb.training-soul:before{inset:auto;right:45%;top:35%;width:calc(var(--orb-size)*4);height:30%;background:linear-gradient(90deg,transparent,#8c082a22 20%,#cb163875 65%,#ff6539bf);border-radius:90% 15% 15% 90%;transform:none;box-shadow:none;filter:blur(1px)}
:is(.arena[data-lesson-presentation="expedition"],.soul-acquisition) .training-harvest-orb.training-soul:after{inset:30%;width:auto;height:auto;background:#ffe9c5;box-shadow:0 0 5px #ff764b;border-radius:50%}
:is(.arena[data-lesson-presentation="expedition"],.soul-acquisition) .training-soul-origin{background:radial-gradient(circle,#de17353b,transparent 65%)}
@media(max-width:600px){
 .arena[data-training="true"][data-lesson-presentation="expedition"] .learning-guide{width:100%;padding:6px 10px 8px;bottom:auto}
 .arena[data-lesson-presentation="expedition"] .learning-guide[data-guide-ui] .learning-keyboard{grid-template-columns:65px minmax(0,1fr);gap:8px}
 .training-intro-talk{grid-template-columns:46px minmax(0,1fr);gap:8px 10px}.training-intro-talk img{width:46px;height:56px}.training-intro-talk p{font-size:12px}
 .arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit{width:calc(100% - 24px);bottom:12px}
 .arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit #word-zone{padding:25px 12px 26px;min-height:90px}
 .arena[data-lesson-presentation="expedition"] #battle-cockpit #word-kana{font-size:21px}.arena[data-lesson-presentation="expedition"] #battle-cockpit #word-guide{font-size:18px}
 .training-introduction{padding:25px 20px;max-height:calc(100svh - 30px);overflow:auto}.training-introduction h2{font-size:20px}.training-introduction>p{font-size:12px}.training-home-diagram{gap:14px;margin:18px 0;padding:14px 4px}.training-home-diagram kbd{width:29px;height:32px;font-size:13px}.training-home-diagram>div{gap:3px}.training-introduction li span{font-size:11px}
 .training-reward-vessel{width:132px;top:34%}.training-reward-total b{font-size:30px}.training-reward-skip{right:14px;top:100px;font-size:10px}
 .arena[data-lesson-presentation="expedition"] .training-round-result{bottom:15%;padding:18px 12px}.arena[data-lesson-presentation="expedition"] .training-round-result h3{font-size:24px}.arena[data-lesson-presentation="expedition"] .training-round-result button{padding:9px 12px;font-size:11px}
}
@media(max-height:550px) and (min-width:601px){
 .arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit{display:grid;grid-template-columns:45% 55%;width:calc(100% - 24px);bottom:10px}
 .arena[data-training="true"][data-lesson-presentation="expedition"] .learning-guide{border-top:0;border-left:1px solid #99856844;padding:6px 10px 8px;align-self:center}
 .arena[data-training="true"][data-lesson-presentation="expedition"] #battle-cockpit #word-zone{padding:25px 12px 24px;min-height:100px;align-self:center}
 .arena[data-lesson-presentation="expedition"] #battle-cockpit #word-kana{font-size:18px;line-height:1.2}.arena[data-lesson-presentation="expedition"] #battle-cockpit #word-guide{font-size:15px}
 .arena[data-lesson-presentation="expedition"] #battle-cockpit .combo-step{right:calc(55% + 80px);left:12px;bottom:10px;gap:4px}.arena[data-lesson-presentation="expedition"] #battle-cockpit .cockpit-heat{display:none}
 .arena[data-lesson-presentation="expedition"] #battle-cockpit .accuracy{right:calc(55% + 12px);bottom:10px;font-size:9px}.arena[data-lesson-presentation="expedition"] #battle-cockpit .accuracy b{font-size:11px}
 .arena[data-lesson-presentation="expedition"] .learning-guide[data-guide-ui] .learning-key-row kbd{height:20px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){.training-reward-scene,.arena[data-lesson-presentation="expedition"] .fighter{transition:none!important}}
.arena[data-lesson-presentation="expedition"] .fighter.training-defeated{opacity:0!important;filter:blur(4px);transition:opacity .45s,filter .45s}
.learning-utility-row[hidden]{display:none!important}
.arena[data-lesson-presentation="expedition"] .learning-utility-row{margin-top:4px}
.arena[data-lesson-presentation="expedition"] .learning-utility-row kbd[data-key=" "]{flex:3}
.arena[data-lesson-presentation="expedition"] .learning-utility-row kbd[data-key^="shift"]{flex:1.3;font-size:10px}

.expedition-saving-hint{font-size:11px;line-height:1.7;color:#b9b19d;text-align:center;margin:8px 0}
.expedition-saving-hint[hidden],.expedition-collection [hidden]{display:none!important}

/* Choose the practice before exploring its place on the world map. */
.training-expedition[data-screen="entry"]>.expedition-map,.training-expedition[data-screen="entry"]>.expedition-map-toolbar,.training-expedition[data-screen="entry"]>.expedition-selected{display:none!important}
.training-entry[hidden]{display:none!important}
.training-entry{position:absolute;inset:100px 0 0;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:28px;padding:28px clamp(20px,4vw,60px) 40px;box-sizing:border-box;background:linear-gradient(90deg,#141718f5,#111617ed),url(../assets/learning/expedition-boss-landmarks-v5.webp) center/cover}
.training-entry-main{min-width:0;max-width:1100px;justify-self:center;width:100%}
.training-entry-heading>p:first-child{font:10px Georgia,serif;letter-spacing:.24em;color:#b39d73;margin:0 0 9px}
.training-entry-heading h2{font:500 clamp(24px,2.6vw,36px) var(--serif);color:#efdfbb;margin:0 0 9px;letter-spacing:.07em}
.training-entry-heading>p{font-size:13px;line-height:1.7;color:#c0bbad;margin:0}
.training-entry-flow{display:flex;list-style:none;gap:12px;flex-wrap:wrap;margin:17px 0 22px;padding:0;font-size:12px;line-height:1.6;color:#d0c09c}
.training-entry-flow li+li:before{content:'→';margin-right:12px;color:#806e51}
.training-entry-recommendation{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;margin-bottom:22px;border:1px solid #ad986266;background:linear-gradient(110deg,#3b3429bd,#1b242494);box-shadow:inset 0 0 0 3px #14191988,0 8px 24px #0003}
.training-entry-recommendation small{font-size:11px;color:#d2b773}
.training-entry-recommendation h3{font:500 22px var(--serif);color:#f0dfb6;margin:6px 0}
.training-entry-recommendation p{font-size:12px;color:#c2bbac;line-height:1.7;margin:0}
.training-entry-start{flex-shrink:0;padding:13px 19px;border:1px solid #bc9472;background:var(--red);color:#f7e5bd;box-shadow:inset 0 1px #efd9b533,0 3px 12px #0006;font:500 13px var(--sans);cursor:pointer;min-height:44px}
.training-entry-courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.training-entry-course{position:relative;display:flex;align-items:flex-start;gap:13px;text-align:left;padding:18px 22px 16px 16px;min-width:0;min-height:132px;border:1px solid #776c535e;background:linear-gradient(125deg,#343534ad,#1c2122cc);box-shadow:inset 0 0 0 3px #11171977;color:#ddd0af;cursor:pointer;transition:border-color .18s,background .18s}
.training-entry-course:hover{border-color:#bda778;background:linear-gradient(125deg,#444033b3,#222b2bc9)}
.training-entry-course>svg{flex:0 0 26px;width:26px;height:26px;fill:none;stroke:#bda67c;stroke-width:1.3;margin-top:2px}
.training-entry-course>div{min-width:0;flex:1}
.training-entry-course h3{font:500 18px var(--serif);color:#eadabb;margin:0 0 8px;line-height:1.3}
.training-entry-course-example{display:block;font:11px var(--sans);letter-spacing:.04em;color:#c7b989}
.training-entry-course p{font:11px/1.7 var(--sans);color:#bbb7ac;margin:6px 0 10px}
.training-entry-course footer{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font:10px var(--sans);color:#a49c89}
.training-entry-difficulty{letter-spacing:1px;color:#b9a779}
.training-entry-course-progress{margin-left:auto;color:#b8c69f}
.training-entry-course-arrow{position:absolute;right:10px;top:16px;font:20px Georgia;color:#ac9670}
.training-entry-world{display:block;margin:18px 0 0 auto;padding:8px 0;min-height:40px;color:#b8b1a0;background:none;border:0;border-bottom:1px solid #8a795755;font:12px var(--sans);cursor:pointer}
.training-entry-world span{margin-left:12px}
.training-entry button:focus-visible{outline:2px solid #e0c682;outline-offset:3px}
.training-entry-rewards{min-width:0;align-self:start}
.training-entry-rewards .expedition-collection{position:relative;inset:auto;width:auto;padding:24px 18px;box-sizing:border-box;background:linear-gradient(150deg,#39342ce6,#191c1df2)}
.expedition-collection h3{font:500 17px var(--serif);margin:0 0 9px;color:#ebd7ad}
.expedition-reward-purpose{font:11px/1.8 var(--sans);color:#bfb6a3;margin:0}
.expedition-orb-remaining{font:10px/1.6 var(--sans);color:#b8ad94;margin:9px 0 0}
.training-entry-rewards .expedition-orb{width:130px;margin:28px 0 16px}
.training-entry-rewards .expedition-goal-art{width:180px;height:128px;margin:0 0 14px}
.training-entry-rewards .expedition-collection select{font-size:11px;margin-bottom:9px;min-height:38px}
.training-entry-rewards .expedition-claim{font-size:12px;min-height:44px}
.training-intro-summary{font:14px/1.9 var(--sans);color:#c9bea8;margin:22px 0 28px;text-align:center}
@media(min-width:1600px){.training-entry-courses{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1001px){.training-entry-heading h2{font-size:30px}.training-entry-flow{margin:12px 0 16px}.training-entry-recommendation{padding:14px 20px;margin-bottom:16px}.training-entry-recommendation h3{font-size:20px;margin:6px 0 0}.training-entry-recommendation p{display:none}.training-entry-course{padding:13px 22px 12px 16px;min-height:110px}.training-entry-course h3{font-size:17px;margin-bottom:6px}.training-entry-course p{line-height:1.55;margin:5px 0 7px}.training-entry-course-example{font-size:10px}.training-entry-course footer{font-size:9px}.training-entry-world{margin-top:10px}}
@media(max-width:1000px){.training-entry{grid-template-columns:minmax(0,1fr) 210px;gap:20px;padding:24px 22px}.training-entry-course{padding:16px 18px 13px 13px;gap:9px}.training-entry-course>svg{flex-basis:20px;width:20px;height:20px}.training-entry-course h3{font-size:16px}.training-entry-recommendation{padding:16px;gap:12px}.training-entry-start{padding:12px}.training-entry-rewards .expedition-goal-art{width:150px}}
@media(max-width:760px){.training-entry{grid-template-columns:1fr;gap:22px;padding:20px 16px 32px}.training-entry-heading>p{font-size:12px}.training-entry-flow{gap:7px;font-size:10px;margin:13px 0 18px}.training-entry-flow li+li:before{margin-right:7px}.training-entry-recommendation{padding:15px;margin-bottom:16px}.training-entry-recommendation h3{font-size:19px}.training-entry-recommendation p{display:none}.training-entry-start{font-size:11px;padding:11px}.training-entry-courses{gap:9px}.training-entry-course{padding:14px 17px 11px 11px;min-height:145px;gap:8px}.training-entry-course h3{font-size:16px}.training-entry-course-example{font-size:10px;line-height:1.6}.training-entry-course p{font-size:10px;line-height:1.6}.training-entry-course footer{font-size:9px;gap:6px}.training-entry-course>svg{display:none}.training-entry-rewards .expedition-collection{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 22px;padding:20px;align-items:center}.training-entry-rewards .expedition-collection h3,.training-entry-rewards .expedition-reward-purpose{grid-column:1/-1}.training-entry-rewards .expedition-orb{width:96px;margin:20px 4px;grid-row:3/6}.training-entry-rewards .expedition-goal-art{width:100%;height:80px;margin:0}.training-entry-rewards .expedition-collection select{width:100%;font-size:10px;margin:0}.training-entry-rewards .expedition-claim{font-size:11px;padding:9px}.training-entry-rewards .expedition-orb-remaining,.training-entry-rewards .expedition-saving-hint{grid-column:1/-1}.training-entry-world{margin-top:10px}}
/* Map-led lessons: one destination, one example, one action. */
.lesson-keyboard{display:grid;gap:4px;max-width:340px;margin:8px 0}.lesson-keyboard>div{display:flex;justify-content:center;gap:4px}.lesson-keyboard kbd{width:25px;height:25px;display:grid;place-items:center;background:#171b1b;border:1px solid #51534b;color:#787b72;border-radius:3px;font:12px var(--sans)}.lesson-keyboard kbd.lesson-target{background:linear-gradient(#80734f,#443b29);border-color:#cbb375;color:#fff2c9}.lesson-keyboard kbd.lesson-anchor{text-decoration:underline;text-underline-offset:5px}
.lesson-fish-pair{display:flex;align-items:center;gap:20px;padding:7px 0}.lesson-fish-pair>span{display:grid;gap:16px;min-width:85px;text-align:center;border:1px solid #5b5544;padding:8px;color:#918a78}.lesson-fish-pair>span.current{color:#ffedc5;border-color:#d3b77d;background:#b3954c16}.lesson-fish-pair small{font:11px var(--sans)}.lesson-fish-pair ruby{font-size:26px}.lesson-fish-pair rt{font-size:11px}.lesson-fish-pair b{color:#cbb375}
.lesson-input-example{padding:10px 0;display:grid;gap:5px;font-size:20px;color:#f5e5bf}.lesson-input-example small{font:12px monospace;letter-spacing:.12em;color:#b9ac8b}
.expedition-region-objective{max-width:50em;line-height:1.5}.expedition-boss-objective[hidden]{display:none}.expedition-next-road{fill:none;stroke:#fff0b0;stroke-width:5;stroke-linecap:round;stroke-dasharray:3 10;filter:drop-shadow(0 0 5px #ffca61);animation:lesson-route-flow 2s linear infinite;pointer-events:none}
.expedition-space[data-suggested="true"]{outline:2px solid #ffda88;outline-offset:6px;box-shadow:0 0 24px #ffdc8770}.expedition-space[data-suggested="true"]:before{content:"";position:absolute;inset:-11px;border:1px solid #ffdfa3;opacity:.6;animation:lesson-beacon 2.4s ease-out infinite;pointer-events:none}
.expedition-goal-art{filter:brightness(.35) sepia(.25);opacity:.95}.expedition-orb{margin-bottom:30px}.expedition-reward-purpose{font-size:12px!important}.expedition-orb-remaining{font-size:11px;color:#c7b792}.training-home-diagram kbd{animation:lesson-key-place 3.2s ease-in-out infinite}.training-home-diagram .anchor{animation-delay:-1.6s}
@keyframes lesson-route-flow{to{stroke-dashoffset:-26}}@keyframes lesson-beacon{0%{scale:1;opacity:.7}100%{scale:1.35;opacity:0}}@keyframes lesson-key-place{0%,100%{box-shadow:inset 0 0 0 1px #d1b16a33}50%{box-shadow:inset 0 0 0 1px #f4d89a,0 0 14px #dcb96544}}
@media(prefers-reduced-motion:reduce){.expedition-next-road,.expedition-space[data-suggested="true"]:before,.training-home-diagram kbd{animation:none}}
@media(max-width:600px){.lesson-keyboard{max-width:280px}.lesson-keyboard kbd{width:21px;height:22px}.lesson-fish-pair{gap:12px}.lesson-fish-pair>span{min-width:64px}.lesson-input-example{font-size:16px}.expedition-orb:after{display:none}}
.expedition-details{min-width:52px!important;white-space:nowrap;font-size:11px!important}.expedition-route[hidden]{display:none}
.expedition-world[data-overview="false"] .expedition-road[data-travel-region="true"]{opacity:.7}
@media(max-width:600px){.expedition-collection h3,.expedition-reward-purpose,.expedition-orb-remaining{display:none!important}.expedition-collection{padding:9px 6px!important}.expedition-collection .expedition-orb{margin:0 auto 8px!important}.expedition-collection .expedition-goal-art{height:78px!important;min-height:0!important;margin:0!important}.expedition-collection select{margin:5px 0!important}.expedition-collection .expedition-claim{min-height:36px!important}.expedition-stage-copy h3{font-size:16px!important}}
.expedition-soul-transfer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}.expedition-goal-art{transition:filter .65s ease}.expedition-collection.soul-arrived .expedition-goal-art{filter:brightness(.65) sepia(.25) drop-shadow(0 0 4px #ef6360) drop-shadow(0 0 12px #9b172c)}.expedition-collection[data-ready="true"] .expedition-goal-art{filter:brightness(.85) drop-shadow(0 0 5px #e6c18a) drop-shadow(0 0 13px #bd3444)}.expedition-collection[data-ready="true"] .expedition-claim{border-color:#eed199;box-shadow:inset 0 0 12px #d1ac4930,0 0 14px #c5333438;background:linear-gradient(#863a32,#431b20)}
@media(prefers-reduced-motion:reduce){.expedition-goal-art{transition:none}}
.arena[data-lesson-presentation="expedition"] #word-guide{text-transform:none!important}.arena[data-lesson-presentation="expedition"][data-guide-raw="true"] #word-guide{text-transform:uppercase!important}.arena[data-lesson-presentation="expedition"] #word-guide.phrase-guide{display:block;max-height:112px;overflow-y:auto;overflow-x:hidden;line-height:1.7;letter-spacing:.025em;text-align:left;scrollbar-width:thin}.typing-phrase{display:inline-block;margin-right:.65em;white-space:nowrap}.typing-phrase.current-phrase{border-bottom:1px solid #b89c6b77}.expedition-examples:empty{display:none}
.training-purpose-dialog{box-sizing:border-box;width:min(880px,92vw);max-height:calc(100dvh - 32px);overflow-y:auto;padding:48px 24px 24px;border:1px solid #99805a;color:#f4e4c0;background:#12191d;box-shadow:0 25px 100px #000c}
.training-purpose-dialog::backdrop{background:#071013c9;backdrop-filter:blur(4px)}
.purpose-close{position:absolute;right:12px;top:8px;min-width:36px;min-height:36px;background:none;border:0;color:#d8c9aa;font-size:25px;cursor:pointer}
.purpose-choices{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.purpose-group{min-width:0;border:1px solid #796b50;background:linear-gradient(#111b1ceb,#10191cf5),url('../assets/learning/expedition-boss-landmarks-v5.webp') 8% 25%/260%}
.purpose-group[data-purpose="knowledge"]{background-position:70% 65%}
.purpose-group h2{font:500 23px var(--serif,serif);letter-spacing:.03em;margin:0;padding:20px 18px;border-bottom:1px solid #796b5055;color:#e9d6ae}
.purpose-group button{box-sizing:border-box;width:100%;min-height:104px;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:17px 18px;text-align:left;border:0;border-bottom:1px solid #796b5055;color:#f4e4c0;background:#16202288;cursor:pointer;transition:background .15s}
.purpose-group button:last-child{border-bottom:0}
.purpose-group button:hover,.purpose-group button:focus-visible{background:#8a744130;outline:2px solid #d1b274;outline-offset:-3px}
.purpose-group button[aria-current="true"]{box-shadow:inset 3px 0 #d8bd83}
.purpose-course-name{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;font:500 20px var(--serif,serif)}
.purpose-course-difficulty{color:#a69a7c;font:10px var(--sans);letter-spacing:.06em;white-space:nowrap}
.purpose-course-example{font:13px/1.65 var(--sans);color:#bfb7a6;display:flex;align-items:center;gap:9px;min-height:25px}
.purpose-course-example b{font-weight:400;color:#8b7e63}
.purpose-course-example kbd{display:inline-grid;place-items:center;width:23px;height:25px;border:1px solid #8c805f;background:#3b382b;color:#e8d9b6;font:13px var(--sans);box-shadow:0 2px #0b1011}
.purpose-course-example ruby{font-size:22px;line-height:1.3}.purpose-course-example rt{font-size:10px}
.purpose-course-resume{color:#c1ad80;font:11px/1.5 var(--sans)}.purpose-course-resume[hidden]{display:none}
.expedition-landmark-label[data-purpose-match="false"]{opacity:1}.expedition-landmark-label[data-purpose-match="true"]{border-color:#dbc28a}.expedition-road[data-purpose-match="false"]{opacity:.2}
@media(max-width:600px){.training-purpose-dialog{width:calc(100vw - 28px);padding:42px 14px 14px}.purpose-choices{grid-template-columns:1fr;gap:14px}.purpose-group h2{font-size:21px;padding:13px 16px}.purpose-group button{min-height:84px;padding:12px 16px;gap:6px}.purpose-course-name{font-size:18px}.purpose-course-example{font-size:12px}}
.expedition-stage-stars{display:inline-block;margin:4px 8px 0 0;color:#e3c487;font-size:15px;letter-spacing:.08em}.map-stage-stars{position:absolute;left:50%;top:100%;transform:translate(-50%,5px) rotate(-45deg);color:#f8d783;white-space:nowrap;text-shadow:0 2px 4px #000;font:10px Georgia}.training-round-stars{margin:15px 0;display:grid;gap:6px;text-align:center}.training-round-stars>span{font-size:35px;letter-spacing:.2em;color:#e6c37b;text-shadow:0 2px 10px #9f6e3a44}.training-round-stars>small{font-size:12px;color:#d3c5aa}.training-round-result .training-retry{background:linear-gradient(#393a36,#232724);border-color:#a9946c}
@media(max-width:600px){.training-round-result>div:last-child{flex-wrap:wrap}.training-round-result .training-retry{flex:1 0 100%}.expedition-stage-stars{font-size:12px}}
.training-round-result>.training-round-stars{display:grid;grid-template-columns:1fr;justify-items:center;gap:6px}.training-round-result>.training-round-stars>small{max-width:100%;text-align:center;line-height:1.5}
/* Map labels are controls, not selectable document text. Keep keyboard focus rings. */
.expedition-map,.expedition-map *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:transparent}.expedition-world[data-overview="false"] .expedition-space[data-active-region="false"]:not([data-travel-region="true"]),.expedition-world[data-overview="false"] .expedition-boss-art[data-active-region="false"]:not([data-travel-region="true"]){display:none}.expedition-world[data-overview="false"] .expedition-link{display:none}.expedition-world[data-overview="true"] .expedition-space{display:none}.expedition-space span,.map-stage-stars{pointer-events:none}
.expedition-region-picker{display:none;position:absolute;bottom:20px;left:20px;right:244px;z-index:11;gap:7px;flex-wrap:wrap;justify-content:center}.training-expedition[data-overview="true"] .expedition-region-picker{display:flex}.expedition-region-choice{min-height:40px;padding:9px 14px;background:linear-gradient(#303b3aee,#151f22ee);border:1px solid #b8a37b;color:#f0e2bf;box-shadow:0 3px 10px #0007;cursor:pointer}.expedition-region-choice[data-purpose-match="false"]{opacity:.65}.expedition-region-choice:focus-visible{outline:2px solid #f1d594;outline-offset:3px}
@media(max-width:600px){.expedition-region-picker{left:10px;right:10px;bottom:14px;display:none;grid-template-columns:repeat(3,1fr);gap:6px}.training-expedition[data-overview="true"] .expedition-region-picker{display:grid}.expedition-region-choice{padding:9px 4px;font-size:11px}}
.training-expedition[data-overview="false"] .expedition-map{bottom:104px}
@media(max-width:600px){.training-expedition[data-overview="false"] .expedition-map{bottom:120px}}
/* Course destinations stay visible while walking and in the atlas. */
.expedition-world .expedition-landmark-label{display:block}
/* Direct destinations remain visible; the atlas is an optional view. */
.training-expedition .expedition-region-picker,.training-expedition[data-overview="true"] .expedition-region-picker{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));top:158px;bottom:auto;left:20px;right:244px;gap:6px}.expedition-region-choice{padding:12px 6px;min-height:46px;border-color:#796f5d;background:linear-gradient(#293332,#192324);box-shadow:0 3px 9px #0005;font-size:12px;white-space:nowrap}.expedition-region-choice[data-purpose-match="false"]{opacity:1}.expedition-region-choice[aria-current="location"]{color:#ffedbb;border-color:#dbc18c;background:linear-gradient(#514a36,#302d24);box-shadow:inset 0 -3px #ddbe79,0 0 12px #b9a06722}.training-expedition .expedition-map{top:220px}
@media(max-width:600px){.training-expedition .expedition-region-picker,.training-expedition[data-overview="true"] .expedition-region-picker{top:153px;left:10px;right:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.expedition-region-choice{min-height:38px;padding:9px 4px;font-size:11px}.training-expedition .expedition-map{top:244px}.training-expedition .expedition-collection{top:254px}}
/* Return space to the map; advancing follows the stage numbers. */
.training-expedition .expedition-region-picker{display:none!important}.training-expedition .expedition-map{top:100px}
@media(max-width:600px){.training-expedition .expedition-collection{top:166px}}
/* The training entrance keeps its own fill, including its interactive states. */
.front-links button{cursor:pointer;transition:background .14s,border-color .14s,box-shadow .14s,color .14s,transform .08s}
.front-links button:is(:hover,:focus-visible),.front-links #front-learning:is(:hover,:focus-visible){color:#fff3ce;border-color:#e3c783;background:linear-gradient(115deg,#66552ddb,#253c3deb);box-shadow:inset 0 0 16px #edcc7430,0 0 16px #d3b35f55}
.front-links button:is(:hover,:focus-visible) svg{stroke:#fff0b4;filter:drop-shadow(0 0 4px #ecc46e)}
.front-links button:focus-visible{outline:2px solid #efd493;outline-offset:3px}
.front-links button:active,.front-links #front-learning:active{transform:translateY(2px);background:linear-gradient(115deg,#8a7138,#34514d);border-color:#ffebb2;box-shadow:inset 0 2px 9px #0008,0 0 20px #e5be6a80}
.training-online{position:absolute;top:116px;right:244px;z-index:12;gap:4px;width:max-content;max-width:240px}
.training-online .story-match-toggle{min-height:32px;box-sizing:border-box;padding:6px 10px;font-size:12px;gap:9px;background:#081219df;border-color:#b49a6b80}
.training-online .story-match-toggle:has(input:checked){border-color:#9dd8bf;box-shadow:inset 0 0 12px #9dd8bf18}
.training-online .story-match-toggle:has(input:focus-visible){outline:2px solid #e0c682;outline-offset:3px}
.training-online .story-search-status{font-size:11px}
.training-online .story-search-status:empty{display:none}
.training-found{z-index:30}.training-found[hidden]{display:none}
@media(max-width:600px){.training-online{top:154px;left:10px;right:auto;align-items:start}.training-online .story-match-toggle{font-size:11px;min-height:36px;padding:6px 8px;gap:7px}.training-online .story-search-status{max-width:200px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.front-links button{transition:none}}
