/* Shared scene motion lives in scene-ambience.css; the remaining UI stays quiet. */
.intro-resume{display:flex;align-items:center;gap:10px;padding:7px 0 14px;margin-bottom:20px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.intro-resume>span{color:#9b86a5;font-size:20px}.intro-resume p{margin:0;line-height:1.7}.intro-resume button{margin-left:auto;min-height:44px;white-space:nowrap;color:#75647f;font-size:11px}.intro-resume button:hover{text-decoration:underline;text-underline-offset:5px}
.home-atmosphere-bar{display:flex;align-items:center;gap:12px;margin:12px 2px 0;padding:9px 11px 9px 14px;border:1px solid #fffdf5;background:#faf6eea8;border-radius:14px;color:var(--muted)}
.home-atmosphere-bar>span:first-child{font-size:16px;color:#998aa2}.home-atmosphere-bar strong{font:12px var(--serif);font-weight:400}.home-atmosphere-bar small{display:block;font-size:9px;line-height:1.55;margin-top:1px}.home-atmosphere-bar button{margin-left:auto;min-height:34px;padding:5px 11px;border-radius:18px;background:#fffaf1;border-color:#e5dbcd;font-size:10px;white-space:nowrap}
.home-mailbox{margin-top:13px;border-top:1px solid var(--line);color:var(--muted)}.home-mailbox summary{list-style:none;display:flex;align-items:center;min-height:44px;cursor:pointer;font-size:10px;letter-spacing:.08em}.home-mailbox summary::-webkit-details-marker{display:none}.home-mailbox summary::before{content:'✉';font:16px var(--serif);margin-right:10px;color:#aa9baa}.home-mailbox summary::after{content:'＋';margin-left:auto;color:#9f91a5}.home-mailbox[open] summary::after{content:'−'}.home-mailbox p{padding:0 2px 12px 26px;margin:0;font-size:10px;line-height:1.85}
.home-trip-chip{display:flex;align-items:center;gap:12px;margin-top:13px;padding:11px 13px;border:1px solid #e5ddd1;background:linear-gradient(120deg,#fbf7ee,#eee8ef80);border-radius:15px}.home-trip-chip>span{font:20px var(--serif);color:#95869c}.home-trip-chip div{min-width:0}.home-trip-chip strong{display:block;font:13px var(--serif);font-weight:400}.home-trip-chip small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.home-trip-chip button{margin-left:auto;padding:6px 10px;min-height:36px;font-size:10px;white-space:nowrap}
.home-letter.is-ready{animation:letterBreathe 3.4s ease-in-out infinite}
.arrival-modal{width:min(540px,calc(100% - 28px));background:linear-gradient(145deg,#fbf7ef,#eee8ef)}.arrival-modal .modal-header{margin-bottom:8px}.letter-arrival{text-align:center;padding:5px 5px 2px}.letter-arrival__seal{position:relative;width:132px;height:86px;margin:7px auto 23px;background:#fbf3df;border:1px solid #cbbca6;border-radius:4px;box-shadow:0 13px 30px #71637614;animation:letterLand .65s cubic-bezier(.2,.8,.2,1) both}.letter-arrival__seal::before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,transparent 49%,#d8c9b366 50% 51%,transparent 52%),linear-gradient(215deg,transparent 49%,#d8c9b366 50% 51%,transparent 52%)}.letter-arrival__seal::after{content:'✧';position:absolute;left:50%;top:50%;display:grid;place-items:center;width:30px;height:30px;transform:translate(-50%,-30%);border-radius:50%;background:#ad9ab2;color:#fff9ef;border:3px solid #f4ecdd;box-shadow:0 3px 8px #6f617329;font:16px var(--serif)}.letter-arrival h3{font-size:27px;margin:0 0 9px}.letter-arrival p{font-size:12px;line-height:1.95;color:var(--muted);max-width:36em;margin:0 auto}.letter-arrival .button-row{justify-content:center;margin-top:23px}.glass-dismiss{position:relative;isolation:isolate;min-height:44px;padding:0 13px;border:0;border-radius:999px;background:transparent;box-shadow:none;font-size:10px;color:#746d76}.glass-dismiss::before{content:'';position:absolute;z-index:-1;inset:4px 0;border:1px solid #fffdf8c9;border-radius:999px;background:linear-gradient(145deg,#fffdf69c,#eee7ef64 66%,#e4dce85c);box-shadow:inset 0 1px 1px #fff,0 0 0 1px #ae9db525,0 6px 18px #65596a09;backdrop-filter:blur(16px) saturate(.76);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.glass-dismiss:hover{background:transparent;box-shadow:none}.glass-dismiss:hover::before,.glass-dismiss:focus-visible::before{background:linear-gradient(145deg,#fffef9d2,#ece4ef90);box-shadow:inset 0 1px 1px #fff,0 0 0 1px #a891b43d,0 7px 20px #65596a10;transform:scale(1.025)}.glass-dismiss:active{transform:none}.glass-dismiss:active::before{transform:scale(.97)}.letter-arrival .glass-dismiss{flex:0 0 auto}
.away-page{max-width:980px;margin:0 auto}.away-page__heading{text-align:center;margin:5px auto 22px}.away-page__heading .eyebrow{margin-bottom:7px}.away-page__heading h1{font-size:clamp(31px,5vw,49px);margin:0 0 7px}.away-page__heading p{color:var(--muted);font-size:12px}.away-stage{position:relative;overflow:hidden;min-height:420px;border:1px solid #fffdf7;border-radius:28px;background:linear-gradient(165deg,#e8dfdd,#c8b7bf 52%,#ad9ca8);box-shadow:0 18px 55px #685c6d18}.away-stage__sky{position:absolute;inset:0;background:radial-gradient(circle at 76% 16%,#f9e4b9 0 24px,transparent 25px),radial-gradient(ellipse at 26% 72%,#f3e8df78,transparent 45%),linear-gradient(155deg,#eee6e2,#bbaab5 62%,#968995)}.away-stage__stars{position:absolute;inset:0;background-image:radial-gradient(circle,#fff3d7 0 1.2px,transparent 1.7px),radial-gradient(circle,#f4e6dc 0 1px,transparent 1.5px);background-size:97px 89px,143px 131px;opacity:.65;animation:awayStars 4s ease-in-out infinite}.away-stage__hills{position:absolute;left:-5%;right:-5%;bottom:-10%;height:58%;background:linear-gradient(165deg,#8f838c 0 45%,#746d77 46% 100%);clip-path:polygon(0 72%,14% 42%,28% 67%,43% 28%,60% 60%,75% 36%,100% 70%,100% 100%,0 100%)}.away-route{position:absolute;inset:12% 10% 25%;width:80%;height:63%;overflow:visible}.away-route path{fill:none;stroke:#fff3de;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:2 10;vector-effect:non-scaling-stroke}.away-route circle{fill:#fff4db;stroke:#97858f;stroke-width:2;vector-effect:non-scaling-stroke}.away-traveler{position:absolute;left:52%;top:40%;display:grid;place-items:center;width:52px;height:52px;border:1px solid #fff6e9;background:#f7ecdfd9;border-radius:50% 50% 48% 52%;box-shadow:0 12px 30px #564c5926;color:#806f7e;font:24px var(--serif);animation:travelerFloat 3.8s ease-in-out infinite}.away-cloud{position:absolute;width:130px;height:36px;border-radius:50%;background:#f8f0ea8f;filter:blur(.2px);animation:awayCloud 18s linear infinite}.away-cloud::after,.away-cloud::before{content:'';position:absolute;border-radius:50%;background:inherit}.away-cloud::before{width:60px;height:60px;left:24px;bottom:0}.away-cloud::after{width:74px;height:52px;right:13px;bottom:0}.away-cloud--one{left:-15%;top:20%}.away-cloud--two{left:55%;top:30%;animation-delay:-9s;transform:scale(.68);opacity:.7}
.away-panel{position:relative;z-index:2;width:min(390px,calc(100% - 36px));margin:225px auto 24px;padding:22px 24px;background:#fbf7efea;border:1px solid #fffdf8;border-radius:22px;box-shadow:0 15px 45px #5c506324;backdrop-filter:blur(14px);text-align:center}.away-panel .eyebrow{font-size:8px;margin-bottom:8px}.away-panel h2{font-size:24px;margin:0 0 5px}.away-panel p{font-size:11px;line-height:1.8;color:var(--muted);margin:0 0 13px}.away-panel .progress-track{margin:14px 0}.away-panel .button-row{justify-content:center;margin-top:14px}.away-panel .button-row button{font-size:11px}.away-panel__quiet{display:block;font-size:9px;color:var(--muted);margin-top:12px}
.return-page{max-width:720px;margin:0 auto;text-align:center}.return-page__card{padding:clamp(28px,5vw,55px);border:1px solid #fffdf7;border-radius:30px;background:radial-gradient(circle at 50% 20%,#fff9e9,#f5eee8 56%,#e9e2ea);box-shadow:0 18px 55px #66596d14}.return-page__card .letter-arrival__seal{margin-top:18px}.return-page__card h1{font-size:clamp(32px,5vw,52px);margin-bottom:10px}.return-page__card>p{color:var(--muted);font-size:12px;line-height:1.9}.return-page__card .button-row{justify-content:center;align-items:center;margin-top:26px}.return-page__card .glass-dismiss{align-self:center}
.destination-choice.is-short{border-color:#dccfbd}.destination-count{display:inline-flex;align-items:center;gap:6px}.destination-count::before{content:'';width:5px;height:5px;border-radius:50%;background:#a89aab}
@keyframes letterBreathe{50%{box-shadow:0 8px 27px #8a78921d;transform:translateY(-2px)}}
@keyframes letterLand{from{opacity:0;transform:translateY(-24px) rotate(-5deg)}to{opacity:1;transform:none}}
@keyframes awayStars{50%{opacity:.35}}
@keyframes travelerFloat{50%{transform:translateY(-8px) rotate(3deg)}}
@keyframes awayCloud{from{translate:-10vw 0}to{translate:85vw 0}}
@media(max-width:760px){.home-atmosphere-bar{flex-wrap:wrap}.home-atmosphere-bar button{margin-left:auto}.home-trip-chip{align-items:flex-start;flex-wrap:wrap}.home-trip-chip button{margin-left:32px}.away-stage{min-height:460px;border-radius:22px}.away-panel{margin-top:245px;padding:20px 18px}.away-page__heading h1{font-size:30px}.return-page__card{border-radius:22px}}
@media(max-width:380px){.home-atmosphere-bar button{width:100%;margin:2px 0 0}.away-panel{width:calc(100% - 24px)}.away-panel .button-row{display:grid}.away-panel .button-row button{width:100%}.intro-resume{gap:8px;flex-wrap:wrap}.intro-resume button{margin-left:26px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.home-letter.is-ready,.letter-arrival__seal,.away-stage *{animation:none!important}}
body[data-magic-motion=off] .home-letter.is-ready,body[data-magic-motion=off] .letter-arrival__seal,body[data-magic-motion=off] .away-stage *{animation:none!important}
@media(prefers-reduced-transparency:reduce){.home-atmosphere-bar,.home-trip-chip,.away-panel,.arrival-modal{background:#f8f3ea;backdrop-filter:none}.glass-dismiss::before{background:#f4eee7;backdrop-filter:none}}
@media(forced-colors:active){.home-atmosphere-bar,.home-trip-chip,.away-stage,.away-panel,.return-page__card,.arrival-modal{background:Canvas;color:CanvasText;border-color:CanvasText}.glass-dismiss::before{background:ButtonFace;border:1px solid ButtonText;box-shadow:none}}

/* A discovered map and one calm budget decision; unknown destinations stay off the page. */
.discovery-tease{display:flex;align-items:center;gap:9px;margin:17px 2px 0;color:#93859a;font-size:10px;line-height:1.8}.discovery-tease>span{font-size:19px;color:#b4a4be}
.journey-budget{padding:16px 0 4px;margin:3px 0 8px;border-block:1px solid var(--line)}.journey-budget label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--ink);font-size:12px}.journey-budget output{font:20px var(--serif);color:#806d8f;font-variant-numeric:tabular-nums}.journey-budget label small{font-size:9px;color:var(--muted)}.journey-budget input[type=range]{display:block;width:100%;height:44px;margin:6px 0 0;cursor:pointer;accent-color:#ad9aba;background:transparent}.journey-budget input[type=range]:disabled{opacity:.5;cursor:default}.budget-scale{display:flex;justify-content:space-between;color:#9a9098;font-size:9px;margin-top:-3px}.journey-budget p,.budget-note{font-size:11px;color:var(--muted);line-height:1.9}.journey-budget p{margin:13px 0 0}.journey-budget .budget-explain{font-size:10px;min-height:44px;padding:5px 0;color:#8d779e}.budget-shortfall{display:flex;gap:10px;align-items:center;padding:13px 14px;margin:10px 0 3px;border:1px solid #e5dce7;border-radius:14px;background:linear-gradient(135deg,#f8f3e9,#f0e9f1)}.budget-shortfall>span{font-size:22px;color:#b1a1bb}.budget-shortfall p{font-size:11px;line-height:1.9;margin:0}.budget-shortfall small{font-size:10px;color:var(--muted)}.away-panel .trip-receipt{font-size:10px;color:#8d7b91;border-block:1px solid #d8cadb66;padding:8px 0;margin:9px 0 13px;font-variant-numeric:tabular-nums}.album-blank{text-align:center;border:1px solid #fffdf8;border-radius:24px;background:linear-gradient(140deg,#faf6ee,#efe9f1);padding:48px 22px;margin-top:25px}.album-blank>span{font:32px var(--serif);color:#ac9ab7}.album-blank h2{font-size:24px;margin:16px 0 10px}.album-blank p{font-size:12px;color:var(--muted);line-height:1.9}.album-blank button{margin-top:16px;font-size:12px}
@media(max-width:380px){.journey-budget label{flex-wrap:wrap;gap:5px}.journey-budget output{font-size:18px}}
@media(forced-colors:active){.budget-shortfall,.album-blank{background:Canvas;border-color:CanvasText}.journey-budget output,.discovery-tease,.discovery-tease>span{color:CanvasText}}
.mystery-route{display:flex;align-items:center;gap:20px;margin-top:24px;padding:23px 22px;border:1px solid #fffdf7;border-radius:20px;background:linear-gradient(135deg,#fffcf38f,#eee5f17d);box-shadow:inset 0 1px 0 #fff9}
.mystery-route>img{width:48px;height:48px;flex:none;opacity:.7}
.mystery-route>div{min-width:0}
.mystery-route .eyebrow{font-size:8px;letter-spacing:.16em;color:#92809d;margin-bottom:8px}
.mystery-route h2{font-size:23px;line-height:1.5;margin:0 0 7px}
.mystery-route p:last-child{font-size:12px;line-height:1.9;color:var(--muted);margin:0}
@media(max-width:540px){.mystery-route{gap:15px;padding:20px 18px}.mystery-route>img{width:35px;height:35px}.mystery-route h2{font-size:20px}.mystery-route p:last-child{font-size:11px}}
