/* Readable surfaces and consistent destinations, designed at 320px first. */
.keep-scene:before{background:linear-gradient(90deg,#071f2cd9 0%,#082c376b 52%,#082c370a 85%),linear-gradient(0deg,#102e35,transparent 48%)}
.scene-heading{right:12px}.scene-heading .eyebrow{color:#fff4d7}.scene-heading h1{color:#fff4d7;text-shadow:0 2px 8px #031a28}
.scene-caption{color:#e7eee2;text-shadow:0 1px 5px #001822}
.home-progress{display:flex;flex-wrap:wrap;gap:8px 14px;padding:13px 0 17px;margin-bottom:12px;border-bottom:1px solid #85a79940;color:#c4d8cd;font-size:11px;line-height:1.5}
.home-progress>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.home-progress b{color:#f6e9c8;font-variant-numeric:tabular-nums}.home-progress .game-icon{width:15px;height:15px;color:#d5c58f}
.journey-card:before{background:linear-gradient(0deg,#08272f 0%,#08272ff5 19%,#08272fc9 39%,#08272f05 76%)}
.journey-caption{color:#d8e5d9;font-size:12px;line-height:1.5;max-width:calc(100% - 28px)}.journey-tag{background:#0a2c35ed;backdrop-filter:none;color:#fff0cd}
.realm-banner{background-image:linear-gradient(90deg,#092830f5,#092830ad 65%,#09283066),url('../assets/remaster/keep.webp');min-height:200px}
.realm-journal{background-image:linear-gradient(90deg,#092830f5,#092830bc 65%,#09283088),url('../assets/remaster/sanctuary.webp')}
.realm-banner p{color:#d0e0d5;font-size:13px}.realm-banner .eyebrow{color:#e2d4ad}
.realm-grid{align-items:stretch;gap:12px}
.realm-card.destination-card{--destination-image:url('../assets/remaster/keep.webp');--destination-position:center;--destination-tint:transparent;display:flex;position:relative;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:0;min-height:0;background:#163840;border:1px solid #8da99a55;border-radius:18px;box-shadow:0 5px 18px #02192135;text-align:left;isolation:isolate}
.destination-card .destination-art{display:block;position:relative;height:108px;flex-shrink:0;background-image:linear-gradient(0deg,#0b2c3870,transparent 75%),linear-gradient(var(--destination-tint),var(--destination-tint)),var(--destination-image);background-size:cover;background-position:var(--destination-position);border-bottom:1px solid #92b29d30;overflow:hidden}
.destination-card .menu-emoji{position:absolute;left:11px;top:11px;display:grid;place-items:center;width:35px;height:35px;border:1px solid #d6dabc55;border-radius:11px;background:#0c2c38e8;color:#f4dfab;filter:none}.destination-card .menu-emoji .game-icon{width:21px;height:21px}
.destination-card .destination-copy{display:flex;flex-direction:column;gap:7px;padding:14px 13px 17px;flex:1;min-width:0;background:linear-gradient(135deg,#1a3e46,#12343c)}
.destination-card .menu-title{display:block;font:600 16px/1.25 var(--font-body);letter-spacing:-.02em;color:#f8edd5;overflow-wrap:normal;word-break:normal;hyphens:none;padding-right:10px}
.destination-card .menu-sub{font-size:12px;line-height:1.5;color:#c1d4c9;padding:0;margin:0}
.destination-card .card-arrow{position:absolute;right:10px;top:119px;color:#cabc91;opacity:1}.destination-card .card-arrow .game-icon{width:12px;height:12px}
.destination-card:active{transform:scale(.98)}
.destination-card.card-wilds,.destination-card.card-pets,.destination-card.card-expedition{--destination-image:url('../assets/remaster/glade.webp');--destination-position:35% center}
.destination-card.card-delve,.destination-card.card-tower,.destination-card.card-daily,.destination-card.card-arena,.destination-card.card-forge,.destination-card.card-craft,.destination-card.card-journal,.destination-card.card-collection,.destination-card.card-home,.destination-card.card-legacy{--destination-image:url('../assets/remaster/sanctuary.webp')}
.destination-card.card-tower{--destination-position:80% 20%}.destination-card.card-daily{--destination-position:20% 65%;--destination-tint:#736b222e}.destination-card.card-arena{--destination-position:80% 80%;--destination-tint:#71356240}
.destination-card.card-forge,.destination-card.card-craft{--destination-tint:#ad5b2940;--destination-position:90% 85%}.destination-card.card-market{--destination-position:80% 35%}.destination-card.card-send{--destination-position:5% 60%}.destination-card.card-receipts{--destination-position:65% 70%}.destination-card.card-leaderboard,.destination-card.card-events{--destination-position:80% 15%;--destination-tint:#b1913220}.destination-card.card-stats{--destination-position:15% 50%}
.modal{background:linear-gradient(140deg,#24474d,#102f39);color:#e5ece1;overflow-x:hidden;scroll-padding:20px}.modal h3{font-size:27px;line-height:1.15;text-wrap:balance}.modal p{color:#d0e0d5}.modal .dim{color:#c1d5c8}
.modal-actions{position:static;margin:18px 0 0;padding:0;background:none;display:flex;flex-wrap:wrap;gap:10px}.modal-actions .btn{flex:1 1 120px;min-width:0;min-height:48px;line-height:1.45;white-space:normal;word-break:normal;overflow-wrap:break-word;padding:13px 15px}
.modal-actions.actions-stacked,.modal-actions.encounter-choices{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.modal-actions .encounter-choice{display:flex;align-items:center;gap:13px;width:100%;padding:16px;text-align:left;border:1px solid #95b79c69;border-radius:16px;background:linear-gradient(115deg,#31585b,#1b414a);box-shadow:inset 0 1px #e2eac51a;color:#f4e6c5}
.choice-icon{display:grid;place-items:center;width:41px;height:41px;flex:0 0 41px;border-radius:12px;background:#0c303ab3;color:#e3d099;border:1px solid #a7be8d36}.choice-icon .game-icon{width:23px;height:23px}
.choice-copy{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.choice-copy strong{font:600 15px/1.3 var(--font-body);color:#fff0ce}.choice-copy>span{font:400 13px/1.5 var(--font-body);color:#d0e0d1}.choice-arrow{flex:0 0 14px;color:#c7bd95}.choice-arrow .game-icon{width:14px}
.modal-actions .encounter-choice:active{background:#3b6663}.modal-actions .choice-secondary{justify-content:center;min-height:46px;background:#10313a;border-color:#72918355;color:#bfd1c7;font-size:12px;padding:12px}
.run-guide{background:#09232eea;padding:11px 13px;border:1px solid #9ab39e45;border-radius:13px;box-shadow:0 4px 14px #00131d33;text-shadow:none;right:101px;left:16px;top:calc(73px + env(safe-area-inset-top))}.run-guide>span{color:#e1d1a1}.run-guide>strong{color:#f0f2df;font-size:12px;line-height:1.45}
.crawl-status{top:calc(158px + env(safe-area-inset-top));left:18px;right:105px;color:#e0ecda;filter:drop-shadow(0 1px 3px #00121c)}.crawl-status:not(:empty){background:#09232eea;border:1px solid #9ab39e33;border-radius:9px;padding:7px 10px;width:fit-content;max-width:calc(100% - 123px)}
.crawl-log{background:linear-gradient(90deg,#071c2df2,#071c2dea);border-radius:0 10px 10px 0;color:#e5ecdc}.run-help{background:#102b35f5}.run-help span{color:#d2e2d5}
@media(min-width:700px){.realm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.destination-card .destination-art{height:150px}.destination-card .card-arrow{top:162px}.destination-card .menu-title{font-size:18px}.destination-card .destination-copy{padding:17px}.destination-card .menu-sub{font-size:13px}.home-progress{font-size:13px;gap:22px}.journey-caption{font-size:13px}}
@media(max-width:359px){.destination-card .destination-art{height:91px}.destination-card .card-arrow{top:104px}.destination-card .destination-copy{padding:12px 11px 14px}.destination-card .menu-title{font-size:14px}.destination-card .menu-sub{font-size:11px}.home-progress{font-size:10px;gap:7px 10px}.modal .encounter-choice{padding:13px 11px;gap:10px}.choice-icon{width:33px;height:33px;flex-basis:33px}.choice-copy strong{font-size:14px}.choice-copy>span{font-size:12px}.journey-caption{font-size:11px}.run-guide{left:12px;right:88px;padding:9px 10px;top:67px}.run-guide>strong{font-size:11px}.crawl-status{top:148px;left:12px}}
@media(max-height:540px) and (orientation:landscape){.run-guide{top:65px;max-width:290px;padding:7px 11px}.run-guide>strong{font-size:10px}.crawl-status{top:133px}.modal{max-height:92dvh}.modal h3{font-size:23px}.encounter-choice{min-height:60px}.modal-backdrop{padding:12px}}
@media(prefers-reduced-motion:reduce){.destination-card{transition:none}.destination-card:active{transform:none}}
/* One shared atlas gives secondary destinations their own painted scene. */
.destination-card .destination-art{background-size:cover,cover,var(--destination-size,cover)}
.destination-card:is(.card-daily,.card-expedition,.card-events,.card-arena,.card-forge,.card-craft,.card-market,.card-vendor,.card-home,.card-journal,.card-receipts,.card-send,.card-collection,.card-leaderboard,.card-stats,.card-legacy){--destination-image:url('../assets/remaster/destinations.webp?v=20260906p');--destination-size:400% 200%;--destination-tint:transparent}
.destination-card.card-daily,.destination-card.card-stats{--destination-position:0% 0%}
.destination-card.card-expedition,.destination-card.card-send{--destination-position:33.333333% 0%}
.destination-card.card-events,.destination-card.card-arena,.destination-card.card-leaderboard{--destination-position:66.666667% 0%}
.destination-card.card-forge{--destination-position:100% 0%}
.destination-card.card-craft,.destination-card.card-receipts,.destination-card.card-collection{--destination-position:0% 100%}
.destination-card.card-market,.destination-card.card-vendor{--destination-position:33.333333% 100%}
.destination-card.card-home,.destination-card.card-legacy{--destination-position:66.666667% 100%}
.destination-card.card-journal{--destination-position:100% 100%}
/* Objectives, status effects and target details share a flow, so long labels
   cannot collide when a guardian and several effects are active together. */
.run-overview{position:absolute;left:16px;right:101px;top:calc(73px + env(safe-area-inset-top));max-width:310px;display:grid;gap:8px;z-index:3;pointer-events:none}
.run-overview>.run-guide,.run-overview>.crawl-status,.run-overview>.run-foe{position:static;inset:auto;max-width:none;width:auto;margin:0}
.run-overview>.crawl-status:empty{display:none}.run-overview>.crawl-status{font-size:11px;line-height:1.5;filter:none}
.crawl-wrap.in-battle .run-overview{display:none}
@media(max-width:359px){.run-overview{left:12px;right:88px;top:67px;gap:6px}.run-overview>.crawl-status{font-size:10px}}
@media(max-height:540px) and (orientation:landscape){.run-overview{top:65px;max-width:260px;gap:5px}.run-overview>.run-foe{max-width:190px}.run-overview>.crawl-status{font-size:10px}}
