/* Forest Frontier Path V1: world, outpost and chapter maps. */
body.theme-ashen .bottom-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.bottom-nav-hidden .bottom-nav{display:none!important}
.path-view[hidden],.path-inline-service[hidden],.path-node-briefing[hidden],.path-header button[hidden]{display:none!important}
.path-shell{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:min(660px,calc(100dvh - 154px));overflow:hidden;padding:14px!important;background:linear-gradient(180deg,rgba(20,23,22,.98),rgba(10,13,13,.99))!important}
.path-header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:50px}
.path-header>div{min-width:0}.path-header .section-label{margin:0 0 2px}.path-header h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.2rem}.path-header small{display:block;margin-top:2px;color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.path-back-button,.path-home-button{min-width:44px;min-height:44px;padding:8px!important}.path-home-button{font-size:11px}
.path-view{min-height:0}.path-world-view,.path-outpost-view{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px}
.path-world-map{position:relative;min-height:0;overflow:hidden;border:1px solid rgba(177,147,90,.28);border-radius:18px;background:radial-gradient(circle at 18% 76%,rgba(88,110,78,.22),transparent 29%),radial-gradient(circle at 72% 33%,rgba(119,71,41,.22),transparent 34%),linear-gradient(145deg,#1a2420,#101715 58%,#151513);box-shadow:inset 0 0 70px rgba(0,0,0,.62)}
.path-world-map::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 0 62%,rgba(178,121,63,.06) 72%,transparent 88%),repeating-radial-gradient(circle at 80% 12%,rgba(226,180,94,.04) 0 2px,transparent 3px 15px);pointer-events:none}
.path-road{position:absolute;height:4px;border-radius:99px;background:linear-gradient(90deg,rgba(118,96,57,.28),rgba(214,177,103,.62),rgba(118,96,57,.28));transform-origin:left center;box-shadow:0 0 12px rgba(194,142,64,.16)}
.path-road-outpost-one{left:19%;top:72%;width:32%;transform:rotate(-22deg)}.path-road-one-two{left:46%;top:50%;width:31%;transform:rotate(-28deg)}.path-road-two-future{left:70%;top:28%;width:22%;transform:rotate(-24deg);opacity:.42}
.path-world-node{position:absolute;display:grid;justify-items:center;gap:2px;min-width:104px;max-width:132px;min-height:76px;padding:8px 10px;border:1px solid rgba(199,164,95,.38);border-radius:16px;background:linear-gradient(160deg,rgba(35,40,35,.96),rgba(15,18,17,.97));color:var(--text,#eee9dd);box-shadow:0 8px 22px rgba(0,0,0,.35);z-index:2}
.path-world-node:active:not(:disabled){transform:translateY(1px)}.path-world-node .path-node-glyph{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:rgba(164,123,59,.24);color:#e2c27c;font-weight:900}.path-world-node strong{font-size:12px;line-height:1.15;text-align:center}.path-world-node small{color:var(--muted);font-size:9px;line-height:1.15;text-align:center}
.path-world-node.outpost{left:4%;bottom:5%}.path-world-node.chapter-one{left:31%;bottom:29%}.path-world-node.chapter-two{right:16%;top:23%}.path-world-node.future{right:2%;top:3%;opacity:.62}.path-world-node.locked,.path-world-node:disabled{filter:grayscale(.55);opacity:.58}
.path-objective-marker{position:absolute;left:12px;top:12px;max-width:58%;padding:7px 10px;border:1px solid rgba(211,176,99,.32);border-radius:10px;background:rgba(7,10,9,.78);color:#dbc896;font-size:10px;line-height:1.25;z-index:3}
.path-continue-button{width:100%;min-height:46px}
.path-outpost-view{overflow:hidden}.path-outpost-art{position:relative;display:flex;align-items:flex-end;gap:12px;min-height:31%;padding:16px;border:1px solid rgba(191,155,86,.28);border-radius:18px;background:radial-gradient(circle at 70% 32%,rgba(208,152,68,.2),transparent 24%),linear-gradient(180deg,rgba(55,70,62,.42),rgba(20,27,23,.86)),repeating-linear-gradient(90deg,transparent 0 18%,rgba(205,169,98,.035) 19% 20%);overflow:hidden}
.path-outpost-art::after{content:"";position:absolute;left:0;right:0;bottom:0;height:38%;background:linear-gradient(160deg,transparent 0 17%,rgba(8,12,10,.8) 18% 23%,transparent 24% 42%,rgba(8,12,10,.72) 43% 50%,transparent 51%)}.path-outpost-art[data-tier="2"]{background-color:rgba(72,58,39,.4)}.path-outpost-art[data-tier="3"]{background:radial-gradient(circle at 70% 30%,rgba(110,193,173,.2),transparent 24%),linear-gradient(180deg,rgba(42,66,62,.48),rgba(16,24,22,.9))}
.path-outpost-art>div,.path-outpost-sigil{position:relative;z-index:2}.path-outpost-sigil{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(219,180,97,.42);border-radius:50%;background:rgba(27,25,20,.75);color:#e2c27d}.path-outpost-art strong{display:block;font-size:17px}.path-outpost-art small{display:block;margin-top:3px;color:var(--muted);font-size:11px}
.path-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;align-content:center;min-height:0}.path-service-card{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;align-items:center;min-height:82px;padding:11px;border:1px solid rgba(181,153,98,.25);border-radius:14px;background:linear-gradient(150deg,rgba(35,38,35,.96),rgba(17,20,18,.98));color:inherit;text-align:left}.path-service-card>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(156,119,56,.2);color:#d7b873;font-size:19px}.path-service-card strong{font-size:13px}.path-service-card small{min-width:0;color:var(--muted);font-size:10px;line-height:1.25}.path-service-card:disabled{opacity:.46;filter:grayscale(.6)}.quest-nav-badge{position:absolute;right:7px;top:7px}
.path-chapter-view{position:relative;height:100%;min-height:0}.path-chapter-canvas{position:relative;height:calc(100% - 30px);min-height:470px;overflow:hidden;border:1px solid rgba(181,145,77,.27);border-radius:18px;background:radial-gradient(circle at 17% 78%,rgba(69,101,70,.23),transparent 30%),radial-gradient(circle at 80% 19%,rgba(141,72,49,.2),transparent 33%),linear-gradient(145deg,#15201b,#101514 60%,#171413)}
.path-chapter-canvas[data-chapter="chapter.2"]{background:radial-gradient(circle at 80% 20%,rgba(197,78,49,.15),transparent 30%),radial-gradient(circle at 48% 18%,rgba(80,157,146,.16),transparent 26%),linear-gradient(145deg,#191a18,#111515 52%,#1b1311)}
.path-map-edges{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.path-map-edges line{stroke:rgba(194,157,84,.5);stroke-width:.75;stroke-linecap:round;vector-effect:non-scaling-stroke}.path-map-edges line.ruins-link{stroke:rgba(81,166,157,.35);stroke-dasharray:3 3}
.path-map-node{position:absolute;left:var(--path-x);top:var(--path-y);transform:translate(-50%,-50%);display:grid;justify-items:center;align-content:center;gap:1px;width:96px;min-height:62px;padding:6px 7px;border:1px solid rgba(184,153,91,.42);border-radius:14px;background:linear-gradient(160deg,rgba(38,42,38,.97),rgba(15,18,17,.98));color:inherit;text-align:center;box-shadow:0 7px 18px rgba(0,0,0,.4);z-index:2}.path-map-node.size-large{width:108px;min-height:70px}.path-map-node>span{color:#d7b66f;font-size:17px}.path-map-node strong{max-width:100%;font-size:10px;line-height:1.1}.path-map-node small{font-size:8px;color:var(--muted);line-height:1.1}.path-map-node.state-completed{border-color:rgba(91,156,105,.5);background:linear-gradient(160deg,rgba(31,57,40,.96),rgba(13,24,18,.98))}.path-map-node.state-locked{opacity:.42;filter:grayscale(.65)}.path-map-node.current{border-color:rgba(226,185,93,.9);box-shadow:0 0 0 2px rgba(226,185,93,.18),0 0 20px rgba(226,153,56,.25)}
.path-chapter-progress{height:30px;display:flex;align-items:flex-end;justify-content:center;color:var(--muted);font-size:11px}
.path-node-briefing{position:absolute;left:12px;right:12px;bottom:12px;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:14px 14px 13px;border:1px solid rgba(217,176,91,.48);border-radius:16px;background:linear-gradient(155deg,rgba(31,34,31,.99),rgba(12,15,14,.99));box-shadow:0 18px 40px rgba(0,0,0,.62)}.path-node-briefing .close-button{position:absolute;right:8px;top:8px}.path-node-briefing .section-label,.path-node-briefing h3,.path-node-briefing p,.path-node-briefing small{grid-column:1/3}.path-node-briefing h3{margin:0;padding-right:34px}.path-node-briefing p{margin:2px 0;color:#d0c8b9;font-size:12px;line-height:1.4}.path-node-briefing small{color:var(--muted)}.path-node-briefing .primary{grid-column:1/3;min-height:44px;margin-top:4px}
.path-service-view{height:100%;min-height:0;overflow:auto}.path-inline-service{display:grid;gap:12px}.path-service-heading h3{margin:0}.path-service-heading p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.4}.path-inline-service>.primary,.path-inline-service>.secondary{min-height:46px}.path-service-back{margin-bottom:10px}
@media(max-width:560px){.path-shell{min-height:calc(100dvh - 145px);max-height:calc(100dvh - 145px)}.path-chapter-canvas{min-height:0}.path-world-node{min-width:90px;max-width:108px;min-height:68px;padding:7px}.path-world-node strong{font-size:10px}.path-world-node small{font-size:8px}.path-world-node.outpost{left:2%}.path-world-node.chapter-one{left:31%}.path-world-node.chapter-two{right:12%}.path-service-card{min-height:74px}.path-map-node{width:82px;min-height:57px;padding:5px}.path-map-node.size-large{width:94px;min-height:62px}.path-map-node strong{font-size:9px}.path-map-node small{font-size:7px}}
@media(max-width:380px){.path-shell{padding:10px!important;gap:7px}.path-header{grid-template-columns:40px minmax(0,1fr) auto;gap:7px}.path-header h2{font-size:1.05rem}.path-back-button,.path-home-button{min-width:40px;min-height:40px}.path-world-node{min-width:80px;max-width:94px}.path-world-node.chapter-two{right:8%}.path-world-node.future{right:0}.path-objective-marker{max-width:53%;font-size:9px}.path-service-grid{gap:7px}.path-service-card{grid-template-columns:28px minmax(0,1fr);column-gap:7px;padding:8px;min-height:68px}.path-service-card>span{width:28px;height:28px;font-size:16px}.path-service-card strong{font-size:11px}.path-service-card small{font-size:8px}.path-map-node{width:73px;min-height:53px}.path-map-node.size-large{width:84px;min-height:58px}.path-map-node>span{font-size:14px}.path-map-node strong{font-size:8px}.path-map-node small{font-size:6.5px}}
@media(prefers-reduced-motion:reduce){.path-world-node,.path-map-node,.path-road{animation:none!important;transition:none!important}}
