/* Opt-in only: never style modal headers, chart labels or the admin shell. */
[data-site-nav] {
  box-sizing: border-box;
  background: var(--eme-nav-bg) !important;
  border-bottom-color: var(--eme-nav-border) !important;
  color: var(--eme-text);
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  max-width: 100%;
  min-width: 0;
}
html[data-theme="dark"] [data-site-nav], [data-site-nav][data-site-theme="dark"] {
  --eme-nav-bg: #172234;
  --eme-nav-border: #35445a;
  --eme-text: #e6f7f1;
}
[data-site-nav] > *, [data-site-nav] .nav-right, [data-site-nav] .nav-links { min-width: 0; }
[data-site-nav] :is(a, button, [role="button"]) {
  box-sizing: border-box;
  min-height: 44px;
  min-width: 44px;
}
[data-site-nav] :is(a, button, [role="button"]):focus-visible {
  outline: 3px solid var(--eme-primary);
  outline-offset: 3px;
}
[data-site-nav] .nav-right { flex-wrap: wrap; }
[data-site-nav] :is(.nav-btn, .btn-logout, .nav-item, .brand, .logo-link, .logo) { display: inline-flex; align-items: center; }
[data-site-nav] .btn-back, [data-site-nav].auth-header .header-right a { display: inline-flex; align-items: center; }
[data-site-nav] .profile-dropdown { max-width: calc(100vw - 24px); }
[data-site-nav] .user-profile-box { min-height: 44px; }
[data-site-nav] .user-profile-box:focus-within .profile-dropdown { display: block; opacity: 1; visibility: visible; }
[data-home-auth] { width: 232px; min-height: 56px; display: flex; justify-content: flex-end; align-items: center; }
[data-home-auth] [hidden] { display: none !important; }
[data-home-auth] #auth-buttons { display: flex; gap: 8px; align-items: center; }
[data-home-auth] #home-auth-status { display: flex; align-items: center; gap: 8px; color: var(--eme-text); font-size: 13px; }
[data-home-auth] #home-auth-status button { font: inherit; border: 1px solid var(--eme-nav-border); background: #fff; color: var(--eme-primary); border-radius: 8px; cursor: pointer; }
[data-home-auth] .user-name-display { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.home-page .home-header[data-site-nav] .nav-links { gap: clamp(8px, 1.6vw, 24px); flex-wrap: wrap; justify-content: flex-end; }
.home-page .home-header[data-site-nav] { gap: 12px; }
.home-page .chatbot-container .chat-header button { min-width: 44px; min-height: 44px; }
.profile-wrap > .profile-page-title { color: var(--eme-text); margin: 0 0 20px; font-size: 24px; }
@media (max-width: 1024px) {
  .home-page .home-header[data-site-nav] { flex-wrap: wrap; padding: 12px 16px; }
  .home-page .home-header[data-site-nav] .nav-links { width: 100%; justify-content: flex-start; }
}
@media (max-width: 600px) {
  [data-site-nav]:is(.top-nav, .page-header, .res-topbar, .topbar) { flex-wrap: wrap; gap: 10px; padding: 10px 14px; }
  [data-site-nav] .nav-right { gap: 8px; }
  .home-page .home-header[data-site-nav] .nav-links { gap: 4px 12px; }
  [data-home-auth] { width: 100%; justify-content: flex-start; }
  .home-page .home-header[data-site-nav] .logo-link { flex-wrap: wrap; }
  .home-page .hero-section { flex-direction: column; padding: 24px 16px; }
  .home-page :is(.hero-text, .hero-right-content) { min-width: 0; max-width: 100%; }
  .home-page .hero-text h1 { font-size: clamp(27px, 7.5vw, 40px); }
  .home-page :is(.modal-content, .app-hub-container, .dashboard-container) { max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); overflow: auto; }
  .profile-wrap .profile-head { flex-wrap: wrap; }
  .profile-wrap :is(.profile-head, .ph-info, .metric-card) { min-width: 0; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  [data-site-nav], [data-site-nav] * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .home-page :is(.modal-overlay, .hero-section, .circle-ecosystem) * { animation: none !important; transition: none !important; }
}
