/* Navy & Champagne: a persistent, visitor-selected light/dark palette. */
:root {
  color-scheme: light;
  --ge-panel-wash: linear-gradient(90deg,rgba(255,253,248,.98),rgba(255,253,248,.9) 42%,rgba(255,253,248,.08) 78%);
}

.ge-color-mode {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 7px;
  min-width: 104px;
  min-height: 46px;
  margin: 0;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--ge-rust);
  border-radius: 0;
  background: transparent;
  color: #fffdf7;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.ge-color-mode[hidden] { display: none; }
.ge-color-mode svg {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.ge-color-mode__sun { color: #e6d9bd; }
.ge-color-mode__moon { opacity: .65; }
.ge-color-mode__track {
  position: relative;
  display: block;
  flex: 0 0 34px;
  width: 34px;
  height: 20px;
  border: 1px solid #c6ab7e;
  border-radius: 20px;
  background: #213e53;
}
.ge-color-mode__thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fffdf7;
  transition: transform .18s ease;
}
.ge-color-mode[aria-checked="true"] .ge-color-mode__track { background: #cfae75; }
.ge-color-mode[aria-checked="true"] .ge-color-mode__thumb { transform: translateX(14px); background: #122e45; }
.ge-color-mode[aria-checked="true"] .ge-color-mode__sun { color: inherit; opacity: .65; }
.ge-color-mode[aria-checked="true"] .ge-color-mode__moon { color: #e6d9bd; opacity: 1; }
.ge-color-mode:hover { background: rgba(255,253,247,.08); }
.ge-color-mode:focus-visible { outline: 2px solid #e6d9bd; outline-offset: 3px; }

/* Higher specificity keeps the mode compatible with existing Additional CSS. */
:root[data-ge-color-scheme="dark"] {
  color-scheme: dark;
  --ge-paper: #101b26;
  --ge-paper-light: #182b3b;
  --ge-ink: #f3ebd9;
  --ge-muted: #bac8d2;
  --ge-rust: #cfab6e;
  --ge-rust-dark: #e5c48d;
  --ge-wine: #cfab6e;
  --ge-line: #455866;
  --ge-soft-line: #2d4354;
  --ge-shadow: 0 22px 60px rgba(0,0,0,.3);
  --ge-panel-wash: linear-gradient(90deg,rgba(16,27,38,.72),rgba(16,27,38,.32) 42%,rgba(16,27,38,0) 78%);
}
html[data-ge-color-scheme="dark"] body { background: linear-gradient(180deg,#142431,var(--ge-paper)); }
html[data-ge-color-scheme="dark"] .ge-header { background: linear-gradient(180deg,#233d50,#182b3b); }
html[data-ge-color-scheme="dark"] .ge-brand__tagline { color: var(--ge-rust-dark); }
html[data-ge-color-scheme="dark"] .ge-author-mini__image { box-shadow: 0 8px 22px rgba(0,0,0,.25); }
html[data-ge-color-scheme="dark"] .ge-nav-wrap { background: #0b1620; color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-nav__links > a,
html[data-ge-color-scheme="dark"] .ge-nav-dropdown__toggle,
html[data-ge-color-scheme="dark"] .ge-login-link,
html[data-ge-color-scheme="dark"] .ge-search-button,
html[data-ge-color-scheme="dark"] .ge-menu-button { color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-nav__links > a:hover,
html[data-ge-color-scheme="dark"] .ge-nav-dropdown__toggle:hover,
html[data-ge-color-scheme="dark"] .ge-login-link:hover,
html[data-ge-color-scheme="dark"] .ge-search-button:hover { color: var(--ge-rust-dark); }
html[data-ge-color-scheme="dark"] .ge-nav-dropdown__links { background: #182b3b; color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-nav__links .ge-nav-dropdown__links a { color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-nav__links .ge-nav-dropdown__links a:hover,
html[data-ge-color-scheme="dark"] .ge-nav__links .ge-nav-dropdown__links a:focus-visible { background: #294357; color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-category-rail { background: linear-gradient(180deg,#233b4d,#1b2e3e); }
html[data-ge-color-scheme="dark"] .ge-category-rail__link:hover,
html[data-ge-color-scheme="dark"] .ge-category-rail__link:focus-visible { background: #294357; }
html[data-ge-color-scheme="dark"] .ge-category-panel { color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-category-panel::before { background: linear-gradient(180deg,rgba(11,22,32,0) 12%,rgba(11,22,32,.25) 42%,rgba(11,22,32,.96) 100%); }
html[data-ge-color-scheme="dark"] .ge-category-panel:hover .ge-category-panel__title { color: var(--ge-rust-dark); }

html[data-ge-color-scheme="dark"] .ge-search-panel { background: var(--ge-paper-light); color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-search-panel input[type="search"],
html[data-ge-color-scheme="dark"] .ge-comments :is(textarea,input[type="text"],input[type="email"],input[type="url"]) {
  background: #101e2a;
  color: var(--ge-ink);
  border-color: var(--ge-line);
}
html[data-ge-color-scheme="dark"] input::placeholder,
html[data-ge-color-scheme="dark"] textarea::placeholder { color: var(--ge-muted); opacity: 1; }
html[data-ge-color-scheme="dark"] .ge-search-panel input[type="submit"],
html[data-ge-color-scheme="dark"] .ge-comments input[type="submit"],
html[data-ge-color-scheme="dark"] .nav-links .current,
html[data-ge-color-scheme="dark"] .nav-links a:hover {
  background: var(--ge-rust);
  color: #10202d;
  border-color: var(--ge-rust);
}
html[data-ge-color-scheme="dark"] .ge-article__content blockquote,
html[data-ge-color-scheme="dark"] .ge-article__content pre,
html[data-ge-color-scheme="dark"] .ge-article__content :not(pre) > code { background: #21394b; color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-article__content figcaption { color: var(--ge-muted); }
html[data-ge-color-scheme="dark"] .ge-article__content :is(td,th) { border-color: var(--ge-line); }
html[data-ge-color-scheme="dark"] .ge-directory-index__kicker,
html[data-ge-color-scheme="dark"] .ge-category-view__kicker { background: #294357; }
html[data-ge-color-scheme="dark"] .ge-directory-card__media,
html[data-ge-color-scheme="dark"] .ge-category-feature__placeholder,
html[data-ge-color-scheme="dark"] .ge-category-story__placeholder { background: linear-gradient(135deg,#294357,#182b3b); }
html[data-ge-color-scheme="dark"] .ge-directory-card__media::after { background: linear-gradient(90deg,rgba(16,27,38,.03),rgba(16,27,38,.2)); }
html[data-ge-color-scheme="dark"] .ge-lead-story__image-link,
html[data-ge-color-scheme="dark"] .ge-side-story__image-link,
html[data-ge-color-scheme="dark"] .ge-card__image-link,
html[data-ge-color-scheme="dark"] .ge-post-row__image-link { background: #21394b; }

html[data-ge-color-scheme="dark"] .ge-footer { background: #0b1620; color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] .ge-footer__brand small { color: var(--ge-rust-dark); }
html[data-ge-color-scheme="dark"] .ge-footer__links a,
html[data-ge-color-scheme="dark"] .ge-footer__bottom { color: #c4cfd5; }
html[data-ge-color-scheme="dark"] .ge-footer__links a:hover { color: var(--ge-ink); }
html[data-ge-color-scheme="dark"] body.page-id-623 #main-content .bm-contact-sidebar { background: #1c3243; }
html[data-ge-color-scheme="dark"] body.page-id-623 #main-content .bm-contact-panel .forminator-ui :is(input.forminator-input,textarea.forminator-textarea,select.forminator-select) { background: #101e2a!important; color: var(--ge-ink)!important; }
html[data-ge-color-scheme="dark"] body.page-id-623 #main-content .bm-contact-panel .forminator-ui .forminator-button-submit { background: var(--ge-rust)!important; color: #10202d!important; }
html[data-ge-color-scheme="dark"] body.page-id-623 #main-content .bm-contact-panel .forminator-ui .forminator-button-submit:hover { background: var(--ge-rust-dark)!important; }

@media (max-width:1100px) and (min-width:721px) {
  .ge-nav { grid-template-columns: minmax(0,1fr) auto; }
  .ge-nav__spacer { display: none; }
  .ge-nav__links { justify-content: flex-start; gap: 18px; }
  .ge-login-link { padding-left: 18px; }
}
@media (max-width:720px) {
  .ge-color-mode { min-width: 92px; padding-inline: 8px; gap: 5px; }
  .ge-search-button { width: 44px; }
  .ge-login-link { padding-left: 12px; }
  html[data-ge-color-scheme="dark"] .ge-nav__links { background: #0b1620; }
}
@media (prefers-reduced-motion:reduce) {
  .ge-color-mode__thumb { transition: none; }
}
@media (forced-colors:active) {
  .ge-color-mode__track { border-color: ButtonText; }
  .ge-color-mode__thumb { background: ButtonText; }
}
