/* Mission controls reuse the original parchment, seals and painted buttons. */
.action-sheet[data-view='missions']{inset:0;width:100%;max-height:100%}
.action-sheet[data-view='missions'] .sheet-handle{display:none}
.action-sheet[data-view='missions'] .sheet-content{padding-inline:20px}
@media(max-width:390px){.action-sheet[data-view='missions'] .sheet-content{padding-inline:16px}}
@media(min-width:700px){.action-sheet[data-view='missions']{left:auto;right:18px;top:18px;bottom:18px;width:480px;max-width:calc(100% - 36px);max-height:calc(100% - 36px)}}
.progression-missions-shortcut{position:absolute;left:14px;bottom:72px;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;min-height:58px;padding:5px;color:var(--gold-light);background:linear-gradient(#183e30f5,#0a2019f5);border:1px solid var(--gold);box-shadow:0 3px 8px #0008;border-radius:4px}
.progression-missions-shortcut[hidden],.progression-missions-guide[hidden]{display:none}
@media(min-width:700px){body.progression-mode #world-scene .map-controls{left:auto;right:12px}}
body.progression-mode [data-action="trial-build"][hidden]{display:none}
.progression-missions-shortcut>.icon{width:29px;height:29px}.mission-shortcut-label{font:11px var(--sans);line-height:1.4}.mission-shortcut-badge{position:absolute;right:-5px;top:-7px;min-width:20px;min-height:20px;display:grid;place-items:center;padding:2px;border:1px solid var(--gold-light);border-radius:50%;background:#9d2b21;color:#fff5de;font:700 11px var(--sans)}
.missions-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.missions-tabs button{min-width:0;min-height:44px}
.missions-rewards-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:16px}
.missions-rewards-heading>.ornament{min-width:0;margin:0;font-size:18px}
.missions-rewards-heading .missions-claim-all{width:100%;min-height:44px;min-width:0;--button-overhang:-9px;white-space:nowrap}
.missions-batch-count{font:600 12px var(--sans)}
.missions-batch-hint{margin:9px 0 4px;color:var(--antique-muted);font:12px/1.4 var(--sans)}
.missions-batch-status{margin:12px 0;color:#234d31}
.missions-intro h3{margin:0 0 8px}.missions-intro p,.missions-daily-summary p{font-size:12px;line-height:1.5;color:var(--antique-muted)}
.missions-daily-summary .mission-points-title{margin:12px 0 6px;color:var(--antique-ink)}
.mission-point-sources{display:grid;gap:6px;margin:0 0 12px;padding:0;list-style:none;font:12px/1.4 var(--sans);color:var(--antique-ink)}
.mission-point-sources li{display:flex;align-items:flex-start;gap:6px;min-width:0}.mission-point-sources .icon{flex:none;width:16px;height:16px;color:#42643b}.mission-point-sources span{min-width:0;overflow-wrap:anywhere}
.mission-chests-intro,.mission-chest-progress{font:12px/1.4 var(--sans);color:var(--antique-muted);margin:6px 0 10px}.mission-chest-progress{min-height:34px}
.mission-chest-rewards>summary{justify-content:space-between;gap:6px}.mission-chest-rewards>summary::after{content:'+';flex:none;font-size:18px}.mission-chest-rewards[open]>summary::after{content:'−'}
.mission-row{padding:16px 0;border-bottom:1px solid #98744355}.mission-row-heading{display:flex;align-items:flex-start;gap:12px}.mission-row-heading>div{min-width:0;flex:1}.mission-row-heading .campaign-field-crest{flex:none;width:34px;height:42px}.mission-row-heading .icon{width:23px;height:26px}.mission-row h3{font:700 20px/1.2 var(--serif);margin:0 0 5px;color:var(--antique-ink);overflow-wrap:anywhere}.mission-row p{margin:0;color:var(--antique-muted);font:12px/1.5 var(--sans)}
.mission-progress{display:flex;align-items:center;gap:12px;margin:10px 0;font:12px var(--sans)}.mission-progress progress{flex:1;min-width:0}.mission-progress span{flex:none}.mission-progress progress,.missions-daily-summary progress{height:9px;border:1px solid #89734a;background:#b9a780;accent-color:#42643b;border-radius:2px}.mission-progress progress::-webkit-progress-bar,.missions-daily-summary progress::-webkit-progress-bar{background:#cbbd99}.mission-progress progress::-webkit-progress-value,.missions-daily-summary progress::-webkit-progress-value{background:#42643b}.missions-daily-summary>progress{width:100%}
.mission-rewards{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}.mission-reward{display:flex;align-items:center;gap:5px;padding:4px 7px;min-height:38px;border:1px solid #ad915459;background:#faf0d533;color:var(--antique-ink);font:12px var(--sans)}.mission-reward>.icon{width:28px;height:28px;flex:none}.mission-reward strong{font-weight:600}.mission-reward small{display:block;line-height:1.3}.mission-row-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.mission-row-actions button{min-height:44px;min-width:100px;flex:1}.mission-status{display:flex;align-items:center;gap:6px;font:12px var(--sans);color:var(--antique-muted)}.mission-status>.icon{width:18px;height:18px}.mission-ready .mission-row-heading h3{color:#234d31}.missions-completed{margin-top:14px}.missions-completed summary{min-height:44px;display:flex;align-items:center}
.progression-missions-guide.is-floating{left:80px;bottom:72px;width:min(345px,calc(100% - 96px));max-height:calc(100% - 90px);z-index:14}.progression-missions-guide h3{font-size:17px}.progression-missions-guide .tutorial-guide-body>p{margin:8px 0;font:12px/1.45 var(--sans)}.mission-guide-actions{display:flex;gap:8px}.mission-guide-actions>button{min-height:44px;flex:1;min-width:0}.progression-missions-guide .icon-button{min-width:44px;min-height:44px}.progression-missions-guide.is-collapsed .tutorial-seal{display:none}
.progression-missions-shortcut:focus-visible{outline:3px solid var(--gold-light);outline-offset:3px}
.sheet-navigation:has(>.progression-tutorial-review:not([hidden])){display:flex;align-items:center;justify-content:space-between;gap:8px}
.progression-tutorial-review{display:flex;align-items:center;gap:6px;min-height:44px}
.progression-tutorial-review[hidden]{display:none}
.progression-tutorial-review>.icon{width:18px;height:18px;flex:none}
.sheet-navigation>.progression-tutorial-review>span{white-space:nowrap}
.missions-future{margin-top:14px}.missions-future>summary{min-height:44px;display:flex;align-items:center}
.mission-chests{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 18px;align-items:start}.mission-chest{padding:10px 8px;border:1px solid #a9916959;background:#faf0d526;min-width:0}.mission-chest-heading{display:flex;align-items:center;gap:7px;color:var(--antique-ink);font:700 15px var(--serif)}.mission-chest-heading>.icon{width:28px;height:28px;flex:none}.mission-chest .mission-status{min-height:44px;justify-content:center}.mission-chest>button{width:100%;min-height:44px;margin-top:4px;padding-inline:7px}.mission-chest-rewards>summary{min-height:44px;display:flex;align-items:center;color:var(--antique-muted);font:12px var(--sans);cursor:pointer}.mission-chest .mission-rewards{gap:5px;margin:0 0 8px}.mission-chest .mission-reward{padding:3px;font-size:10px;flex:1;min-width:48px}.mission-chest .mission-reward>.icon{width:22px;height:22px}

@media(max-width:560px){.progression-missions-shortcut{left:12px}.progression-missions-guide.is-floating{left:78px;width:calc(100% - 90px);padding:8px}.progression-missions-guide.is-floating .tutorial-seal{display:none}.mission-row-heading{gap:9px}.mission-row h3{font-size:19px}}
@media(max-height:500px){.progression-missions-shortcut{bottom:62px;min-height:46px}.progression-missions-shortcut>.icon{width:23px;height:23px}.progression-missions-guide.is-floating{bottom:62px;max-height:calc(100% - 70px)}}

/* One screen-space cue follows real controls and painted map destinations.
   It never handles input or becomes part of the city/world camera transform. */
.progression-tutorial-pointer{position:fixed;z-index:140;width:72px;height:72px;pointer-events:none;user-select:none;filter:drop-shadow(0 3px 2px #1521179c)}
.progression-tutorial-pointer[hidden]{display:none}
.progression-tutorial-pointer>span{display:block;width:100%;height:100%;background:url('./art-web/tutorial-gauntlet-dorsal-v3-de209e671e.webp') 72% center/contain no-repeat;animation:tutorial-point 1.15s ease-in-out infinite}
.progression-tutorial-pointer[data-direction='down']{transform:rotate(180deg)}
.progression-tutorial-pointer[data-direction='left']{transform:rotate(-90deg)}
.progression-tutorial-pointer[data-direction='right']{transform:rotate(90deg)}
@keyframes tutorial-point{0%,100%{translate:0 4px}50%{translate:0 0}}
@media(max-width:560px){
 .progression-tutorial-pointer{width:60px;height:60px}
 .progression-missions-guide.is-floating{left:78px;bottom:72px;padding:7px;max-height:calc(100% - 108px)}
 .progression-missions-guide.is-floating .tutorial-guide-heading{gap:5px}
 .progression-missions-guide.is-floating h3{font-size:15px;line-height:1.15}
 .progression-missions-guide.is-floating .tutorial-guide-body>p{font-size:11px;line-height:1.35;margin:6px 0}
 .progression-missions-guide.is-floating .mission-guide-actions{gap:6px}
}
@media(prefers-reduced-motion:reduce){.progression-tutorial-pointer>span{animation:none}}
.progression-tutorial-pointer.is-static>span{animation:none}
.progression-missions-guide.is-ready:not(.is-floating){position:sticky;top:0;z-index:15;box-shadow:0 3px 9px #21170955}
.progression-missions-guide.is-ready .tutorial-seal{display:grid;color:#f6dfa3;background:#23533d}
.mission-guide-reward{margin:6px 0;border:1px solid #a9916959;background:#faf0d526;padding:5px 6px}
.mission-guide-reward-heading{display:flex;gap:4px;align-items:center;font:600 10px/1.2 var(--sans);color:var(--antique-muted)}
.mission-guide-reward-heading>.icon{width:13px;height:13px;flex:none}
.mission-guide-reward.is-unlocked{border-color:#42643b80}.mission-guide-reward.is-unlocked .mission-guide-reward-heading{color:#315d42}
.mission-guide-reward .mission-rewards{gap:4px;margin:5px 0 0}.mission-guide-reward .mission-reward{gap:3px;min-height:28px;padding:2px 4px;font-size:10px;line-height:1.15}.mission-guide-reward .mission-reward>.icon{width:20px;height:20px}.mission-guide-reward .mission-reward small{font-size:9px}
.mission-guide-reward>p{margin:4px 0 0;font:10px/1.25 var(--sans);color:var(--antique-muted)}
@media(max-width:560px){.mission-guide-reward .mission-reward{gap:2px;padding:2px;min-width:0}.mission-guide-reward .mission-reward>.icon{width:18px;height:18px}}
.tutorial-guide-body>.mission-guide-feedback{color:#852c25;font-size:11px}
@media(forced-colors:active){.progression-tutorial-pointer{filter:none}.progression-tutorial-pointer>span{border-top:5px solid Highlight;border-radius:50%}}
