/* Build and Map share a journey: choose a pictured place, learn, bring it to life. */
#projectScreen.kids-build-picker {background:var(--commander-parchment)!important;padding:24px clamp(18px,4vw,64px) 36px!important;color:var(--commander-midnight);}
.quest-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1180px;margin:0 auto 18px;}
.quest-kicker {font:900 11px/1.3 var(--kid-font);letter-spacing:1.4px;text-transform:uppercase;color:#577665;margin:0 0 6px;}
.quest-heading h2 {font:900 clamp(27px,3vw,38px)/1.1 var(--kid-font);margin:0;color:var(--commander-midnight);}
.quest-heading-actions {display:flex;gap:8px;}
.quest-heading-actions button {width:46px;height:46px;display:grid;place-items:center;background:var(--commander-paper);border:1px solid #d9dece;border-radius:50%;color:var(--commander-river);}
.quest-heading-actions .toy-icon {width:23px;height:23px;}
#projectScreen .quest-regions {display:flex;gap:8px;margin:0 auto 18px;max-width:1180px;overflow:auto;scrollbar-width:none;padding:3px;}
#projectScreen .quest-regions .chapter-card {display:flex!important;flex:1;align-items:center;justify-content:center;gap:8px;min-width:max-content;min-height:48px!important;padding:9px 16px!important;border:1px solid #d3dacb!important;border-radius:24px!important;background:var(--commander-paper)!important;box-shadow:none!important;color:#426365!important;transform:none;}
#projectScreen .quest-regions .chapter-card::before,#projectScreen .quest-regions .chapter-card::after {display:none!important;}
#projectScreen .quest-regions .chapter-card.active {background:var(--commander-river)!important;border-color:var(--commander-river)!important;color:#fff8e7!important;box-shadow:0 3px 0 #123e4e!important;}
.quest-regions .toy-icon {width:25px;height:25px;flex:none;}
#projectScreen .quest-regions strong {font:800 15px var(--kid-font);}
.quest-mission {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);max-width:1180px;margin:auto;border:1px solid #d1dbcb;border-radius:26px;background:var(--commander-paper);overflow:hidden;box-shadow:0 8px 24px #234e3810;}
.quest-mission-picture {position:relative;min-height:285px;background:#dfeace;overflow:hidden;}
.quest-mission-picture>img {display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;}
.quest-mission-flag {position:absolute;left:16px;top:16px;color:#fffcec;background:var(--commander-river);padding:9px 12px;border-radius:9px;font:900 10px/1.3 var(--kid-font);letter-spacing:1px;box-shadow:0 3px 8px #102d3033;}
.quest-piece-count {position:absolute;left:16px;bottom:14px;background:#fffdf2ed;color:#345364;border-radius:18px;padding:7px 12px;font:800 12px var(--kid-font);}
.quest-mission-copy {padding:clamp(20px,3vw,36px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}
.quest-mission-copy h3 {font:900 clamp(27px,3vw,40px)/1.07 var(--kid-font);margin:4px 0 10px;max-width:13ch;color:var(--commander-midnight);}
.quest-mission-copy>p:not(.quest-kicker) {font:600 16px/1.4 var(--kid-font);margin:0 0 14px;color:#52706c;}
.quest-learning {display:flex;align-items:center;gap:10px;margin-bottom:18px;color:#34576a;}
.quest-learning>.toy-icon {width:34px;height:34px;background-color:#b18838;}
.quest-learning small {display:block;font:600 12px var(--kid-font);margin:0 0 2px;color:#718075;}
.quest-learning strong {display:block;font:800 15px/1.25 var(--kid-font);}
.quest-start {display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;width:100%;background:var(--commander-brass);color:var(--commander-midnight);border:1px solid var(--commander-brass);border-bottom:4px solid var(--commander-copper-ink);border-radius:14px;font:900 23px var(--kid-font);box-shadow:0 4px 8px #8a692313;}
.quest-start .toy-icon {width:28px;height:28px;}
.quest-map-link {display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;width:100%;margin-top:8px;padding:5px;background:transparent;border:0;color:var(--commander-river);font:800 14px var(--kid-font);}
.quest-map-link .toy-icon {width:21px;height:21px;}
.quest-trail {max-width:1180px;margin:26px auto 0;}
.quest-trail-heading {display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 12px;}
.quest-trail-heading h3 {font:900 25px/1.1 var(--kid-font);margin:0;color:var(--commander-midnight);}
#projectScreen .quest-trail-heading .lesson-filters {display:flex;align-items:center;gap:6px;margin:0;}
#projectScreen .quest-trail-heading .lesson-filter {border:0!important;border-radius:22px;background:#e5ebdd!important;color:#315950!important;padding:9px 14px;min-height:44px;white-space:nowrap;font:800 14px var(--kid-font);}
#projectScreen .quest-build-trail {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:0;padding:0 0 6px;background:none;}
#projectScreen .quest-stop {position:relative;display:block;background:var(--commander-paper)!important;border:1px solid #d9dfd0!important;border-image:none!important;border-radius:17px!important;overflow:visible;padding:0!important;box-shadow:0 3px 0 #e0e6d6!important;transform:none!important;min-width:0;min-height:118px;}
#projectScreen .quest-stop[hidden] {display:none!important;}
#projectScreen .quest-stop::before,#projectScreen .quest-stop::after {display:none!important;}
#projectScreen .quest-stop.recommended {border:2px solid #387279!important;background:#eef5e9!important;}
#projectScreen .quest-stop .lesson-build-button {display:grid;grid-template-columns:32px 100px minmax(0,1fr) 20px;align-items:center;gap:10px;width:100%;min-height:118px;padding:10px 15px 10px 10px;position:static;background:transparent;border:0;border-radius:16px;text-align:left;color:#204951;}
.quest-stop-number {display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e3ebdd;color:#436853;font:900 15px var(--kid-font);position:relative;}
.quest-stop-check {display:none;position:absolute;inset:0;place-items:center;background:#367755;color:white;border-radius:50%;}
.completed .quest-stop-check {display:grid;}
.quest-stop.recommended .quest-stop-number {color:white;background:#286979;}
.quest-stop-art {height:90px;overflow:hidden;border-radius:12px;background:#e9ecdd;}
.quest-stop-art img {height:100%;width:100%;object-fit:contain;display:block;}
.quest-stop-copy {display:flex;flex-direction:column;gap:5px;min-width:0;padding:4px 0 14px;}
.quest-stop-state {font:900 10px var(--kid-font);letter-spacing:.5px;text-transform:uppercase;color:#628273;}
#projectScreen .quest-stop .quest-stop-state {display:block;width:auto;min-height:0;margin:0;padding:0;background:none!important;color:#628273!important;border:0;box-shadow:none;}
#projectScreen .quest-stop .quest-stop-state::after {display:none!important;}
.quest-stop-title {font:900 19px/1.12 var(--kid-font);color:var(--commander-midnight);}
.quest-stop-purpose {font:600 12px/1.3 var(--kid-font);color:#6a7c6e;}
.quest-stop-arrow {font:800 23px var(--kid-font);color:#44847b;}
#projectScreen .quest-stop .lesson-listen {position:absolute;bottom:0;right:0;display:grid;place-items:center;width:44px;height:44px;min-height:44px;border:0;background:none;color:#49726b;border-radius:12px;opacity:1;box-shadow:none;}
#projectScreen .quest-stop .lesson-listen .toy-icon {width:18px;height:18px;}

/* The map gives the landscape its own space; the mission never covers sites. */
#hubScreen.map-view {background:var(--commander-parchment)!important;grid-template-rows:auto minmax(0,1fr)!important;}
#hubScreen.map-view .hub-heading {position:static!important;inset:auto!important;width:100%!important;height:auto!important;display:flex;align-items:center;justify-content:space-between;padding:13px 24px 8px!important;}
#hubScreen.map-view #hubContent {grid-row:2;min-height:0;height:100%;}
#hubScreen.map-view #hubHeadingActions {display:flex!important;margin:0;}
#hubScreen.map-view .adventure-total {display:flex;position:static;align-items:center;gap:7px;width:auto;min-height:40px;padding:6px 12px;border:1px solid #d6ddca;border-radius:22px;background:#fffaf0;color:#4a705d;font:900 17px var(--kid-font);}
#hubScreen.map-view .adventure-total small {font-size:12px;}
#hubScreen.map-view .adventure-total .toy-icon {width:23px;height:23px;color:#b28a38;}
#hubScreen.map-view .hub-heading h1 {font:900 28px/1.1 var(--kid-font);color:var(--commander-midnight);}
#hubScreen.map-view .hub-heading p {font:600 13px var(--kid-font);color:#617a6d;}
#hubScreen.map-view .growing-city {grid-template-rows:62px minmax(0,1fr);background:none;}
.map-view .city-growth {display:none!important;}
#hubScreen.map-view .city-districts {padding:4px 20px 10px;gap:8px;overflow:auto;scrollbar-width:none;display:flex;}
#hubScreen.map-view .city-districts button {flex:1;min-width:max-content;min-height:46px;max-height:48px;padding:7px 16px;background:var(--commander-paper)!important;border:1px solid #d1dbc9!important;border-radius:24px!important;border-image:none!important;box-shadow:none!important;color:#416c66!important;}
#hubScreen.map-view .city-districts button[aria-selected=true] {background:var(--commander-river)!important;color:#fff9e9!important;border-color:var(--commander-river)!important;}
#hubScreen.map-view .city-districts button small {display:none;}
#hubScreen.map-view .city-districts button .toy-icon {width:25px;height:25px;}
#hubScreen.map-view .city-map-stage {display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0,1fr) auto;gap:0;margin:0 18px 14px;width:auto;height:auto;border:1px solid #bfcbb7;border-radius:22px;background:var(--commander-paper);box-shadow:0 4px 15px #234e3815;isolation:isolate;}
.map-stage-toolbar {grid-row:1;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 12px;border-bottom:1px solid #d1ddc9;background:#f0f3e7;z-index:12;}
.map-region-progress {font:800 12px var(--kid-font);color:#527561;}
#hubScreen.map-view .map-mode-switch {position:static;order:2;display:flex;margin:0;transform:none;background:#e0e8d9;border:0;box-shadow:none;border-radius:22px;padding:3px;gap:2px;}
#hubScreen.map-view .map-mode-switch button {height:42px;min-height:42px;font:800 13px var(--kid-font);padding:5px 12px;color:#446657;background:none;border:0;border-radius:22px;}
#hubScreen.map-view .map-mode-switch button[aria-pressed=true] {background:#fffdf5;color:#204f5b;box-shadow:0 2px 4px #355f4820;}
#hubScreen.map-view .map-mode-switch .toy-icon {width:20px;height:20px;}
#hubScreen.map-view .city-site-nav {position:static!important;inset:auto!important;transform:none!important;margin:0!important;order:1;display:grid!important;width:172px!important;height:48px!important;grid-template-columns:48px 1fr 48px!important;padding:0;background:none;border:0;box-shadow:none;}
#hubScreen.map-view .city-site-nav button {width:48px;height:48px;min-width:48px;min-height:48px;padding:11px;background:#fffdf5;border:1px solid #d5decb;border-radius:50%;color:#326b6a;}
#hubScreen.map-view .city-site-nav>span {font:700 9px/1.1 var(--kid-font);color:#537263;gap:3px;}
#hubScreen.map-view .city-site-nav b {font:900 14px/1 var(--kid-font);}
#hubScreen.map-view .city-terrain,#hubScreen.map-view .city-terrain[data-mode=city] {position:relative!important;inset:auto!important;grid-column:1;grid-row:2;height:100%!important;min-height:0!important;width:100%;border:0!important;border-radius:0;overflow:hidden;background:#c4d4a8;}
#hubScreen.map-view .city-terrain[data-mode=atlas] .atlas-scroll {position:absolute;inset:0!important;display:block;overflow:auto!important;height:100%!important;min-height:0;background:#b8cba0;}
#hubScreen.map-view .city-terrain[data-mode=atlas] .atlas-scroll::after {display:none!important;}
#hubScreen.map-view .city-terrain[data-mode=atlas] .atlas-world {position:relative;display:block;width:max(100%,1000px);min-width:0;height:100%;min-height:380px;aspect-ratio:auto;}
#hubScreen.map-view .city-terrain[data-mode=atlas] .atlas-art {width:100%;height:100%;object-fit:cover;}
/* Live anchors use the full painted coordinate space at every aspect ratio. */
#hubScreen.map-view .city-terrain.living-atlas[data-mode=atlas] .atlas-art {object-fit:fill;}
.map-view :is(.living-map-key,.atlas-pan-hint,.atlas-compass) {display:none!important;}
#hubScreen.map-view .city-terrain .city-pins {inset:0;height:100%!important;}
.map-view .kingdom-site {position:absolute!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;transform:translate(-50%,-50%)!important;width:90px!important;height:84px!important;min-width:0;min-height:0;padding:0!important;border:0!important;border-radius:16px!important;background:none!important;box-shadow:none!important;pointer-events:auto;overflow:visible;z-index:3;}
.map-view .kingdom-site .site-portrait {display:block;width:80px;height:62px;overflow:hidden;border:3px solid #fff8df;border-radius:13px;box-shadow:0 3px 0 #698154,0 5px 12px #1e322659;background:#edf0df;transform:rotate(-3deg);transition:transform .15s;}
.map-view .kingdom-site:nth-child(even) .site-portrait {transform:rotate(3deg);}
.map-view .kingdom-site .site-portrait img {position:static;display:block;width:100%;height:100%;object-fit:contain;}
.map-view .kingdom-site .site-number {position:absolute;top:-1px;left:0;width:27px;height:27px;display:grid;place-items:center;background:#fff8e3;border:2px solid #b58b3c;color:#53634a;border-radius:50%;box-shadow:0 2px 3px #25382944;font:900 13px var(--kid-font);}
.map-view .kingdom-site .site-name {position:absolute;top:77px;left:50%;transform:translateX(-50%);width:max-content;max-width:155px;padding:5px 10px;border:1px solid #d7b658;border-radius:10px;background:#fff6d8;color:#254d51;font:900 12px/1.1 var(--kid-font);box-shadow:0 2px 4px #243c2930;opacity:0;pointer-events:none;}
.map-view .kingdom-site.selected {z-index:9;}
.map-view .kingdom-site.selected .site-portrait {transform:rotate(0) scale(1.12);border-color:var(--commander-brass);box-shadow:0 0 0 3px #437a62,0 7px 15px #263c5266;}
.map-view .kingdom-site.selected .site-number {background:var(--commander-brass);color:#294747;}
.map-view .kingdom-site:is(.selected,:hover,:focus-visible) .site-name {opacity:1;}
.map-view .kingdom-site.built .site-number {background:var(--commander-grove);color:#fff;border-color:#d0e6ba;}
.map-view .kingdom-site[data-has-model=true] .site-portrait {opacity:0;}
.map-view .kingdom-site[data-has-model=true] .site-number {top:auto;bottom:0;left:calc(50% - 14px);}
.map-view .kingdom-site[data-has-model=true].selected::before {content:'';position:absolute;inset:-6px;border:3px solid #f9d86b;border-radius:50%;background:#fffac815;}
.map-view .living-site[data-has-model=true] {height:94px!important;width:94px!important;}
.map-view .living-site[data-has-model=true] .site-number {bottom:17px;box-shadow:0 3px 7px #1e2a3a80;}
.map-view .living-site[data-has-model=true] .site-name {top:83px;}
.map-view .living-site[data-has-model=true].selected::before {inset:auto 30px 9px;height:8px;border:0;border-radius:50%;background:var(--commander-brass);box-shadow:0 0 0 3px #fff7dd70;}
.map-view .living-site[data-has-model=true] .site-progress {bottom:5px;}
.site-progress {position:absolute;bottom:0;left:10px;right:10px;height:5px;border-radius:4px;background:#fff9e4;overflow:hidden;}
.site-progress i {display:block;height:100%;background:var(--commander-brass);}
#hubScreen.map-view .city-preview {grid-column:1;grid-row:3;position:static;inset:auto;transform:none;display:grid;grid-template-columns:100px minmax(0,1fr) 176px;align-items:center;gap:16px;width:100%;height:auto;min-height:145px;margin:0;padding:14px 18px;border:0!important;border-top:1px solid #d3ddc8!important;border-image:none!important;border-radius:0;background:var(--commander-paper)!important;box-shadow:none;}
.map-mission-art {position:relative;}
#hubScreen.map-view .city-preview .city-preview-model {display:block;width:100%;height:94px;object-fit:contain;border-radius:12px;mix-blend-mode:normal;}
.map-mission-art>span {display:block;text-align:center;font:900 9px var(--kid-font);color:#42695d;margin-top:6px;letter-spacing:.5px;}
#hubScreen.map-view .city-preview-copy {display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;}
#hubScreen.map-view .city-preview-copy h2 {font:900 25px/1.08 var(--kid-font);margin:0;color:var(--commander-midnight);}
#hubScreen.map-view .city-preview-copy .city-eyebrow {display:block;font:900 10px var(--kid-font);letter-spacing:.6px;text-transform:uppercase;color:#78846c;}
#hubScreen.map-view .city-preview-copy .map-mission-purpose {display:block;font:600 13px/1.25 var(--kid-font);color:#5d7969;margin:0;}
#hubScreen.map-view .city-preview-copy .map-learning-idea {display:flex;gap:6px;align-items:center;font:800 12px/1.25 var(--kid-font);color:#537076;margin:3px 0 0;}
.map-learning-idea .toy-icon {width:17px;height:17px;flex:none;}
#hubScreen.map-view .city-preview-actions {display:flex;flex-direction:column;grid-column:auto;grid-row:auto;gap:6px;width:100%;}
#hubScreen.map-view .city-preview-actions .city-build-button {display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:54px;margin:0;padding:9px 10px;font:900 20px var(--kid-font);border:1px solid var(--commander-brass);border-bottom:4px solid var(--commander-copper-ink);border-radius:13px;background:var(--commander-brass)!important;color:var(--commander-midnight)!important;box-shadow:none;}
#hubScreen.map-view .city-preview-actions .city-walk-button {display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:44px;padding:6px;background:none;border:0;box-shadow:none;color:#2d6671;font:800 15px var(--kid-font);}
#hubScreen.map-view .city-preview-actions .toy-icon {width:23px;height:23px;}
#hubScreen.map-view .growing-city[data-mode=city] .city-map-stage {grid-template-rows:56px minmax(0,1fr);}
#hubScreen.map-view .growing-city[data-mode=city] .city-preview {display:none!important;}
#hubScreen.map-view .growing-city[data-mode=city] .city-site-nav {display:grid!important;}
#hubScreen.map-view .city-terrain[data-mode=city] :is(.city-canvas,.city-pins) {inset:0!important;height:100%!important;}
@media(min-width:1100px) and (min-height:600px) {
 #hubScreen.map-view .city-map-stage {grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:56px minmax(0,1fr);}
 #hubScreen.map-view .city-preview {grid-column:2;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(60px,1fr) auto auto;align-content:stretch;gap:14px;padding:16px 20px;border-top:0!important;border-left:1px solid #d3ddc8!important;}
 #hubScreen.map-view .city-preview .city-preview-model {height:auto;flex:1;min-height:0;object-fit:contain;}
 .map-view .map-mission-art {width:100%;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;}
 .map-view .map-mission-art>span {flex:none;}
 #hubScreen.map-view .city-preview-copy h2 {font-size:30px;}
 #hubScreen.map-view .city-preview-copy .map-mission-purpose {font-size:15px;}
 #hubScreen.map-view .city-preview-copy .map-learning-idea {font-size:14px;}
 #hubScreen.map-view .growing-city[data-mode=city] .city-map-stage {grid-template-columns:minmax(0,1fr);}
}
@media(min-width:760px) and (min-height:541px) {
 #hubScreen.map-view .city-terrain[data-mode=atlas] .atlas-world {width:100%;height:100%;min-height:0;}
}
@media(max-width:900px) {
 #projectScreen .quest-build-trail {grid-template-columns:1fr;gap:13px;padding-left:12px;}
 #projectScreen .quest-stop .lesson-build-button {grid-template-columns:34px 115px minmax(0,1fr) 20px;gap:14px;}
 #projectScreen .quest-stop::before {display:block!important;content:'';position:absolute;left:26px;top:-16px;height:16px;border-left:3px dashed #98b392;z-index:0;}
 #projectScreen .quest-stop:first-child::before {display:none!important;}
 .quest-stop-title {font-size:21px;}
 .quest-stop-purpose {font-size:14px;}
 .quest-mission-copy h3 {font-size:31px;}
}
@media(max-width:600px) {
 #projectScreen.kids-build-picker {padding:14px 14px 24px!important;}
 .quest-heading {gap:6px;margin-bottom:12px;}
 .quest-heading h2 {font-size:25px;}
 .quest-heading .quest-kicker {font-size:9px;letter-spacing:1px;}
 .quest-heading-actions {gap:0;}
 .quest-heading-actions #projectBackBtn {display:none;}
 #projectScreen .quest-regions {margin-bottom:13px;}
 #projectScreen .quest-regions .chapter-card {flex:none;padding:7px 12px!important;min-height:44px!important;}
 #projectScreen .quest-regions strong {font-size:13px;}
 .quest-regions .toy-icon {width:21px;height:21px;}
 .quest-mission {grid-template-columns:42% minmax(0,1fr);border-radius:20px;}
 .quest-mission-picture {min-height:242px;}
 .quest-mission-picture>img {object-position:50% 55%;}
 .quest-mission-flag {left:7px;right:7px;top:9px;font-size:8px;text-align:center;padding:7px 5px;letter-spacing:.4px;}
 .quest-piece-count {left:8px;bottom:10px;font-size:10px;padding:5px 8px;}
 .quest-mission-copy {padding:14px 12px;}
 .quest-mission-copy .quest-kicker {font-size:9px;letter-spacing:.5px;}
 .quest-mission-copy h3 {font-size:25px;margin:4px 0 8px;}
 .quest-mission-copy>p:not(.quest-kicker) {font-size:12px;margin-bottom:10px;}
 .quest-learning {gap:6px;margin-bottom:12px;}
 .quest-learning>.toy-icon {width:23px;height:23px;flex:none;}
 .quest-learning small {font-size:10px;}
 .quest-learning strong {font-size:12px;}
 .quest-start {font-size:19px;min-height:48px;gap:5px;border-radius:11px;}
 .quest-start .toy-icon {width:22px;height:22px;}
 .quest-map-link {font-size:12px;margin-top:4px;gap:4px;}
 .quest-map-link .toy-icon {width:16px;height:16px;}
 .quest-trail {margin-top:22px;}
 .quest-trail-heading h3 {font-size:22px;}
 .quest-trail-heading .quest-kicker {font-size:9px;letter-spacing:.6px;}
 #projectScreen .quest-trail-heading .lesson-filter {font-size:12px;padding:8px 10px;}
 #projectScreen .quest-build-trail {padding-left:0;}
 #projectScreen .quest-stop .lesson-build-button {grid-template-columns:25px 82px minmax(0,1fr);gap:9px;padding:8px;min-height:110px;}
 .quest-stop-number {width:25px;height:25px;font-size:13px;}
 .quest-stop-art {height:85px;}
 .quest-stop-title {font-size:18px;}
 .quest-stop-purpose {font-size:12px;}
 .quest-stop-arrow {display:none;}
 .quest-stop-copy {padding-bottom:14px;padding-right:3px;}
 #hubScreen.map-view .hub-heading {padding:12px 16px 6px!important;}
 #hubScreen.map-view .hub-heading h1 {font-size:25px;}
 #hubScreen.map-view .hub-heading p {display:none;}
 #hubScreen.map-view .growing-city {grid-template-rows:58px minmax(0,1fr);}
 #hubScreen.map-view .city-districts {padding:5px 12px 9px;}
 #hubScreen.map-view .city-districts button {flex:none;padding:6px 12px;min-height:44px;font-size:13px;}
 #hubScreen.map-view .city-districts button .toy-icon {width:21px;height:21px;}
 #hubScreen.map-view .city-map-stage {margin:0 8px 8px;border-radius:17px;grid-template-rows:56px minmax(0,1fr) auto;}
 .map-stage-toolbar {padding:3px 6px;gap:3px;}
 .map-region-progress {display:none;}
 #hubScreen.map-view .city-site-nav {width:159px!important;}
 #hubScreen.map-view .map-mode-switch button {font-size:12px;padding:5px 8px;min-height:44px;}
 #hubScreen.map-view .map-mode-switch .toy-icon {width:18px;height:18px;}
 #hubScreen.map-view .city-preview {grid-template-columns:64px minmax(0,1fr);gap:7px 11px;padding:11px;min-height:0;}
 #hubScreen.map-view .city-preview .city-preview-model {height:63px;}
 .map-mission-art>span {font-size:8px;letter-spacing:0;}
 #hubScreen.map-view .city-preview-copy {gap:3px;}
 #hubScreen.map-view .city-preview-copy h2 {font-size:21px;}
 #hubScreen.map-view .city-preview-copy .city-eyebrow {font-size:9px;letter-spacing:0;}
 #hubScreen.map-view .city-preview-copy .map-mission-purpose {display:none;}
 #hubScreen.map-view .city-preview-copy .map-learning-idea {font-size:11px;margin:2px 0 0;}
 #hubScreen.map-view .city-preview-actions {grid-column:1/-1;flex-direction:row;gap:8px;}
 #hubScreen.map-view .city-preview-actions .city-build-button {flex:1.35;min-height:49px;font-size:18px;}
 #hubScreen.map-view .city-preview-actions .city-walk-button {flex:1;font-size:14px;min-height:48px;}
 #hubScreen.map-view .walk-invitation {top:12px;left:12px;padding:7px 10px;font-size:13px;gap:7px;}
 #hubScreen.map-view .walk-invitation small {font-size:10px;margin-top:2px;}
 #hubScreen.map-view .walk-invitation .toy-icon {width:22px;height:22px;}
}
@media(max-height:540px) and (min-width:601px) {
 #projectScreen.kids-build-picker {padding:10px 14px 24px!important;}
 .quest-heading {display:none;}
 #projectScreen .quest-regions {margin-bottom:10px;}
 #projectScreen .quest-regions .chapter-card {min-height:44px!important;padding:7px 12px!important;}
 .quest-mission {grid-template-columns:40% minmax(0,1fr);}
 .quest-mission-picture {min-height:208px;}
 .quest-mission-picture>img {object-fit:contain;background:var(--commander-paper);}
 .quest-mission-copy {padding:10px 14px;}
 .quest-mission-copy .quest-kicker {font-size:9px;}
 .quest-mission-copy h3 {font-size:22px;max-width:none;margin:3px 0 6px;}
 .quest-mission-copy>p:not(.quest-kicker) {display:none;}
 .quest-learning {gap:6px;margin:2px 0 8px;}
 .quest-learning small {display:none;}
 .quest-learning strong {font-size:12px;}
 .quest-learning>.toy-icon {width:23px;height:23px;}
 .quest-start {min-height:48px;font-size:20px;}
 .quest-map-link {margin-top:0;min-height:44px;}
 #hubScreen.map-view {grid-template-rows:minmax(0,1fr)!important;}
 #hubScreen.map-view #hubContent {grid-row:1;}
 #hubScreen.map-view .hub-heading {display:none;}
 #hubScreen.map-view .growing-city {grid-template-rows:50px minmax(0,1fr);}
 #hubScreen.map-view .city-districts {padding:2px 12px 4px;}
 #hubScreen.map-view .city-districts button {min-height:44px;}
 #hubScreen.map-view .city-map-stage {grid-template-columns:minmax(0,1fr) 228px;grid-template-rows:56px minmax(0,1fr);margin:0 8px 4px;}
 #hubScreen.map-view .city-preview {grid-row:2;grid-column:2;display:flex;flex-direction:column;gap:5px;padding:8px;justify-content:center;min-height:0;}
 #hubScreen.map-view .map-mission-art,#hubScreen.map-view .city-preview-copy .city-eyebrow,#hubScreen.map-view .city-preview-copy .map-mission-purpose {display:none;}
 #hubScreen.map-view .city-preview-copy h2 {font-size:18px;}
 #hubScreen.map-view .city-preview-actions {flex-direction:column;gap:4px;}
 #hubScreen.map-view .city-preview-actions .city-build-button {font-size:14px;min-height:48px;padding:5px;}
 #hubScreen.map-view .city-preview-actions .city-walk-button {font-size:12px;min-height:44px;}
 #hubScreen.map-view .city-preview-actions .toy-icon {display:none;}
 #hubScreen.map-view .city-terrain[data-mode=atlas] .atlas-world {min-height:380px;}
 #hubScreen.map-view .growing-city[data-mode=city] .city-map-stage {grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0,1fr);}
}
@media(prefers-reduced-motion:reduce) {.map-view .kingdom-site .site-portrait {transition:none;}}

/* Readable mission cues and large hands-on controls; metadata is secondary. */
.quest-heading-actions button {width:48px;height:48px;}
.quest-mission-copy>p:not(.quest-kicker) {font-size:18px;line-height:1.4;}
.quest-learning strong {font-size:18px;}
.quest-map-link {font-size:16px;min-height:48px;}
#projectScreen .quest-trail-heading .lesson-filter {font-size:16px;min-height:48px;}
#projectScreen .quest-regions .chapter-card {min-height:48px!important;}
#projectScreen .quest-regions strong {font-size:16px;}
#projectScreen .quest-stop .lesson-listen {width:48px;height:48px;}
.quest-stop-title {color:var(--commander-midnight);}
.quest-stop-purpose {font-size:15px;color:var(--commander-muted);}
#hubScreen.map-view .city-districts button {font-size:16px;min-height:48px;}
#hubScreen.map-view .map-mode-switch button {font-size:16px;min-height:48px;}
#hubScreen.map-view .city-preview-copy .map-learning-idea {font-size:16px;line-height:1.3;}
#hubScreen.map-view .city-preview-copy .map-mission-purpose {font-size:16px;}
#hubScreen.map-view .city-preview-actions .city-walk-button {font-size:16px;min-height:48px;}
.map-view .kingdom-site .site-name {font-size:14px;color:var(--commander-midnight);}
.map-stage-toolbar {background:var(--commander-grove-wash);}
@media(max-width:600px) {
 /* One pictured recommendation leaves room to discover another build. */
 #projectScreen .quest-mission {grid-template-columns:46% minmax(0,1fr);grid-template-rows:auto auto 52px;gap:8px 10px;padding:12px;}
 #projectScreen .quest-mission-picture {grid-column:1;grid-row:1/3;min-height:120px;border-radius:13px;}
 #projectScreen .quest-mission-picture>img {object-position:center;}
 #projectScreen .quest-mission-copy {display:contents;}
 #projectScreen .quest-mission-copy h3 {grid-column:2;grid-row:1;align-self:end;margin:0;font-size:25px;line-height:1.08;}
 #projectScreen .quest-mission-copy>p:not(.quest-kicker) {grid-column:2;grid-row:2;align-self:start;font-size:16px;line-height:1.3;margin:0;}
 #projectScreen .quest-mission :is(.quest-mission-flag,.quest-mission-copy>.quest-kicker,.quest-learning) {display:none;}
 #projectScreen .quest-piece-count {left:7px;bottom:6px;}
 .quest-learning strong {font-size:16px;line-height:1.25;}
 .quest-learning small {display:none;}
 #projectScreen .quest-start {grid-column:1;grid-row:3;font-size:21px;min-height:52px;padding:6px;}
 #projectScreen .quest-map-link {grid-column:2;grid-row:3;font-size:16px;min-height:52px;margin:0;padding:4px;line-height:1.2;}
 #projectScreen .quest-map-link .toy-icon {display:none;}
 #projectScreen .quest-regions strong {font-size:16px;}
 .quest-stop-purpose {font-size:14px;}
 #projectScreen .quest-trail {margin-top:14px;}
 #projectScreen .quest-trail-heading {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:10px;}
 #projectScreen .quest-trail-heading .quest-kicker {display:none;}
 #projectScreen .quest-stop.recommended {order:1;}
 #hubScreen.map-view .map-mode-switch .toy-icon {display:none;}
 #hubScreen.map-view .map-mode-switch button {font-size:16px;padding:5px 9px;}
 #hubScreen.map-view .city-site-nav {width:152px!important;}
 /* The numbered site and arrows are enough on a child's small screen. */
 #hubScreen.map-view .city-site-nav>span {font-size:0;line-height:1;gap:0;min-width:0;}
 #hubScreen.map-view .city-site-nav b {font-size:14px;letter-spacing:0;padding:6px 0;width:100%;min-width:0;box-sizing:border-box;}
 #hubScreen.map-view .city-preview-copy .map-learning-idea {font-size:16px;}
 #hubScreen.map-view .city-preview-actions .city-build-button {font-size:20px;min-height:52px;}
}
@media(max-width:360px) {
 #projectScreen .quest-start .toy-icon {display:none;}
 #hubScreen.map-view .city-build-button .toy-icon {display:none;}
}
@media(max-height:540px) and (min-width:601px) {
 .quest-learning strong {font-size:16px;}
 #hubScreen.map-view .city-preview-actions .city-build-button {font-size:16px;}
 #hubScreen.map-view .city-preview-actions .city-walk-button {font-size:16px;}
 #hubScreen.map-view .city-preview-copy .map-learning-idea {font-size:15px;}
}

/* Walking has its own uncluttered game layout. */
#hubScreen.map-view:has(.growing-city[data-mode=city]) {grid-template-rows:minmax(0,1fr)!important}
#hubScreen.map-view:has(.growing-city[data-mode=city]) .hub-heading {display:none!important}
#hubScreen.map-view:has(.growing-city[data-mode=city]) #hubContent {grid-row:1}
#hubScreen.map-view .growing-city[data-mode=city] {grid-template-rows:minmax(0,1fr)}
#hubScreen.map-view .growing-city[data-mode=city] .city-districts {display:none!important}
#hubScreen.map-view .growing-city[data-mode=city] .city-site-nav {display:none!important}
#hubScreen.map-view .growing-city[data-mode=city] .map-mode-switch button {height:48px;min-height:48px}
#hubScreen.map-view .growing-city[data-mode=city] .map-stage-toolbar {justify-content:flex-end}
#hubScreen.map-view .growing-city[data-mode=city] .city-map-stage {grid-template-rows:56px minmax(0,1fr)}
@media(max-width:600px),(max-height:540px){
 #hubScreen.map-view .growing-city[data-mode=city] .city-map-stage {margin:6px 6px 8px;grid-template-rows:56px minmax(0,1fr)}
 #hubScreen.map-view .growing-city[data-mode=city] .walk-invitation {top:10px;left:12px}
}
