/* Keep navigation in the banner; the world is reserved for movement and interaction. */
.topbar{flex-wrap:wrap;gap:8px 18px;padding:10px 22px;z-index:50}
.topbar .brand{min-width:145px}.topbar .mode-switch{margin-right:auto}.topbar .account{margin-left:0}
.header-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;width:100%;flex-wrap:wrap}
.header-controls button,.header-controls summary,.header-controls select{font:600 12px/1.3 Arial,sans-serif;color:#24443c;min-height:36px}
.header-controls summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:9px 12px;border:1px solid #c4d2c8;border-radius:6px;list-style:none;background:#f5f8f2}
.header-controls summary::-webkit-details-marker{display:none}
.header-controls summary:focus-visible,.header-controls button:focus-visible{outline:2px solid #37604b;outline-offset:2px}
.header-menu{position:relative}
#header-phase .phase-control{padding:0 7px;border:0;gap:5px;background:none}
#header-phase .phase-control small{display:none}#header-phase .phase-control svg{width:16px}
#header-phase select{font-size:13px;padding:6px 3px;max-width:120px}
#flyover-slot #flyover-toggle,.topbar .ce-feedback-launcher{position:static;margin:0;padding:9px 12px;min-height:36px;border-radius:6px;font:600 12px/1.3 Arial,sans-serif;box-shadow:none}
#destination-menu .destination-bar{position:absolute;top:calc(100% + 7px);bottom:auto;left:auto;right:0;transform:none;display:grid;gap:2px;width:220px;max-width:calc(100vw - 24px);padding:8px;background:#fafbf6;border:1px solid #c4d2c8;border-radius:8px;box-shadow:0 10px 30px #18392b30;max-height:calc(100dvh - var(--game-header-height,120px) - 20px);overflow:auto}
#destination-menu:not([open]) .destination-bar{display:none}
#destination-menu .destination-bar button{justify-content:flex-start;width:100%;min-height:40px;padding:9px 12px;font-size:13px;gap:8px;text-align:left}
#destination-menu .destination-bar svg{width:17px}#destination-menu button:hover{background:#e0eadd}
.topbar #arrival-mission{position:relative;inset:auto;width:auto;padding:0;background:none;border:0;box-shadow:none;pointer-events:auto}
.topbar #arrival-mission>.mobile-panel-toggle{display:flex;width:auto;min-height:36px;gap:12px;padding:9px 12px;border:1px solid #c4d2c8;border-radius:6px;background:#f5f8f2}
.topbar #arrival-mission:not(.mobile-expanded) #mission-details{display:none}
.topbar #mission-details{position:absolute;top:calc(100% + 7px);right:0;width:275px;max-width:calc(100vw - 24px);padding:16px;background:#fafbf6;border:1px solid #c4d2c8;border-radius:8px;box-shadow:0 10px 30px #18392b30}
.topbar #world-tools{position:relative;inset:auto;width:auto;background:none;border:0;box-shadow:none}
.topbar #settings-details{position:absolute;top:calc(100% + 7px);right:0;background:#fafbf6;border:1px solid #c4d2c8;border-radius:8px;width:180px;box-shadow:0 10px 30px #18392b30}
.topbar #world-tools:not([open]) #settings-details{display:none}
.topbar #settings-details .tool-row{display:flex;padding:8px;gap:5px}
.world-heading,.studio-heading{top:calc(var(--game-header-height,120px) + 20px)}
.campus-progress{top:calc(var(--game-header-height,120px) + 7px)}
.studio-panel{top:calc(var(--game-header-height,120px) + 12px)}
#flyover-panel{top:calc(var(--game-header-height,120px) + 16px);max-height:calc(100% - var(--game-header-height,120px) - 40px)}
.in-studio #header-phase,.in-chapel #header-phase{display:none}
@media(min-width:1500px){.header-controls{width:auto;flex:1}.topbar .account{order:3}.topbar .brand{min-width:130px}.topbar{gap:8px}.mode-switch button{padding:8px 10px}}
@media(max-width:620px){
 .topbar{padding:7px 10px;gap:5px 7px}.topbar .brand{min-width:78px}.topbar .brand-mark{display:none}.topbar .account select{width:62px}.topbar .account .icon-button{width:28px}.topbar .mode-switch{margin-left:auto;margin-right:0}
 .header-controls{gap:4px;justify-content:flex-start}.header-controls button,.header-controls summary{font-size:11px;min-height:34px}.header-controls summary,#flyover-slot #flyover-toggle,.topbar .ce-feedback-launcher{padding:7px 9px;min-height:34px;font-size:11px}
 #header-phase select{font-size:11px;max-width:105px;min-height:34px}#header-phase .phase-control{padding:0}#header-phase .phase-control svg{display:none}
 .topbar #arrival-mission>.mobile-panel-toggle{padding:7px 9px;min-height:34px;font-size:11px}
 .topbar #mission-details{position:fixed;top:calc(var(--game-header-height,135px) + 6px);right:12px;max-width:calc(100vw - 24px)}
 #destination-menu .destination-bar{right:0;width:205px}
 .world-heading,.studio-heading{top:calc(var(--game-header-height,135px) + 12px)}
 .studio-panel{top:auto}.studio-heading h1{font-size:21px}.movement{bottom:34px}.interaction{bottom:38px}.world-footer{right:16px}
}

.topbar .ce-feedback-launcher{color:#fff}

@media(min-width:621px){.studio-view-tools{left:20px;bottom:20px;transform:none}}

/* One compact desktop row, with all travel choices inside Find your place. */
.topbar{flex-wrap:nowrap;gap:10px;padding:10px 16px;min-height:66px}
.topbar .brand{min-width:125px;flex-shrink:0}
.topbar .account{order:3;margin-left:auto;gap:2px;flex-shrink:0}
.topbar .account select{max-width:86px}
.header-controls{width:auto;flex:1;flex-wrap:nowrap;justify-content:flex-start;gap:5px}
.header-controls>*{flex-shrink:0}
.header-controls .my-life-link{display:flex;align-items:center;gap:6px;min-height:36px;padding:8px;color:var(--ink);font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;border-radius:6px}
.header-controls .my-life-link:hover{background:#e0eadd}
#destination-menu #arrival-mission{border-top:1px solid #c4d2c8;margin-top:5px;padding-top:5px}
#destination-menu #arrival-mission>.mobile-panel-toggle{width:100%;border:0;white-space:normal}
#destination-menu #mission-details{position:static;width:auto;max-width:none;padding:12px;box-shadow:none;border:0}
@media(min-width:621px) and (max-width:1000px){
 .topbar{gap:6px;padding:8px 10px}.topbar .brand{min-width:85px}.topbar .brand-mark{display:none}.topbar .brand strong{font-size:18px}
 .header-controls summary,#flyover-slot #flyover-toggle,.topbar .ce-feedback-launcher{padding:8px}.header-controls{gap:3px}
 #header-phase .phase-control{padding:0;gap:2px}.header-controls .my-life-link svg{display:none}
 .topbar .account select{width:65px}.topbar .account .icon-button{width:30px;padding:5px}
}
@media(max-width:620px){
 .topbar{flex-wrap:wrap;gap:5px 7px;padding:7px 10px}.topbar .brand{min-width:78px}.topbar .account{order:0}.header-controls{flex-basis:100%;flex-wrap:wrap;gap:4px}
 .header-controls .my-life-link{font-size:11px;padding:7px 6px;min-height:34px}.header-controls .my-life-link svg{display:none}
 #destination-menu .destination-bar{position:fixed;top:calc(var(--game-header-height,120px) + 6px);right:12px;width:235px}
}

/* First-day guidance belongs with the world, separately from travel choices. */
#arrival-mission{position:absolute;inset:auto 22px 80px auto;width:270px;max-height:calc(100dvh - var(--game-header-height,66px) - 150px);overflow:auto;white-space:normal;pointer-events:auto;z-index:6;padding:16px 18px;border:1px solid #d7c9ac;border-radius:10px;background:#f8f3e8ed;box-shadow:0 6px 22px #182e2515}
#arrival-mission>.mobile-panel-toggle{display:none}
#arrival-mission #mission-details{display:block;padding:0;white-space:normal;overflow-wrap:anywhere}
#arrival-mission h2{font-size:23px;margin:6px 0}
.topbar .legacy-link{display:flex;align-items:center;min-height:36px;padding:8px;font:600 11px/1.3 Arial,sans-serif;white-space:nowrap;border-radius:6px;color:var(--ink);background:transparent;text-decoration:none}
.topbar .legacy-link:hover{background:#e0eadd}
@media(max-width:820px){.topbar{flex-wrap:wrap}.topbar .account{order:0}.header-controls{flex-basis:100%;flex-wrap:wrap}}
@media(max-width:620px),(max-height:500px) and (max-width:950px){
 #arrival-mission{inset:auto 12px 85px auto;width:210px;max-width:calc(100% - 165px);padding:0;max-height:calc(100dvh - var(--game-header-height,136px) - 110px)}
 #arrival-mission>.mobile-panel-toggle{display:flex;width:100%;min-height:44px;justify-content:space-between;padding:10px 12px;font-size:12px;white-space:normal}
 #arrival-mission:not(.mobile-expanded) #mission-details{display:none}
 #arrival-mission.mobile-expanded{max-width:calc(100% - 24px);width:270px}
 #arrival-mission.mobile-expanded #mission-details{padding:0 14px 14px}
 .topbar .legacy-link{min-height:34px;padding:7px 6px}
}

/* Full campus retains its direct controls; fit them inside the existing banner. */
@media(min-width:821px) and (max-width:1499px){
 #header-controls:not(:has(#exploration-options)){flex-wrap:wrap;min-width:0;gap:2px;align-content:center}
 #header-controls:not(:has(#exploration-options)) :is(button,summary,select,a){font:600 11px/1.3 Arial,sans-serif;min-height:28px;padding:4px 6px}
 #header-controls:not(:has(#exploration-options)) #header-phase .phase-control{padding:0;gap:2px}
}
