html, body { max-width: 100%; overflow-x: hidden; }

.asred-legacy-return {
  position: fixed;
  inset: 12px auto auto 12px;
  z-index: 100000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(201, 168, 76, .42);
  border-radius: 999px;
  background: rgba(5, 7, 13, .9);
  color: #f8f3e7;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .28);
  backdrop-filter: blur(16px);
  font: 800 12px/1.2 Cairo, sans-serif;
  text-decoration: none;
}

@media (max-width: 768px) {
  #topbar {
    bottom: max(8px, env(safe-area-inset-bottom, 0px)) !important;
    min-height: 58px !important;
  }

  .topbar-btn,
  .topbar-icon-btn,
  .topbar-btn .tb-icon,
  #info-panel-btn,
  #lang-toggle {
    color: #fff !important;
  }

  .topbar-btn,
  .topbar-icon-btn,
  #info-panel-btn,
  .rn-btn,
  .pt-btn,
  .room-item,
  .ps-filter-toggle {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  #right-panel {
    bottom: 76px !important;
    height: min(68dvh, 580px) !important;
    max-height: min(68dvh, 580px) !important;
    padding: 26px 0 0 !important;
  }

  #pano-controls,
  #render-controls,
  #map-controls {
    display: none !important;
  }

  #render-nav,
  #pano-toolbar {
    bottom: 76px !important;
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
  }

  #pano-room-list {
    right: 8px !important;
    left: 8px !important;
    bottom: 130px !important;
    max-height: 22dvh !important;
    overflow: auto !important;
  }

  #pano-info-chip {
    top: max(56px, calc(env(safe-area-inset-top, 0px) + 50px)) !important;
    right: auto !important;
    left: 10px !important;
    max-width: calc(100vw - 20px) !important;
    width: auto !important;
    padding: 8px 12px !important;
  }

  #pano-info-chip .pic-desc { display: none !important; }

  #logo-chip {
    max-width: 42vw !important;
  }

  .ps-topbar {
    top: max(10px, env(safe-area-inset-top, 0px)) !important;
    right: 10px !important;
    left: 10px !important;
    max-width: none !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
  }

  .ps-weather {
    top: 70px !important;
    left: 10px !important;
    min-width: 0 !important;
    max-width: calc(100vw - 20px) !important;
  }

  .ps-map-filter {
    top: auto !important;
    right: 10px !important;
    bottom: 76px !important;
    left: 10px !important;
    width: auto !important;
    max-height: min(34dvh, 260px) !important;
    overflow: auto !important;
  }

  .project-selector-panel {
    top: auto !important;
    right: 10px !important;
    bottom: 76px !important;
    left: 10px !important;
    width: auto !important;
    max-height: min(46dvh, 390px) !important;
    overflow: auto !important;
    padding: 16px !important;
  }

  .asred-legacy-return {
    inset: auto 10px 10px 10px;
    min-height: 48px;
  }
}

@media (max-width: 920px) {
  html[data-asred-legacy-surface="viewer-admin"] body {
    min-height: 100dvh !important;
    overflow: hidden !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] #app-container.visible {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    height: 100dvh !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] #nav {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    min-width: 0 !important;
    padding: 8px !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 6px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    scrollbar-width: thin;
  }

  html[data-asred-legacy-surface="viewer-admin"] .nav-brand {
    flex: 0 0 auto !important;
    min-width: max-content !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    border: 0 !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] .nav-brand-sub,
  html[data-asred-legacy-surface="viewer-admin"] .nav-group-lbl,
  html[data-asred-legacy-surface="viewer-admin"] .nav-footer .autosave-status,
  html[data-asred-legacy-surface="viewer-admin"] .nav-footer .save-progress-wrap {
    display: none !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] .nav-group,
  html[data-asred-legacy-surface="viewer-admin"] .nav-footer {
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 4px !important;
    min-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] .nav-item,
  html[data-asred-legacy-surface="viewer-admin"] .nav-footer .btn {
    flex: 0 0 auto !important;
    min-width: max-content !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 9px 11px !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] #content {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 14px 14px 78px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] .card-grid-2,
  html[data-asred-legacy-surface="viewer-admin"] .card-grid-3,
  html[data-asred-legacy-surface="viewer-admin"] .frow2,
  html[data-asred-legacy-surface="viewer-admin"] .frow3,
  html[data-asred-legacy-surface="viewer-admin"] .theme-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html[data-asred-legacy="editor"] .asred-legacy-return {
    inset: auto 10px 10px auto !important;
    width: auto !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 14px !important;
  }

  html[data-asred-legacy="editor"] #content {
    padding: 14px !important;
  }

  html[data-asred-legacy-surface="viewer-admin"] #content {
    padding-bottom: 78px !important;
  }
}
