@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=Zen+Maru+Gothic:wght@500;700;900&display=swap";.archive-scene{position:relative;width:100%;aspect-ratio:16/10;min-height:260px;overflow:hidden;border-radius:18px;background:linear-gradient(#e0edf0,#b4ced2);border:1px solid #abc1c2}.archive-location{position:absolute;top:12px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#2c5358;z-index:1}.archive-location small{font-size:11px;padding:4px 6px;background:#f5f2e4e8;border-radius:6px}.archive-stage{display:block;width:100%;height:100%}.archive-cast{position:absolute;bottom:12px;left:18px;display:flex;gap:12px;align-items:end}.archive-cast>span{display:grid;justify-items:center;gap:2px;color:#26474d}.archive-cast small{background:#f5f1dfef;padding:2px 6px;border-radius:5px}.archive-warden>b{display:grid;place-items:center;width:48px;height:48px;background:#d5c39d;border:3px solid #ece1c4;border-radius:50%;color:#456067;font-size:28px}.archive-radio,.archive-safe{position:absolute;bottom:90px;left:14px;right:14px;margin:0;padding:7px 10px;border-radius:8px;background:#eff4ede8;color:#2b5558;font-size:13px}.archive-mechanism{transform-origin:363px 218px;animation:archive-arm 2.4s ease-in-out infinite alternate}.archive-scene[data-paused=true] .archive-mechanism{animation-play-state:paused}@keyframes archive-arm{to{transform:rotate(-12deg)}}.archive-records{color:#294d50}.archive-records .eyebrow{display:flex;gap:8px;align-items:center}.archive-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.archive-tabs button{min-height:56px;padding:9px 5px;border:1px solid #bbc9bc;border-radius:10px;background:#f3f1e5;display:flex;flex-wrap:wrap;justify-content:center;gap:3px;font-size:13px}.archive-tabs button[aria-pressed=true]{border:2px solid #376568;background:#dce9df}.archive-tabs button:disabled{opacity:.5}.archive-records h2{scroll-margin-top:110px;font-size:clamp(20px,3vw,27px);margin:18px 0 12px}.archive-drawing{display:block;width:100%;height:auto;border-radius:14px;border:1px solid #d2ccbb}.archive-record-text p{display:grid;gap:6px;line-height:1.9;margin:16px 0}.archive-record-text b{color:#6d7964;font-size:13px}.archive-confirm{width:100%;min-height:50px}.quest-world-archive{background:linear-gradient(145deg,#e4edf0,#a9c9ce)!important}@media(max-width:760px){.archive-scene{min-height:224px;aspect-ratio:16/10}.archive-cast{gap:8px}.archive-tabs button{font-size:12px}}@media(prefers-reduced-motion:reduce){.archive-mechanism{animation:none}}.quest-world-archive .quest-node:first-of-type{top:76%!important}.workshop-scene{overflow:hidden;border:1px solid #c4c4ae;border-radius:18px;padding:12px;background:#e8d5b9;color:#314f50}.workshop-scene.ice{background:#dcebed}.workshop-scene-label{display:flex;justify-content:space-between;gap:8px;align-items:center}.workshop-scene-label small{font-size:11px}.workshop-scene svg{width:100%;max-height:270px}.workshop-scene-cast{display:flex;align-items:end;gap:12px;height:90px}.workshop-scene-cast>*{width:72px;height:86px}.workshop-scene p{margin:8px 0;font-size:14px;line-height:1.8}.river-scene{position:relative;overflow:hidden;background:#173e47;min-height:330px;color:#fff7da;border-radius:22px}.river-scene>svg{width:100%;display:block;min-height:290px;object-fit:cover}.river-scene-title{position:absolute;top:16px;left:18px;background:#173e47df;padding:12px 18px;border-radius:12px;font-weight:700}.river-ally{position:absolute;bottom:116px;right:6%;background:#173e47ee;border:1px solid #b9c8a0;padding:7px 12px;border-radius:30px;font-size:12px}.river-caption{margin:0;padding:16px 20px 8px;line-height:2}.river-production{display:block;padding:0 20px 16px;color:#b7cfcb;font-size:11px}.river-wheel{transform-origin:259px 312px}.river-wheel.turning{animation:river-wheel 16s linear infinite}.still .river-wheel{animation:none}@keyframes river-wheel{to{transform:rotate(360deg)}}.chapter-map-tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.chapter-map-tabs button[aria-pressed=true]{background:#245a51;color:#fff}.river-world-map{background:linear-gradient(155deg,#c2d6c4,#7aa596 35%,#599ba5 36%,#9bd1ce 60%,#c3c9a0 61%,#83a694)!important}.river-world-map:before{content:"";position:absolute;top:20%;right:35%;bottom:18%;left:34%;border:12px solid #e6dbb499;border-radius:48%;transform:rotate(-18deg)}.placement-grid.bread .board i.placed{background:#daaa58;border-radius:50%;border:2px solid #815628}.placement-grid.paper .board i.placed{background:#f8f1d9;border:2px solid #64959a;border-radius:0;transform:rotate(-8deg)}@media(prefers-reduced-motion:reduce){.river-wheel.turning{animation:none}}.river-town-art{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;min-height:290px;object-position:45% 50%}.chapter-scene{position:relative;isolation:isolate;width:100%;aspect-ratio:1672 / 941;overflow:hidden;background:#193936;border-radius:18px;box-shadow:0 12px 32px #112d3429}.chapter-world{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.chapter-cast-plane{position:absolute;top:0;right:0;bottom:0;left:0}.chapter-backdrop{display:block;width:100%;height:100%;object-fit:fill}.chapter-ground-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 65%,#102a2c2b);pointer-events:none}.chapter-background-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(ellipse at 55% 20%,#aac6a7,#496f65 60%,#264845);color:#fff7dd;font-size:clamp(16px,3vw,34px)}.chapter-location{position:absolute;top:3%;left:2.5%;display:flex;align-items:center;gap:9px;color:#fff5d8;background:#123c42df;padding:8px 14px;border:1px solid #e6d59a64;border-radius:24px;font-size:clamp(11px,1.4vw,17px)}.chapter-location>span:first-child{display:block;width:6px;height:6px;background:#f4dc94;border-radius:50%;box-shadow:0 0 12px #f4dc94}.chapter-star-chart{position:absolute;top:3.5%;right:2.5%;display:flex;align-items:center;gap:3px;border-radius:24px;background:#123c42ca;padding:6px 12px;color:#ffffff35;font-size:clamp(10px,1.6vw,22px)}.chapter-star-chart .lit{color:#f7d586;text-shadow:0 0 8px #f5d48388}.chapter-actor{position:absolute;bottom:4%;width:25%;height:61%;transform-origin:50% 96%;z-index:5;transition:left .65s ease,bottom .65s ease,filter .4s ease}.chapter-actor>img{width:100%;height:100%;object-fit:contain;object-position:50% 100%;display:block;filter:drop-shadow(0 2px 1px #3b2b2540)}.chapter-actor-shadow{position:absolute;width:47%;height:3.5%;left:26%;bottom:0;border-radius:50%;background:#183b3880;filter:blur(4px);z-index:-1}.chapter-player{left:14%;height:53%;width:23%}.chapter-rina{left:35%;height:65%;width:32%}.chapter-kuru{left:31%;bottom:38%;height:18%;width:14%;z-index:7}.chapter-kuru .chapter-actor-shadow{display:none}.chapter-kuru[data-pose=sheltered]{left:52%;bottom:46%;z-index:4}.chapter-gan{left:71%;width:25%;height:61%}.chapter-mok{left:66%;bottom:4%;width:32%;height:84%;z-index:4}.chapter-mok[data-pose=supporting]{left:64%;bottom:7%;height:74%}.chapter-mok[data-pose=supporting].is-speaking{animation:none}.chapter-place-mountain .chapter-mok{left:69%;width:28%;height:72%}.chapter-neri{left:70%;bottom:4%;width:24%;height:53%;z-index:6}.chapter-minamo{left:52%;bottom:25%;width:47%;height:36%;z-index:3}.chapter-minamo .chapter-actor-shadow{display:none}.chapter-golem{left:64%;bottom:4%;width:35%;height:85%;z-index:4}.chapter-golem[data-pose=held].is-speaking{animation:none}.chapter-place-town .chapter-player{left:0;width:20%;height:51%}.chapter-place-town .chapter-rina{left:13%;width:28%;height:62%}.chapter-place-town .chapter-kuru{left:12%;bottom:42%}.chapter-place-town .chapter-neri{left:30%;width:24%;height:51%}.chapter-place-town .chapter-minamo{left:52%;bottom:14%;width:47%;height:42%}.chapter-place-town .chapter-insert{right:2%;width:36%}.chapter-place-old-gate .chapter-player{left:5%}.chapter-place-old-gate .chapter-rina{left:24%}.chapter-place-old-gate .chapter-kuru{left:24%;bottom:38%}.chapter-place-inn[data-neri=true] .chapter-player{left:7%}.chapter-place-inn[data-neri=true] .chapter-rina{left:27%}.chapter-place-inn[data-neri=true] .chapter-kuru{left:26%}.chapter-place-inn .chapter-neri{left:67%;filter:brightness(.86) sepia(.1)}.chapter-place-inn .chapter-record{top:4%;bottom:auto;width:23%;right:2%}.chapter-place-inn .chapter-star-chart{top:auto;bottom:3%;right:2%}.chapter-mok-support{top:15%;bottom:auto;right:1%;width:30%;padding:6px}.chapter-insert.chapter-mok-support svg{overflow:hidden;border-radius:10px;background:#31534c}.chapter-golem-props{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.golem-held-rock{transform-origin:400px 835px;transition:transform 1.3s ease}.golem-clamp-opening{transform-origin:714px 652px;transition:transform 1s ease}.chapter-golem-props.is-released .golem-held-rock{transform:translate(-395px,760px) scale(.5)}.chapter-golem-props.is-released .golem-clamp-opening{transform:translate(-20px,45px) rotate(45deg)}.chapter-place-lake-port .chapter-beacon{left:72.2%;top:10.5%;width:9%}.chapter-scene[data-riding=true] .chapter-cast-plane{animation:chapter-lake-travel 7s ease-in-out infinite}.chapter-scene[data-riding=true] .chapter-backdrop{animation:chapter-harbor-arrival 10s ease-out both;transform-origin:center}.chapter-scene[data-riding=true] .chapter-minamo{left:17%;bottom:-17%;width:78%;height:86%;z-index:5;clip-path:inset(0 0 35% 0)}.chapter-scene[data-riding=true] .chapter-player{left:38%;bottom:13%;width:21%;height:58%;z-index:4;clip-path:inset(0 0 35% 0)}.chapter-scene[data-riding=true] .chapter-rina{left:50%;bottom:11%;width:27%;height:65%;z-index:4;clip-path:inset(0 0 35% 0)}.chapter-scene[data-riding=true] .chapter-neri{left:61%;bottom:13%;width:21%;height:58%;z-index:4;clip-path:inset(0 0 35% 0)}.chapter-scene[data-riding=true] .chapter-kuru{left:36%;bottom:43%;height:16%;z-index:7}.chapter-scene[data-riding=true] .chapter-actor-shadow{display:none}.chapter-ride-wake{position:absolute;left:19%;bottom:5%;width:73%;height:15%;z-index:6;pointer-events:none;background:linear-gradient(transparent 10%,#66c1c444 45%,#3399ac99 60%,transparent 95%);clip-path:ellipse(49% 49%);animation:chapter-lake-wake 4s ease-in-out infinite}.chapter-watermill{position:absolute;left:8.5%;top:3.5%;width:35%;height:63%;transform:scaleX(.65);z-index:2}.chapter-watermill>img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:49.8% 48.9%}.chapter-watermill.is-running>img{animation:chapter-mill-turn 20s linear infinite}.chapter-mill-fallback{display:grid;place-items:center;height:100%;border:3px solid #9b724b;border-radius:50%;background:#6b573fcc;color:#f9edd2}.chapter-mill-race{position:absolute;left:18%;top:56%;width:27%;height:17%;z-index:3;pointer-events:none}.mill-water-trace{animation:chapter-mill-water 3.5s linear infinite}.chapter-place-inn .chapter-rina{left:45%;filter:brightness(.86) sepia(.1)}.chapter-place-inn .chapter-player{left:22%;filter:brightness(.86) sepia(.1)}.chapter-place-inn .chapter-kuru{left:39%;bottom:37%}.chapter-actor.is-speaking{animation:chapter-speaking 3.2s ease-in-out infinite}.chapter-kuru{animation:chapter-float 4s ease-in-out infinite}.chapter-actor-fallback{display:grid;place-items:center;position:absolute;top:32%;right:15%;bottom:12%;left:15%;border-radius:48% 48% 25% 25%;background:#254b49e8;border:1px solid #f0d796;color:#fff3d7;font-size:clamp(12px,2vw,24px)}.chapter-beacon{position:absolute;left:65.2%;top:14%;width:13%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:2;pointer-events:none}.chapter-beacon i{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,#fffceaeb 0 4%,#ffe793ac 10%,#ffe49345 40%,transparent 70%);border-radius:50%;animation:chapter-lamp 4s ease-in-out infinite}.chapter-beacon b{position:absolute;left:48%;top:30%;width:1100%;height:42%;transform:translate(-50%);background:linear-gradient(90deg,transparent,#fff0ad22 30%,#fff0ad44 50%,#fff0ad22 70%,transparent);clip-path:polygon(0 0,50% 38%,100% 0,100% 100%,50% 62%,0 100%)}.chapter-place-bridge .chapter-beacon{left:82.5%;top:20%;width:9%}.chapter-place-mountain .chapter-beacon{left:59.5%;top:9%;width:8%}.chapter-place-town .chapter-beacon{left:78%;top:28%}.chapter-place-old-gate .chapter-beacon{left:23%;top:27%}.chapter-water-light{position:absolute;left:47%;top:49%;width:49%;height:23%;opacity:.15;background:repeating-linear-gradient(-8deg,transparent 0 16px,#bffff130 19px,#eefff29c 20px,transparent 23px);clip-path:ellipse(48% 42%);animation:chapter-water 6s linear infinite;pointer-events:none}.chapter-water-light.is-rushing{opacity:.3;animation-duration:1.8s}.chapter-place-bridge .chapter-water-light{top:50%;left:38%;height:24%;width:60%}.chapter-rock{position:absolute;width:38%;height:auto;right:7%;bottom:16%;z-index:3;overflow:visible}.chapter-rock.is-open .rock-left{transform:translate(-40px,35px) rotate(-9deg);transform-origin:100px 180px}.chapter-rock.is-open .rock-right{transform:translate(62px,30px) rotate(12deg);transform-origin:260px 180px}.chapter-rock .rock-left,.chapter-rock .rock-right{transition:transform 1.4s ease}.chapter-paper-boat{position:absolute;width:11%;height:auto;left:63%;top:54%;z-index:3;animation:chapter-boat 7s ease-in-out infinite}.chapter-whip{position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.whip-light{animation:chapter-line-flow 2s linear infinite}.chapter-insert{position:absolute;right:3%;bottom:6%;width:34%;padding:10px 12px 5px;background:#173941ed;border:1px solid #e7ce9670;border-radius:16px;box-shadow:0 8px 24px #0d242966;z-index:8}.chapter-insert svg{display:block;width:100%;height:auto;overflow:visible}.chapter-insert p{margin:0 0 4px;text-align:center;color:#f9ebc9;font-size:clamp(10px,1.25vw,15px);line-height:1.5}.number-path{right:3%;bottom:8%;width:41%}.number-road{stroke:#543b2b;opacity:.6}.number-light{fill:#ffe59b;filter:drop-shadow(0 0 6px #fffbc1)}.number-tip{fill:#fff6ca;opacity:0}.is-separate .number-light{animation:chapter-number-drift 3s ease-in-out infinite;animation-delay:var(--delay)}.is-connected .number-road{stroke:#ffe695;opacity:1;filter:drop-shadow(0 0 4px #ffd565)}.is-connected .number-light{animation:chapter-number-flow 2s ease-in-out infinite;animation-delay:var(--delay)}.is-connected .number-tip{opacity:.8;filter:drop-shadow(0 0 9px #ffe695)}.is-released .number-light{fill:#ad9470;filter:none}.bridge-work .bridge-plank{animation:chapter-plank 1.2s ease-out both;animation-delay:var(--delay)}.chapter-radio{position:absolute;right:14%;top:15%;display:flex;gap:7px;align-items:center;padding:12px 17px;background:#123c42df;border:1px solid #dcca8a;border-radius:20px;z-index:8}.chapter-radio span{display:block;width:5px;height:19px;background:#e8d690;border-radius:8px;animation:chapter-radio 1.5s ease-in-out infinite}.chapter-radio span:nth-child(2){height:32px;animation-delay:.2s}.chapter-radio span:nth-child(3){animation-delay:.4s}.chapter-image-status{position:absolute;left:3%;right:3%;bottom:1%;padding:8px;background:#153b41ef;color:#fff3d4;border-radius:8px;z-index:10;font-size:12px}.chapter-scene[data-motion=paused] *{animation-play-state:paused!important;transition:none!important}.chapter-scene[data-motion=reduced] *{animation:none!important;transition:none!important}@keyframes chapter-speaking{0%,to{transform:rotate(-.15deg)}50%{transform:rotate(.15deg)}}@keyframes chapter-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3%)}}@keyframes chapter-lamp{0%,to{transform:scale(.95)}50%{transform:scale(1.04)}}@keyframes chapter-water{to{background-position:100px 8px}}@keyframes chapter-boat{0%,to{transform:translate(0) rotate(-3deg)}50%{transform:translate(28%,4%) rotate(4deg)}}@keyframes chapter-line-flow{to{stroke-dashoffset:-128}}@keyframes chapter-number-drift{0%,to{transform:translateY(-2px)}50%{transform:translateY(3px)}}@keyframes chapter-number-flow{0%,to{transform:translate(0)}70%{transform:translate(27px,-4px)}}@keyframes chapter-plank{0%{transform:translateY(-13px)}to{transform:translateY(0)}}@keyframes chapter-radio{50%{transform:scaleY(.65)}}@keyframes chapter-lake-travel{0%,to{transform:translate(0)}50%{transform:translate(-.7%,.8%)}}@keyframes chapter-harbor-arrival{0%{transform:translate(2%) scale(1.06)}to{transform:translate(0) scale(1.02)}}@keyframes chapter-lake-wake{50%{transform:translateY(3%) scaleX(1.02)}}@keyframes chapter-mill-turn{to{transform:rotate(360deg)}}@keyframes chapter-mill-water{to{stroke-dashoffset:-130}}@media(prefers-reduced-motion:reduce){.chapter-scene *{animation:none!important;transition:none!important}}@media(max-width:600px){.chapter-scene{border-radius:12px}.chapter-location{padding:5px 8px;gap:5px}.chapter-star-chart{padding:4px 6px;gap:1px}.chapter-insert{padding:4px 6px 2px;border-radius:9px}.chapter-radio{padding:7px 9px;gap:4px}.chapter-radio span{width:3px;height:12px}.chapter-radio span:nth-child(2){height:20px}}.map-route-paper{display:block;width:100%;height:auto;touch-action:pan-y;background:#253e44;border-radius:12px}.map-route-action .map-route-paper{touch-action:none}.map-route-action button{min-height:48px;white-space:normal}.map-route-action small{display:block;margin-top:12px;color:var(--muted,#526566)}.map-route-action p{line-height:1.8}.chapter-map-route{width:100%}.chapter-map-route .map-route-paper{background:transparent}.chapter-insert.chapter-record .chapter-map-route{max-width:420px}.saved-map-route{margin-top:16px}.map-route-closeup{max-width:620px;margin-inline:auto;background:#34484c}.map-route-action .map-draw-skip{margin-left:12px;background:#f5e7c9;color:#263e44;border:2px solid #516567}.map-route-action .map-audio-fallback{color:#334b51;font-size:.95rem}@media(max-width:480px){.map-route-action .map-draw-skip{margin-left:0;margin-top:10px;display:block}}.watergate-scene{position:relative;margin:0;overflow:hidden;border-radius:18px;background:#173b42;color:#fff5dc}.watergate-scene canvas{display:block;width:100%;height:auto;aspect-ratio:1000/563}.watergate-scene figcaption,.watergate-scene>p{margin:0;padding:10px 14px;background:#123b42;font-size:15px;line-height:1.7}@media(max-width:600px){.watergate-scene figcaption{font-size:14px;padding:9px 11px}}.chapter-contact-insert{position:absolute;z-index:9;right:2%;bottom:4%;width:40%;background:#163d42ee;border:1px solid #d7bb7a;border-radius:13px;overflow:hidden;box-shadow:0 6px 20px #10282c66}.chapter-contact-insert>svg{display:block;width:100%;height:auto;overflow:visible}.chapter-contact-insert p{position:relative;z-index:1;margin:0;padding:3px 5px 7px;background:#163d42;text-align:center;color:#f9eccc;font-size:clamp(9px,1.2vw,15px)}.watergate-scene .contact-repair-diagram{left:2%;right:auto;top:2%;bottom:auto;width:35%}.contact-inn-map{left:2%;right:auto;top:auto;bottom:3%;width:32%}.parcel-hands{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#19383580}.parcel-art-fallback{display:grid;place-items:center;padding:20px;color:#fff1cf;text-align:center}.chapter-place-inn:has(.contact-inn-map) .chapter-record{display:none}@media(max-width:600px){.chapter-contact-insert{border-radius:8px;width:43%}.watergate-scene .contact-repair-diagram{width:37%}.contact-inn-map{width:28%;bottom:1%}}.c203-joint-gate-scene{position:relative;width:100%;margin:0;overflow:hidden;border-radius:18px;background:#193936;box-shadow:0 12px 32px #112d3429}.c203-joint-gate-scene canvas{display:block;width:100%;height:auto}.c203-joint-gate-scene figcaption,.c203-joint-gate-scene>p{margin:0;padding:8px 14px;background:#143d43;color:#fff4d5;font-size:clamp(12px,1.3vw,17px);line-height:1.6}.c203-joint-gate-scene>p{padding-top:4px}.minamo-voyage-scene{position:relative;margin:0;overflow:hidden;border:1px solid #84aba5;border-radius:18px;background:#d8ece6;isolation:isolate}.minamo-voyage-scene canvas{display:block;width:100%;height:auto;aspect-ratio:1000/563;max-width:100%}.minamo-voyage-scene figcaption{padding:8px 12px;text-align:center;color:#29434b;font-size:14px;line-height:1.7;background:#f2f7ea}.minamo-voyage-scene [role=status]{margin:0;padding:8px;text-align:center;font-size:13px;color:#354d50;background:#fff5d4}@media(max-width:500px){.minamo-voyage-scene{border-radius:12px}.minamo-voyage-scene figcaption{font-size:12px;padding:6px 8px}}.bridge-delivery-action{max-width:760px;margin:auto}.bridge-delivery-stage{position:relative;overflow:hidden;aspect-ratio:3/2;border-radius:18px;background:linear-gradient(#233c3844,#19353888),url(/assets/art/chapter-scenes/forest-bridge-restored-v1.png) center/cover}.bridge-delivery-stage>img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 55%}.bridge-delivery-caption{position:absolute;bottom:8px;left:8px;right:8px;text-align:center;padding:9px;border-radius:10px;color:#fff8df;background:#19352cd9;font-weight:700;line-height:1.6}.bridge-parcel-state{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #a78346;border-radius:14px;background:#fff3d9;color:#493b26}.bridge-parcel-state>span{font-size:36px}.bridge-parcel-state p{margin:0}.bridge-delivery-action button{min-height:48px;max-width:100%}@media(max-width:440px){.bridge-delivery-caption{font-size:13px}}.story-controls .story-auto{display:flex;align-items:center;justify-content:center;gap:5px;font-size:13px;line-height:1.5;word-break:keep-all;min-height:48px;cursor:pointer}.story-controls .story-auto input{width:18px;height:18px;flex:none;margin:0;accent-color:#cda34c}@media(max-width:480px){.story-controls .story-auto{max-width:94px;font-size:12px}}.app:has(.story-cinematic){padding:0;background:#112b32}.app:has(.story-cinematic) :is(.topbar,.save-line,.bottom-nav){display:none}.view-adventure:has(.story-cinematic),.view-story:has(.story-cinematic),.story-reader:has(.story-cinematic){max-width:1600px;padding:0;margin:auto}.view-adventure:has(.story-cinematic) .battle-heading{margin:0;padding:4px 24px;min-height:56px;display:flex;align-items:center;justify-content:space-between;color:#fff8e7;background:#112b32}.view-adventure:has(.story-cinematic) .battle-heading h1{font-size:18px;color:inherit}.view-adventure:has(.story-cinematic) .battle-heading small{display:none}.view-adventure:has(.story-cinematic) .battle-heading button{color:inherit;min-height:44px}.story-cinematic,.adventure-layout.story-cinematic{position:relative;isolation:isolate;display:block;height:calc(100svh - 56px);min-height:600px;overflow:hidden;background:#112b32}.story-cinematic:before{content:"";position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;z-index:-1;background-image:linear-gradient(#112b3244,#112b32aa),var(--story-backdrop);background-size:cover;background-position:center;filter:blur(18px)}.story-cinematic>.scene-panel{position:absolute;width:100%;height:auto;left:50%;top:calc((100% - var(--story-caption-height,240px) - 42px) / 2);transform:translate(-50%,-50%) scale(var(--story-stage-scale,1));transform-origin:center;padding:0;margin:0;border-radius:0;box-shadow:none;background:transparent}.story-cinematic>.scene-panel>:first-child{margin:0;border:0;border-radius:0;box-shadow:none}.story-cinematic :is(.watergate-scene,.c203-joint-gate-scene,.minamo-voyage-scene)>figcaption{display:none}.story-cinematic>.interaction-panel,.view-adventure .story-cinematic>.interaction-panel{position:absolute;inset:auto 0 0;z-index:3;padding:0;margin:0;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;pointer-events:none}.story-cinematic .cinematic-dialogue{pointer-events:none}.story-cinematic .cinematic-dialogue .dialogue-bubble{max-width:min(1100px,100%)}.story-cinematic .cinematic-dialogue :is(button,input,label,a,summary){pointer-events:auto}.story-cinematic .cinematic-dialogue .story-controls label{color:#fff8e7}.story-reader:has(.story-cinematic){color:#fff8e7}.story-reader:has(.story-cinematic)>:is(.back,.eyebrow,h1,.text-button){margin:8px 24px;color:inherit}.story-reader:has(.story-cinematic)>h1{font-size:20px}.story-reader:has(.story-cinematic)>.eyebrow{display:none}.story-reader .story-cinematic{height:calc(100svh - 128px)}@media(max-width:650px){.view-adventure:has(.story-cinematic) .battle-heading{padding:4px 12px}.story-cinematic .cinematic-dialogue{padding-left:12px;padding-right:12px}.story-cinematic .cinematic-dialogue .dialogue-bubble{padding:12px 16px}.story-cinematic .cinematic-dialogue .dialogue-text{font-size:18px;max-height:27svh}}.app .brand .rich-text{font:inherit;letter-spacing:inherit}.app .brand>span{white-space:nowrap}.app .brand small .rich-text{font-size:11px}@media(max-width:650px){.app:not(.map-shell) .topbar{height:auto;min-height:88px;padding:16px 17px;gap:13px;flex-wrap:wrap}.app:not(.map-shell) .brand{flex:1}.app:not(.map-shell) .wallet{margin-left:auto;gap:10px}.app:not(.map-shell) .wallet .icon-btn{width:44px;min-width:44px;min-height:44px}}.map-shell .brand:hover:not(:disabled){background:#ffffff0a}.map-shell .brand small .rich-text{white-space:nowrap;font-size:11px}@media(min-width:1000px){.adventure-home{display:grid;grid-template-columns:1fr auto;column-gap:28px}.map-heading{grid-column:1}.map-chapters{grid-column:2;align-self:center}.adventure-grid{grid-column:1 / -1}.chapter-completion{display:none}}.app.map-shell{--map-ink: #f7f3dc;--map-muted: #bdcfbf;max-width:none;color:var(--map-ink);background:radial-gradient(ellipse at 9% 18%,#2c5146 0,transparent 48%),radial-gradient(ellipse at 90% 82%,#24473c 0,transparent 45%),#142f29;min-height:100dvh;padding-bottom:112px}.map-shell .topbar{height:94px;padding-inline:max(30px,calc((100vw - 1352px)/2));background:#102923e8;border-bottom:1px solid #c8b87930}.map-shell .brand{color:#ffe7a5;gap:15px}.map-shell .brand>svg{width:42px;height:42px;color:#e9c578;stroke-width:1.2}.map-shell .brand>span{font-size:24px}.map-shell .brand small{font-size:12px;color:#c8d3bd;margin-top:5px;letter-spacing:.1em}.map-shell .brand .rich-text{font:inherit;letter-spacing:inherit}.map-shell .brand rt{font-size:10px}.map-shell .wallet{gap:18px}.map-shell .wallet>span{font-family:inherit;font-size:18px}.map-shell .wallet>span:first-child{padding:11px 4px;color:#ffe5a1}.map-shell .wallet>span:nth-child(2){color:#ffdfa0;background:#e5bd5620;border:1px solid #e5bd5630;padding:11px 19px}.map-shell .wallet .icon-btn{color:#d6deca;border:1px solid #c9d7bc25;border-radius:50%}.map-shell .wallet .icon-btn:hover{background:#ffffff15}.map-shell .wallet .sound-toggle{color:#f5d68c}.sound-toggle[aria-pressed=false]{opacity:.75}.map-shell .save-line{max-width:1352px;margin:14px auto 0;padding-inline:30px;color:#b6c7ba;font-size:11px}.map-shell .save-line .pending-status{color:#ffdd93}.map-shell .main.view-map{max-width:1352px;padding:22px 30px 18px}.map-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}.map-heading h1{font-size:32px;letter-spacing:.08em;margin:0;line-height:1.6}.map-eyebrow{display:flex;align-items:center;gap:8px;font-size:13px;color:#d9c68a;letter-spacing:.09em;margin:0 0 13px}.map-player{display:flex;align-items:center;gap:18px;padding:10px 17px;border:1px solid #c9d7bc2c;border-radius:15px;background:#0e282580}.map-player>span{display:inline-flex;align-items:center;gap:7px}.map-player .player-level{gap:4px;color:#e9d39b;font-family:Georgia,serif;font-size:15px}.player-level b{font-size:27px}.map-player svg{color:#e4a187}.map-chapters{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:20px}.map-chapters button{color:#c6d4c8;font-size:14px;gap:10px;min-height:52px;background:#173830;border:1px solid #a9c0a531;border-radius:10px;padding:14px 20px}.map-chapters button[aria-pressed=true]{color:#ffecb8;background:#63724855;border-color:#c7b271a6;box-shadow:inset 0 1px #e9d89c20}.map-chapters button:hover{background:#5c74524f}.map-chapters button small{color:inherit;font-family:Georgia,serif;margin-left:8px;font-size:12px;opacity:.7}.chapter-completion{color:#b6c7b7;margin-left:auto;font-size:13px}.adventure-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(320px,1fr);gap:26px;align-items:start}.map-column{min-width:0}.quest-world{width:100%;position:relative;isolation:isolate;background:#35594d url(/assets/world-map.png) center 58% / cover;height:clamp(600px,65vw,690px);border:1px solid #d5bd8060;border-radius:18px;overflow:hidden;box-shadow:0 18px 48px #061d245c,0 0 0 5px #ecddb20a}.quest-world-sky{background:#638ba2 url(/assets/art/chapter-scenes/sky-harbor-map-v1.png) center / 100% 100% no-repeat}.quest-world-river{background:linear-gradient(155deg,#c2d6c4,#7aa596 35%,#599ba5 36%,#9bd1ce 60%,#c3c9a0 61%,#83a694)}.world-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#052a32a6,transparent 23%,transparent 73%,#082b24c9);box-shadow:inset 0 0 75px #0b302761}.world-ship{display:flex;align-items:center;gap:9px;position:absolute;top:23px;left:22px;color:#fff1c9;text-shadow:0 2px 8px #153625;font-weight:700;font-size:14px}.world-ship small{display:block;color:#fff1ce;font-size:11px;margin-top:8px;font-weight:400}.world-lamps{display:flex;position:absolute;right:20px;top:22px;gap:6px;color:#a7bca2;padding:12px 13px;border:1px solid #d5d8b34d;border-radius:30px;background:#0b332ad9}.world-lamps .lit{color:#ffda73;filter:drop-shadow(0 0 5px #ffcd6180)}.world-route{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.world-route line{stroke:#fff1bfa8;stroke-width:.38;stroke-dasharray:.4 1.55;stroke-linecap:round}.world-route line.traveled{stroke:#ffdd83;stroke-dasharray:none;stroke-width:.45}.quest-node{position:absolute;z-index:2;width:56px;height:56px;min-height:56px;padding:0;border-radius:50%;transform:translate(-50%,-50%);background:#213f35f0;border:2px solid #acbc97;color:#c3d1b0;box-shadow:0 5px #0f302b,0 9px 15px #13342a5c;transition:filter .18s,box-shadow .18s}.quest-node:hover:not(:disabled){transform:translate(-50%,-50%);background:#365e44;filter:brightness(1.15);box-shadow:0 5px #0f302b,0 0 0 5px #ffedb326}.quest-node:active:not(:disabled){transform:translate(-50%,calc(-50% + 3px));box-shadow:0 2px #0f302b}.quest-node:focus-visible{outline:3px solid white;outline-offset:5px}.quest-node.current{width:68px;height:68px;background:linear-gradient(135deg,#fbe5a0,#d19b36);color:#503c19;border:3px solid #fff0bb;box-shadow:0 5px #9a692b,0 0 0 7px #f7c55a45,0 0 40px #ffdb6870}.quest-node:first-of-type{top:73%!important}.quest-node.current:before{content:"";position:absolute;top:-11px;right:-11px;bottom:-11px;left:-11px;border:1px solid #ffe9a88c;border-radius:50%;animation:destination-pulse 3.4s ease-out infinite;pointer-events:none}.quest-node.cleared{background:linear-gradient(135deg,#68966b,#29513e);color:#ffffd4;border-color:#c3d9ad}.quest-node.chosen:not(.current){outline:3px solid #f3cc76;outline-offset:4px}.quest-node:disabled{opacity:.8}.node-medallion{display:grid;place-items:center}.node-beacon{position:absolute;bottom:calc(100% + 16px);left:50%;transform:translate(-50%);color:#4a371a;background:#ffedb3;border-radius:6px;padding:5px 11px;font-size:12px;white-space:nowrap;box-shadow:0 3px 9px #203c3240}.node-beacon:after{content:"";position:absolute;top:100%;left:calc(50% - 5px);border:5px solid transparent;border-top-color:#ffedb3}.quest-node-label{position:absolute;display:flex;align-items:center;gap:7px;top:calc(100% + 9px);left:50%;transform:translate(-50%);white-space:nowrap;padding:11px 12px 7px;border:1px solid #cbd3b666;border-radius:7px;font-size:12px;color:#f8f3da;background:#1a3b30ed;box-shadow:0 3px 10px #12332a4a;pointer-events:none}.quest-node.current .quest-node-label{background:#fff1ccef;border-color:#fff5d4;color:#35432d}.node-number{font-family:Georgia,serif;font-size:13px;opacity:.7}.world-footer{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:12px;padding:20px 23px 18px;background:linear-gradient(0deg,#0b2c25ee,#143e34d9);border-top:1px solid #e4d9a32b}.world-footer>svg{color:#d3dabb}.world-footer div{display:grid;gap:8px}.world-footer div small{color:#c6d3bb;font-size:11px}.world-footer strong{font-family:Zen Maru Gothic,sans-serif;font-size:16px;letter-spacing:.08em}.world-footer>span{margin-left:auto;font:24px Georgia,serif;color:#efddb3}.world-footer>span small{color:#b8c7b2;font-size:14px}.world-motes{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.world-motes i{position:absolute;width:3px;height:3px;border-radius:50%;background:#fff3a3;box-shadow:0 0 7px 2px #ffe78577;animation:map-firefly 5.5s ease-in-out infinite}.map-companion{display:flex;align-items:center;gap:15px;margin-top:18px;padding:14px 19px;background:#38584950;border:1px solid #a5bc9a36;border-radius:14px}.map-companion>span{box-shadow:0 0 0 3px #ecd69d4a}.map-companion strong{font-size:12px;color:#e9c884}.map-companion p{margin:7px 0 0;color:#eef0d9;font-size:14px;line-height:2}.map-companion>svg{color:#d3bc7f;margin-left:auto}.map-sidebar{display:flex;flex-direction:column;gap:18px;min-width:0}.map-quest-card{color:#243e34;background:#fff8e8;border:1px solid #e2c88d;border-radius:16px;box-shadow:0 9px #061d281a,0 16px 36px #051c2533;overflow:hidden;scroll-margin-top:20px}.quest-ribbon{display:flex;align-items:center;gap:9px;padding:17px 23px;background:#eadebc;border-bottom:1px solid #ccb78580;color:#6b603c;font-size:13px;letter-spacing:.05em}.quest-ribbon>span:last-child{margin-left:auto;font:17px Georgia,serif;color:#8f7742}.quest-card-body{padding:24px 25px 16px;animation:quest-detail-in .24s ease-out}.quest-chapter{display:flex;align-items:center;gap:12px;color:#7a795e;font-size:12px;letter-spacing:.12em;margin:0 0 19px}.quest-chapter>span:last-child{font-size:10px;color:#9b8660;font-weight:700;letter-spacing:.18em}.map-quest-card h2{font-size:clamp(22px,2.2vw,29px);line-height:1.6;color:#254434;margin:0 0 17px}.quest-objective{font-size:15px;line-height:2.2;color:#5c6954;margin:0 0 22px}.quest-reward-box{display:flex;align-items:center;gap:11px;padding:14px;background:#f0e5c6;border:1px solid #d4be833e;border-radius:10px;margin-bottom:23px}.reward-coin{width:43px;height:43px;display:grid;place-items:center;background:linear-gradient(135deg,#f8df92,#d4a74d);color:#8b6320;border:1px solid #d7ac56;border-radius:50%;box-shadow:inset 0 0 0 3px #fae7ad}.quest-reward-box div{display:grid;gap:5px}.quest-reward-box small{color:#736749;font-size:11px}.quest-reward-box strong{color:#80601f;font-size:24px;line-height:1.3;font-family:Zen Maru Gothic,sans-serif}.quest-reward-box strong small{font-size:12px}.reward-lamp{margin-left:auto;display:flex;align-items:center;color:#9b732c;gap:5px;font-size:13px}.quest-depart{width:100%;min-height:63px;border:1px solid #ebc26c;border-radius:11px;background:linear-gradient(#f9dda0,#e2b65f);box-shadow:0 4px #a57735,inset 0 1px #fff4c8;color:#3d482c;font-size:18px;font-weight:800;gap:10px;padding:17px 12px}.quest-depart>svg:last-child{margin-left:auto}.quest-depart>svg:first-child{margin-right:auto}.quest-depart:hover:not(:disabled){background:linear-gradient(#ffebb6,#edc473);transform:translateY(-2px);box-shadow:0 6px #a57735,0 5px 24px #f5d37c66}.quest-depart:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #a57735}.quest-depart:disabled{opacity:1;background:#dcdcc9;border-color:#c4c8b5;color:#707b68;box-shadow:0 3px #abb39d;cursor:default}.quest-reward-details{color:#70765d;margin-top:18px;font-size:12px}.quest-reward-details summary{cursor:pointer;text-align:center;padding:9px 0}.quest-reward-details p{text-align:left;font-size:13px;margin:10px 0 3px;line-height:2}.quest-lock-reason{color:#6b6c54;font-size:14px;display:flex;gap:8px;align-items:center;background:#eeeedb;padding:13px;border-radius:8px}.map-daily{border:1px solid #c2d0b233;background:#294b40;padding:21px 23px 10px;border-radius:15px;color:#edf0d7}.daily-heading{display:flex;align-items:center;gap:12px}.daily-book{display:grid;place-items:center;width:45px;height:45px;background:#c2cb9755;border:1px solid #d6dfa128;border-radius:12px;color:#e3d69e}.daily-heading h2{font-size:20px;margin:5px 0 0}.daily-heading small{font-size:11px;color:#c0cdb3}.daily-bonus{color:#ecd08a;display:flex;align-items:center;gap:5px;margin-left:auto;font-size:16px;white-space:nowrap}.map-daily p{font-size:13px;color:#c5d1ba;line-height:2;margin:15px 0}.map-stamps{display:flex;gap:7px}.map-stamps>span{flex:1;min-width:0;aspect-ratio:1;display:grid;place-items:center;background:#173c3455;border:1px dashed #aec29866;border-radius:9px;color:#b6c5a8;font:16px Georgia,serif}.map-stamps>span:last-child{border-color:#d0b87680;color:#dcc686}.map-stamps>span.filled{background:#d9c17b;color:#234732;border-style:solid;border-color:#ecdca4}.map-daily button{width:100%;background:transparent;color:#e4dcac;font-size:13px;border:0;min-height:48px;margin-top:10px;padding:10px}.map-daily button:hover{background:#ffffff0b}.map-wish{width:100%;display:flex;gap:13px;text-align:left;border:1px solid #e4d59429;border-radius:13px;background:#233f3433;color:#efdfb1;padding:15px 16px}.map-wish:hover{background:#4d654233!important}.wish-icon{width:54px;height:62px;display:grid;place-items:center;color:#ced3a4;background:#c8c99220;border:1px solid #dfd6a128;border-radius:10px}.wish-copy{display:grid;gap:10px}.wish-copy>small{color:#bcccaf;font-size:11px;font-weight:400}.wish-copy>strong{font-size:15px;font-family:Zen Maru Gothic,sans-serif}.wish-price{margin-left:auto;display:flex;align-items:center;gap:5px;font-size:13px;white-space:nowrap}.map-extra{padding:22px;border:1px solid #b5c1a949;border-radius:12px;background:#234c3b}.map-extra h2{font-size:20px}.map-extra p{font-size:14px}.map-treasure{margin-top:15px;width:100%;background:#ead69e;border-color:#d9c790;color:#3f5232}.map-shell .bottom-nav{background:#102b25f5;border:1px solid #a5b89055;box-shadow:0 12px 45px #031b2580,inset 0 1px #f5dfad12;padding:8px 10px;gap:6px;border-radius:18px;bottom:max(16px,env(safe-area-inset-bottom))}.map-shell .bottom-nav button{width:102px;min-height:67px;color:#b6c6b1;font-size:13px;gap:9px;border-radius:11px}.map-shell .bottom-nav button:hover{background:#375c4059}.map-shell .bottom-nav button.selected{color:#fae4a9;background:linear-gradient(135deg,#6f734d66,#7e825333);border:1px solid #c7c08940}.map-shell .bottom-nav button.selected svg{filter:drop-shadow(0 0 6px #ffdc6238)}.map-shell .toast{background:#fff0bf;color:#2d4d36;border:1px solid #d8b66c}@keyframes destination-pulse{0%,20%{transform:scale(.92);opacity:.8}85%,to{transform:scale(1.3);opacity:0}}@keyframes map-firefly{0%,to{opacity:.1;transform:translateY(5px)}50%{opacity:.8;transform:translateY(-15px)}}@keyframes quest-detail-in{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1500px){.map-shell .main.view-map{padding-top:28px}}@media(max-width:1100px){.adventure-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:20px}.quest-world{height:650px}.world-lamps{gap:3px;right:15px;padding:10px}.world-lamps svg{width:12px}.world-ship{left:16px}.quest-card-body{padding:23px 20px 16px}.quest-node-label{font-size:11px;padding-inline:8px;gap:4px}.quest-node{width:48px;height:48px;min-height:48px}.quest-node.current{width:60px;height:60px}}@media(max-width:760px){.quest-node:first-of-type{top:69%!important}.world-route{display:none}.world-footer div{gap:4px}.world-footer div small{line-height:1}.world-footer strong{line-height:1.4}.map-shell .topbar{height:90px;padding:0 18px}.map-shell .brand{gap:8px}.map-shell .brand>svg{width:30px;height:30px}.map-shell .brand>span{font-size:19px}.map-shell .brand small{font-size:10px;letter-spacing:0;margin-top:7px}.map-shell .wallet{gap:8px}.map-shell .wallet>span{font-size:16px;gap:4px}.map-shell .wallet>span:nth-child(2){padding:8px 10px;font-size:15px}.map-shell .wallet .icon-btn{min-width:42px;width:42px;height:44px;padding:8px}.map-shell .save-line{margin-top:12px;padding-inline:20px;font-size:10px;gap:10px}.map-shell .main.view-map{padding:24px 20px 16px}.map-heading h1{font-size:28px}.map-heading{margin-bottom:20px}.map-eyebrow{font-size:12px;margin-bottom:11px}.map-player{padding:7px 12px;gap:12px}.map-chapters{gap:9px;margin-bottom:16px}.map-chapters button{min-height:50px;padding:12px 15px;font-size:13px;gap:8px}.chapter-completion{display:none}.adventure-grid{display:flex;flex-direction:column;gap:22px}.map-column,.map-sidebar{width:100%}.quest-world{height:auto;aspect-ratio:1 / 1.05;min-height:455px;background-position:center}.world-footer{padding:15px 18px}.world-ship{top:18px;font-size:13px}.world-lamps{top:17px}.quest-node-label{font-size:12px}.quest-node.locked:not(.chosen) .quest-node-label{display:none}.quest-node.locked:not(.chosen){width:44px;height:44px;min-height:44px}.quest-node:nth-last-of-type(-n+3) .quest-node-label{left:auto;right:-20px;transform:none}.map-companion{padding:12px 14px;gap:13px;margin-top:15px}.map-companion p{font-size:13px}.map-companion>svg{display:none}.map-sidebar{gap:18px}.quest-ribbon{padding:17px 23px}.quest-card-body{padding:24px}.map-quest-card h2{font-size:27px}.quest-objective{font-size:16px}.quest-reward-box{margin-bottom:22px}.map-daily{padding:22px 23px 12px}.map-stamps>span{max-height:50px}.map-shell .bottom-nav{width:min(530px,calc(100% - 24px));gap:3px;padding:7px;border-radius:17px;bottom:max(10px,env(safe-area-inset-bottom))}.map-shell .bottom-nav button{width:auto;flex:1;min-width:0;min-height:63px;padding:7px 4px;font-size:12px;gap:8px}}@media(max-width:480px){.map-shell .topbar{flex-wrap:wrap;height:auto;min-height:113px;padding:16px 17px 12px;gap:13px}.map-shell .brand{flex:1}.map-shell .brand>span{font-size:20px}.map-shell .wallet{gap:10px;justify-content:flex-end;margin-left:auto}.map-shell .wallet>span:first-child{padding:3px}.map-shell .wallet>span:nth-child(2){padding:6px 12px}.map-shell .wallet .icon-btn{min-height:44px;width:44px;min-width:44px;height:44px}.map-shell .main.view-map{padding-inline:14px;padding-top:19px}.map-heading{gap:8px}.map-heading h1{font-size:26px}.map-eyebrow{font-size:11px;gap:5px;letter-spacing:.02em}.map-player{gap:8px;padding:6px 10px}.player-level b{font-size:22px}.map-chapters button{padding-inline:12px;gap:7px;font-size:12px}.map-chapters button small{margin-left:0}.quest-world{min-height:445px;border-radius:14px}.world-lamps{gap:3px;padding:9px;right:12px}.world-lamps svg{width:10px;height:12px}.world-ship{left:12px;top:18px;gap:6px}.world-ship small{font-size:10px}.world-footer div strong{font-size:14px}.quest-node.current{width:57px;height:57px}.quest-node-label{padding-inline:8px;gap:4px;font-size:11px}.node-number{font-size:11px}.map-companion>span{width:52px!important;height:52px!important}.map-companion p{font-size:12px;line-height:2.1}}@media(prefers-reduced-motion:reduce){.adventure-home *,.adventure-home *:before,.adventure-home *:after,.map-shell .bottom-nav *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.reduced .quest-node:before{animation:none!important}.world-mobile-title{display:none}@media(max-width:760px){.quest-node .quest-node-label,.world-footer .world-chapter-title{display:none}.world-footer .world-mobile-title{display:block}}.app .topbar{height:118px}.app .brand.brand-logo{display:flex;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:0;min-width:0;padding:4px 0}.app .brand-logo .brand-logo-reading{align-self:flex-start;margin-left:21%;font-size:10px;line-height:1.2;letter-spacing:.18em}.brand-logo-art{display:block;width:236px;max-width:100%;height:auto;filter:drop-shadow(0 3px 3px #071e2933)}.map-shell .brand-logo-art{filter:drop-shadow(0 3px 6px #061d2b80)}@media(max-width:650px){.app .topbar{height:auto;min-height:118px;flex-wrap:wrap;padding:12px 17px;gap:8px 16px}.brand-logo-art{width:218px}}.quest-resume-notice{margin:16px 0;color:#48624b;font-size:14px;line-height:1.8}.quest-resume-notice .secondary{width:100%;min-height:48px}.quest-world.quest-world-sky{height:auto;min-height:0;aspect-ratio:2 / 3}.quest-world.quest-world-ark{height:auto;min-height:0;aspect-ratio:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 12px 12px;background:#143b42}.quest-world-ark .ark-overview{grid-column:1 / -1;width:calc(100% + 24px);margin:0 -12px;height:auto;display:block}.quest-world-ark .world-vignette,.quest-world-ark .world-route,.quest-world-ark .world-motes,.quest-world-ark .world-ship,.quest-world-ark .world-lamps{display:none}.quest-world-ark .quest-node{position:static;transform:none;width:auto;min-height:110px;display:flex;align-items:center;gap:9px;padding:12px 7px;border-radius:14px;background:#eff1de;color:#163e42}.quest-world-ark .quest-node-label,.quest-world-ark .quest-node.locked:not(.chosen) .quest-node-label{position:static;transform:none;max-width:none;width:auto;display:block;white-space:normal;text-align:left;background:none;color:inherit;border:none;box-shadow:none;padding:0}.quest-world-ark .quest-node.locked:not(.chosen){width:auto;height:auto;min-height:110px}.quest-world-ark .quest-node-label small{display:block;line-height:1.6;font-size:10px;margin-top:6px}.quest-world-ark .node-medallion{flex-shrink:0;width:38px;height:38px}.quest-world-ark .node-beacon{display:none}.quest-world-ark .world-footer{position:static;grid-column:1 / -1;background:none;padding:8px 0 0}.adventure-home .map-chapters button[aria-pressed=true]{color:#fff1ca;background:#25594f;border-color:#caab65}.adventure-home .map-chapters button[aria-pressed=true]:hover{background:#306b60}.quest-world-ark .ark-map-caption{grid-column:1/-1;margin:0 0 8px;text-align:center;color:#e8e4cd;font-size:12px}.trial-whip-scene{margin:0;position:relative;overflow:hidden;border-radius:14px;background:#173d46;color:#fff5da}.trial-whip-scene canvas{display:block;width:100%;height:auto;aspect-ratio:1000/563}.trial-whip-scene figcaption{padding:12px 16px;min-height:54px;font-size:15px;line-height:1.65;background:#16373eea}.trial-whip-scene>p{margin:0;padding:10px 16px;font-size:14px;line-height:1.6;background:#18363c}.trial-whip-fallback{border-top:1px solid #ddba67}@media(max-width:600px){.trial-whip-scene figcaption{padding:9px 11px;font-size:14px;min-height:58px}}.workshop-categories{display:grid;gap:28px}.workshop-category-title{margin-bottom:14px}.workshop-category-title h2{color:#254a40;margin:0 0 8px}.workshop-category-title p{color:#45655b;margin:0}.hub-shell .shop-item .weapon-comparison,.hub-shell .shop-item .weapon-shared-upgrade,.hub-shell .shop-item .weapon-unlock{font-size:14px;line-height:1.7;color:#35564a}.hub-shell .shop-item .weapon-comparison{padding:10px;border-radius:9px;background:#eef0df}.hub-shell .shop-item .weapon-shared-upgrade{margin:0 0 12px}.hub-shell .shop-item .weapon-unlock{margin:10px 0}.map-new-equipment{margin-bottom:20px;padding:18px;color:#254a40;background:#f4f1df}.map-new-equipment h2{font-size:19px;margin:0 0 12px}.map-new-equipment p{line-height:1.8}.evolution-presentation{padding:0;border:1px solid #d5bd73;border-radius:22px;background:#112e35;color:#fff7df;width:min(680px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;box-shadow:0 24px 100px #06121acc}.evolution-presentation::backdrop{background:#06121ac9}.evolution-content{padding:22px;background:radial-gradient(ellipse at 50% 36%,#285c63,#142f37 70%)}.evolution-content header{display:flex;align-items:center;justify-content:space-between;gap:12px}.evolution-content header p{margin:0;color:#e9cb7e;font-size:13px;letter-spacing:.12em}.evolution-content h2{margin:6px 0;font-size:24px;color:#fff7df}.evolution-content button{min-height:44px;border:1px solid #a5c0be;background:#183f48;color:#fff7df;border-radius:10px;padding:9px 13px;font:inherit}.evolution-content button:focus-visible{outline:3px solid #ffdf79;outline-offset:3px}.evolution-content button:disabled{opacity:.5}.evolution-content button.primary{background:#f4d78b;color:#263736}.evolution-presentation .evolution-content button{transition:none}.evolution-presentation .evolution-content button:hover:not(:disabled),.evolution-presentation .evolution-content button[aria-pressed=false]:hover:not(:disabled){background:#f4e9c9;color:#263736;transform:none}.evolution-presentation .evolution-content button[aria-pressed=true]{background:#f4d78b;color:#263736}.evolution-status{min-height:24px;text-align:center;margin:12px 0;color:#f6e8b1}.evolution-stage{position:relative;height:300px;isolation:isolate}.evolution-stage.phase-compare{display:none}.evolution-before,.evolution-after{position:absolute;top:20px;right:0;bottom:0;left:0;display:flex;align-items:center;flex-direction:column;gap:8px;will-change:opacity}.evolution-stage .evolution-art{width:250px;height:235px}.evolution-stage p,.evolution-comparison p{margin:0;font-weight:700;text-align:center}.evolution-art{display:grid;place-items:center;overflow:hidden}.evolution-art>svg,.evolution-art>img{width:100%;height:100%;object-fit:contain;max-width:100%}.evolution-art-fallback{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.evolution-art-fallback>span[aria-hidden=true]{font-size:70px;color:#e8cf7b}.evolution-art-fallback small{font-size:12px}.evolution-orbit{position:absolute;top:15px;right:0;bottom:15px;left:0;display:grid;place-items:center;z-index:-1;opacity:0}.phase-transform .evolution-orbit{opacity:.8}.evolution-orbit i{position:absolute;width:220px;height:220px;border:2px solid #d5dd9c80;border-radius:50%}.evolution-orbit i:nth-child(2){width:280px;height:280px;border-style:dashed}.evolution-orbit i:nth-child(3){width:180px;height:180px;border-color:#a2ead5aa}.evolution-forge{position:absolute;inset:-12px 0 auto;text-align:center;pointer-events:none}.evolution-forge svg{width:260px;height:94px;overflow:visible}.evolution-comparison{display:grid;grid-template-columns:1fr 28px 1fr;align-items:center;min-height:300px;gap:8px}.evolution-comparison[hidden]{display:none}.evolution-comparison figure{margin:0;display:flex;align-items:center;flex-direction:column;gap:10px}.evolution-comparison figcaption{font-size:13px;color:#dcc88b}.evolution-comparison .evolution-art{width:100%;height:220px}.evolution-arrow{font-size:27px;color:#e2c775;text-align:center}.evolution-content progress{width:100%;height:8px;accent-color:#ead28b;margin:16px 0}.evolution-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.evolution-assurance{font-size:12px;color:#d5e2dc;margin:14px 0 0;text-align:center;line-height:1.7}.evolution-content rt{font-size:9px}.is-paused *{animation-play-state:paused!important}.is-reduced .evolution-orbit,.is-reduced .evolution-forge{display:none}.is-reduced *{animation:none!important;transition:none!important;transform:none!important}@media(max-width:480px){.evolution-content{padding:15px}.evolution-content h2{font-size:20px}.evolution-stage{height:255px}.evolution-stage .evolution-art{width:220px;height:195px}.evolution-comparison{min-height:255px}.evolution-comparison .evolution-art{height:170px}.evolution-controls button{flex:1 1 43%;padding:9px 6px;font-size:14px}}@media(prefers-reduced-motion:reduce){.evolution-presentation *{animation:none!important;transition:none!important;transform:none!important}.evolution-orbit,.evolution-forge{display:none}}.companion-support-presentation{padding:0;border:2px solid #91b2a9;border-radius:20px;width:min(750px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;color:#fff3c7;background:#14343c;box-shadow:0 16px 64px #001a24a6}.companion-support-presentation::backdrop{background:#00121dce}.companion-support-presentation .support-content{padding:22px}.companion-support-presentation header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.companion-support-presentation h2{font-size:clamp(20px,4.8vw,30px);line-height:1.6;margin:0}.companion-support-presentation button{font:inherit;font-weight:700;min-height:48px;padding:10px 14px;border:1px solid #e0c37a;border-radius:12px;background:#f1dfae;color:#233941;cursor:pointer}.companion-support-presentation button:hover,.companion-support-presentation button[aria-pressed=false]{color:#233941;background:#f1dfae}.companion-support-presentation button[aria-pressed=true]{background:#c4e3d1;color:#183c38;border-color:#99ccb1}.companion-support-presentation button:disabled{color:#adbcb9;background:#28464b;border-color:#527070;cursor:default}.companion-support-presentation button:focus-visible{outline:3px solid #ffffff;outline-offset:3px}.companion-support-presentation .support-stage{border:1px solid #6e9597;border-radius:16px;overflow:hidden;min-height:150px;background:#193d45;display:grid;place-items:center}.companion-support-presentation canvas{display:block;width:100%;height:auto;max-height:45dvh;object-fit:contain}.companion-support-presentation .support-static-art{display:grid;place-items:center;width:100%;height:280px;max-height:40dvh;padding:12px}.companion-support-presentation .support-static-art>svg,.companion-support-presentation .support-static-art>img{max-width:100%;height:100%;width:100%;object-fit:contain}.companion-support-presentation .support-name-fallback{min-height:180px;padding:24px;display:flex;flex-direction:column;align-items:center;gap:20px;font-size:26px}.companion-support-presentation .support-name-fallback>span:last-child{color:#b6dea6;font-size:40px}.companion-support-presentation .support-phase{min-height:26px;color:#cbe0d8;line-height:1.7}.companion-support-presentation .support-caption{font-size:20px;line-height:1.9;margin:12px 0}.companion-support-presentation .support-controls{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.companion-support-presentation .support-done{margin-left:auto}.companion-support-presentation progress{display:block;width:100%;height:10px;accent-color:#e2ca87}.companion-support-presentation .support-missing,.companion-support-presentation .support-assurance{font-size:14px;line-height:1.9;color:#cbe0d8}@media(max-width:500px){.companion-support-presentation .support-content{padding:15px}.companion-support-presentation .support-caption{font-size:18px}.companion-support-presentation .support-controls button{flex:1 1 42%;padding-inline:8px}.companion-support-presentation .support-controls .support-done{flex-basis:100%;margin-left:0}}.sky-scene{border-radius:20px;padding:20px;background:linear-gradient(#b8d9e6,#eef4ee);color:#243b49;overflow:hidden}.sky-scene h2{margin:0;font-size:1.1rem}.sky-scene small{font-size:.7rem;opacity:.75}.sky-scene svg{display:block;width:100%;height:auto}.sky-cast{display:flex;gap:12px;justify-content:center}.sky-cast>*{width:64px;height:64px}.sky-scene p{font-size:.9rem}.sky-rings{transform-origin:340px 110px;animation:sky-ring-sway 6s ease-in-out infinite}.sky-scene[data-paused=true] *{animation-play-state:paused!important}@keyframes sky-ring-sway{50%{transform:rotate(2deg)}}@media(prefers-reduced-motion:reduce){.sky-rings{animation:none}}.sky-scene[data-reduced=true] .sky-rings{animation:none}.sky-return-scene figure{margin:14px 0}.sky-return-scene figure img{display:block;width:100%;max-height:450px;object-fit:contain;border-radius:12px}.sky-return-scene figcaption{text-align:center;font-size:13px;color:#536d71}.final-scene{border-radius:20px;padding:18px;background:#eaf0e7;overflow:hidden}.final-scene h2{margin:0}.final-scene>small{color:#65766b}.final-scene svg{width:100%;height:auto;border-radius:13px;margin:12px 0}.final-cast{display:flex;justify-content:center;gap:12px}.final-cast>*{max-width:76px}.final-seat-rows{display:grid;gap:8px;margin:16px 0}.final-seat-rows button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:12px}.final-seat-icons{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;color:#a3b7ac}.final-seat-icons .placed{color:#987746}.final-platform{transform-origin:265px 210px;transform:rotate(-32deg)}.final-scene[data-platform-open=true] .final-platform{animation:final-lower 1.2s ease-out both}.final-rope{opacity:.3}.final-scene[data-platform-open=true] .final-rope{opacity:1}.final-fire{transform-origin:174px 224px;animation:final-warm 3s ease-in-out infinite}.final-wind{opacity:.15}.final-scene[data-ventilated=true] .final-wind{opacity:1;stroke-dasharray:18 6;animation:final-flow 3s linear infinite}.final-scene[data-departed=true] .final-ship{animation:final-launch 6s ease-out both}.final-scene[data-paused=true] *{animation-play-state:paused!important}.final-scene[data-reduced=true] *{animation:none!important}.final-scene[data-reduced=true][data-platform-open=true] .final-platform{transform:none}.final-scene[data-reduced=true][data-departed=true] .final-ship{transform:translateY(-25px)}@keyframes final-lower{0%{transform:rotate(-32deg)}to{transform:none}}@keyframes final-warm{50%{transform:scale(.97,1.04)}}@keyframes final-flow{to{stroke-dashoffset:-96}}@keyframes final-launch{0%{transform:translateY(0)}to{transform:translateY(-25px)}}@media(prefers-reduced-motion:reduce){.final-scene *{animation:none!important}.final-scene[data-platform-open=true] .final-platform{transform:none}}@media(max-width:520px){.final-seat-rows button{padding:8px;gap:5px}.final-seat-icons{gap:2px}.final-scene{padding:12px}}.final-engine-art{position:relative;margin:14px -18px}.final-engine-art>img{display:block;width:100%;height:auto}.final-engine-art>svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;pointer-events:none}.final-engine-scene[data-ventilated=true] .final-wind{opacity:.8;stroke-dasharray:20 8}.final-helm-art{margin:14px -18px}.final-helm-art img{display:block;width:100%;height:auto}.final-port-marks{display:flex;justify-content:center;gap:clamp(8px,2vw,20px);font-size:24px;margin:12px;color:#647773}.final-port-marks [data-connected=true]{color:#aa6518;text-shadow:0 0 9px #f1cb66}.final-helm-scene p{text-align:center}@media(max-width:520px){.final-helm-art,.final-engine-art{margin:14px -12px}}.final-cabin-art{position:relative;margin:14px -18px}.final-cabin-background{display:block;width:100%;height:auto}.final-cabin-chairs{position:absolute;top:0;right:0;bottom:0;left:0}.final-cabin-chair{display:block;position:absolute;overflow:hidden}.final-cabin-chair>img{position:absolute;width:163.494%;height:124.9%;left:-32.334%;top:-13.247%;max-width:none}.final-cabin-card{position:absolute;left:35%;top:37%;background:#fff4cb;color:#285558;border:1px solid #a97925;border-radius:2px;width:30%;height:25%;text-align:center;font-size:clamp(4px,1vw,10px);line-height:1.3}.final-cabin-scene p{text-align:center}@media(max-width:520px){.final-cabin-art{margin:14px -12px}}.forest-entry{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:18px 0;padding:18px;border:1px solid #b2cdb9;border-radius:18px;background:#f0f5e8;color:#2d443a}.forest-entry h2,.forest-entry p{margin:0}.forest-entry p{margin-top:6px}.forest-entry button{flex-shrink:0}.growth-status{padding:10px 12px;background:#edf3e9;border-radius:12px;margin:12px 0;color:#2d443a}.growth-status p{margin:4px 0}.growth-status progress{width:100%;accent-color:#387a56}.companion-forms{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.companion-forms button{flex:1;min-width:110px;min-height:48px;padding:8px;font-size:13px}.companion-forms button[aria-pressed=true]{outline:2px solid #388061;outline-offset:1px}.companion-forms .friend-art{width:66px;height:60px;display:block;margin:auto}.form-art-note{font-size:11px;color:#526c5b}.forest-panel{max-width:900px;margin:auto}.forest-heading{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:8px}.forest-heading h1{font-size:25px;margin:0}.forest-heading button{min-height:44px;min-width:44px}.forest-introduction{background:#f8fbf3;border:1px solid #c0d4bd;border-radius:18px;padding:22px}.forest-introduction h2{margin:0 0 8px}.forest-introduction p{max-width:650px}.forest-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.forest-target{padding:16px;border:1px solid #bfcebd;border-radius:14px;background:#fff}.forest-target .friend-art{display:block;width:150px;height:140px;margin:auto}.forest-target h3{margin:0}.forest-target button{width:100%;min-height:48px}.forest-target p{font-size:13px;min-height:45px}.forest-scene{margin:0;position:relative;overflow:hidden;border-radius:16px;background:#35543e}.forest-scene canvas{width:100%;display:block;aspect-ratio:900/480}.forest-scene figcaption{background:#edf3e8;padding:6px 12px;color:#314c3c;font-size:12px}.forest-scene canvas[aria-label]{outline-offset:3px}.forest-hud{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;background:#edf3e8;border-radius:12px;margin:8px 0;font-size:14px}.forest-hud strong{display:inline-flex;gap:6px;align-items:center}.forest-hud .forest-hearts{color:#a5443c;letter-spacing:3px}.forest-time{display:flex;align-items:center;gap:12px;margin:8px 0}.forest-time progress{flex:1;width:100%;accent-color:#c0872e;height:14px}.forest-time span{min-width:65px;font-variant-numeric:tabular-nums;text-align:right}.forest-equation{font-size:34px;line-height:1.35;text-align:center;font-weight:800;background:#f8fbf3;border:1px solid #ccdac7;border-radius:12px;padding:12px;margin:8px 0}.forest-equation output{display:inline-block;min-width:1.8em;border-bottom:3px solid #b28630;color:#396f52}.forest-help{margin:6px 0;text-align:center;font-size:13px}.forest-input{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(68px,.85fr);gap:6px}.forest-input button{min-height:50px;min-width:44px;font-size:21px;padding:6px}.forest-input .forest-submit{grid-column:4;grid-row:1/5;font-size:16px;line-height:1.8;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#347350;color:#fff}.forest-clear{grid-column:1}.forest-zero{grid-column:2}.forest-erase{grid-column:3}.forest-tools{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:8px 0}.forest-tools button{min-height:44px}.forest-pause{background:#fff8e5;border:1px solid #dccb9f;border-radius:14px;padding:12px;text-align:center;margin:8px 0}.forest-pause p{margin:0 0 8px}.forest-pause button{min-height:48px}.forest-feedback{min-height:44px;padding:8px 12px;background:#edf5e8;border-radius:12px}.forest-feedback.hurt{background:#fbedde}.forest-result{padding:22px;background:#f5f9ee;border:1px solid #c8d8c1;border-radius:16px}.forest-result h2{margin-top:0}.forest-result .friend-art{width:160px;height:145px}.forest-result-actions{display:flex;gap:12px;flex-wrap:wrap}.forest-result-actions button{min-height:48px}@media(max-width:650px){.app:has(.view-forest) .topbar{height:52px;min-height:52px;padding:4px 12px;gap:6px;flex-wrap:nowrap}.app:has(.view-forest) .brand.brand-logo{width:90px;min-width:90px;min-height:44px;padding:0}.app:has(.view-forest) .brand-logo-art{width:90px}.app:has(.view-forest) .brand-logo-reading{font-size:9px}.app:has(.view-forest) .wallet{gap:5px;flex-shrink:0}.app:has(.view-forest) .wallet>span{font-size:12px;gap:3px}.app:has(.view-forest) .wallet>span:nth-child(2){padding:4px 6px}.app:has(.view-forest) .wallet .icon-btn{width:44px;min-width:44px;min-height:44px;padding:6px}.app:has(.view-forest) .save-line{margin:2px 12px 0;min-height:20px;font-size:10px}.app:has(.view-forest) .save-line>span:last-child{display:none}.view-forest{padding:6px 12px 12px}.forest-heading{min-height:44px;gap:6px;margin-bottom:4px}.forest-heading h1{font-size:18px}.forest-heading button{padding:5px 9px}.forest-scene{border-radius:12px}.forest-hud{font-size:12px;margin:4px 0;padding:5px 8px}.forest-time{margin:4px 0;font-size:12px}.forest-equation{font-size:28px;padding:7px;margin:4px 0}.forest-help{font-size:12px;margin:4px 0}.forest-input{gap:5px}.forest-input button{min-height:48px}.forest-feedback{font-size:13px;min-height:36px;padding:6px 8px}.forest-tools{margin:4px 0}.forest-pause{padding:9px;margin:4px 0;font-size:13px}.forest-entry{flex-direction:column;align-items:stretch}.forest-targets{gap:10px}.forest-target{padding:12px}.forest-target .friend-art{width:100%;height:105px}.forest-target h3{font-size:17px}.forest-target p{min-height:80px}.forest-introduction{padding:15px}}.app.hub-shell{--hub-accent: #e6c681;--hub-ink: #2d443a;--hub-soft: #718477;--hub-paper: #fff8e9;background:radial-gradient(ellipse at 15% 5%,#354d3e,transparent 60%),#162e28;padding-bottom:140px}.app.hub-shop{background:radial-gradient(ellipse at 80% 10%,#58402a,transparent 60%),#202f29}.app.hub-book{background:radial-gradient(ellipse at 15% 10%,#3b5158,transparent 60%),#203436}.app.hub-practice{background:radial-gradient(ellipse at 85% 20%,#394e57,transparent 60%),#202e37}.hub-shell .main{max-width:1352px;padding:25px 30px 30px}.hub-shell .save-line{margin-bottom:0}.hub-shell .card{color:var(--hub-ink);background:var(--hub-paper);border:1px solid #ddcea9;border-radius:18px;box-shadow:0 9px 22px #08171328}.hub-shell .card p{color:#637368;line-height:2.05}.hub-shell button{transition:background-color .15s,border-color .15s,transform .15s,box-shadow .15s}.hub-shell button:active:not(:disabled){transform:translateY(2px)}.hub-shell button:focus-visible{outline:3px solid #e4b759;outline-offset:4px}.hub-shell .card button.primary{color:#293d32;background:linear-gradient(#f3dfa0,#dcc080);border:1px solid #c3a15d;border-bottom:4px solid #a98546;box-shadow:inset 0 1px #fff7d4;font-weight:800;min-height:52px}.hub-shell .card button.primary:hover:not(:disabled){background:linear-gradient(#fff0ba,#e8cb87);box-shadow:0 4px 12px #b5954c33}.hub-shell .card button.secondary{background:#e7ecdf;color:#35604d;border-color:#bfd0bc;min-height:48px}.hub-shell .card button:disabled{opacity:1;cursor:not-allowed;color:#6b7469;background:#e6e7dc;border-color:#cbd0c1;box-shadow:none}.hub-shell .section-title{color:#f0e5c8;margin:36px 0 19px;font-size:21px;letter-spacing:.04em}.hub-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.hub-heading-copy{min-width:0}.hub-eyebrow{display:flex;align-items:center;gap:9px;color:var(--hub-accent);font-size:12px;letter-spacing:.09em;margin:0 0 14px}.hub-eyebrow>svg{flex-shrink:0}.hub-heading h1{margin:0;color:#fff3d4;font-size:clamp(28px,3vw,36px);letter-spacing:.07em;line-height:1.6}.hub-description{color:#bbcac0;font-size:13px;line-height:2;margin:10px 0 0}.hub-heading-status{display:flex;align-items:center;gap:14px;flex-shrink:0;padding:15px 24px;color:#f0d795;border:1px solid #dab66b38;border-radius:15px;background:#13292277}.hub-heading-status>div{display:grid;gap:7px}.hub-heading-status small{color:#c6d0b9;font-size:11px;font-weight:400}.hub-heading-status strong{font:700 27px Georgia,serif}.hub-heading-status strong small{font-size:14px}.hub-scene-label{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.13em;color:#e5c78f}.hub-shell .workshop-greeting{position:relative;isolation:isolate;overflow:hidden;min-height:268px;padding:32px 38px;border:1px solid #c4a16669;border-radius:20px;background:#24372f url(/assets/art/hub/workshop-interior-v1.png) center / cover;gap:26px;box-shadow:inset 0 0 50px #15221d44,0 14px 35px #0c191b30;margin-bottom:18px}.hub-shell .workshop-greeting:before{position:absolute;content:"";top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(90deg,#102f2bc9,#172b26cf 53%,#1e30252e 83%)}.workshop-host{display:grid;justify-items:center;gap:12px;flex:0 0 114px}.workshop-host>span:first-child{outline:3px solid #e9d19999;box-shadow:0 3px 20px #1a191987}.workshop-host>span:last-child{padding:5px 15px;border:1px solid #dbbf79aa;border-radius:8px;color:#ffe9b2;background:#18372aea;font-size:13px}.workshop-welcome-copy{max-width:630px}.hub-shell .workshop-greeting h2{color:#fff0cc;font-size:clamp(21px,2.3vw,28px);margin:22px 0 16px;line-height:1.65}.hub-shell .workshop-greeting p{color:#e6e3c8;font-size:14px;line-height:2.15;max-width:540px}.workshop-loadout{display:flex;align-items:center;flex-wrap:wrap;gap:12px;border:1px solid #adbd9b38;background:#102c2770;border-radius:12px;padding:17px 22px;margin:0 0 25px;font-size:13px}.workshop-loadout>span{display:flex;gap:8px;align-items:center;color:#aebfa7;margin-right:9px}.workshop-loadout strong{color:#e9e6c9;padding:6px 13px;background:#c6cca713;border-radius:6px}.workshop-loadout small{color:#b1c2b2;margin-left:auto;font-size:12px}.hub-shell .shop-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.hub-shell .shop-item{display:flex;flex-direction:column;min-width:0;padding:17px;position:relative;border-top:3px solid #c9b281}.hub-shell .shop-item.item-equipped{border-color:#839f7b;background:#fbf9ec}.item-status{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:32px;margin-bottom:9px}.item-status>span:first-child{display:flex;align-items:center;gap:5px;color:#738068;font-size:10px}.item-equipped .item-status>span:first-child{color:#3e7456}.item-status>span:last-child{color:#a89570;font-size:8px;letter-spacing:.1em}.hub-shell .shop-object{height:258px;border:1px solid #d2c8a85e;background:radial-gradient(ellipse at 50% 38%,#faf0c7,#e7e6d5 76%);gap:0;overflow:hidden}.hub-shell .shop-object.shield{background:radial-gradient(ellipse at 50% 38%,#eff2d8,#dde6d8 76%)}.hub-shell .shop-object.whip{background:radial-gradient(ellipse at 50% 38%,#ebf0de,#d5e2df 76%)}.hub-shell .shop-object.axe{background:radial-gradient(ellipse at 50% 38%,#f0e8d0,#dbe0d7 76%)}.hub-shell .shop-object>.equipment-art{height:220px;width:100%;flex-shrink:0;transform:none;filter:drop-shadow(0 7px 3px #65543722)}.hub-shell .shop-object>span{width:100%;padding:7px 8px;text-align:center;color:#546e5a;background:#ffffeb96;font-size:11px}.hub-shell .shop-item h2{font-size:21px;margin:24px 0 12px;line-height:1.75}.hub-shell .shop-item>p{margin:0 0 12px;font-size:13px;min-height:84px}.hub-shell .shop-item>small{color:#7a795c;background:#eeecd9;border-radius:7px;padding:10px;margin-bottom:20px;min-height:68px;font-size:11px;line-height:2}.hub-shell .shop-item>button{font-size:12px;line-height:1.65;padding:12px 8px;min-height:47px}.hub-shell .balance-note{color:#71816c;padding-top:11px;border-top:1px dashed #cfd2bc;line-height:2.1;font-size:11px;margin-top:15px}.hub-shell .workshop-help{display:flex;align-items:flex-start;gap:14px;color:#c3cdb7;background:#122c2677;padding:19px 23px;border:1px solid #b9bb8530;border-radius:14px;line-height:2.1;font-size:12px;margin-top:24px}.workshop-help>svg{flex-shrink:0;color:#d6bc7e;margin-top:6px}.hub-shell .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.hub-shell .journal-today{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:stretch}.journal-today>.card{position:relative;padding:29px 31px;overflow:hidden}.journal-today>.card:before{content:"";height:4px;position:absolute;left:24px;right:24px;top:0;background:#c7ab68;border-radius:0 0 4px 4px}.hub-shell .journal-daily{order:-1;border-left:7px solid #bbaa75;background:linear-gradient(90deg,#e9e1c1,#fff8e9 3%)}.hub-shell .journal-visits{background:#f0eddc}.hub-shell .card-kicker{color:#8b7a51;font-size:11px;letter-spacing:.04em}.hub-shell .journal-grid h2{line-height:1.8;margin:20px 0 18px}.journal-daily-title{display:flex;justify-content:space-between;align-items:center;gap:14px}.journal-daily-title>span{display:inline-flex;gap:6px;align-items:center;color:#ad8540;font-size:17px}.hub-shell .daily-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0 23px}.hub-shell .daily-questions>span{padding:16px 5px;min-width:0;justify-content:center;font-size:22px;font-family:Georgia,serif;color:#456252;border:1px dashed #c4cbb5;border-radius:11px;background:#f4f0da;box-shadow:inset 0 0 0 4px #fcf9e9}.hub-shell .daily-questions>span.done{background:#e3edd9;border-style:solid}.hub-shell .journal-daily>p{font-size:12px}.hub-shell .journal-daily>small{display:block;color:#8b927c;font-size:10px;margin:15px 0 17px;line-height:2}.hub-shell .stamps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:22px 0}.hub-shell .stamps>span{width:auto;min-width:0;height:43px;color:#a19e80;border:1px dashed #bfc5aa;background:#ffffff48;border-radius:9px;font:15px Georgia,serif}.hub-shell .stamps>.filled{background:#d7e5ce;color:#52714d;border:2px solid #8da280;transform:rotate(-5deg)}.journal-seal{float:right;display:grid;justify-items:center;align-content:center;gap:7px;width:100px;height:100px;border:3px double #91a18b;border-radius:50%;color:#718b74;transform:rotate(-14deg);margin:10px 0 24px 15px;opacity:.75}.journal-seal span{font-size:8px;letter-spacing:.16em}.journal-visits .stamps{clear:both}.hub-shell .rescue-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.hub-shell .rescue{display:grid;grid-template-columns:36px minmax(0,1fr);gap:13px;align-items:start;padding:26px 21px;position:relative;border-radius:5px 17px 17px;background:linear-gradient(145deg,#f7f1da,#e9e6d2);border-top:3px solid #b8bc99}.hub-shell .rescue>div:nth-child(2){min-width:0}.hub-shell .rescue>svg{position:absolute;right:15px;bottom:15px;width:16px;color:#899573}.hub-shell .rescue h3{font-size:16px;line-height:1.8}.hub-shell .rescue p{font-size:11px;padding-right:5px;margin-top:12px}.hub-shell .rescue-number{font-size:25px;color:#9f9b78}.hub-shell .rescue-open{border-top-color:#e0b764;background:#fff5d9}.hub-shell .rescue-completed{border-top-color:#74997a}.hub-shell .rescue-choices{margin-bottom:10px}.hub-shell .rescue-choices button{font-size:11px;padding:8px}.hub-shell .story-library{margin-top:30px;border-left:7px solid #8a6c43;padding:27px 30px;background:linear-gradient(90deg,#e4d9b8,#fff8e9 3%)}.hub-shell .story-library h2{margin:0 0 12px;font-size:22px}.hub-shell .story-library p{font-size:13px;margin-bottom:23px}.hub-shell .story-library .choice-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.hub-shell .story-library button{justify-content:flex-start;min-width:0;text-align:left;gap:15px;padding:16px;min-height:69px;border:1px solid #d7d3b9;border-radius:9px;background:#f3f1df;font-size:13px}.hub-shell .story-library button:hover{background:#e6eddc;border-color:#9ab592}.library-index{color:#a19361;font:20px Georgia,serif}.hub-shell .story-library button>svg{margin-left:auto;flex-shrink:0;color:#879773}.hub-shell .memory{padding:27px;border-top:4px solid #a5b093}.hub-shell .memory h3{font-size:18px}.hub-shell .memory button{min-height:44px;background:#ebeddb;border-color:#c3cbb3;color:#496b52}.hub-shell .memory .sign{transform:rotate(-2deg);font-size:20px!important}.friend-promises{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;align-items:center;padding:30px;margin-bottom:28px;border:1px solid #b7c08e3d;border-radius:20px;background:radial-gradient(ellipse at 82% 15%,#75947733,transparent 60%),linear-gradient(135deg,#214639,#17332d);overflow:hidden}.friend-introduction h2{font-size:23px;color:#f2e7c6;line-height:1.8;margin:20px 0 12px}.friend-introduction p{color:#b9ccba;font-size:13px;line-height:2}.friend-discovery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.friend-discovery>div{text-align:center;display:grid;align-content:center;justify-items:center;min-width:0}.friend-discovery .friend-art{width:100%;max-width:140px;height:auto}.friend-discovery span{color:#dae2c0;font-size:11px;margin-top:8px}.friend-art.mystery{filter:brightness(0) invert(1);opacity:.16}.friend-discovery .undiscovered span{color:#8ca897;font:20px Georgia,serif}.hub-shell .companion-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.hub-shell .companion{padding:21px;display:flex;flex-direction:column;align-items:stretch;border-top:4px solid #b3b893}.hub-shell .friend-selected{border-color:#cebb78;box-shadow:0 0 0 2px #d9bd6633,0 14px 30px #0a231c33}.friend-card-badge{display:flex;justify-content:space-between;gap:7px;font-size:10px;min-height:28px;color:#81764d}.friend-card-badge span{display:flex;align-items:center;gap:4px}.hub-shell .companion-portrait{display:flex;justify-content:center;align-items:center;height:190px;background:radial-gradient(ellipse,#dce9cd,#e8edde44 65%,transparent 70%);margin:8px 0 18px}.hub-shell .companion-portrait.rare{background:radial-gradient(ellipse,#efdfa0,#f2ebcc33 65%,transparent 70%)}.companion-portrait .friend-art{height:172px;width:194px;filter:drop-shadow(0 6px 3px #1c3c1a16)}.hub-shell .companion>small{font-size:10px;color:#859278;line-height:2}.hub-shell .companion h2{margin:15px 0;font-size:24px}.hub-shell .companion p{min-height:60px;margin:0 0 22px;font-size:13px}.hub-shell .companion>button{margin-top:auto}.hub-shell .empty-state{display:flex;align-items:center;text-align:left;gap:28px;padding:38px;grid-column:span 2;border:1px solid #c8d7b7;background:radial-gradient(ellipse at 20% 70%,#e7edcb,#f8f7e7 70%)}.first-friend{display:grid;justify-items:center;flex:0 0 185px;gap:5px}.first-friend .friend-art{width:185px;height:auto}.first-friend>span{display:flex;align-items:center;gap:6px;padding:8px 10px;color:#7f875e;background:#dfe7c7;font-size:10px;border-radius:20px}.hub-shell .empty-state h2{margin:0 0 20px;font-size:23px;line-height:1.8}.hub-shell .empty-state p{font-size:13px;margin-bottom:24px}.hub-shell .empty-state button{min-width:200px;gap:15px}.hub-shell .locked-companion{position:relative;overflow:hidden;padding:30px 23px;background:radial-gradient(ellipse at 50% 23%,#385865,#172f3a 65%);border:1px solid #a4bbae3b;color:#e0dcae}.legend-label{color:#9ebbb6;font-size:9px;letter-spacing:.18em;margin:17px 0 8px}.legend-star{display:grid;place-items:center;width:105px;height:105px;border:1px solid #c7c5914d;border-radius:50%;position:relative;background:radial-gradient(#d8b45e33,transparent 68%)}.legend-star:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px dashed #c1cb9a50;border-radius:50%}.legend-star>svg{color:#ddc88c;fill:#dbbb6719}.legend-star i{position:absolute;width:4px;height:4px;border-radius:50%;background:#eee6b6;box-shadow:0 0 8px #efdf9c;left:-16px;top:19px}.legend-star i:nth-of-type(2){left:auto;right:-18px;top:75px}.legend-star i:nth-of-type(3){left:70px;top:-8px}.hub-shell .locked-companion h2{color:#f3e4b9;font-size:21px;margin:12px 0;line-height:1.8}.hub-shell .locked-companion p{color:#bdcec5;min-height:0;font-size:12px;margin:8px 0 17px}.hub-shell .locked-companion small{color:#a3b8b2;font-size:10px;line-height:2.1;display:block;margin-top:12px}.hub-shell .locked-companion summary{color:#cfcca2;font-size:11px;cursor:pointer}.practice-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px;align-items:start}.practice-coach{text-align:center;padding:36px 28px;border:1px solid #a1bdb02e;border-radius:22px;background:radial-gradient(ellipse at 50% 18%,#5b7a733b,transparent 60%),#132e3066}.coach-orbit{width:204px;height:184px;display:grid;place-items:center;margin:0 auto 23px;position:relative;border:1px dashed #d4ce9c50;border-radius:50%}.coach-orbit>span{box-shadow:0 0 35px #d6b65d38}.coach-orbit>svg{position:absolute;color:#edd48c}.coach-orbit>svg:nth-of-type(1){left:-3px;top:17px}.coach-orbit>svg:nth-of-type(2){right:-7px;bottom:16px}.practice-coach>.hub-scene-label{justify-content:center}.practice-coach h2{font-size:23px;color:#f1e4c0;line-height:1.8;margin:22px 0 16px}.practice-coach>p{color:#b8cbc0;font-size:13px;line-height:2.2;max-width:390px;margin:0 auto}.practice-example{margin:28px auto 20px;border:1px solid #aabda448;padding:22px 18px;border-radius:14px;background:#c5d6b60c;max-width:360px}.practice-example>small{color:#d1dfbd;font-size:13px}.practice-dot-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.practice-dot-groups>span{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:7px;min-height:74px;padding:12px 8px;border:1px solid #c6c68e3d;border-radius:11px;background:#a4bb7915}.practice-dot-groups i{width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffefba,#d3ad59);box-shadow:0 2px 1px #121a2366}.practice-example>strong{color:#efdb9c;font:28px Georgia,serif;letter-spacing:.08em}.practice-example>strong>span{color:#94b3a4;margin-inline:5px}.practice-coach .coach-note{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;color:#a1b9ac}.hub-shell .practice-card{max-width:none;width:100%;padding:29px;text-align:left;border-top:4px solid #d4bd80}.practice-step{display:flex;align-items:center;gap:10px;font-size:11px;color:#879174;margin-bottom:25px}.practice-step>span:first-child{font:18px Georgia,serif;border:1px solid #c9c8a7;border-radius:50%;padding:7px;color:#938152}.hub-shell .practice-card h2{font-size:22px;line-height:1.8;margin:0 0 12px}.hub-shell .practice-card>p{font-size:12px;line-height:2}.hub-shell .row-picker{gap:11px;margin:28px 0}.hub-shell .row-picker button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:86px;padding:11px;border-radius:12px;border:1px solid #cbd0b7;border-bottom:4px solid #c2c6ac;color:#728169;background:#f2f2e3}.hub-shell .row-picker strong{font:32px Georgia,serif;color:#4a6755}.hub-shell .row-picker button>.rich-text{font-size:10px}.hub-shell .row-picker .active{color:#f3e9be;background:linear-gradient(#436955,#2b5143);border-color:#375d48;border-bottom-color:#1c4033;box-shadow:inset 0 0 0 2px #c7c48c44,0 5px 12px #2b51432b}.hub-shell .row-picker .active strong{color:#f5dfa1}.hub-shell .row-picker button:hover:not(.active):not(:disabled){background:#e4ecd8;border-color:#94af85}.hub-shell .practice-card label{align-items:center;gap:14px;font-size:12px;color:#728467;border-top:1px dashed #ccd0b9;padding-top:20px;margin:24px 0}.hub-shell .practice-card select{min-height:46px;background:#edeee0;color:#476651;border-color:#bfcab1;border-radius:9px;font-size:13px}.hub-shell .practice-reward{display:flex;align-items:center;gap:15px;padding:15px;background:#eeead3;border:1px solid #ded7b4;border-radius:10px;color:#80815e}.practice-reward>svg{flex-shrink:0;color:#b39148}.practice-reward>div{display:grid;gap:7px}.practice-reward small{font-size:10px;color:#8c8963}.practice-reward strong{font-size:24px;color:#9c7b3d;line-height:1.8}.practice-reward strong>.rich-text{font-size:11px;font-weight:400}.practice-reward p{font-size:10px;margin:0}.hub-shell .practice-card>.primary{margin-top:10px;min-height:59px;font-size:16px;justify-content:center;gap:12px}.practice-reward-details{margin-top:22px}.practice-reward-details summary{cursor:pointer;color:#869178;font-size:11px;line-height:1.8;text-align:center}.practice-reward-details .note{color:#8c947f;font-size:11px;padding-top:12px;line-height:2}@media(max-width:1199px){.hub-shell .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-shell .shop-item>p{min-height:58px}.hub-shell .shop-item>small{min-height:54px}.friend-promises{grid-template-columns:1fr}.friend-discovery{max-width:620px;width:100%;margin-inline:auto}.hub-shell .empty-state{padding:28px;gap:18px}.first-friend{flex-basis:130px}.first-friend .friend-art{width:135px}}@media(max-width:900px){.hub-shell .main{padding-inline:22px}.hub-shell .workshop-greeting{padding:27px}.hub-shell .workshop-greeting:before{background:linear-gradient(90deg,#102f2bd9,#172b26c7 70%,#1e302579)}.hub-shell .rescue-list{grid-template-columns:1fr}.hub-shell .rescue{padding:21px;grid-template-columns:42px minmax(0,1fr)}.hub-shell .rescue p{margin:8px 0 0}.hub-shell .rescue>svg{top:26px;bottom:auto}.hub-shell .companion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-shell .empty-state,.hub-shell .locked-companion{grid-column:span 2}.practice-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:20px}.practice-coach{padding:30px 19px}.practice-coach h2{font-size:21px}.hub-shell .practice-card{padding:25px 20px}.hub-shell .practice-card label{align-items:stretch;flex-direction:column}.hub-shell .practice-card select{max-width:none;width:100%}.practice-example{padding:20px 12px}.practice-dot-groups{gap:6px}.practice-dot-groups>span{padding:9px 5px;gap:5px}.practice-dot-groups i{width:9px;height:9px}}@media(max-width:700px){.hub-shell .main{padding:24px 17px}.hub-heading{align-items:flex-start;flex-wrap:wrap;gap:18px;margin-bottom:22px}.hub-heading h1{font-size:28px}.hub-eyebrow{font-size:11px;margin-bottom:12px;line-height:1.9}.hub-description{font-size:12px}.hub-heading-status{padding:10px 16px;gap:12px}.hub-heading-status>div{display:flex;align-items:center;gap:15px}.hub-heading-status strong{font-size:23px}.hub-heading-status small{font-size:10px}.hub-shell .workshop-greeting{align-items:flex-start;min-height:290px;padding:26px 23px;gap:20px;flex-direction:column;background-position:100% center}.workshop-host{display:flex;align-items:center;flex:none;gap:15px}.workshop-host>span:first-child{width:66px!important;height:66px!important}.workshop-host svg{width:66px;height:66px}.workshop-host>span:last-child{font-size:13px}.hub-shell .workshop-greeting h2{font-size:21px;margin-top:16px}.hub-shell .workshop-greeting p{font-size:12px}.workshop-loadout{padding:14px 17px;gap:9px;font-size:11px}.workshop-loadout small{width:100%;margin-top:6px;font-size:10px}.hub-shell .shop-grid{grid-template-columns:1fr;gap:21px}.hub-shell .shop-item{padding:21px;display:flex;flex-direction:column;gap:0}.hub-shell .shop-object{height:258px}.hub-shell .shop-object>.equipment-art{width:100%;height:220px}.hub-shell .shop-item>p{min-height:0}.hub-shell .shop-item>small{min-height:0}.hub-shell .shop-item>button{font-size:13px}.hub-shell .shop-item h2{font-size:23px}.hub-shell .workshop-help{padding:16px;font-size:11px;gap:10px}.hub-shell .journal-grid,.hub-shell .journal-today{grid-template-columns:1fr;gap:20px}.journal-today>.card{padding:25px 22px}.hub-shell .journal-grid h2{font-size:22px}.hub-shell .stamps{gap:5px}.hub-shell .stamps>span{height:35px;font-size:12px}.hub-shell .daily-questions{gap:8px}.hub-shell .daily-questions>span{padding:14px 3px;font-size:21px;gap:5px}.hub-shell .daily-questions>span svg{width:12px}.hub-shell .story-library{padding:25px 20px}.hub-shell .story-library .choice-stack{grid-template-columns:1fr}.hub-shell .section-title{font-size:19px;line-height:2}.friend-promises{padding:25px 21px;gap:24px}.friend-introduction h2{font-size:21px}.friend-introduction p{font-size:12px}.friend-discovery{gap:2px}.friend-discovery span{font-size:9px}.hub-shell .companion-grid{grid-template-columns:1fr;gap:22px}.hub-shell .empty-state,.hub-shell .locked-companion{grid-column:auto}.hub-shell .empty-state{flex-direction:column;text-align:center;padding:27px 22px;gap:22px}.first-friend{flex-basis:auto}.first-friend .friend-art{width:170px}.hub-shell .empty-state h2{font-size:22px}.hub-shell .empty-state button{width:100%;min-width:0}.practice-layout{grid-template-columns:1fr;gap:22px}.practice-coach{order:2}.hub-shell .practice-card{order:1}.practice-coach{padding:25px 24px}.coach-orbit{height:125px;width:160px;margin-bottom:20px}.coach-orbit>span{height:100px!important;width:100px!important}.coach-orbit>span>svg{width:100px;height:100px}.practice-coach h2{font-size:21px}.practice-example{margin-block:20px 15px}.hub-shell .practice-card{padding:25px 22px}.hub-shell .practice-card h2{font-size:21px}.hub-shell .row-picker{gap:8px}.hub-shell .row-picker button{min-height:80px}.hub-shell .row-picker strong{font-size:29px}.hub-shell .practice-card>.primary{font-size:14px}}@media(prefers-reduced-motion:reduce){.hub-shell button{transition:none}}.hub-shell.reduced button{transition:none}.hub-resume{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px;padding:18px 22px;border:1px solid #c9d3b9;border-radius:18px;background:#eef2e5;color:#244c43}.hub-resume p{margin:9px 0 0;font-size:14px;line-height:1.8}.hub-resume>button{flex-shrink:0}@media(max-width:620px){.hub-resume{align-items:stretch;flex-direction:column;padding:16px}}.view-adventure:has(.p01-cinematic,.story-cinematic) .battle-heading>div:not(.p01-heading-tools){min-width:0;flex:1}.view-adventure:has(.p01-cinematic,.story-cinematic) .battle-heading h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-adventure:has(.p01-cinematic,.story-cinematic) .p01-heading-tools{flex-shrink:0}.view-adventure:has(.p01-cinematic,.story-cinematic) .p01-heading-tools .icon-btn,.story-reader-tools .icon-btn{width:44px;min-width:44px;min-height:44px;padding:10px;color:inherit}.story-reader:has(.story-reader-tools){position:relative}.story-reader-tools{position:absolute;top:0;right:12px;z-index:4;color:#fff8e7}.story-reader:has(.story-reader-tools)>.back{margin-right:112px}.view-adventure:has(.p01-cinematic,.story-cinematic) .p01-heading-tools .icon-btn:hover,.story-reader-tools .icon-btn:hover{background:#ffffff26}.enemy-intent{margin:0 0 1rem;padding:.7rem .9rem;border:1px solid #c8ab65;border-radius:.75rem;background:#faf2d8;color:#473a1d;font-size:.9rem;line-height:1.6}@media(max-width:650px){.app:has(.view-adventure .battle-mobile){padding-bottom:0}.app:has(.view-adventure .battle-mobile) .topbar{height:52px;min-height:52px;padding:4px 12px;gap:8px;flex-wrap:nowrap}.app:has(.view-adventure .battle-mobile) .brand.brand-logo{width:90px;min-width:90px;min-height:44px;padding:0}.app:has(.view-adventure .battle-mobile) .brand-logo-art{width:90px}.app:has(.view-adventure .battle-mobile) .brand-logo-reading{font-size:9px}.app:has(.view-adventure .battle-mobile) .wallet{gap:5px;flex-shrink:0}.app:has(.view-adventure .battle-mobile) .wallet>span{font-size:12px;gap:3px}.app:has(.view-adventure .battle-mobile) .wallet>span:nth-child(2){padding:4px 6px}.app:has(.view-adventure .battle-mobile) .wallet .icon-btn{min-width:44px;width:44px;min-height:44px;padding:6px}.app:has(.view-adventure .battle-mobile) .save-line{margin:2px 12px 0;min-height:20px;font-size:10px}.app:has(.view-adventure .battle-mobile) .save-line>span:last-child{display:none}.view-adventure:has(.battle-mobile){padding:6px 12px max(6px,env(safe-area-inset-bottom,0px))}.view-adventure:has(.battle-mobile) .battle-heading{min-height:44px;margin-bottom:4px;gap:4px}.view-adventure:has(.battle-mobile) .battle-heading h1{font-size:16px;line-height:1.4}.view-adventure:has(.battle-mobile) .battle-heading small{display:none}.view-adventure:has(.battle-mobile) .battle-heading button{min-width:44px;min-height:44px;padding:4px}.view-adventure .battle-mobile{gap:4px}.view-adventure .battle-mobile .battle-performance canvas{min-height:0;height:auto;aspect-ratio:900 / 480}.view-adventure .battle-mobile .battle-hud{padding:4px 8px;gap:2px;font-size:11px;line-height:1.25}.view-adventure .battle-mobile .battle-hud progress{height:6px}.view-adventure .battle-mobile .battle-hud small{display:none}.view-adventure .battle-mobile .equipment-line{padding:4px 8px;gap:10px;font-size:11px;line-height:1.3}.view-adventure .battle-mobile .interaction-panel{padding:6px}.view-adventure .battle-mobile .question-top{min-height:20px;font-size:11px;line-height:1.3}.view-adventure .battle-mobile .enemy-intent{margin:2px 0;padding:3px 8px;font-size:13px;line-height:1.4}.view-adventure .battle-mobile .equation{min-height:48px;margin:0;gap:8px;font-size:32px}.view-adventure .battle-mobile .equation b{font-size:22px}.view-adventure .battle-mobile .equation output{min-width:70px;padding:2px 6px;line-height:1.2}.view-adventure .battle-mobile .input-hint{margin:2px 0 6px;font-size:11px;line-height:1.4}.view-adventure .battle-mobile .feedback{margin:2px 0;padding:3px 8px;font-size:12px;line-height:1.5}.view-adventure .battle-mobile .number-pad{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(66px,1fr);grid-template-rows:repeat(4,48px);gap:6px;margin-top:6px}.view-adventure .battle-mobile .number-pad button{height:48px;min-height:48px;padding:4px;font-size:24px}.view-adventure .battle-mobile .number-pad .submit{grid-column:4;grid-row:1 / span 4;height:auto;flex-direction:column}.view-adventure .battle-mobile .submit small{font-size:14px;line-height:1.5;white-space:normal}.view-adventure .battle-mobile .number-pad .clear{font-size:16px}.view-adventure .battle-mobile .input-tools{margin-top:4px;gap:8px}.view-adventure .battle-mobile .input-tools button{min-height:44px;min-width:44px;padding:4px;font-size:12px}}:root{font-family:Noto Sans JP,Yu Gothic,sans-serif;color:#263f35;background:#f5f3eb;font-synthesis:none;font-size:16px;--green: #245a48;--deep: #173c33;--gold: #c49a45;--cream: #fffcf3;--line: #dfdfd1;--muted: #798076;--shadow: 0 7px 22px #263e2810}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:#fffef9;color:inherit;border-radius:12px;padding:13px 17px;font-size:14px;font-weight:600;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .18s,transform .18s}button:hover:not(:disabled){background:#ebeede;transform:translateY(-1px)}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d1a848;outline-offset:3px}h1,h2,h3{font-family:Zen Maru Gothic,Yu Gothic,sans-serif;letter-spacing:.01em;line-height:1.65;margin:0 0 12px}h1{font-size:29px}h2{font-size:22px}h3{font-size:18px}p{line-height:1.9;margin:9px 0 17px}small{font-size:11px;color:var(--muted)}ruby{ruby-align:center}rt{font-family:Noto Sans JP,sans-serif;font-size:max(.5em,9px);font-weight:500;letter-spacing:.03em;line-height:1}svg{flex-shrink:0}a{color:var(--green)}.primary{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 4px #173c33;min-height:52px}.primary:hover:not(:disabled){background:#337056}.secondary{border:1px solid #bdcbb9;background:#edf1e5;color:#2e6147}.text-button{background:transparent;border:0;box-shadow:none;font-size:13px;min-height:48px;color:#426a50}.icon-btn{width:48px;min-width:48px;border:0;background:transparent;padding:10px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.18em;color:#849074;margin:0 0 8px}.card{border:1px solid var(--line);border-radius:18px;background:#fffdf6;padding:25px;box-shadow:var(--shadow)}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-heading h1{margin:0}.section-title{margin:36px 0 16px;font-size:21px}.lead{color:#5f6f60}.note{font-size:12px;color:#778272;line-height:1.9}.loading{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:25px;text-align:center}.loading h1{font-size:22px;margin-top:24px}.welcome{position:relative;min-height:100dvh;display:flex;align-items:center;overflow:hidden;background:#183d32}.welcome-art{position:absolute;top:0;right:0;bottom:0;left:38%;background:url(/assets/world-map.png) center 55% / cover no-repeat}.welcome-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#173b32 0%,#173b3230 35%,transparent 70%)}.welcome-content{position:relative;margin-left:max(6vw,25px);padding:50px 0;color:#fff8df;max-width:520px;width:46%}.brand-mark{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.25em;color:#d2b775;margin-bottom:70px}.welcome h1{font-size:clamp(38px,4.3vw,70px);font-weight:700;line-height:1.9;text-shadow:0 3px 25px #082a27}.welcome h1>.title-join{font-size:32px;margin-right:6px}.welcome .eyebrow{color:#cfbd91;font-size:13px;letter-spacing:.15em;margin-bottom:20px}.welcome-copy{font-size:15px;color:#e0e6d7;line-height:2.2}.player-name-form{margin:20px 0;max-width:520px}.player-name-heading{font-weight:700;margin-bottom:12px}.player-name-form label{display:grid;gap:6px;margin:12px 0;font-size:14px}.player-name-form input{width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid #a5b4a1;border-radius:10px;background:#fffdf6;color:#263f35}.player-name-actions{display:flex;flex-wrap:wrap;gap:10px}.player-name-actions button{color:#263f35}.welcome .player-name-form .note{color:#dbe5d4}.named-voice-status{margin:0 0 6px}.start-game{min-width:275px;background:#d4b15d;border-color:#e5c97d;color:#203e32;box-shadow:0 4px #90753d;margin-top:20px;justify-content:space-between}.start-game:hover:not(:disabled){background:#e6c570}.sound-choice{display:flex;gap:10px;align-items:center;font-size:12px;color:#d8decf;margin-top:25px}.sound-choice input{width:18px;height:18px;accent-color:#cfa850}.prototype-note{font-size:10px;color:#b0bcab;margin-top:38px}.app{max-width:1440px;margin:0 auto;min-height:100dvh;padding-bottom:102px}.topbar{height:82px;border-bottom:1px solid #e1e4d8;display:flex;align-items:center;justify-content:space-between;padding:0 44px;background:#fffdf8}.brand{padding:0;border:0;background:transparent;gap:13px;text-align:left;color:#244f40}.brand>svg{width:31px;height:31px;stroke-width:1.4}.brand span{font-family:Zen Maru Gothic,sans-serif;font-weight:900;font-size:20px;letter-spacing:.06em}.brand small{display:block;font-size:9px;letter-spacing:.16em;color:#8b947f;margin-top:4px}.wallet{display:flex;align-items:center;gap:28px}.wallet>span{display:flex;align-items:center;gap:8px;font-family:Georgia,serif;font-size:20px}.wallet>span:first-child svg{color:#b99552}.wallet>span:nth-child(2){border-radius:40px;background:#f3ecd4;padding:8px 15px;font-size:17px}.wallet small{font-family:inherit;font-size:13px}.save-line{display:flex;justify-content:space-between;margin:12px 44px 0;color:#8b937e;font-size:10px}.save-line>span{display:flex;align-items:center;gap:5px}.save-line .pending-status{color:#a96633}.main{max-width:1210px;margin:auto;padding:29px 30px 20px}.bottom-nav{position:fixed;z-index:20;bottom:15px;left:50%;transform:translate(-50%);display:flex;align-items:center;background:#fffdf4f5;border:1px solid #d9dece;border-radius:21px;box-shadow:0 8px 35px #142b2420;padding:6px 16px;gap:8px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav button{width:100px;min-height:62px;flex-direction:column;border:0;background:transparent;color:#7e8c78;font-size:12px;gap:7px;padding:9px}.bottom-nav .selected{background:#e8eddd;color:#2a5b42}.toast{position:fixed;bottom:108px;left:50%;transform:translate(-50%);z-index:80;display:flex;align-items:center;gap:12px;border-radius:40px;background:#244f40;color:#fff9df;padding:14px 24px;box-shadow:0 5px 30px #193e3533;font-size:14px;max-width:90vw;width:max-content}.error{margin:18px auto 0;border:1px solid #dbb58a;background:#fff1d9;color:#7b4e2c;padding:15px;max-width:1160px;display:flex;align-items:center;gap:15px;justify-content:space-between;font-size:13px;border-radius:12px}.level-pill{display:flex;align-items:center;gap:14px;padding:10px 15px;border:1px solid #dce1d2;border-radius:40px;background:#fffdf6;font-size:13px;font-weight:600}.level-pill>span{display:flex;align-items:center;gap:4px;color:#859075}.level-pill svg{color:#b77157}.map-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(275px,1fr);gap:26px;align-items:start}.world-map{position:relative;aspect-ratio:1.01;border-radius:23px;background:url(/assets/world-map.png) center 57% / cover;box-shadow:0 10px 25px #183f2520;overflow:hidden;isolation:isolate;border:5px solid #fffcf2;min-height:510px}.world-map:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(#142e3340,transparent 23%,transparent 80%,#142e3340)}.map-label{position:absolute;left:18px;top:19px;color:#fff5d0;display:flex;align-items:center;gap:6px;text-shadow:0 2px 3px #092820;font-size:13px;flex-wrap:wrap;max-width:190px}.map-label small{color:#f7ebca;font-size:10px;flex-basis:100%;padding-left:23px}.map-stars{position:absolute;right:18px;top:19px;background:#163b32c9;border:1px solid #b6bf8d4d;color:#698471;border-radius:40px;padding:7px 12px;font-size:15px;letter-spacing:3px}.map-stars .lit{color:#f1ca75;text-shadow:0 0 7px #f3dfaf}.map-node{position:absolute;border-radius:100%;padding:0;min-width:48px;width:48px;height:48px;background:#f5edd5;border:2px solid #fff9df;box-shadow:0 4px #ad8e52,0 5px 16px #253f3240;transform:translate(-50%,-50%);color:#8f784c;overflow:visible}.map-node:hover:not(:disabled){transform:translate(-50%,-54%)}.map-node:disabled{opacity:1;background:#637c67;color:#c3cdb4;border-color:#a7b395;box-shadow:0 4px #3c5947}.map-node.current{background:#d5aa4c;color:#fffcef;outline:5px solid #f9e9ad55;border:2px solid #fff1c2;box-shadow:0 4px #8e713c,0 0 0 10px #fffde219}.map-node.cleared{background:#386c4d;border-color:#c3daaa;color:#f8f5da;box-shadow:0 4px #244830}.node-label{position:absolute;top:48px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:11px;background:#fffae9ee;border:1px solid #e7dcb6;border-radius:6px;padding:5px 8px;color:#3b5140;box-shadow:0 3px 7px #17362a22;pointer-events:none}.map-node:disabled .node-label{background:#e4e6d5de;color:#526451}.map-footer{position:absolute;bottom:0;left:0;right:0;background:#163b32d9;color:#f0eed5;font-size:10px;padding:14px 17px;display:flex;align-items:center;gap:9px}.map-footer span:last-child{margin-left:auto;opacity:.6}.journey-side{display:flex;flex-direction:column;gap:16px}.journey-side .card{padding:22px}.card-kicker{display:flex;align-items:center;gap:8px;color:#7e885e;font-size:11px;margin-bottom:15px}.next-quest h2{font-size:23px}.next-quest p{font-size:13px;color:#637361;line-height:1.9}.next-reward{border-top:1px dashed #d7dac6;padding-top:15px;color:#987a37;font-size:12px;display:flex;align-items:center;gap:7px;margin-bottom:18px}.next-quest .primary{width:100%;justify-content:space-between}.daily-title{display:flex;align-items:center;justify-content:space-between}.daily-title h2{font-size:18px;margin:0}.daily-title>span{font-family:Georgia,serif;color:#a37c39;font-size:15px;display:flex;gap:4px;align-items:center}.daily-teaser p{font-size:11px;color:#7b866d;margin:7px 0 15px}.stamps{display:flex;gap:7px;justify-content:space-between;margin:18px 0 9px}.stamps>span{border:1px dashed #cbd4b7;width:30px;height:32px;display:grid;place-items:center;border-radius:8px;font-size:11px;color:#a2ad8b;flex:1;max-width:42px}.stamps .filled{border:1px solid #bac797;background:#e3ead2;color:#628140}.daily-teaser .text-button{width:100%;font-size:11px;padding-bottom:0}.wish{display:flex;align-items:center;padding:7px 2px;gap:12px}.wish strong{display:block;font-size:14px;margin:6px 0}.wish p{font-size:10px;color:#8e977e;margin:0}.wish>span{margin-left:auto;color:#9e803b;font-size:13px;display:flex;align-items:center;gap:4px}.item-art{width:57px;height:68px;border-radius:12px;background:#ebe6d3;display:grid;place-items:center;flex-shrink:0}.axe-art svg{transform:rotate(-25deg);stroke:#57745d;stroke-width:1.5}.story-strip{display:flex;align-items:center;gap:15px;margin-top:22px;padding:14px 22px;border:1px solid #dfdfd0;border-radius:15px;background:#eeefdf}.story-strip p{font-size:12px;flex:1;margin:0}.story-strip>span{display:flex;align-items:center;gap:6px;color:#93a079;font-size:13px}.destination{text-align:center}.destination .speaker{font-size:11px;color:#8b947d;margin:2px}.destination h2{font-size:19px}.destination p{font-size:12px}.choice-stack{display:flex;flex-direction:column;gap:9px}.choice-stack button{justify-content:space-between;background:#f4f4e8}.gift-card h2{font-size:17px}.gift-card p{font-size:13px}.gift-card>svg{color:#b58e40}.chest-button{margin-top:20px;width:100%;text-align:left;justify-content:space-between}.battle-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:15px}.battle-heading h1{font-size:24px;margin:0}.battle-heading>div{text-align:center}.back{border:0;background:transparent;font-size:12px;padding-left:0}.adventure-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start}.scene-panel{position:relative;border-radius:20px;overflow:hidden;background:#d9e4d8;box-shadow:var(--shadow)}.stage-canvas{width:100%;aspect-ratio:900/480;overflow:hidden}.stage-canvas canvas{display:block!important;width:100%!important;height:auto!important}.canvas-loading{aspect-ratio:900/480;display:grid;place-items:center;background:#d4decc;font-size:12px}.battle-hud{padding:15px 20px;background:#f7f7e9;display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.battle-hud>span{display:flex;align-items:center;gap:7px}.battle-hud strong{margin-left:auto}.battle-hud progress{width:100%;height:12px;accent-color:#b79552}.battle-hud small{width:100%;font-size:10px;text-align:right}.equipment-line{background:#244c3d;color:#eeeacb;display:flex;gap:20px;align-items:center;padding:15px 18px;font-size:11px;flex-wrap:wrap}.equipment-line>span{display:flex;gap:5px;align-items:center}.equipment-line svg{color:#d9c77e}.interaction-panel{border-radius:20px;border:1px solid var(--line);background:#fffdf6;padding:24px;box-shadow:var(--shadow);min-height:400px}.dialogue-person{display:flex;align-items:center;gap:15px}.dialogue-person>span{font-size:14px;color:#496847;font-weight:700}.dialogue-person>button{margin-left:auto}.dialogue-text{font-size:20px;line-height:2.2;margin:25px 0 38px;min-height:130px}.dialogue>.primary{width:100%;justify-content:space-between}.dialogue>.text-button{display:flex;margin:10px auto 0}.question-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8c987f}.equation{display:flex;align-items:center;justify-content:center;gap:15px;font-family:Zen Maru Gothic,sans-serif;font-weight:700;font-size:44px;min-height:100px;margin:5px 0}.equation b{font-weight:500;font-size:27px;color:#a6ac95}.equation output{min-width:89px;text-align:center;border-bottom:3px solid #d3bb76;background:#f5f0dd;border-radius:11px;padding:4px 8px;color:#957632}.input-hint{font-size:12px;text-align:center;color:#8a967d;margin:0 0 15px}.number-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;max-width:450px;margin:12px auto 0}.number-pad button{font-family:Zen Maru Gothic,sans-serif;font-size:27px;min-height:60px;padding:8px;border-radius:12px;border:1px solid #d5dbc8;border-bottom:3px solid #d2d7c0;background:#fffef8}.number-pad .submit{grid-column:1 / -1;font-size:14px;background:#386e4e;color:#fffce8;border-color:#2c583f;flex-direction:row;gap:8px}.submit small{color:#e7edda;font-size:16px}.number-pad .clear{font-size:18px}.number-pad .erase{color:#869379;background:#f0f1e7}.input-tools{display:flex;justify-content:space-between;gap:10px;margin-top:10px}.input-tools button{border:0;background:transparent;font-size:11px;padding:10px 0;min-height:48px}.feedback{display:flex;gap:8px;align-items:center;border-radius:10px;background:#f7ebd3;padding:10px 12px;font-size:11px;margin-bottom:10px;color:#946d3d}.feedback.correct{background:#ecf1df;color:#577443}.math-hint{background:#f2f3e7;border-radius:10px;padding:10px}.math-hint p{font-size:11px;text-align:center;margin:5px 0}.dot-groups{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.dot-groups>span{border:1px solid #b1c293;padding:4px;display:grid;grid-template-columns:repeat(3,6px);gap:3px;border-radius:5px}.dot-groups i{height:6px;width:6px;border-radius:100%;background:#779960}.result{text-align:center;padding:10px 0}.result-emblem{width:83px;height:83px;background:#edf0d8;color:#8b9654;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;border:1px solid #d6ddb6}.result h2{font-size:22px;margin:14px 0}.result p{font-size:13px;color:#7b846d}.reward-numbers{display:flex;justify-content:center;gap:45px;margin:25px 0}.reward-numbers>span{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;width:100px;gap:6px;font-size:25px;color:#b48b3e;font-weight:600}.reward-numbers small{width:100%;font-size:10px;color:#9f9574}.result>button{display:flex;width:100%;margin-top:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#123b3266;display:grid;place-items:center;z-index:100;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{max-width:420px;width:100%;text-align:center}.modal>button{width:100%;margin:8px 0}.workshop-greeting{background:#e7ebdb;border-radius:20px;padding:20px 28px;display:flex;gap:22px;align-items:center;margin-bottom:28px}.workshop-greeting h2{font-size:22px;margin:0}.workshop-greeting p{font-size:13px;margin:8px 0 0;color:#697e60}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.shop-item{display:flex;flex-direction:column;padding:20px}.shop-object{height:180px;border-radius:13px;background:radial-gradient(#f8f6e5,#eae9d9);display:flex;align-items:center;justify-content:center;gap:19px;flex-direction:column;position:relative}.shop-object>svg{stroke-width:1.3;color:#64816b;transform:rotate(-20deg)}.shop-object span{font-size:11px;color:#8c9275}.shop-item h2{margin:25px 0 8px;font-size:22px}.shop-item p{font-size:13px;color:#6b7c66;min-height:75px}.shop-item small{font-size:11px;line-height:1.8;min-height:50px}.shop-item>button{width:100%;margin-top:12px}.shop-item>button:first-of-type{margin-top:auto}.balance-note{font-size:10px;color:#8c957d;text-align:center;margin-top:13px}.journal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:23px}.journal-grid p{font-size:13px;color:#728066}.journal-grid h2{font-size:23px}.daily-questions{display:flex;gap:10px}.daily-questions>span{padding:12px 20px;border-radius:10px;background:#edf0e0;font-size:21px;display:flex;gap:8px;align-items:center}.daily-questions svg{color:#658655}.journal-grid .primary{width:100%;margin:5px 0 12px}.rescue-list{display:flex;flex-direction:column;gap:14px}.rescue{display:flex;align-items:center;gap:23px}.rescue-number{font:30px Georgia,serif;color:#b5b99a}.rescue>div:nth-child(2){flex:1}.rescue h3{margin:0;font-size:18px}.rescue p{font-size:12px;margin:5px 0}.rescue>svg{color:#a6af91}.rescue-choices{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.rescue-choices button{font-size:12px}.memory>svg{color:#93a36f}.memory h3{margin-top:10px}.sign{font-size:23px!important;color:#496847!important;letter-spacing:.1em;border:2px solid #cab88b;display:inline-block;padding:7px 15px;background:#f0e5c7;border-radius:5px;margin-right:10px!important}.memory>button{font-size:12px}.companion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.companion{text-align:center}.companion-portrait{height:120px;background:radial-gradient(#eff1d7,transparent);font-size:90px;color:#769c65;line-height:1.4}.companion-portrait.rare{color:#c6a349;background:radial-gradient(#f3e7b8,transparent)}.companion h2{margin-top:15px}.companion p,.locked-companion p{font-size:12px;min-height:60px;color:#7d896f}.companion>button{width:100%}.locked-companion{text-align:center;background:#ebeede;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#91a17b}.locked-companion h2{font-size:20px}.locked-companion>svg{margin:20px}.empty-state{grid-column:span 2;text-align:center;padding:45px}.empty-state svg{color:#a3b482}.empty-state h2{margin-top:20px}.practice-card{max-width:560px;margin:auto;text-align:center}.practice-card>p{font-size:13px;color:#7f8a74}.row-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.row-picker button{font-size:16px}.row-picker .active{background:#366649;color:#fffbe2;border-color:#366649}.practice-card label{display:flex;align-items:center;justify-content:space-between;font-size:13px;margin:20px 0;gap:10px}.practice-card select{max-width:60%;padding:12px;border:1px solid #d0d8bf;border-radius:9px;color:#476443;background:#f5f5e8}.practice-card .primary{width:100%}.settings-card{max-width:670px}.settings-card label{display:flex;align-items:center;gap:10px;min-height:65px;border-bottom:1px solid #e4e6d8;font-size:14px}.settings-card input{margin-left:auto;accent-color:#416c46}.settings-card input[type=checkbox]{width:23px;height:23px}.settings-card input[type=range]{width:160px}.settings-card p{font-size:12px;margin-top:20px;color:#7b876e}.technical-details{margin-top:25px;max-width:670px}.technical-details p{font-size:12px}.technical-details code{font-size:11px;overflow-wrap:anywhere}.technical-details input{max-width:100%;padding:10px;margin-top:10px;border:1px solid #d1d9c4;border-radius:8px;display:block;width:100%}.technical-details>button{margin:10px 0}.technical-details summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-size:14px}.task-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.task-dialogue{font-size:21px;line-height:2.2;margin:20px 0}.memo{background:#eed;border:1px dashed #bdc7a6;padding:16px 20px;border-radius:12px}.memo h3{font-size:13px;color:#6f8058;margin-bottom:14px}.memo p{font-size:17px;margin:7px 0}.support-controls{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.support-controls button{font-size:11px;flex:1;padding:10px 8px;white-space:nowrap}.support-message{background:#edf1df;border-radius:12px;padding:13px;display:flex;align-items:flex-start;gap:10px}.support-message p{font-size:13px;margin:0}.worked-example{text-align:center;background:#f1eacd;border-radius:12px;padding:20px;margin-top:16px;font-size:27px}.worked-example p{font-size:10px;margin:7px 0 0}.task-work h2{font-size:22px}.task-work p{font-size:13px;color:#6d7f60}.proposal{display:flex;align-items:center;justify-content:center;gap:12px;margin:20px 0;flex-wrap:wrap}.proposal label{width:100%;text-align:center;font-size:12px;color:#7f8b72}.proposal output{padding:8px 20px;background:#f5edda;border-bottom:2px solid #d0b46b;border-radius:10px;font-size:35px;min-width:85px;text-align:center}.material-source{width:100%;background:#efe9d5;border-color:#d3c293;margin:15px 0;color:#807044}.material-source.selected{outline:3px solid #8ba96c}.fastener{display:block;width:20px;height:20px;border-radius:50%;border:5px solid #989b78;background:#ece6cc}.placement-grid{display:flex;gap:9px;margin:20px 0}.board{background:linear-gradient(90deg,#d2ae6a,#e1be82,#d2ae6a);border:1px solid #a98b4b;flex:1;min-width:0;padding:10px 5px;min-height:150px;flex-direction:column;gap:15px}.board:disabled{opacity:1}.board>span{font-size:12px;color:#7a6a44}.board>div{display:flex;flex-direction:column;gap:22px}.board i{width:18px;height:18px;border:2px dashed #ac8c50;border-radius:50%;background:#d3af6b;display:block}.board i.placed{background:#c2c6a7;border:5px solid #717b68;box-shadow:0 2px #5d654a}.board small{color:#7c6538}.garden .board{background:#977b52;border-color:#6c583e}.garden .board>div{flex-wrap:wrap;flex-direction:row;justify-content:center;gap:5px}.garden .board i{width:12px;height:12px;border-color:#c2a174}.garden .board i.placed{background:#edcd81;border:2px solid #d4b55d}.task-work details{font-size:12px;margin-top:16px}.task-work summary{min-height:48px;cursor:pointer}.task-complete{text-align:center;padding:15px 0}.task-complete>svg{color:#718e50;background:#edf1d8;border-radius:50%;padding:10px;width:65px;height:65px;margin-bottom:15px}.task-complete .primary{width:100%;margin-top:25px}.completed-groups{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin:25px 0}.completed-groups>span{border:1px solid #bfc99f;background:#edf0d5;padding:12px;display:flex;gap:5px;border-radius:8px}.completed-groups i{width:12px;height:12px;border-radius:50%;background:#88a666}.reduced *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(min-width:1200px){.world-map{aspect-ratio:1.13}.map-layout{grid-template-columns:1.72fr 1fr}.main{padding-top:35px}.page-heading{margin-bottom:23px}}@media(max-width:900px){.topbar{padding:0 24px}.main{padding:24px}.save-line{margin:10px 24px 0}.map-layout{gap:18px;grid-template-columns:1.25fr 1fr}.world-map{min-height:545px;aspect-ratio:auto}.map-stars{top:55px;right:10px;font-size:12px;padding:5px 8px}.map-node{width:43px;height:43px}.node-label{font-size:9px;padding:5px;top:45px}.journey-side .card{padding:19px}.adventure-layout{grid-template-columns:1fr 1fr;gap:18px}.interaction-panel{padding:18px}.equation{font-size:36px;gap:10px}.equation output{min-width:74px}.equation b{font-size:24px}.task-layout{grid-template-columns:1fr 1.1fr}.shop-grid{gap:15px}.shop-item{padding:16px}.shop-item h2{font-size:18px}.companion-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){:root{font-size:15px}.welcome{min-height:100dvh;align-items:flex-end}.welcome-art{top:0;right:0;bottom:0;left:0;background-position:center 30%;background-size:cover}.welcome-art:after{background:linear-gradient(0deg,#143d34 5%,#143d34e8,#143d3480 55%,#143d3405 90%)}.welcome-content{width:100%;max-width:none;margin:0;padding:40vh 25px 30px}.brand-mark{position:absolute;top:30px;left:25px;margin:0;text-shadow:0 1px 8px #173c33}.welcome h1{font-size:44px;line-height:1.85;margin:12px 0 15px}.welcome h1 br{display:none}.welcome h1>.title-join{font-size:23px}.welcome .eyebrow{font-size:11px;margin-bottom:10px}.welcome-copy{font-size:13px;line-height:2}.start-game{width:100%;min-height:55px}.sound-choice{justify-content:center}.prototype-note{text-align:center;margin-top:22px;font-size:9px}.app{padding-bottom:95px}.topbar{height:68px;padding:0 17px}.brand{gap:8px}.brand span{font-size:16px}.brand>svg{width:25px;height:25px}.brand small{font-size:7px;letter-spacing:.08em}.wallet{gap:12px}.wallet>span{font-size:15px;gap:4px}.wallet>span:nth-child(2){padding:6px 9px;font-size:14px}.wallet>span svg{width:15px}.wallet>span:first-child small{font-size:10px}.wallet .icon-btn{min-width:32px;width:32px;padding:3px}.save-line{margin:9px 17px 0;font-size:8px}.save-line>span:last-child{font-size:8px}.main{padding:24px 17px 10px}.page-heading{margin-bottom:15px}.page-heading h1{font-size:24px}.eyebrow{font-size:8px}.level-pill{font-size:11px;padding:8px 11px;gap:9px}.map-layout{display:flex;flex-direction:column;gap:18px}.world-map{width:100%;min-height:0;aspect-ratio:.78;border-radius:18px;border-width:4px;background-size:cover;background-position:center 58%}.map-label{font-size:11px;top:14px;left:14px;max-width:135px}.map-label small{font-size:8px;padding-left:21px}.map-stars{top:15px;right:10px;font-size:12px;letter-spacing:1px}.map-node{width:44px;height:44px;min-width:44px;min-height:48px}.node-label{font-size:9px;top:44px;padding:5px 6px}.map-footer{font-size:8px;padding:12px 10px;gap:6px}.journey-side{width:100%;display:grid;grid-template-columns:1fr;gap:14px}.journey-side .card{padding:20px}.next-quest h2{font-size:23px}.next-quest p{font-size:13px}.next-quest .primary{font-size:15px}.wish{padding:10px 5px}.story-strip{margin-top:16px;padding:12px;gap:10px}.story-strip>svg{width:38px}.story-strip p{font-size:11px}.story-strip>span{font-size:11px;white-space:nowrap}.bottom-nav{bottom:0;left:0;right:0;transform:none;border-radius:18px 18px 0 0;padding:8px 10px max(8px,env(safe-area-inset-bottom));gap:1px;justify-content:space-around;border-bottom:0}.bottom-nav button{width:20%;min-height:58px;font-size:11px;padding:8px 5px;gap:7px}.bottom-nav svg{width:20px;height:20px}.toast{bottom:90px;font-size:12px;padding:12px 17px}.error{margin:10px 17px 0;font-size:11px;flex-wrap:wrap}.battle-heading{margin-bottom:16px;gap:5px}.battle-heading h1{font-size:20px}.battle-heading small{font-size:10px}.battle-heading .back{font-size:11px;gap:1px}.battle-heading>.icon-btn{width:35px;min-width:35px}.adventure-layout{display:flex;flex-direction:column;gap:12px}.scene-panel{width:100%;border-radius:15px}.stage-canvas{aspect-ratio:900/400}.stage-canvas canvas{margin-top:-2%!important}.battle-hud{padding:10px 14px;font-size:11px;gap:4px}.battle-hud progress{height:9px}.battle-hud small{font-size:8px}.equipment-line{font-size:10px;padding:10px 14px;gap:13px}.interaction-panel{width:100%;min-height:0;padding:17px;border-radius:15px}.question-top{font-size:10px}.equation{font-size:40px;min-height:75px;margin:3px 0;gap:13px}.equation b{font-size:24px}.equation output{min-width:80px}.number-pad{gap:8px;margin-top:9px}.number-pad button{min-height:55px;font-size:27px}.number-pad .submit{font-size:12px}.input-tools{margin-top:3px}.input-tools button{font-size:11px}.feedback{padding:9px 10px;font-size:10px;margin-bottom:9px}.dialogue-text{font-size:19px;min-height:95px;margin:18px 0 26px;line-height:2.1}.dialogue-person>svg{width:58px;height:58px}.dialogue-person>span{font-size:13px}.dialogue>.text-button{margin-top:4px}.result h2{font-size:21px}.result p{font-size:12px}.result-emblem{width:60px;height:60px;margin-bottom:15px}.result-emblem svg{width:30px}.result .eyebrow{font-size:8px}.reward-numbers{margin:20px 0;gap:30px}.workshop-greeting{padding:17px;gap:14px}.workshop-greeting>svg{width:65px;height:65px}.workshop-greeting h2{font-size:18px}.workshop-greeting p{font-size:11px}.shop-grid{grid-template-columns:1fr;gap:20px}.shop-item{display:grid;grid-template-columns:100px 1fr;gap:8px 17px;padding:20px}.shop-object{grid-row:span 3;height:140px}.shop-object>svg{width:50px;height:50px}.shop-object>span{font-size:8px;padding:0 5px}.shop-item h2{font-size:20px;margin:5px 0}.shop-item p{font-size:12px;min-height:0;margin:0}.shop-item small{font-size:10px;min-height:0}.shop-item>button{grid-column:1/-1;margin-top:6px}.balance-note{grid-column:1/-1;margin-top:4px}.journal-grid{grid-template-columns:1fr;gap:16px}.card{padding:20px}.journal-grid h2{font-size:22px}.daily-questions>span{padding:11px 19px;font-size:19px}.rescue{padding:16px;gap:13px}.rescue h3{font-size:16px}.rescue p{font-size:11px}.rescue-number{font-size:24px}.rescue>svg{width:17px}.rescue-choices button{width:100%;font-size:11px}.companion-grid{grid-template-columns:1fr;gap:16px}.empty-state{grid-column:auto;padding:35px 20px}.companion p{min-height:0}.companion-portrait{height:95px;font-size:72px}.settings-card label{font-size:12px}.settings-card input[type=range]{width:130px}.task-layout{display:flex;flex-direction:column;gap:15px}.task-story,.task-work{width:100%;padding:18px}.task-dialogue{font-size:18px;margin:16px 0}.memo{padding:13px 16px}.memo p{font-size:15px}.memo h3{margin-bottom:8px}.support-controls{gap:6px;margin-bottom:5px}.support-controls button{font-size:10px;padding:8px 5px}.task-work h2{font-size:20px}.task-work p{font-size:12px}.placement-grid{gap:6px}.board{min-height:145px}.board i{width:16px;height:16px}.board small{font-size:9px}.completed-groups{gap:6px}.completed-groups>span{padding:9px}.completed-groups i{width:10px;height:10px}}@media(max-width:380px){.brand span{font-size:14px}.wallet{gap:8px}.topbar{padding:0 13px}.main{padding-left:13px;padding-right:13px}.welcome h1{font-size:38px}.map-stars{font-size:11px}.map-node{width:42px;min-width:42px}.node-label{font-size:8px}.equation{gap:11px}.number-pad button{min-height:54px}.page-heading h1{font-size:23px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}@media(max-width:650px){.app:has(.view-adventure){padding-bottom:15px}.app:has(.view-adventure) .bottom-nav{display:none}.view-adventure{padding-top:12px}.view-adventure .battle-heading{margin-bottom:10px}.view-adventure .stage-canvas{aspect-ratio:auto;height:110px}.view-adventure .stage-canvas canvas{margin-top:-18%!important}.view-adventure:not(:has(.equation)) .stage-canvas{height:auto;aspect-ratio:900/480}.view-adventure:not(:has(.equation)) .stage-canvas canvas{margin-top:0!important}.view-adventure .battle-hud,.view-adventure .equipment-line{padding:7px 14px}.view-adventure .interaction-panel{padding:13px 17px}.view-adventure .equation{min-height:62px;font-size:36px}.view-adventure .number-pad{gap:6px;margin-top:6px}.view-adventure .number-pad button{min-height:52px}.app:has(.view-adventure) .toast{top:72px;bottom:auto}.view-adventure .dialogue-text{min-height:100px}.view-adventure .input-tools button{min-height:42px}}@media(min-width:651px){.app:has(.view-adventure){padding-bottom:24px}.app:has(.view-adventure) .bottom-nav{display:none}.app:has(.view-adventure) .toast{top:88px;bottom:auto}}.story-location{display:flex;justify-content:space-between;gap:12px;color:#536a60;font-size:12px;margin-bottom:12px}.story-location>span:last-child{white-space:nowrap}.story-controls{display:flex;gap:8px;align-items:stretch}.story-controls .primary{flex:1;min-height:52px;width:auto}.story-previous{display:flex;align-items:center;justify-content:center;gap:3px;min-width:85px}.story-answer{background:#edf2e6;border-radius:10px;padding:12px}.story-log{margin-top:16px;text-align:left;font-size:14px}.story-log summary{cursor:pointer;padding:10px 0}.story-log>div{max-height:280px;overflow:auto;padding:0 10px;background:#f6f4ed;border-radius:8px}.story-log p{line-height:2;border-bottom:1px solid #deded0;padding:12px 0}.story-log b{display:block;color:#38675a;margin-bottom:4px}.story-reader{max-width:740px;margin:0 auto}.story-reader .dialogue:not(.cinematic-dialogue){background:#fffdf5;padding:24px;border-radius:18px;margin-top:20px}.story-reader .dialogue-text{min-height:150px}.story-library{margin-top:24px}.narration .dialogue-person{color:#596356;min-height:70px}.narration .dialogue-text{line-height:2.15}.app:has(.dialogue) .toast{display:none}.p01-art-label{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;font-family:Zen Maru Gothic,sans-serif;font-weight:700}.p01-heading-tools{display:flex;gap:4px}.app:has(.p01-cinematic){padding:0;background:#112b32}.app:has(.p01-cinematic) .topbar,.app:has(.p01-cinematic) .save-line,.app:has(.p01-cinematic) .bottom-nav{display:none}.view-adventure:has(.p01-cinematic),.p01-reader{max-width:1600px;padding:0;margin:auto}.view-adventure:has(.p01-cinematic) .battle-heading,.p01-review-heading{margin:0;padding:calc(4px + env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) 4px max(24px,env(safe-area-inset-left,0px));min-height:calc(56px + env(safe-area-inset-top,0px));background:#112b32;color:#fff8e7;display:flex;align-items:center;justify-content:space-between;gap:12px}.view-adventure:has(.p01-cinematic) .battle-heading h1{font-size:18px;color:inherit}.view-adventure:has(.p01-cinematic) .battle-heading small{display:none}.view-adventure:has(.p01-cinematic) .battle-heading button{color:#fff8e7;min-height:44px}.view-adventure:has(.p01-cinematic) .battle-heading .back{font-size:13px}.p01-cinematic{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(230px,1fr) auto;gap:0;min-height:calc(100svh - 56px - env(safe-area-inset-top,0px))}.p01-cinematic>.scene-panel{align-self:stretch;border-radius:0;box-shadow:none;min-height:230px;background:#234751}.p01-scene{position:relative;width:100%;height:100%;min-height:inherit;overflow:hidden;background:#234751}.p01-scene picture{display:block;position:absolute;top:0;right:0;bottom:0;left:0;transform:scale(var(--focus-zoom, 1));transition:transform .6s ease-out,transform-origin .6s ease-out}.p01-still picture{transition:none}.p01-shot-art{width:100%;height:100%;object-fit:cover;object-position:var(--art-position, 50% 50%);display:block}.p01-cinematic .p01-scene .stage-canvas{height:100%;width:100%;aspect-ratio:auto;display:grid;place-items:center}.p01-cinematic .p01-scene .stage-canvas canvas{width:100%!important;height:100%!important;max-height:630px;object-fit:contain;margin:0!important}.p01-cinematic>.interaction-panel{border:0;border-radius:0;min-height:0;padding:10px max(32px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(32px,env(safe-area-inset-left,0px));box-shadow:none;background:#fffcf2}.cinematic-dialogue{position:relative;max-width:960px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px}.cinematic-dialogue .story-location{position:absolute;right:0;top:0;margin:0;font-size:11px}.cinematic-dialogue .story-location>.rich-text{display:none}.cinematic-dialogue .dialogue-person{grid-column:1 / -1;gap:9px;min-height:36px;padding-right:80px}.cinematic-dialogue .dialogue-person .portrait{width:36px!important;height:36px!important}.cinematic-dialogue .dialogue-person>svg{width:24px;height:24px}.cinematic-dialogue .dialogue-person>span{font-size:15px}.cinematic-dialogue .dialogue-person>button{margin-left:4px;min-height:36px;width:40px}.cinematic-dialogue .dialogue-text{grid-column:1;min-height:58px!important;font-size:24px;line-height:1.95;margin:6px 0 4px;align-self:center}.cinematic-dialogue .story-controls{grid-column:2;grid-row:2;align-items:center}.cinematic-dialogue .story-controls button{min-height:52px}.cinematic-dialogue .story-controls .primary{min-width:155px}.cinematic-dialogue .story-previous{min-width:52px;padding:10px}.cinematic-dialogue .story-log{grid-column:1;margin:0;font-size:12px}.cinematic-dialogue .story-log summary{padding:9px 0}.cinematic-dialogue>.text-button{grid-column:2;margin:0;padding:6px;font-size:11px;justify-self:end;min-height:36px}.cinematic-dialogue .choice-stack,.cinematic-dialogue .story-answer{grid-column:1 / -1;margin:6px 0}.cinematic-dialogue:has(.choice-stack) .story-controls{grid-row:auto}.cinematic-dialogue:has(.choice-stack) .choice-stack{display:flex;flex-wrap:wrap;gap:8px}.cinematic-dialogue:has(.choice-stack) .choice-stack button{flex:1;min-width:150px;min-height:48px}.p01-location-map{position:absolute;left:3%;top:4%;width:clamp(88px,19%,235px);border:2px solid #fff7df;border-radius:12px;overflow:hidden;box-shadow:0 3px 18px #132d3a55;background:#80afc5}.p01-location-map img{width:100%;display:block}.p01-location-map>span{position:absolute;border:3px solid #ffe994;box-shadow:0 0 0 999px #0b243e3b,0 0 0 1px #314642;border-radius:5px}.p01-scene-tools{position:absolute;right:3%;bottom:4%;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.p01-scene-tools span,.p01-scene-tools button{background:#fffcf1f5;color:#204b46;border-radius:24px;padding:10px 15px;border:1px solid #ded6ba;font-size:13px;box-shadow:0 2px 12px #15323c33}.p01-scene-tools button{min-height:44px}.p01-overview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#173f50}.p01-overview-overlay img{width:100%;height:100%;object-fit:contain}.p01-reveal .p01-shot-art{animation:p01-shot-reveal .5s ease-out both}@keyframes p01-shot-reveal{0%{opacity:.2;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}.reduced .p01-shot-art,.p01-still .p01-shot-art{animation:none}.p01-art-fallback{min-height:320px;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;padding:100px 24px 30px;color:#fff9e6}.p01-art-fallback>strong{font-size:clamp(24px,4vw,40px)}.p01-art-fallback p{max-width:550px;line-height:2}.p01-art-fallback small{opacity:.8}.p01-battle .p01-scene{aspect-ratio:900 / 480}.p01-review{background:#112b32;min-height:100svh}.p01-review-heading a{color:#fff9e6;font-size:13px}.p01-review-heading select{max-width:240px;padding:6px 12px;border-radius:8px;min-height:44px}.p01-review-heading button{color:#fff9e6}.p01-review-options{padding:12px 24px 28px;display:flex;flex-wrap:wrap;gap:18px;color:#fff9e6;align-items:center}.p01-review-options label{display:flex;align-items:center;gap:6px}.p01-reader{max-width:1600px}.p01-reader .cinematic-dialogue{margin:auto;padding:0}.p01-review-status{margin:0;padding:12px 24px;color:#f6eccc;font-size:12px;line-height:1.8}.p01-reader .p01-cinematic{min-height:calc(100svh - 100px)}@media(min-width:1000px){.p01-cinematic{height:calc(100svh - 56px - env(safe-area-inset-top,0px))}}@media(max-width:650px){.view-adventure:has(.p01-cinematic) .battle-heading,.p01-review-heading{min-height:calc(52px + env(safe-area-inset-top,0px));padding:calc(4px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 4px max(14px,env(safe-area-inset-left,0px))}.view-adventure:has(.p01-cinematic) .battle-heading h1{font-size:16px}.p01-cinematic{height:calc(100svh - 52px - env(safe-area-inset-top,0px));min-height:640px;grid-template-rows:minmax(260px,1fr) auto}.p01-cinematic>.interaction-panel{padding:10px max(18px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px))}.cinematic-dialogue{display:grid;grid-template-columns:1fr auto;column-gap:8px}.cinematic-dialogue .dialogue-text{grid-column:1 / -1;font-size:21px;line-height:1.95;min-height:76px!important;margin:4px 0 10px}.cinematic-dialogue .story-controls{grid-row:3;grid-column:1 / -1}.cinematic-dialogue .story-controls .primary{min-width:0;flex:1}.cinematic-dialogue .story-log{grid-row:4}.cinematic-dialogue>.text-button{grid-row:4}.cinematic-dialogue:has(.choice-stack) .story-controls{grid-row:auto}.cinematic-dialogue:has(.choice-stack) .story-log,.cinematic-dialogue:has(.choice-stack)>.text-button{grid-row:auto}.p01-location-map{top:4%;left:4%;width:29%}.p01-battle .p01-scene{aspect-ratio:auto;height:125px}.p01-review-heading select{max-width:175px;font-size:12px}}@media(max-aspect-ratio:4/5){.p01-scene picture{transform:scale(var(--focus-portrait-zoom, 1))}.p01-shot-art{object-position:var(--art-portrait-position, 50% 50%)}}@media(max-height:540px)and (min-width:651px){.p01-cinematic{height:auto;min-height:600px}}.p01-cinematic{position:relative;display:block;height:calc(100svh - 56px - env(safe-area-inset-top,0px));min-height:510px}.p01-cinematic>.scene-panel{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.p01-cinematic>.interaction-panel{position:absolute;inset:auto 0 0;z-index:3;padding:0;background:transparent;pointer-events:none}.cinematic-dialogue{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;max-width:none;gap:0;padding:0 24px max(8px,env(safe-area-inset-bottom,0px));background:linear-gradient(0deg,#102c37 0 93px,transparent 93px);color:#fff8e7}.cinematic-dialogue .dialogue-bubble{position:relative;width:fit-content;max-width:min(960px,100%);margin:0 auto 16px;padding:18px 24px;border:1px solid #dfc78ed9;border-radius:14px;background:linear-gradient(110deg,#123343f7,#102c3bf0);box-shadow:0 8px 30px #00152166;pointer-events:auto;flex:0 1 auto}.cinematic-dialogue .dialogue-bubble+.story-controls{flex-basis:100%}.cinematic-dialogue .story-location{display:none}.cinematic-dialogue .dialogue-person{gap:8px;min-height:30px;padding:0;margin:0 0 8px;color:#f1d293}.cinematic-dialogue .dialogue-person>button{color:inherit;margin-left:auto;min-height:36px}.cinematic-dialogue.narration .dialogue-person>svg,.cinematic-dialogue.narration .dialogue-person>span{display:none}.cinematic-dialogue.narration .dialogue-person{position:absolute;right:3px;top:-39px;margin:0}.cinematic-dialogue.narration .dialogue-person>button{background:#123343e8;border:1px solid #dfc78e77}.cinematic-dialogue .dialogue-text{min-height:0!important;max-height:29svh;overflow-y:auto;overflow-wrap:anywhere;margin:0;font-size:clamp(19px,1.7vw,25px);line-height:1.95;font-weight:600;color:#fff8e7}.cinematic-dialogue rt{color:#f0dfb7}.cinematic-dialogue .story-controls{width:100%;justify-content:space-between;margin:0;padding-top:8px;pointer-events:auto}.cinematic-dialogue .story-controls button{flex:none;min-height:48px}.cinematic-dialogue .story-controls .primary{min-width:135px;color:#183d42;background:#ecd39b;border-color:#fff0c0;box-shadow:0 3px #856e40}.cinematic-dialogue .story-controls .secondary{color:#fff8e7;background:#294855;border-color:#849da266}.cinematic-dialogue .story-log,.cinematic-dialogue>.text-button{pointer-events:auto;color:#d2ded8;font-size:11px}.cinematic-dialogue .story-log[open]>div{position:absolute;bottom:100px;left:16px;right:16px;max-height:55svh;overflow:auto;background:#fffcf2;color:#234b45;padding:20px;border:1px solid #dfc78e;border-radius:12px;z-index:5}.cinematic-dialogue .story-log[open] rt{color:inherit}.cinematic-dialogue .choice-stack{display:flex;gap:8px}.cinematic-dialogue .choice-stack button{min-width:0!important;color:#fff8e7;background:#294855}.cinematic-dialogue .story-answer{color:#f0dfb7}.cinematic-dialogue[data-silent=true]{min-height:93px}.p01-cinematic .p01-scene .p01-actors{position:absolute;top:0;right:0;bottom:0;left:0;height:100%}.p01-cinematic .p01-scene .p01-actors canvas{max-height:none;object-fit:fill}.p01-actor-fallback{position:absolute;top:5%;left:8%;right:8%;color:#fff8e7;background:#123343ed;padding:18px;border-radius:10px}.p01-contained-art:before{content:"";position:absolute;top:-24px;right:-24px;bottom:-24px;left:-24px;background:inherit;filter:blur(15px) brightness(.55)}.cinematic-dialogue .dialogue-person span{color:inherit}.p01-scene-tools{bottom:auto;top:5%}.p01-reader{color:#fff8e7;background:#112b32}.p01-reader>h1{color:inherit}.p01-reader .p01-cinematic{min-height:560px}.p01-battle .p01-scene{min-height:180px;height:240px}.p01-battle .p01-actors{height:100%}.p01-battle .p01-actors canvas{width:100%;height:100%}@media(max-width:650px){.p01-cinematic{height:calc(100svh - 52px - env(safe-area-inset-top,0px));min-height:560px}.cinematic-dialogue{padding:0 12px max(8px,env(safe-area-inset-bottom,0px))}.cinematic-dialogue .dialogue-bubble{padding:15px 17px;margin-bottom:16px}.cinematic-dialogue .story-controls .primary{flex:none;min-width:125px}.cinematic-dialogue .dialogue-text{font-size:19px;max-height:30svh;margin:0}.cinematic-dialogue .choice-stack{flex-direction:row}.cinematic-dialogue .choice-stack button{font-size:14px;padding:10px 6px}.p01-battle .p01-scene{height:180px}}.welcome{display:block;isolation:isolate;background:#122f36;color:#fff5dc;overflow:clip}.welcome .welcome-art{inset:0 0 auto;height:min(760px,90svh);background:url(/assets/art/p01-final/p01-ship-overview-v1.png) center 28% / cover no-repeat;z-index:-2}.welcome .welcome-art:after{background:linear-gradient(180deg,#0b293940,#0b293910 25%,#123039a8 66%,#122f36)}.welcome:after{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 50% 18%,#04273500 15%,#092d3540 80%)}.welcome .welcome-content{width:min(1120px,calc(100% - 56px));max-width:none;margin:0 auto;padding:22px 0 20px}.welcome-hero{text-align:center;position:relative;padding-bottom:32px}.welcome .brand-mark{position:relative;inset:auto;display:flex;align-items:center;justify-content:center;gap:13px;width:fit-content;margin:0 auto 18px;padding:10px 24px 11px 19px;border:0;border-radius:0;color:#fff3d5;background:linear-gradient(110deg,#082938ef,#0e3442ef);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);box-shadow:inset 0 0 0 1px #e8d29a45;letter-spacing:normal}.welcome .brand-mark:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,#f4d38e,transparent)}.studio-emblem{display:block;width:44px;height:44px;flex-shrink:0;filter:drop-shadow(0 2px 4px #00182270)}.studio-wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;line-height:1}.studio-label{color:#e6c78c;font-family:Segoe UI,sans-serif;font-size:9px;font-weight:600;letter-spacing:.38em;text-transform:uppercase;padding-left:2px}.studio-name{font-family:Georgia,Times New Roman,serif;font-size:29px;font-weight:400;letter-spacing:.09em;text-shadow:0 2px 5px #00192780}.welcome-invitation{margin:0 0 5px;font-size:12px;font-weight:700;letter-spacing:.18em;color:#fff8dd;text-shadow:0 2px 8px #07283a,0 1px 3px #07283a}.welcome h1.welcome-title{margin:0 auto;width:min(660px,100%);font-size:clamp(20px,2.6vw,29px);line-height:1.5}.welcome-title-art{display:block;width:100%;height:auto;filter:drop-shadow(0 6px 9px #082534a6);animation:welcome-logo-arrive .9s ease-out both}.welcome-title-fallback{display:block;margin:30px 0;color:#ffe49c;font-size:clamp(38px,7vw,72px);text-shadow:2px 3px #684626,0 6px 14px #081f2c}.welcome-subtitle{display:inline-block;padding:4px 25px 8px;margin-top:-3px;border-block:1px solid #ffe8a26b;color:#fff2c2;background:linear-gradient(90deg,transparent,#103343e8 18%,#103343e8 82%,transparent);text-shadow:0 2px 4px #061a25;letter-spacing:.07em}.welcome-subtitle rt{font-size:max(.44em,9px);letter-spacing:.04em}.welcome .welcome-copy{margin:12px 0 0;font-size:12px;line-height:1.9;color:#fffbe8;text-shadow:0 2px 7px #081e2c,0 1px 3px #081e2c}.welcome-preparation{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,52px);padding:27px 32px 30px;border:1px solid #e5c98161;border-radius:26px;background:linear-gradient(135deg,#183e46f5,#102e37f5);box-shadow:0 14px 45px #071e3059,inset 0 1px #f9df982b}.welcome-name-panel{min-width:0}.welcome .player-name-form{margin:0}.welcome .player-name-heading{font-size:16px;color:#fff0c9;margin-top:0}.welcome .player-name-form label{font-size:12px;gap:5px}.welcome .player-name-form input{border:1px solid #e1c795;border-radius:8px;min-height:47px;background:#fffcf0;box-shadow:inset 0 2px 5px #7b604712}.welcome .player-name-form .note{font-size:11px;margin-block:8px 12px}.welcome .player-name-actions{gap:8px}.welcome .player-name-actions button{min-height:43px;padding:9px 14px;font-size:12px}.welcome .start-game{min-width:0;width:100%;margin-top:20px;min-height:55px;border:1px solid #ffde8f;color:#173941;background:linear-gradient(135deg,#ffe5a0,#dbab48);box-shadow:0 4px #80602d,0 5px 23px #d1a64324;font-size:16px}.welcome-return-note{color:#e3e9dc;font-size:12px;margin-top:0}.welcome .note{color:#dce6de}.welcome-options{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;padding-top:19px}.welcome .sound-choice{min-height:32px;margin:0;font-size:11px;color:#e5eadf}.welcome .prototype-note{text-align:center;margin:13px 0 0;line-height:1.8;color:#b6cbc7;font-size:10px}.avatar-choice{margin:16px 0}.welcome .avatar-choice{margin:0}.avatar-choice h2{font-size:18px;margin:0 0 5px}.avatar-choice>p{font-size:12px;margin:0 0 17px;line-height:1.8}.welcome .avatar-choice h2{color:#fff0c9;font-size:17px}.welcome .avatar-choice>p{color:#dbe8df}.avatar-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.avatar-card{position:relative;isolation:isolate;display:grid;place-items:end center;width:100%;min-width:0;height:294px;padding:26px 8px 18px;overflow:hidden;border:2px solid #b9c2b89e;border-radius:20px 20px 16px 16px;color:#fff9df;background:#234453;box-shadow:0 6px 17px #0a252d66,inset 0 0 0 4px #e9d49f1f;transition:border-color .2s,box-shadow .2s,transform .2s}.avatar-card:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid #fff4cb55;border-radius:14px;pointer-events:none}.avatar-card-scenery{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#153c5530,#102a4345 55%,#0a293bab),url(/assets/art/p01-final/p01-route-to-tower-v1.png) 35% 50% / auto 100%}.avatar-girl .avatar-card-scenery{background-position:0 0,58% 50%}.avatar-ground-light{position:absolute;z-index:-1;left:17%;right:17%;bottom:10px;height:24px;border:1px solid #ffeaa982;border-radius:50%;background:radial-gradient(ellipse,#d1f4e070,#b7e6d421 65%,transparent 72%);box-shadow:0 0 18px #deedb640}.avatar-figure{display:block;width:100%;height:100%;min-height:0;transform-origin:50% 97%;animation:avatar-breathe 4.8s ease-in-out infinite}.avatar-girl .avatar-figure{animation-delay:-2.4s}.avatar-preview-art{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 4px 3px #08202b60)}.avatar-figure [data-player-preview-fallback]{height:100%;align-content:center;font-size:11px}.avatar-card:hover:not(:disabled){transform:translateY(-4px);background:#234453;border-color:#f1d086}.avatar-card:active:not(:disabled){transform:translateY(-1px) scale(.985)}.avatar-card[aria-pressed=true]{border:3px solid #ffda77;padding:25px 7px 17px;box-shadow:0 0 0 3px #d8b45933,0 0 27px #e7b54844,0 8px 20px #061f2c80}.avatar-card[aria-pressed=true] .avatar-ground-light{background:radial-gradient(ellipse,#fff7beab,#ffce5b55 55%,transparent 72%);box-shadow:0 0 24px #ffdc8180}.avatar-selected{position:absolute;right:10px;top:10px;width:34px;height:34px;display:grid;place-items:center;border:2px solid #fff3c5;border-radius:50%;color:#123f3e;background:linear-gradient(135deg,#fff0b1,#e7b952);box-shadow:0 3px 9px #06212d55;opacity:0;transform:scale(.65)}.avatar-card[aria-pressed=true] .avatar-selected{opacity:1;transform:scale(1);animation:avatar-selected-pop .38s ease-out}.avatar-breeze{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.avatar-breeze i{position:absolute;left:-15%;top:27%;width:7px;height:4px;border-radius:80% 0;background:#f5df93;box-shadow:0 0 8px #f4e9b280;opacity:0;animation:avatar-breeze 7s linear infinite}.avatar-breeze i:nth-child(2){top:55%;animation-delay:-2s}.avatar-breeze i:nth-child(3){top:76%;animation-delay:-4s;width:4px;height:3px}.avatar-breeze i:nth-child(4){top:42%;animation-delay:-6s;width:3px;height:3px}.avatar-girl .avatar-breeze i{animation-duration:9s;background:#d5f5df}.welcome-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none}.welcome-atmosphere span{position:absolute;left:var(--drift-left);top:45%;width:4px;height:4px;background:#ffed9a;border-radius:50%;box-shadow:0 0 14px 3px #e8d99160;opacity:0;animation:welcome-drift var(--drift-duration) var(--drift-delay) linear infinite}@keyframes welcome-logo-arrive{0%{opacity:0;transform:translateY(9px) scale(.975)}to{opacity:1;transform:none}}@keyframes avatar-breathe{0%,to{transform:translateY(0) rotate(-.35deg)}50%{transform:translateY(-3px) rotate(.45deg)}}@keyframes avatar-breeze{0%{transform:translateY(15px) rotate(0);opacity:0}15%{opacity:.8}80%{opacity:.45}to{transform:translate(260px,-45px) rotate(180deg);opacity:0}}@keyframes avatar-selected-pop{0%{transform:scale(.55)}70%{transform:scale(1.13)}to{transform:scale(1)}}@keyframes welcome-drift{0%{opacity:0;transform:translateY(120px)}20%,70%{opacity:.6}to{opacity:0;transform:translate(45px,-280px)}}.reduced .avatar-figure,.reduced .avatar-breeze i,.reduced .avatar-selected,.reduced .welcome-atmosphere span,.reduced .welcome-title-art{animation:none}.reduced .avatar-card{transition:none}@media(prefers-reduced-motion:reduce){.avatar-figure,.avatar-breeze i,.avatar-selected,.welcome-atmosphere span,.welcome-title-art{animation:none!important}.avatar-card{transition:none}}@media(min-width:1250px){.welcome .welcome-content{padding-top:24px}.welcome-hero{padding-bottom:27px}.welcome h1.welcome-title{width:600px}}@media(max-width:760px){.welcome .welcome-content{width:min(560px,calc(100% - 28px));padding-top:16px}.welcome .welcome-art{height:580px;background-position:58% 20%}.welcome .brand-mark{margin-bottom:18px;padding:8px 21px 9px 16px;gap:11px}.studio-emblem{width:38px;height:38px}.studio-name{font-size:26px}.welcome-invitation{font-size:10px}.welcome-hero{padding-bottom:25px}.welcome h1.welcome-title{width:100%;font-size:20px}.welcome-subtitle{margin-top:8px;padding:3px 15px 6px}.welcome .welcome-copy{font-size:11px;margin-top:11px}.welcome-preparation{grid-template-columns:1fr;gap:27px;padding:22px 18px 25px;border-radius:20px}.welcome .avatar-choice h2{font-size:16px}.avatar-choice-grid{gap:12px}.avatar-card{height:250px}.welcome-name-panel{border-top:1px solid #e5d09b45;padding-top:22px}.welcome .player-name-heading{font-size:15px}.welcome .player-name-form label{font-size:13px}.welcome-options{gap:8px 18px;padding-top:14px}}@media(max-width:420px){.avatar-card{height:228px;padding-inline:3px}.avatar-card[aria-pressed=true]{padding-inline:2px}.avatar-selected{right:8px;top:8px;width:29px;height:29px}.avatar-selected svg{width:18px;height:18px}.welcome .avatar-choice>p{font-size:11px}}
