.journey-banner{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#edeedc;border:1px solid #dbe2c9;border-radius:17px;padding:14px 20px;margin:0 0 17px;font-size:13px}.journey-banner small{display:block;font-size:11px;color:#68776b;margin-left:24px}.journey-counter{font-size:12px;white-space:nowrap;color:#245744;font-weight:600}.journey-layout{display:block}.adventure-map{aspect-ratio:4/3;min-height:0;background:#719158;isolation:isolate;border:3px solid #dfcea5;box-shadow:0 8px 26px #25452b17;border-radius:25px}.adventure-map .map-art{object-fit:fill}.map-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#173e2725,transparent 20%,transparent 85%,#132d2820)}.wooden-sign{background:linear-gradient(110deg,#f8df9c,#fff1c6 45%,#e9c17d);border:2px solid #b17b43;border-radius:10px;color:#382a15;box-shadow:0 4px 0 #80522380,0 7px 18px #133b3633;font-weight:600}.adventure-map .map-top{left:3%;top:3%;padding:9px 18px;font-size:clamp(10px,1.2vw,16px);letter-spacing:1px;z-index:3;transform:rotate(-2deg)}.adventure-map .map-bottom{bottom:4%;left:3%;padding:10px 15px;font-size:clamp(9px,1vw,13px);z-index:3}.map-bottom>span{margin:0 6px}.journey-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.route-base{fill:none;stroke:#fff4ce;stroke-width:4;stroke-dasharray:3 12;stroke-linecap:round;opacity:.65}.route-done{fill:none;stroke:#fbd467;stroke-width:6;stroke-linecap:round;filter:drop-shadow(0 2px 2px #704e29);opacity:.9}.habitat-stop{position:absolute;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;gap:0;border:0;background:none;padding:0;max-width:29%;text-align:left;filter:drop-shadow(0 5px 4px #1e3b344f)}.habitat-stop:active{transform:translate(-50%,-48%)}.stop-number{flex-shrink:0;background:linear-gradient(135deg,#fff4cd,var(--stop-color));border:4px solid #fff4d1;box-shadow:inset 0 0 0 2px #bc8f46;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:21px;font-weight:800;color:#355438;position:relative;z-index:1}.stop-name{margin-left:-10px;padding:7px 13px 7px 18px;background:linear-gradient(120deg,#f3d69c,#fff2cd 60%,#eed4a4);border:2px solid #b3834d;border-radius:8px;font-size:clamp(10px,1.05vw,15px);line-height:1.4;font-weight:700;color:#234c38;white-space:nowrap}.stop-name small{font-size:8px;letter-spacing:.3px;font-weight:500;display:block;color:#795d35;margin-top:3px}.current-stop{z-index:4}.current-stop .stop-number{border-color:#ffea9b;box-shadow:0 0 0 5px #ffe29f77,0 0 25px #ffef9d}.current-stop .stop-name{border-color:#f8d76e}.locked-stop .stop-name{color:#52614d}.locked-stop .stop-number{color:#66765f}.done-stop .stop-number{background:#e0efaf;color:#245744}.journey-avatar{position:absolute;transform:translate(-50%,-50%);z-index:5;display:grid;place-items:center;width:42px;height:42px;background:#fff6d9;border:3px solid #daa94c;border-radius:50%;font-size:27px;box-shadow:0 4px 12px #123b3344;pointer-events:none}.journey-mission{margin-top:20px;display:grid;grid-template-columns:90px minmax(0,1fr) 190px;column-gap:22px;align-items:center;padding:20px 24px}.journey-mission>.eyebrow{grid-column:1/-1;margin-bottom:8px}.journey-mission .mission-picture{height:88px;margin:0;grid-column:1;grid-row:2/4;font-size:43px}.journey-mission .mission-picture:before,.journey-mission .mission-picture:after{display:none}.journey-mission-copy{grid-column:2;grid-row:2/4}.journey-mission-copy p{margin:3px 0 10px}.journey-mission-copy h2{font-size:19px}.journey-mission .reward{grid-column:3;grid-row:2;font-size:10px;margin:0 0 12px;border:0;padding:0;gap:8px}.journey-mission>.primary{grid-column:3;grid-row:3;margin:0;font-size:12px}.primary:disabled{cursor:not-allowed;background:#75826b;box-shadow:none;opacity:.8}.journey-tracker{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:22px 0 8px}.tracker-step{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:7px 3px}.tracker-step>span{background:#e4e8d8;color:#65745c;border-radius:50%;height:32px;width:32px;display:grid;place-items:center;border:2px solid #d2dbc4;font-weight:600}.tracker-step small{font-size:10px;text-align:center;line-height:1.5}.tracker-current>span{background:#f4d58d;border-color:#ca9e4e;color:#3d4e29}.tracker-done>span{background:#245744;border-color:#245744;color:white}.journey-footnote{font-size:11px;color:#6c7d65;text-align:center;max-width:740px;margin:15px auto}.finish-totals{display:flex;justify-content:center;gap:18px;background:#e8efdf;border-radius:16px;padding:22px 10px;margin:20px 0}.finish-totals span{font-size:11px;flex:1}.finish-totals b{display:block;font-size:30px;color:#245744}.finish-banner{margin-bottom:22px;background:#f5edcb}.text-large .stop-name{font-size:15px}.text-large .stop-name small{font-size:10px}.text-large .journey-mission-copy p{font-size:18px}@media(min-width:1600px){.stop-number{width:59px;height:59px}.stop-name{padding:9px 16px 9px 21px}.stop-name small{font-size:10px}.journey-avatar{width:49px;height:49px;font-size:32px}}@media(max-width:950px){.journey-mission{grid-template-columns:72px 1fr 170px;gap:12px}.journey-mission .mission-picture{height:75px}.journey-mission .reward{flex-direction:column;gap:1px}.stop-number{width:35px;height:35px;border-width:3px;font-size:16px}.stop-name{font-size:10px;padding:5px 8px 5px 14px}.stop-name small{font-size:7px}.journey-avatar{width:31px;height:31px;font-size:20px}.journey-banner{font-size:11px}.journey-counter{font-size:10px}.tracker-step small{font-size:9px}}@media(max-width:650px){.adventure-map{aspect-ratio:4/3;border-radius:16px;overflow:visible;margin-top:5px}.adventure-map .map-art,.map-shade{border-radius:13px}.map-shade{inset:0}.adventure-map .map-top{font-size:8px;padding:6px 8px}.adventure-map .map-bottom{font-size:8px;padding:6px 8px;bottom:3%;max-width:85%}.journey-banner{padding:12px;gap:8px}.journey-banner b{font-size:11px}.journey-banner small{font-size:9px;margin-left:0;max-width:200px}.journey-counter{font-size:9px}.habitat-stop{max-width:32%}.stop-number{width:29px;height:29px;font-size:13px;border-width:2px;box-shadow:inset 0 0 0 1px #bc8f46}.stop-name{font-size:clamp(6.5px,1.9vw,11px);padding:4px 5px 4px 11px;border-width:1px;white-space:nowrap}.stop-name small{font-size:clamp(5px,1.35vw,8px);margin-top:1px;letter-spacing:0}.journey-avatar{width:25px;height:25px;font-size:16px;border-width:2px}.journey-mission{grid-template-columns:62px 1fr;padding:17px;gap:12px}.journey-mission .mission-picture{grid-column:1;grid-row:2;height:65px;font-size:32px}.journey-mission-copy{grid-column:2;grid-row:2}.journey-mission-copy h2{font-size:16px}.journey-mission-copy p{font-size:11px}.journey-mission .reward{grid-column:1/-1;grid-row:3;flex-direction:row;margin:0}.journey-mission>.primary{grid-column:1/-1;grid-row:4}.journey-tracker{gap:0}.tracker-step small{font-size:8px}.tracker-step>span{height:27px;width:27px;font-size:12px}.journey-footnote{font-size:10px}.text-large .stop-name{font-size:clamp(7px,2vw,12px)}.text-large .stop-name small{font-size:6px}.text-large .journey-mission-copy p{font-size:16px}}@media(prefers-reduced-motion:no-preference){.current-stop .stop-number{animation:stopGlow 2.5s ease-in-out infinite}@keyframes stopGlow{50%{box-shadow:0 0 0 7px #ffe29f55,0 0 30px #ffef9d}}}
.journey-map-scroll{border-radius:25px}.journey-scroll-hint{display:none}.habitat-stop{min-height:44px}@media(max-width:650px){.journey-map-scroll{overflow-x:auto;border-radius:16px;overscroll-behavior-x:contain;scrollbar-color:#8b9565 #eae6cc;padding-bottom:8px}.journey-map-scroll .adventure-map{min-width:680px;width:680px;overflow:hidden}.journey-map-scroll .stop-number{width:39px;height:39px;font-size:18px}.journey-map-scroll .stop-name{font-size:12px;padding:7px 9px 7px 15px}.journey-map-scroll .stop-name small{font-size:8px}.journey-map-scroll .map-top{font-size:13px;padding:9px 13px}.journey-map-scroll .map-bottom{font-size:11px;padding:8px 12px}.journey-map-scroll .journey-avatar{width:35px;height:35px;font-size:24px}.journey-scroll-hint{display:block;font-size:11px;color:#607051;text-align:center;margin:8px 0}.text-large .journey-map-scroll .stop-name{font-size:14px}.text-large .journey-map-scroll .stop-name small{font-size:9px}}
