/* Persistent light/dark themes shared by Xenro V1 and V2. */
html[data-xen-theme="light"] { color-scheme: light; }
html[data-xen-theme="dark"] { color-scheme: dark; }

.xen-theme-toggle {
  z-index: 1075;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  min-width: 4.85rem;
  min-height: 2.4rem;
  padding: .45rem .7rem;
  color: #344054;
  background: rgba(255,255,255,.94);
  border: 1px solid #d0d9e5;
  border-radius: 999px;
  box-shadow: 0 7px 22px rgba(20,29,45,.14);
  backdrop-filter: blur(12px);
  font: 700 .7rem/1 Raleway, Inter, system-ui, sans-serif;
  letter-spacing: .01em;
  cursor: pointer;
  transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.xen-theme-toggle:hover { color: #141d2d; border-color: #9fb1c7; box-shadow: 0 9px 26px rgba(20,29,45,.2); transform: translateY(-1px); }
.xen-theme-toggle:focus-visible { outline: 3px solid #2c7be5; outline-offset: 3px; }
.xen-theme-toggle-icon { display: grid; width: 1.25rem; height: 1.25rem; place-items: center; color: #6b58c9; font: 700 1rem/1 Arial, sans-serif; }

html[data-xen-version="v1"] .xen-theme-toggle {
  position: fixed;
  top: max(14px, env(safe-area-inset-top));
  left: max(14px, env(safe-area-inset-left));
}

html[data-xen-theme="dark"] .xen-theme-toggle {
  color: #e7edf5;
  background: rgba(24,31,42,.94);
  border-color: #3b4758;
  box-shadow: 0 8px 24px rgba(0,0,0,.32);
}
html[data-xen-theme="dark"] .xen-theme-toggle:hover { color: #fff; border-color: #708098; }
html[data-xen-theme="dark"] .xen-theme-toggle-icon { color: #f5c65b; }

/* V1 dark palette */
html[data-xen-version="v1"][data-xen-theme="dark"] body,
html[data-xen-version="v1"][data-xen-theme="dark"] #baseContent,
html[data-xen-version="v1"][data-xen-theme="dark"] .page-content {
  color: #d7e0eb;
  background: #0f131a;
}
html[data-xen-version="v1"][data-xen-theme="dark"] .bg-light { background-color: #151b24 !important; }
html[data-xen-version="v1"][data-xen-theme="dark"] .bg-white,
html[data-xen-version="v1"][data-xen-theme="dark"] .card,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-proof-card,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-faq details {
  color: #d7e0eb;
  background: #19212c !important;
  border-color: #354152 !important;
}
html[data-xen-version="v1"][data-xen-theme="dark"] h1,
html[data-xen-version="v1"][data-xen-theme="dark"] h2,
html[data-xen-version="v1"][data-xen-theme="dark"] h3,
html[data-xen-version="v1"][data-xen-theme="dark"] h4,
html[data-xen-version="v1"][data-xen-theme="dark"] h5,
html[data-xen-version="v1"][data-xen-theme="dark"] h6,
html[data-xen-version="v1"][data-xen-theme="dark"] .text-dark,
html[data-xen-version="v1"][data-xen-theme="dark"] .text-900,
html[data-xen-version="v1"][data-xen-theme="dark"] .text-700 {
  color: #f3f6fa !important;
}
html[data-xen-version="v1"][data-xen-theme="dark"] p,
html[data-xen-version="v1"][data-xen-theme="dark"] .lead,
html[data-xen-version="v1"][data-xen-theme="dark"] .text-muted,
html[data-xen-version="v1"][data-xen-theme="dark"] .text-600,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-muted,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-year1,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-proof-card p,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-proof-note {
  color: #aeb9c7 !important;
}
html[data-xen-version="v1"][data-xen-theme="dark"] a:not(.btn):not(.sidebar-item-wrapper):not(.sticky-area):not(.xen-hero-action) { color: #78b8ff; }
html[data-xen-version="v1"][data-xen-theme="dark"] .border,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-table th,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-table td { border-color: #354152 !important; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-table th { color: #edf2f8; background: #202a36; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-breadcrumb li { color: #9daaba; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-breadcrumb li + li::before { color: #657286; }
html[data-xen-version="v1"][data-xen-theme="dark"] a.sticky-area .page-title,
html[data-xen-version="v1"][data-xen-theme="dark"] .page-footer p,
html[data-xen-version="v1"][data-xen-theme="dark"] .page-footer.xen-flow a { color: #fff !important; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-proof-card { box-shadow: 0 12px 30px rgba(0,0,0,.24); }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-proof-card a,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-proof-card-kicker { color: #78b8ff; }
html[data-xen-version="v1"][data-xen-theme="dark"] .form-control {
  color: #edf2f8;
  background: #111821;
  border-color: #3b4758;
}
html[data-xen-version="v1"][data-xen-theme="dark"] .form-control:focus { background: #151e29; border-color: #6ba7f2; }
html[data-xen-version="v1"][data-xen-theme="dark"] .btn-outline-dark { color: #edf2f8; border-color: #7d8b9d; }
html[data-xen-version="v1"][data-xen-theme="dark"] .btn-outline-dark:hover { color: #111821; background: #edf2f8; }
html[data-xen-version="v1"][data-xen-theme="dark"] #baseContent a[href="index.html"] > img {
  padding: .45rem;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 7px 24px rgba(0,0,0,.24);
}
html[data-xen-version="v1"][data-xen-theme="dark"] .page-content img[src*="/icons/"] { filter: invert(1) brightness(1.35); }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry-title,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry-hint,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-hero-action-link { color: #aeb9c7; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry-kicker { color: #78b8ff; background: rgba(120,184,255,.1); }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry-row {
  background: linear-gradient(#151c26,#151c26) padding-box, linear-gradient(135deg,#9b75d0,#4b9cff,#55c6bc) border-box;
  box-shadow: 0 14px 34px rgba(0,0,0,.3);
}
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry-row input { color: #edf2f8; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry-row input::placeholder { color: #9ba8b8; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-ai-entry:not(.xen-ai-entry-dark) .xen-ai-entry-row:has(#xen-home-ai-prompt)::after { color: #9ba8b8; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-hero-action-secondary { color: #bff0d0; background: #19212c; border-color: #465669; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scroll { color: #8e9daf; }

/* V1 assistant follows the selected dark theme. */
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-panel { color: #e7edf5; background: rgba(18,23,31,.98); border-color: #394657; }
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-head,
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-composer,
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-actions { background: #18202b; border-color: #334052; }
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-body { background: linear-gradient(180deg,#111720,#0d1219); }
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-close { color: #c1cad6; background: #25303e; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-msg-assistant,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-form,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-summary {
  color: #e7edf5;
  background: #19212c;
  border-color: #354152;
}
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-msg-user { background: #2c7be5; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-chat-recommendation { color: #edf2f8; background: #222c39; border-color: #435167; }
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-starters button,
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-form,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-form input,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-form textarea,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-form select {
  color: #e7edf5;
  background: #101721;
  border-color: #3b485b;
}
html[data-xen-version="v1"][data-xen-theme="dark"] #xen-chat-input,
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-summary dd { color: #e7edf5; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-chat-action-secondary { color: #e7edf5; background: transparent; border-color: #435167; }
html[data-xen-version="v1"][data-xen-theme="dark"] .xen-scope-note { color: #c4ceda !important; background: #25303e; }

/* V2 keeps its current dark default; the alternate light palette uses the same structure. */
html[data-xen-version="v2"] .xen-theme-toggle {
  position: static;
  flex: 0 0 auto;
  margin-left: auto;
  margin-right: 10px;
  min-width: 4.45rem;
  min-height: 2.25rem;
  padding: .42rem .62rem;
  font-family: Inter, system-ui, sans-serif;
}
html[data-xen-version="v2"][data-xen-theme="light"] {
  --bg: #f7f8fa;
  --bg-soft: #edf1f5;
  --card: #ffffff;
  --line: #d3dae4;
  --text: #18212e;
  --muted: #5d6978;
  --accent: #587700;
  --accent-ink: #ffffff;
}
html[data-xen-version="v2"][data-xen-theme="light"] nav { background: rgba(247,248,250,.88); }
html[data-xen-version="v2"][data-xen-theme="light"] .mobile-nav { background: rgba(247,248,250,.98); }
html[data-xen-version="v2"][data-xen-theme="light"] .mobile-nav a { color: #344054; }
html[data-xen-version="v2"][data-xen-theme="light"] .fix-col p,
html[data-xen-version="v2"][data-xen-theme="light"] .fix-col li { color: #475467; }
html[data-xen-version="v2"][data-xen-theme="light"] .term { border-color: #323b48; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-ai-entry-dark .xen-ai-entry-kicker { color: var(--accent); background: rgba(88,119,0,.1); }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-ai-entry-dark .xen-ai-entry-title,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-ai-entry-dark .xen-ai-entry-hint { color: var(--muted); }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-ai-entry-dark .xen-ai-entry-row {
  background: linear-gradient(#fff,#fff) padding-box, linear-gradient(135deg,#799e13,#8b95a3) border-box;
  box-shadow: 0 12px 30px rgba(24,33,46,.12);
}
html[data-xen-version="v2"][data-xen-theme="light"] .xen-ai-entry-dark .xen-ai-entry-row input { color: var(--text); }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-ai-entry-dark .xen-ai-entry-row button { color: #fff; background: var(--accent); }

/* Restore the shared assistant's light surfaces after V2's inline dark defaults. */
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-panel { color: #141d2d; background: rgba(255,255,255,.98); border-color: rgba(154,173,199,.48); }
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-head,
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-composer,
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-actions { background: #fff; border-color: #e7edf5; }
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-body { background: linear-gradient(180deg,#f9fbfd,#f5f8fc); }
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-close { color: #526173; background: #f3f6fa; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-msg-assistant,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-form,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-summary { color: #243047; background: #fff; border-color: #dce5f0; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-msg-user { color: #fff; background: #141d2d; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-chat-recommendation { color: #141d2d; background: linear-gradient(135deg,#f5f2ff,#eef7ff); border-color: #d5d4f2; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-chat-recommendation small { color: #7564cc; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-chat-recommendation b,
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-send { color: #fff; background: linear-gradient(135deg,#7564cc,#2c7be5); }
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-starters button,
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-form,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-form input,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-form textarea,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-form select {
  color: #243047;
  background: #f8fafc;
  border-color: #d4deea;
  color-scheme: light;
}
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-input,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-summary dd { color: #243047; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-chat-action-secondary { color: #243047; background: #fff; border-color: #cfd9e6; }
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-note { color: #59677a; background: #f5f7fb; }
html[data-xen-version="v2"][data-xen-theme="light"] #xen-chat-fab:hover,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-chat-action-primary:hover,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-start:hover,
html[data-xen-version="v2"][data-xen-theme="light"] .xen-scope-form > button:hover { color: #fff; background: #486300; }

@media (prefers-reduced-motion: no-preference) {
  body,
  #baseContent,
  .page-content,
  .bg-light,
  .card,
  .xen-proof-card,
  .xen-faq details,
  .fix,
  .sym,
  nav {
    transition: color .22s ease, background-color .22s ease, border-color .22s ease;
  }
}

@media (max-width: 575.98px) {
  html[data-xen-version="v1"] .xen-theme-toggle {
    min-width: 2.7rem;
    width: 2.7rem;
    height: 2.7rem;
    padding: 0;
  }
  html[data-xen-version="v1"] .xen-theme-toggle-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
  html[data-xen-version="v2"] .xen-theme-toggle { min-width: 2.5rem; width: 2.5rem; padding: 0; }
  html[data-xen-version="v2"] .xen-theme-toggle-label { display: none; }
}
