/* =====================================================================
   SELcurve global chrome refresh (ds Phase 2) - v1.0.0 (2026-10-04)
   Restyles the parts of the site chrome that live in the database
   (GP Customizer colours, GP Elements 1960 search, 1963 sub-nav, 508 footer,
   Customizer Additional CSS) WITHOUT editing them: every rule here is more
   specific than the rule it replaces (body / body #id prefixes).
   Dashboard header + sidebar: includes/dashboard.php + header-account.php.
   Mobile visitor panel: includes/nav.php.
   Comments ASCII-only (10Web minifier).
   ===================================================================== */

/* ---------- Header bar: white for everyone ---------- */
body .site-header { background-color: #ffffff; border-bottom: 1px solid #dbe5e3; }
body .site-header .main-navigation,
body .site-header .main-navigation ul ul { background-color: transparent; }
body .site-header .inside-header { min-height: 68px; }
body .site-header .site-logo img.header-image { width: auto; height: 30px; max-height: 30px; object-fit: contain; }

/* ---------- Desktop visitor nav (menu 63) ---------- */
@media (min-width: 769px) {
  body #site-navigation ul.menu > li > a {
    color: #1C2B2A; height: 68px; padding: 0 14px;
    font-family: 'DM Sans', system-ui, sans-serif; font-size: 15px; font-weight: 600;
  }
  body #site-navigation ul.menu > li > a:hover,
  body #site-navigation ul.menu > li > a:focus { color: #1e5c5a; background: transparent; }
  body #site-navigation ul.menu > li.current-menu-item > a { color: #1e5c5a; box-shadow: inset 0 -3px 0 #f2b705; }
  body #site-navigation ul.menu > li > a:focus-visible { outline: 3px solid #22b8b0; outline-offset: -6px; }
  /* Sign Up = primary button (white text on dark teal) */
  body #site-navigation ul.menu > li > a[href*="/signup"] {
    height: 44px; align-self: center; margin-left: 8px; padding: 0 18px;
    background: #1e5c5a; color: #ffffff; border-radius: 10px; box-shadow: 0 2px 0 #123c3a;
  }
  body #site-navigation ul.menu > li > a[href*="/signup"]:hover,
  body #site-navigation ul.menu > li > a[href*="/signup"]:focus { background: #143a38; color: #ffffff; }
  body #site-navigation ul.menu > li { align-items: center; }
}

/* ---------- Header search (GP Element 1960) ---------- */
body .sc-header-search form {
  background: #f2faf9; border: 1.5px solid #dbe5e3; border-radius: 999px;
  padding: 0 8px 0 16px; min-height: 44px; gap: 10px;
}
body .sc-header-search form:focus-within { border-color: #1e5c5a; box-shadow: 0 0 0 3px rgba(34,184,176,.35); }
body .sc-header-search input[type="search"] {
  font-family: 'DM Sans', system-ui, sans-serif; font-size: 16px; color: #1C2B2A; min-height: 40px;
}
body .sc-header-search input[type="search"]::placeholder { color: #6b7280; }
body .sc-header-search button[type="submit"] {
  width: 34px; height: 34px; border-radius: 50%; justify-content: center; background: #1e5c5a;
}
body .sc-header-search button[type="submit"]:hover,
body .sc-header-search button[type="submit"]:focus { background: #143a38; }
body .sc-header-search button[type="submit"]:focus-visible { outline: 3px solid #22b8b0; outline-offset: 2px; }
body .sc-header-search .sc-search-icon { stroke: #6b7280; width: 18px; height: 18px; stroke-width: 2.2; }
body .sc-header-search .sc-search-arrow { stroke: #ffffff; width: 16px; height: 16px; }

/* ---------- Sub-nav: 5 CASEL dropdowns (GP Element 1963) ---------- */
body .sc-subnav { background: #ffffff; border-bottom: 1px solid #dbe5e3; }
body .sc-subnav-label {
  display: flex; align-items: center; gap: 6px; min-height: 48px; padding: 0 14px;
  font-family: 'DM Sans', system-ui, sans-serif; font-size: 14.5px; font-weight: 600; letter-spacing: 0;
  color: #374151; border-bottom: 3px solid transparent;
}
body .sc-subnav-item:hover .sc-subnav-label,
body .sc-subnav-item:focus-within .sc-subnav-label { color: #1e5c5a; border-bottom-color: #f2b705; }
body .sc-subnav-label:focus-visible { outline: 3px solid #22b8b0; outline-offset: -3px; }
body .sc-subnav-dropdown {
  min-width: 260px; padding: 8px; border: 1px solid #dbe5e3; border-radius: 12px;
  box-shadow: 0 14px 34px rgba(20,58,56,.14); top: calc(100% + 1px);
}
/* keyboard users: open the dropdown when a link inside has focus */
body .sc-subnav-item:focus-within .sc-subnav-dropdown { display: block; }
body .sc-subnav-dropdown a {
  display: flex; align-items: center; min-height: 38px; padding: 6px 12px; border-radius: 8px;
  font-family: 'DM Sans', system-ui, sans-serif; font-size: 14.5px; color: #374151;
}
body .sc-subnav-dropdown a:hover,
body .sc-subnav-dropdown a:focus { background: #f2faf9; color: #1e5c5a; }
body .sc-subnav-dropdown a:focus-visible { outline: 3px solid #22b8b0; outline-offset: -3px; }

/* ---------- Footer (GP Element 508) ---------- */
body .sel-footer { background: #143a38; color: rgba(255,255,255,.78); font-family: 'DM Sans', system-ui, sans-serif; font-size: 15px; padding: 56px 0 32px; }
body .sel-footer .sel-footer-brand img { width: auto; height: 30px; max-width: 100%; object-fit: contain; }
body .sel-footer .sel-footer-brand p { color: rgba(255,255,255,.72); }
body .sel-footer .sel-footer-brand .sel-copyright { color: rgba(255,255,255,.5); font-size: 13px; }
body .sel-footer h4 { color: #ffffff; font-family: 'DM Sans', system-ui, sans-serif; font-size: 12px; letter-spacing: .14em; }
body .sel-footer ul li { margin-bottom: 6px; }
body .sel-footer ul li a { color: rgba(255,255,255,.78); display: inline-block; padding: 4px 0; }
body .sel-footer ul li a:hover,
body .sel-footer ul li a:focus { color: #f2b705; }
body .sel-footer a:focus-visible { outline: 3px solid #22b8b0; outline-offset: 2px; border-radius: 4px; }

/* ---------- Mobile visitor header (Customizer section 4 layout kept) ---------- */
@media (max-width: 768px) {
  body:not(.sc-is-dashboard) .inside-header.grid-container { padding-top: 8px; min-height: 0; }
  body:not(.sc-is-dashboard) .inside-header .sc-header-search { padding: 10px 0 12px; }
  body .site-header .site-logo img.header-image { height: 26px; max-height: 26px; }
}
@media (prefers-reduced-motion: reduce) {
  body .sc-subnav-label, body .sel-footer ul li a { transition: none; }
}

/* ---------- Dark header variants (review 2, 2026-10-04) ----------
   Logged-in users: header colour comes from header-account.php / dashboard.php (t900).
   Focused account pages (log in 463, sign up 509, password reset 510,
   confirmation 460): dark t900 band so the slim header has weight. */
body.page-id-463 .site-header, body.page-id-509 .site-header,
body.page-id-510 .site-header, body.page-id-460 .site-header { background-color: #143a38; border-bottom: 0; }
/* 1.9.117 (phone pass): these focused pages use the minimal header - no menu or account icons
   (they were dark ink on the dark band: invisible but still tappable). Hidden, not removed,
   so the logo keeps its centre column. */
body.page-id-463 #sc-pub-menu-toggle, body.page-id-509 #sc-pub-menu-toggle,
body.page-id-510 #sc-pub-menu-toggle, body.page-id-460 #sc-pub-menu-toggle,
body.page-id-463 #sc-pub-account-wrap, body.page-id-509 #sc-pub-account-wrap,
body.page-id-510 #sc-pub-account-wrap, body.page-id-460 #sc-pub-account-wrap { visibility: hidden !important; pointer-events: none !important; }
/* logged-in users on public pages: light text/icons on the dark header */
@media (min-width: 769px) {
  body.logged-in #site-navigation ul.menu > li > a { color: rgba(255,255,255,.9); }
  body.logged-in #site-navigation ul.menu > li > a:hover,
  body.logged-in #site-navigation ul.menu > li > a:focus { color: #ffffff; }
  body.logged-in #site-navigation ul.menu > li.current-menu-item > a { color: #ffffff; }
}
body.logged-in #sc-pub-menu-toggle, body.logged-in #sc-pub-ac-btn { color: #ffffff; }
body.logged-in #sc-pub-menu-toggle:hover, body.logged-in #sc-pub-ac-btn:hover { background: rgba(255,255,255,.1) !important; }

/* Logged-in users on public pages: hide the Sign Up menu button (they already have an account) */
body.logged-in #site-navigation ul.menu > li > a[href*="/signup"] { display: none; }
