/* Shared navigation stays mounted while each page keeps an isolated document. */
html.dashboard-embedded #dashboardNav { display: none !important; }
@media screen {
  html.dashboard-host { overflow-y:scroll; scrollbar-gutter:stable; }
  html.dashboard-embedded { scrollbar-width:none !important; scroll-padding-top:var(--dashboard-chrome-height,104px); }
  html.dashboard-embedded::-webkit-scrollbar { width:0 !important; height:0 !important; display:none !important; }
  html.dashboard-embedded body.dashboard-themed { padding-top:var(--dashboard-chrome-height,104px); }
  body.dashboard-shell { padding:0; }
  #dashboardScrollSpace { height:100dvh; pointer-events:none; }
  #dashboardChrome { position:fixed; top:0; left:0; width:100%; padding:20px var(--dashboard-gutter) 16px; background:var(--bg-page); z-index:1100; box-sizing:border-box; }
  #dashboardChrome > :is(#dashboardNav,.dashboard-impersonation-banner) { width:100%; max-width:var(--dashboard-max-width); margin-inline:auto; }
  body.dashboard-shell > #dashboardContent { position:fixed; inset:0; padding:0; max-width:none; width:100%; height:100%; margin:0; }
  #dashboardViews, .dashboard-view { width: 100%; height: 100%; border: 0; }
  .dashboard-view { display: block; background: var(--bg-page); }
  .dashboard-view[hidden] { display: none; }
  #dashboardContent:focus { outline:none; }
  #dashboardContent.is-loading #dashboardViews { visibility: hidden; pointer-events: none; }
  .dashboard-page-loader { position:absolute; inset:var(--dashboard-chrome-height,104px) 0 0; z-index:3; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px; padding:24px; box-sizing:border-box; text-align:center; background:var(--bg-page); }
  .dashboard-page-loader[hidden] { display:none !important; }
  .dashboard-loading-bars { display:flex; align-items:center; gap:7px; height:64px; }
  .dashboard-loading-bars span { display:block; width:9px; height:52px; border-radius:5px; background:var(--dashboard-bar-fill,linear-gradient(90deg,#2563eb,#60a5fa)); transform-origin:center; animation:dashboardBarsWave 1.1s ease-in-out infinite; }
  .dashboard-loading-bars span:nth-child(2) { animation-delay:-.12s; }
  .dashboard-loading-bars span:nth-child(3) { animation-delay:-.24s; }
  .dashboard-loading-bars span:nth-child(4) { animation-delay:-.36s; }
  .dashboard-loading-bars span:nth-child(5) { animation-delay:-.48s; }
  #dashboardPageStatus { margin:0; max-width:40ch; color:var(--text-muted); font-size:14px; }
  #dashboardPageRetry[hidden] { display:none !important; }
  #dashboardContent.has-load-error .dashboard-loading-bars { display:none; }
  .dashboard-view:not([hidden]) { animation:dashboardPageReveal .18s ease-out; }
  @keyframes dashboardBarsWave { 0%,100% { transform:scaleY(.3); opacity:.55; } 50% { transform:scaleY(1); opacity:1; } }
  @keyframes dashboardPageReveal { from { opacity:0; } to { opacity:1; } }
  @media (prefers-reduced-motion:reduce) {
    .dashboard-loading-bars span, .dashboard-view:not([hidden]) { animation:none; }
    .dashboard-loading-bars span { transform:scaleY(.5); opacity:.85; }
    .dashboard-loading-bars span:nth-child(2), .dashboard-loading-bars span:nth-child(4) { transform:scaleY(.75); }
    .dashboard-loading-bars span:nth-child(3) { transform:scaleY(1); }
  }
  .dashboard-skip-link { position: absolute; top: -100px; z-index: 2000; background: var(--bg-card); color: var(--text-primary); padding: 10px; }
  .dashboard-skip-link:focus { top: 2px; }
  html.dashboard-embedded :is(.prime-modal,.ids-app-modal,.people-modal-backdrop,.oi-modal-backdrop,.ui-modal-backdrop,.modal-overlay,.modal) { top:var(--dashboard-chrome-height,104px); }
  html.dashboard-embedded :is(.prime-modal-dialog,.ids-app-modal-dialog,.people-modal-card,.oi-modal-card,.ui-modal) { max-height:calc(100dvh - var(--dashboard-chrome-height,104px) - 48px); }
  html.dashboard-embedded dialog { top:var(--dashboard-chrome-height,104px); max-height:calc(100dvh - var(--dashboard-chrome-height,104px) - 32px) !important; }
}
@media print { #dashboardChrome, #dashboardScrollSpace, .dashboard-skip-link, #dashboardPageLoader { display: none !important; } }
