/* Clear floor choices and persistent views, aligned with the display switches. */
.dashboard-mode .dashboard-context{top:calc(var(--header-h,74px) + 10px)}
.dashboard-mode .floor-picker{position:relative}
.dashboard-mode #floor-select[hidden]{display:none}
.dashboard-mode .floor-dropdown{position:relative}
.dashboard-mode .floor-trigger{display:flex;align-items:center;justify-content:space-between;gap:15px;height:36px;min-width:116px;padding:0 11px;border:1px solid #62dfe5a6;border-radius:7px;background:linear-gradient(135deg,#174252,#132c41);color:#dcffff;box-shadow:inset 0 1px 0 #d2ffff15;white-space:nowrap}
.dashboard-mode .floor-trigger>span{display:flex;align-items:center;gap:9px;font-size:11px}
.dashboard-mode .floor-trigger b{font:600 14px Oxanium,monospace;color:#7ef5ff}
.dashboard-mode .floor-trigger svg{flex:0 0 16px;transition:transform .2s}
.dashboard-mode .floor-trigger[aria-expanded=true] svg{transform:rotate(180deg)}
.dashboard-mode .floor-menu{position:absolute;left:0;top:calc(100% + 9px);width:234px;padding:8px;border:1px solid #58cad78c;border-radius:9px;background:linear-gradient(135deg,#193c51fa,#102638fa);box-shadow:0 16px 45px #020b22aa;z-index:12}
.dashboard-mode .floor-menu>[role=listbox]{display:grid;gap:4px;max-height:min(398px,calc(100dvh - var(--header-h,74px) - var(--footer-h) - 165px));min-height:126px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4c9bad #102638}
.dashboard-mode .floor-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#a9c7d8;transition:background-color .18s,border-color .18s}
.dashboard-mode .floor-option>span{display:flex;gap:10px;align-items:center;font-size:11px}
.dashboard-mode .floor-option b{font:600 15px Oxanium,monospace;color:#a4c6da}
.dashboard-mode .floor-option i{font-family:inherit;font-size:9px;line-height:1.4;font-style:normal;color:#8baabc;white-space:nowrap;padding:3px 6px;border:1px solid #4c6e8038;border-radius:4px;background:#0e24363d}
.dashboard-mode .floor-option.is-loaded i{color:#8fe9c8;border-color:#6ac5ae40;background:#55cda90c}
.dashboard-mode .floor-option:hover{background:#49b6c410;border-color:#58bbce4d;color:#e0faff}
.dashboard-mode .floor-option[aria-selected=true]{border-color:#58d5db8c;background:#2ad5d519;color:#dcffff;box-shadow:inset 3px 0 #69e1e5}
.dashboard-mode .floor-option[aria-selected=true] b{color:#7ffaff}
.dashboard-mode .floor-menu p{margin:10px 8px 4px;font-size:10px;color:#8bb4c7;line-height:1.5}
.dashboard-mode .floor-menu[hidden]{display:none}

.dashboard-mode .toolbar-right{gap:10px}
.dashboard-mode .footer-views{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.dashboard-mode .footer-views .view-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:86px;height:36px;padding:0 8px;border:1px solid #54778c69;border-radius:7px;color:#93b5c8;background:#142c3ee6;font-family:inherit;font-size:11px;line-height:1;white-space:nowrap;transition:color .18s,border-color .18s,background-color .18s}
.dashboard-mode .footer-views .view-button>svg{display:block;flex:0 0 18px;width:18px;height:18px}
.dashboard-mode .footer-views .view-button>span{display:block;margin:0;color:inherit;font-size:11px;line-height:1;letter-spacing:0}
.dashboard-mode .footer-views .view-button.active{color:#dcffff;border-color:#6be5e9b0;background:linear-gradient(145deg,#205c6c,#1d455a);box-shadow:inset 0 1px 0 #cbffff12,0 0 12px #24dbe90a}
.dashboard-mode .footer-views .view-button:hover{color:#efffff;border-color:#8ee7ef;background:#23495d}
.dashboard-mode .export-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.dashboard-mode .toolbar-right .footer-tool{display:inline-flex;justify-content:center;align-items:center;gap:8px;height:36px;padding:0 11px;border:1px solid #63d7dc70;border-radius:8px;color:#c8f7fa;background:linear-gradient(145deg,#193d4f,#172e42);box-shadow:inset 0 1px 0 #b6f8ff0d;font-family:inherit;font-size:11px;line-height:1;white-space:nowrap}
.dashboard-mode .toolbar-right .footer-tool>svg{display:block;flex:0 0 18px;width:18px;height:18px}
.dashboard-mode .toolbar-right .footer-tool>span{font-size:11px;line-height:1;letter-spacing:0}
.dashboard-mode .toolbar-right .footer-tool:hover{color:#efffff;border-color:#8ee7ef;background:#1c4053}

.dashboard-mode .floor-empty{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;background:radial-gradient(ellipse at 50% 45%,#143a505c,transparent 58%);color:#bbdae7}
.dashboard-mode .floor-empty[hidden]{display:none!important}
.dashboard-mode .floor-empty-icon{display:grid;place-items:center;width:92px;height:92px;border:1px solid #70c4da35;border-radius:24px;background:linear-gradient(145deg,#3e9bb91f,#12334752);box-shadow:inset 0 1px 0 #baffff0b,0 10px 35px #020f261f;color:#69c7de}
.dashboard-mode .floor-empty-icon svg{display:block;width:62px;height:62px}
.dashboard-mode .floor-empty h2{margin:3px 0 0;font-size:21px;font-weight:500;letter-spacing:3px;color:#d1edf4}
.dashboard-mode .floor-empty p{margin:0;font-size:12px;letter-spacing:1px;color:#81aaba}
.dashboard-mode .floor-empty-return{margin-top:6px;padding:9px 16px;border:1px solid #62cbd575;border-radius:7px;font-family:inherit;font-size:11px;letter-spacing:1px;color:#bcf2f6;background:#20627733;transition:background-color .18s,border-color .18s}
.dashboard-mode .floor-empty-return:hover{border-color:#83e4ef;background:#20627766}
.dashboard-mode.floor-unavailable :is(.scene-caption,.model-hint,.selection-status,.north-marker){display:none!important}
.dashboard-mode.floor-unavailable :is(button,select,input):disabled{opacity:.38;cursor:default;filter:saturate(.3);box-shadow:none}
.dashboard-mode.floor-unavailable :is(button,select,input):disabled:hover{transform:none}
.dashboard-mode.floor-unavailable .height-control{opacity:.45}
.dashboard-mode.floor-unavailable .footer-views .view-button:disabled{border-color:#54778c4d;background:#142c3eb3;color:#93b5c8}

.dashboard-mode.scene-only #app{height:100dvh;min-height:0;padding-bottom:0;overflow:hidden}
.dashboard-mode.scene-only #stage{inset:var(--header-h,74px) 0 var(--footer-h);height:auto}
.dashboard-mode.scene-only .scene-toolbar{top:calc(var(--header-h,74px) + 14px);left:20px;right:20px}
.dashboard-mode.scene-only .scene-caption{display:none}
.dashboard-mode.scene-only .room-panel,.dashboard-mode.scene-only .left-rail{top:calc(var(--header-h,74px) + 84px);max-height:calc(100dvh - var(--header-h,74px) - var(--footer-h) - 112px)}
.dashboard-mode.scene-only .model-hint{top:auto;bottom:calc(var(--footer-h) + 51px)}
.dashboard-mode.scene-only .selection-status{top:auto;bottom:calc(var(--footer-h) + 13px)}
.dashboard-mode #toast{bottom:calc(var(--footer-h) + 12px)}

@media(max-width:1360px){
  .dashboard-mode{--footer-h:154px}
  .dashboard-mode .bottom-bar{height:var(--footer-h);grid-template-rows:36px 36px 42px;gap:8px 10px;padding:11px 16px;align-content:center;overflow:visible}
  .dashboard-mode .toolbar-left,.dashboard-mode .toolbar-right{display:contents}
  .dashboard-mode .display-toggles{grid-column:1/-1;grid-row:1}
  .dashboard-mode .footer-views{grid-column:1/-1;grid-row:2;justify-self:center;width:min(440px,100%);gap:8px}
  .dashboard-mode .footer-views .view-button{flex:1 1 0;min-width:0;width:auto}
  .dashboard-mode .height-control{grid-column:1;grid-row:3;justify-self:start;display:flex;margin:0}
  .dashboard-mode #reset-view.home-button{grid-column:2;grid-row:3}
  .dashboard-mode .export-actions{grid-column:3;grid-row:3;justify-self:end}
}
@media(max-width:1100px){
  .dashboard-mode:not(.scene-only):not(.embed) .scene-toolbar{top:calc(124px + var(--header-h) - 74px)}
  .dashboard-mode:not(.scene-only):not(.embed) #stage{top:calc(176px + var(--header-h) - 74px)}
  .dashboard-mode:not(.scene-only) .scene-caption{top:calc(188px + var(--header-h) - 74px)}
  .dashboard-mode:not(.scene-only) .dashboard-data{padding-top:calc(620px + var(--header-h) - 74px)}
  .dashboard-mode:not(.scene-only) .selection-status{top:calc(578px + var(--header-h) - 74px)}
  .dashboard-mode:not(.scene-only) .model-hint{top:calc(552px + var(--header-h) - 74px)}
}
@media(max-width:760px){
  .dashboard-mode{--compact-map-height:clamp(140px,calc(100dvh - var(--header-h) - var(--footer-h) - 165px),330px)}
  .dashboard-mode:not(.scene-only):not(.embed) #stage{top:calc(221px + var(--header-h) - 74px);height:var(--compact-map-height)}
  .dashboard-mode:not(.scene-only) .scene-caption{top:calc(228px + var(--header-h) - 74px)}
  .dashboard-mode:not(.scene-only) .dashboard-data{padding-top:calc(221px + var(--header-h) - 74px + var(--compact-map-height) + 48px)}
  .dashboard-mode:not(.scene-only) .model-hint{top:calc(221px + var(--header-h) - 74px + var(--compact-map-height) - 58px)}
  .dashboard-mode:not(.scene-only) .selection-status{top:calc(221px + var(--header-h) - 74px + var(--compact-map-height) - 32px)}
  .dashboard-mode:not(.scene-only) .room-panel,.dashboard-mode:not(.scene-only) .left-rail{top:calc(204px + var(--header-h) - 74px);max-height:calc(var(--compact-map-height) + 16px)}
  .dashboard-mode .toolbar-right .footer-tool{width:34px;min-width:34px;padding:0;height:34px}
  .dashboard-mode .toolbar-right .footer-tool>span{display:none}
  .dashboard-mode.scene-only .scene-toolbar{left:16px;right:16px;flex-direction:column;align-items:flex-start;height:auto;gap:7px}
  .dashboard-mode.scene-only .room-panel,.dashboard-mode.scene-only .left-rail{top:calc(var(--header-h) + 101px);max-height:calc(100dvh - var(--header-h) - var(--footer-h) - 126px)}
  .dashboard-mode .floor-menu>[role=listbox]{max-height:min(294px,calc(100dvh - var(--header-h) - var(--footer-h) - 165px))}
  .dashboard-mode .floor-empty{gap:8px;padding:12px}
  .dashboard-mode .floor-empty-icon{width:52px;height:52px;border-radius:14px}
  .dashboard-mode .floor-empty-icon svg{width:38px;height:38px}
  .dashboard-mode .floor-empty h2{font-size:16px;letter-spacing:2px;margin:0}
  .dashboard-mode .floor-empty p{font-size:10px}
  .dashboard-mode .floor-empty-return{margin-top:0;padding:6px 12px;font-size:10px}
}
@media(max-width:399px){
  .dashboard-mode{--footer-h:188px}
  .dashboard-mode #dashboard-period button{padding:4px 5px;white-space:nowrap}
  .dashboard-mode .bottom-bar{height:var(--footer-h);grid-template-rows:36px 70px 40px;gap:8px 6px;padding:12px}
  .dashboard-mode .display-toggles{grid-row:1}
  .dashboard-mode .footer-views{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:32px 32px;gap:6px;grid-row:2}
  .dashboard-mode .footer-views .view-button{width:100%;height:32px}
  .dashboard-mode .height-control{grid-row:3;gap:6px}
  .dashboard-mode #reset-view.home-button{grid-column:2;grid-row:3}
  .dashboard-mode .export-actions{grid-column:3;grid-row:3;gap:6px}
  .dashboard-mode .floor-menu{width:220px}
}
@media(prefers-reduced-motion:reduce){.dashboard-mode :is(.floor-trigger svg,.floor-option,.view-button,.floor-empty-return){transition:none}}
