/* themes215.css — PacificAir colour-theme switcher.
   Each html[data-theme="slug"] block overrides the :root tokens the whole
   site already consumes via var(). NO attribute = untouched default
   (Facebook-blue navbar, coral H1, black bg). Scoped, so it cannot leak. */

/* Charcoal Cyan */
html[data-theme="charcoal-cyan"] {
  --bg: #0e1419;
  --surface: #17212b;
  --surface-2: #1c2733;
  --border: #28333f;
  --border-strong: #243240;
  --text: #d9dee4;
  --text-muted: #95a0ab;
  --text-subtle: #95a0ab;
  --accent: #2bbede;
  --accent-hover: #f0a85a;
  --accent-quiet: #56c98c;
  --warn: #e8836f;
  --code-bg: #1c2733;
  --code-fg: #d9dee4;
  --h1-color: #35c6e3;
  --h1-color-hover: #f0a85a;
  --h1-glow: rgba(43,190,222,0.16);
  --nav-bg: #0f2233;
  --nav-border: #35c6e3;
  --nav-text: #d6e6ef;
}

/* Deep Forest */
html[data-theme="deep-forest"] {
  --bg: #0d130f;
  --surface: #16201a;
  --surface-2: #1b271f;
  --border: #273429;
  --border-strong: #233028;
  --text: #d7e0d8;
  --text-muted: #93a397;
  --text-subtle: #93a397;
  --accent: #3fbd84;
  --accent-hover: #e0915a;
  --accent-quiet: #57c98f;
  --warn: #e0915a;
  --code-bg: #1b271f;
  --code-fg: #d7e0d8;
  --h1-color: #45c389;
  --h1-color-hover: #e0915a;
  --h1-glow: rgba(63,189,132,0.16);
  --nav-bg: #112a1e;
  --nav-border: #54d29a;
  --nav-text: #d8ece0;
}

/* Midnight Navy */
html[data-theme="midnight-navy"] {
  --bg: #0e1421;
  --surface: #18202f;
  --surface-2: #1d2738;
  --border: #283448;
  --border-strong: #243246;
  --text: #d6dce6;
  --text-muted: #94a0b0;
  --text-subtle: #94a0b0;
  --accent: #5398d8;
  --accent-hover: #e8a05a;
  --accent-quiet: #6fa8de;
  --warn: #e88a6f;
  --code-bg: #1d2738;
  --code-fg: #d6dce6;
  --h1-color: #5b9bd5;
  --h1-color-hover: #e8a05a;
  --h1-glow: rgba(83,152,216,0.16);
  --nav-bg: #102036;
  --nav-border: #6cb0ec;
  --nav-text: #d6e2f0;
}

/* Deep Plum */
html[data-theme="deep-plum"] {
  --bg: #14101a;
  --surface: #1f1a28;
  --surface-2: #261f31;
  --border: #332b44;
  --border-strong: #2f273d;
  --text: #ddd6e4;
  --text-muted: #a097ad;
  --text-subtle: #a097ad;
  --accent: #a586e0;
  --accent-hover: #e58aaa;
  --accent-quiet: #9f86d6;
  --warn: #e088a8;
  --code-bg: #261f31;
  --code-fg: #ddd6e4;
  --h1-color: #a98fe0;
  --h1-color-hover: #e58aaa;
  --h1-glow: rgba(165,134,224,0.16);
  --nav-bg: #221a36;
  --nav-border: #bda3ec;
  --nav-text: #e6def0;
}

/* Warm Espresso */
html[data-theme="warm-espresso"] {
  --bg: #15110d;
  --surface: #201a14;
  --surface-2: #28201a;
  --border: #38301f;
  --border-strong: #322820;
  --text: #e3dccf;
  --text-muted: #a89b86;
  --text-subtle: #a89b86;
  --accent: #cf9152;
  --accent-hover: #6bb6a6;
  --accent-quiet: #c9a36a;
  --warn: #e0795a;
  --code-bg: #28201a;
  --code-fg: #e3dccf;
  --h1-color: #d99a5c;
  --h1-color-hover: #6bb6a6;
  --h1-glow: rgba(207,145,82,0.16);
  --nav-bg: #261c12;
  --nav-border: #e0a468;
  --nav-text: #efe4d4;
}

/* Slate Teal */
html[data-theme="slate-teal"] {
  --bg: #0e1518;
  --surface: #182227;
  --surface-2: #1d292f;
  --border: #28353a;
  --border-strong: #243339;
  --text: #d7dee1;
  --text-muted: #93a1a6;
  --text-subtle: #93a1a6;
  --accent: #36b3a8;
  --accent-hover: #e0a45a;
  --accent-quiet: #4cc2b6;
  --warn: #e0a45a;
  --code-bg: #1d292f;
  --code-fg: #d7dee1;
  --h1-color: #3fb8ad;
  --h1-color-hover: #e0a45a;
  --h1-glow: rgba(54,179,168,0.16);
  --nav-bg: #102529;
  --nav-border: #45c7bb;
  --nav-text: #d6ebe9;
}

/* Graphite Rose */
html[data-theme="graphite-rose"] {
  --bg: #121013;
  --surface: #1d1a1e;
  --surface-2: #242025;
  --border: #332d33;
  --border-strong: #2c272e;
  --text: #ddd9dd;
  --text-muted: #a39ca3;
  --text-subtle: #a39ca3;
  --accent: #d27e96;
  --accent-hover: #d9b066;
  --accent-quiet: #c98ea2;
  --warn: #d9b066;
  --code-bg: #242025;
  --code-fg: #ddd9dd;
  --h1-color: #d98aa0;
  --h1-color-hover: #d9b066;
  --h1-glow: rgba(210,126,150,0.16);
  --nav-bg: #211c22;
  --nav-border: #e3a0b4;
  --nav-text: #ece4e8;
}

/* Deep Ocean */
html[data-theme="deep-ocean"] {
  --bg: #0b1418;
  --surface: #142026;
  --surface-2: #18272e;
  --border: #25343b;
  --border-strong: #1f323a;
  --text: #d6e0e3;
  --text-muted: #91a2a8;
  --text-subtle: #91a2a8;
  --accent: #33b8bc;
  --accent-hover: #e88a6f;
  --accent-quiet: #4cc7cb;
  --warn: #e88a6f;
  --code-bg: #18272e;
  --code-fg: #d6e0e3;
  --h1-color: #3cc2c6;
  --h1-color-hover: #e88a6f;
  --h1-glow: rgba(51,184,188,0.16);
  --nav-bg: #0d2530;
  --nav-border: #45c9cd;
  --nav-text: #d6ecee;
}

/* Dark Moss */
html[data-theme="dark-moss"] {
  --bg: #12130d;
  --surface: #1d1f14;
  --surface-2: #24261a;
  --border: #34361f;
  --border-strong: #2d2f20;
  --text: #e0e1cf;
  --text-muted: #a5a587;
  --text-subtle: #a5a587;
  --accent: #b2bb52;
  --accent-hover: #e0905a;
  --accent-quiet: #aeb85a;
  --warn: #e0905a;
  --code-bg: #24261a;
  --code-fg: #e0e1cf;
  --h1-color: #bcc25a;
  --h1-color-hover: #e0905a;
  --h1-glow: rgba(178,187,82,0.16);
  --nav-bg: #212413;
  --nav-border: #cdd266;
  --nav-text: #ebecd6;
}

/* Burgundy Night */
html[data-theme="burgundy-night"] {
  --bg: #150e11;
  --surface: #20171b;
  --surface-2: #281d22;
  --border: #38262e;
  --border-strong: #31242a;
  --text: #e2d6da;
  --text-muted: #ad999f;
  --text-subtle: #ad999f;
  --accent: #d2697f;
  --accent-hover: #e0a85a;
  --accent-quiet: #cf7e98;
  --warn: #e0a85a;
  --code-bg: #281d22;
  --code-fg: #e2d6da;
  --h1-color: #d97a8c;
  --h1-color-hover: #e0a85a;
  --h1-glow: rgba(210,105,127,0.16);
  --nav-bg: #26151a;
  --nav-border: #e3909e;
  --nav-text: #f0e0e4;
}

/* Warm Sand */
html[data-theme="warm-sand"] {
  --bg: #f6f0e4;
  --surface: #fffaf0;
  --surface-2: #efe6d4;
  --border: #e1d4bc;
  --border-strong: #efe6d4;
  --text: #3a322a;
  --text-muted: #8a7c68;
  --text-subtle: #8a7c68;
  --accent: #9c4a16;
  --accent-hover: #1f7a68;
  --accent-quiet: #8a4a1c;
  --warn: #1f7a68;
  --code-bg: #efe6d4;
  --code-fg: #3a322a;
  --h1-color: #a8521f;
  --h1-color-hover: #1f7a68;
  --h1-glow: rgba(60,40,20,0.12);
  --nav-bg: #523420;
  --nav-border: #e0a05f;
  --nav-text: #f4e8d6;
}

/* Calm Sky */
html[data-theme="calm-sky"] {
  --bg: #edf3f8;
  --surface: #f7fbfd;
  --surface-2: #dde9f2;
  --border: #d0dfeb;
  --border-strong: #dde9f2;
  --text: #28323b;
  --text-muted: #6f7d89;
  --text-subtle: #6f7d89;
  --accent: #1c6791;
  --accent-hover: #d4624a;
  --accent-quiet: #266f96;
  --warn: #d0604a;
  --code-bg: #dde9f2;
  --code-fg: #28323b;
  --h1-color: #1f6f9c;
  --h1-color-hover: #d4624a;
  --h1-glow: rgba(20,50,80,0.12);
  --nav-bg: #143f5c;
  --nav-border: #6cc1e8;
  --nav-text: #e9f3fa;
}

/* Sage Wellness */
html[data-theme="sage-wellness"] {
  --bg: #eef3ea;
  --surface: #f8fbf5;
  --surface-2: #e3ecdd;
  --border: #d6e1cd;
  --border-strong: #e3ecdd;
  --text: #2c382e;
  --text-muted: #74826d;
  --text-subtle: #74826d;
  --accent: #226b49;
  --accent-hover: #b15c3c;
  --accent-quiet: #2f6f4a;
  --warn: #b15c3c;
  --code-bg: #e3ecdd;
  --code-fg: #2c382e;
  --h1-color: #2e7d54;
  --h1-color-hover: #b15c3c;
  --h1-glow: rgba(20,50,30,0.12);
  --nav-bg: #234634;
  --nav-border: #8fd6ad;
  --nav-text: #e9f3ec;
}

/* Soft Linen */
html[data-theme="soft-linen"] {
  --bg: #f2efe8;
  --surface: #faf8f2;
  --surface-2: #e7e2d6;
  --border: #e0dacd;
  --border-strong: #e7e2d6;
  --text: #2f2c27;
  --text-muted: #847d70;
  --text-subtle: #847d70;
  --accent: #0f6f67;
  --accent-hover: #b25a36;
  --accent-quiet: #2c7d68;
  --warn: #b25a36;
  --code-bg: #e7e2d6;
  --code-fg: #2f2c27;
  --h1-color: #157a72;
  --h1-color-hover: #b25a36;
  --h1-glow: rgba(40,38,30,0.12);
  --nav-bg: #2a2923;
  --nav-border: #54b8a6;
  --nav-text: #f1ede4;
}

/* --- navbar / mega-menu / breadcrumb: recolour the hardcoded navigation.css --- */
html[data-theme] .navbar { background: var(--nav-bg); border-bottom-color: var(--nav-border); }
html[data-theme] .navbar a { color: var(--nav-text); }
html[data-theme] .navbar > ul > li:hover > a,
html[data-theme] .navbar > ul > li > a:focus { background: rgba(255,255,255,0.13); color: var(--nav-text); }

html[data-theme] .breadcrumb { color: var(--text-subtle); }
html[data-theme] .breadcrumb a { color: var(--accent); }
html[data-theme] .breadcrumb a:hover { color: var(--accent-hover); border-bottom-color: var(--accent-hover); }

html[data-theme] .navbar .dropdown { background: var(--surface); border-top-color: var(--nav-border); border-bottom-color: var(--border); }
html[data-theme] .navbar .dropdown > li:not(.has-submenu) > a { color: var(--accent); }
html[data-theme] .navbar .dropdown > li:not(.has-submenu) > a:hover { background: var(--surface-2); color: var(--accent-hover); }
html[data-theme] .has-submenu > a { color: var(--accent); border-bottom-color: var(--border); }
html[data-theme] .has-submenu > a:hover { color: var(--accent-hover); }
html[data-theme] .submenu li a { color: var(--text-muted); }
html[data-theme] .submenu li a:hover { color: var(--text); }
html[data-theme] .submenu .submenu-nested { border-left-color: var(--border); }
html[data-theme] .submenu .submenu-nested li a { color: var(--text-subtle); }
html[data-theme] .submenu .submenu-nested li a:hover { color: var(--text); }
html[data-theme] .dropdown-section-header { color: var(--accent); border-top-color: var(--border); }
html[data-theme] .dropdown::-webkit-scrollbar-track { background: var(--surface); }
html[data-theme] .dropdown::-webkit-scrollbar-thumb { background: var(--border); }

/* ==========================================================================
   FLOATING THEME PICKER — always on; uses PacificAir's own tokens, so it is
   styled in the default state and follows whatever theme is chosen.
   ========================================================================== */
#pa-theme-fab { position: fixed; right: 16px; bottom: 16px; z-index: 12000;
  width: 46px; height: 46px; border-radius: 50%; display: flex; align-items: center;
  justify-content: center; font-size: 22px; cursor: pointer; user-select: none;
  background: var(--surface); color: var(--accent); border: 1px solid var(--border-strong);
  box-shadow: 0 4px 14px rgba(0,0,0,0.5); opacity: 0.92;
  transition: transform .15s ease, opacity .15s ease;
  font-family: 'Segoe UI Historic', 'Segoe UI', system-ui, sans-serif; }
#pa-theme-fab:hover { opacity: 1; transform: translateY(-2px) scale(1.05); }
#pa-theme-fab:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
.pa-panel { position: fixed; right: 16px; bottom: 72px; z-index: 12000;
  width: 280px; max-width: calc(100vw - 32px); max-height: 70vh; overflow-y: auto;
  display: none; padding: 14px; border-radius: 14px;
  background: var(--surface); border: 1px solid var(--border-strong);
  box-shadow: 0 12px 36px rgba(0,0,0,0.7);
  font-family: 'Segoe UI Historic', 'Segoe UI', system-ui, sans-serif; }
.pa-panel.open { display: block; }
.pa-panel-title { font-weight: 700; color: var(--accent); font-size: 14px; margin: 0 0 6px; }
.pa-panel-note { font-size: 11.5px; color: var(--text-muted); margin: 0 0 8px; line-height: 1.4; }
.pa-group { font-size: 11px; text-transform: uppercase; letter-spacing: .06em;
  color: var(--text-muted); margin: 12px 0 6px; font-weight: 700; }
.pa-swatch { display: flex; align-items: center; gap: 9px; width: 100%; cursor: pointer;
  margin: 0 0 6px; padding: 7px 10px; border-radius: 9px; border: 1px solid var(--border);
  background: var(--surface-2); color: var(--text); font-size: 13px; font-weight: 600;
  font-family: inherit; text-align: left; transition: border-color .15s ease; }
.pa-swatch:hover { border-color: var(--accent); }
.pa-swatch.pa-active { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent) inset; }
.pa-dot { width: 18px; height: 18px; border-radius: 50%; flex: 0 0 auto;
  border: 1px solid rgba(127,127,127,0.5); }
