:root {
  --theme-canvas: #ffffff;
  --theme-surface: #ffffff;
  --theme-elevated: #f5f5f2;
  --theme-ink: #050505;
  --theme-muted: #666666;
  --theme-quiet: #8a8a8a;
  --theme-line: #dedede;
  --theme-line-strong: #c9c9c5;
  --theme-soft-fill: #f5f5f2;
  --theme-header: rgba(255, 255, 255, 0.96);
  --theme-shadow: rgba(5, 5, 5, 0.12);
  --theme-safe-top: env(safe-area-inset-top, 0px);
  --theme-safe-right: env(safe-area-inset-right, 0px);
  --theme-safe-bottom: env(safe-area-inset-bottom, 0px);
  --theme-safe-left: env(safe-area-inset-left, 0px);
}

html[data-theme="dark"] {
  color-scheme: dark;
  --theme-canvas: #080808;
  --theme-surface: #111111;
  --theme-elevated: #171717;
  --theme-ink: #f6f5f2;
  --theme-muted: #aaa8a2;
  --theme-quiet: #8d8a84;
  --theme-line: #4a4846;
  --theme-line-strong: #6b6863;
  --theme-soft-fill: #1e1e1d;
  --theme-header: rgba(8, 8, 8, 0.9);
  --theme-shadow: rgba(0, 0, 0, 0.42);
  --paper: var(--theme-canvas);
  --canvas: var(--theme-canvas);
  --bg: var(--theme-canvas);
  --bg-2: var(--theme-canvas);
  --surface: var(--theme-surface);
  --surface-2: var(--theme-soft-fill);
  --ink: var(--theme-ink);
  --muted: var(--theme-muted);
  --quiet: var(--theme-quiet);
  --soft: var(--theme-quiet);
  --line: var(--theme-line);
  --line-strong: var(--theme-line-strong);
  --good: var(--theme-ink);
}

html,
body {
  accent-color: #94bbe9;
  background: var(--theme-canvas);
}

body {
  min-height: 100vh;
  min-height: 100dvh;
}

.page-width,
.article-page .wrap,
.chain-page .wrap,
.invite-topbar-inner,
.view {
  max-width: calc(100% - var(--theme-safe-left) - var(--theme-safe-right));
}

.site-header,
.invite-topbar {
  padding-top: var(--theme-safe-top);
}

.skip-link {
  top: calc(10px + var(--theme-safe-top));
  left: calc(10px + var(--theme-safe-left));
  transform: translateY(calc(-100% - var(--theme-safe-top) - 12px));
}

.skip-link:focus {
  transform: translateY(0);
}

::view-transition-old(root),
::view-transition-new(root) {
  animation: none;
  mix-blend-mode: normal;
}

::view-transition-old(root) {
  z-index: 1;
}

::view-transition-new(root) {
  z-index: 2;
}

.theme-toggle {
  position: relative;
  display: grid;
  width: 46px;
  height: 46px;
  min-width: 46px;
  flex: 0 0 46px;
  place-items: center;
  padding: 0;
  border: 1px solid var(--theme-line);
  border-radius: 50%;
  color: var(--theme-ink);
  background: var(--theme-surface);
  box-shadow: none;
  appearance: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.theme-toggle:hover {
  border-color: var(--theme-line-strong);
  background: var(--theme-soft-fill);
}

.theme-toggle:focus-visible {
  outline: 2px solid var(--theme-ink);
  outline-offset: 4px;
}

.theme-toggle-glyph {
  display: grid;
  width: 19px;
  height: 19px;
  place-items: center;
  transform: scale(1);
  transition: transform 220ms cubic-bezier(.22, 1, .36, 1);
}

.theme-toggle-glyph svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.75;
}

.theme-icon-moon,
.theme-icon-sun {
  transform-box: fill-box;
  transform-origin: center;
  transition:
    opacity 180ms ease,
    transform 260ms cubic-bezier(.22, 1, .36, 1);
}

.theme-icon-moon {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.theme-icon-sun {
  opacity: 0;
  transform: rotate(-30deg) scale(0.68);
}

html[data-theme="dark"] .theme-icon-moon {
  opacity: 0;
  transform: rotate(28deg) scale(0.68);
}

html[data-theme="dark"] .theme-icon-sun {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.theme-toggle:active .theme-toggle-glyph {
  transform: scale(0.9);
}

.header-utility-cluster {
  display: contents;
}

.theme-toggle-fixed {
  position: fixed;
  z-index: 80;
  top: calc(18px + var(--theme-safe-top));
  right: calc(24px + var(--theme-safe-right));
}

.theme-toggle-fixed--with-language {
  right: calc(82px + var(--theme-safe-right));
}

.site-header .header-inner {
  justify-content: flex-start;
  gap: 10px;
}

.site-header .header-inner > .desktop-nav,
.site-header .oauth-header-links {
  margin-left: auto;
}

.site-header .header-inner > .theme-toggle {
  margin-left: 0;
}

.site-header .mobile-menu {
  flex: none;
}

.site-header .header-actions {
  gap: 10px;
  margin-left: auto;
}

.invite-topbar-inner > .theme-toggle {
  margin-left: auto;
}

html.theme-transition-fallback body,
html.theme-transition-fallback .site-header,
html.theme-transition-fallback .mobile-menu summary,
html.theme-transition-fallback .mobile-menu nav,
html.theme-transition-fallback .theme-toggle,
html.theme-transition-fallback .waitlist-control,
html.theme-transition-fallback .passport-visit-card,
html.theme-transition-fallback .article-page .feature-matrix-shell,
html.theme-transition-fallback .article-page table.feature-matrix :is(th, td) {
  transition:
    color 220ms ease,
    background-color 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

html[data-theme="dark"],
html[data-theme="dark"] body {
  color: var(--theme-ink);
  background: var(--theme-canvas);
}

html[data-theme="dark"] ::selection {
  color: #080808;
  background: rgba(148, 187, 233, 0.76);
}

html[data-theme="dark"] :focus-visible {
  outline-color: var(--theme-ink);
}

html[data-theme="dark"] .site-header,
html[data-theme="dark"] body > .nav,
html[data-theme="dark"] .site-nav,
html[data-theme="dark"] .invite-topbar {
  border-color: var(--theme-line);
  background: var(--theme-header);
}

html[data-theme="dark"] .mobile-menu summary {
  color: var(--theme-ink);
  background:
    linear-gradient(var(--theme-surface), var(--theme-surface)) padding-box,
    linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
  box-shadow: 0 2px 8px var(--theme-shadow);
}

html[data-theme="dark"] .mobile-menu summary:hover,
html[data-theme="dark"] .mobile-menu[open] summary {
  background:
    linear-gradient(var(--theme-soft-fill), var(--theme-soft-fill)) padding-box,
    linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
}

html[data-theme="dark"] .mobile-menu nav {
  border-color: var(--theme-line);
  background: var(--theme-elevated);
  box-shadow: 0 22px 54px var(--theme-shadow);
}

html[data-theme="dark"] .mobile-menu nav a:hover,
html[data-theme="dark"] .mobile-menu nav a:focus-visible,
html[data-theme="dark"] .mobile-menu nav a[aria-current="page"] {
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] .mobile-menu nav .mobile-download,
html[data-theme="dark"] .mobile-menu nav .mobile-download:hover,
html[data-theme="dark"] .mobile-menu nav .mobile-download:focus-visible {
  color: #080808;
  border: 1px solid #f6f5f2;
  background: #f6f5f2;
}

html[data-theme="dark"] :is(.language-trigger, .language-popover) {
  color: var(--theme-ink);
  border-color: var(--theme-line);
  background: var(--theme-elevated);
}

html[data-theme="dark"] .language-trigger {
  border-color: var(--theme-line-strong);
}

html[data-theme="dark"] .language-trigger:hover,
html[data-theme="dark"] .language-trigger[aria-expanded="true"],
html[data-theme="dark"] :is(.language-option, .mobile-language-launcher):hover,
html[data-theme="dark"] :is(.language-option, .mobile-language-launcher):focus-visible,
html[data-theme="dark"] .language-option[aria-checked="true"] {
  color: var(--theme-ink);
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] :is(.language-option, .mobile-language-launcher) {
  color: var(--theme-ink);
}

html[data-theme="dark"] .mobile-language-launcher-current {
  color: var(--theme-muted);
}

html[data-theme="dark"] .legal-mobile-menu summary {
  color: var(--theme-ink);
  background:
    linear-gradient(var(--theme-surface), var(--theme-surface)) padding-box,
    linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
}

html[data-theme="dark"] .legal-mobile-menu summary::before {
  background:
    linear-gradient(var(--theme-ink), var(--theme-ink)) 0 0 / 16px 2px no-repeat,
    linear-gradient(var(--theme-ink), var(--theme-ink)) 0 5px / 16px 2px no-repeat,
    linear-gradient(var(--theme-ink), var(--theme-ink)) 0 10px / 16px 2px no-repeat;
}

html[data-theme="dark"] .legal-mobile-menu nav {
  color: var(--theme-ink);
  border-color: var(--theme-line);
  background: var(--theme-elevated);
  box-shadow: 0 22px 54px var(--theme-shadow);
}

html[data-theme="dark"] .legal-mobile-menu nav a {
  color: var(--theme-ink);
}

html[data-theme="dark"] .legal-mobile-menu nav a:hover,
html[data-theme="dark"] .legal-mobile-menu nav a:focus-visible,
html[data-theme="dark"] .legal-mobile-menu nav a[aria-current="page"] {
  color: var(--theme-ink);
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] :is(.button-ios, .nav-cta, .btn:not(.btn-ghost):not(.primary), .cta a, a.store) {
  color: #080808;
  border-color: #f6f5f2;
  background: #f6f5f2;
}

html[data-theme="dark"] :is(.button-ios, .nav-cta, .btn:not(.btn-ghost):not(.primary), .cta a, a.store):hover,
html[data-theme="dark"] :is(.button-ios, .nav-cta, .btn:not(.btn-ghost):not(.primary), .cta a, a.store):focus-visible {
  color: #080808;
  border-color: #e8e6e1;
  background: #e8e6e1;
}

html[data-theme="dark"] :is(.button-outline, .btn-ghost) {
  color: var(--theme-ink);
  border-color: var(--theme-line-strong);
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] :is(.button-outline, .btn-ghost):hover {
  color: var(--theme-ink);
  border-color: var(--theme-line-strong);
  background: var(--theme-elevated);
}

html[data-theme="dark"] .passport-map {
  background: var(--theme-canvas);
}

html[data-theme="dark"] .passport-gym-pin:focus-visible {
  outline-color: var(--theme-ink);
}

html[data-theme="dark"] .passport-map .passport-visit-popup .mapboxgl-popup-content {
  border-color: var(--theme-line);
  background: rgba(17, 17, 17, 0.97);
  box-shadow: 0 18px 52px rgba(0, 0, 0, 0.48);
}

html[data-theme="dark"] .passport-map .passport-visit-popup .mapboxgl-popup-tip {
  border-top-color: rgba(17, 17, 17, 0.97);
  border-bottom-color: rgba(17, 17, 17, 0.97);
}

html[data-theme="dark"] .passport-visit-card {
  color: var(--theme-ink);
  background: var(--theme-surface);
}

html[data-theme="dark"] .passport-map .mapboxgl-ctrl-attrib {
  color: var(--theme-muted);
  background: rgba(8, 8, 8, 0.8);
}

html[data-theme="dark"] .passport-map .mapboxgl-ctrl-attrib a {
  color: var(--theme-muted);
}

html[data-theme="dark"] .passport-map .mapboxgl-ctrl-attrib-button {
  opacity: 0.82;
  filter: invert(1);
}

html[data-theme="dark"] .passport-map .mapboxgl-ctrl-attrib-button:is(:hover, :focus-visible) {
  opacity: 1;
}

html[data-theme="dark"] .waitlist-control {
  border-color: var(--theme-line-strong);
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] .waitlist-control:focus-within {
  border-color: var(--theme-line-strong);
  box-shadow: 0 0 0 3px rgba(246, 245, 242, 0.1);
}

html[data-theme="dark"] .form-message.error,
html[data-theme="dark"] .oauth-error {
  color: #ffaaa3;
}

html[data-theme="dark"] .site-footer,
html[data-theme="dark"] body > footer:not(.site-footer) {
  color: var(--theme-quiet);
  border-top-color: var(--theme-line-strong);
  background: var(--theme-canvas);
}

/* Editorial pages retain their open hierarchy; only their semantic fields
   and the existing comparison surface adopt the inverse palette. */
html[data-theme="dark"] .article-page .feature-matrix-shell {
  border-color: var(--theme-line);
  background: var(--theme-surface);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.35);
  scrollbar-color: var(--theme-line-strong) var(--theme-soft-fill);
}

html[data-theme="dark"] .article-page .feature-matrix-shell:focus-visible {
  outline-color: var(--theme-ink);
}

html[data-theme="dark"] .article-page table.feature-matrix :is(thead th, tbody th, tbody td) {
  border-bottom-color: var(--theme-line);
  color: var(--theme-ink);
  background: var(--theme-surface);
}

html[data-theme="dark"] .article-page table.feature-matrix tbody td {
  color: var(--theme-muted);
}

html[data-theme="dark"] .article-page table.feature-matrix tbody tr:hover > :not(:nth-child(2)) {
  background: var(--theme-elevated);
}

html[data-theme="dark"] .article-page table.feature-matrix thead th:nth-child(2),
html[data-theme="dark"] .article-page table.feature-matrix tbody td:nth-child(2) {
  color: #050505;
  border-bottom-color: rgba(5, 5, 5, 0.16);
  background: linear-gradient(90deg, #eeaeca 0%, #94bbe9 100%);
  box-shadow: 12px 0 24px rgba(0, 0, 0, 0.3);
}

html[data-theme="dark"] .article-page table.feature-matrix thead th:nth-child(2) span {
  color: #050505;
}

html[data-theme="dark"] .article-page table.app-matrix.feature-matrix :is(thead th:first-child, tbody th) {
  background: var(--theme-surface);
}

html[data-theme="dark"] .article-page .feature-matrix .matrix-dash,
html[data-theme="dark"] .article-page .feature-matrix .mark[aria-label] {
  color: var(--theme-quiet);
}

/* Legal/support and OAuth use their existing open document composition. */
html[data-theme="dark"] .oauth-provider-google,
html[data-theme="dark"] .oauth-permission-box {
  color: var(--theme-ink);
  border-color: var(--theme-line-strong);
  background: var(--theme-surface);
}

html[data-theme="dark"] .oauth-provider-google:hover {
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] .oauth-provider-apple {
  border-color: var(--theme-line-strong);
  color: #ffffff;
  background: #050505;
}

html[data-theme="dark"] .oauth-error {
  border-color: #6b3733;
  background: #261412;
}

html[data-theme="dark"] .oauth-loading-rail {
  border-color: var(--theme-line-strong);
}

/* `viewport-fit=cover` lets the authored canvas reach behind iPhone cutouts
   and Safari's translucent chrome. Keep every interactive/content surface in
   the safe rectangle while the background and theme reveal stay full bleed. */
body.landing-page {
  padding:
    calc(88px + var(--theme-safe-top))
    calc(24px + var(--theme-safe-right))
    calc(40px + var(--theme-safe-bottom))
    calc(24px + var(--theme-safe-left));
}

body.invite-page {
  padding:
    calc(124px + var(--theme-safe-top))
    calc(24px + var(--theme-safe-right))
    calc(40px + var(--theme-safe-bottom))
    calc(24px + var(--theme-safe-left));
}

body.landing-page > .brand {
  top: calc(20px + var(--theme-safe-top));
  left: calc(24px + var(--theme-safe-left));
}

body.chain-page .wrap {
  padding-top: calc(40px + var(--theme-safe-top));
  padding-bottom: calc(72px + var(--theme-safe-bottom));
}

body:not([data-view]) .site-footer {
  padding-bottom: calc(46px + var(--theme-safe-bottom));
}

body[data-view] .site-footer {
  padding-bottom: calc(56px + var(--theme-safe-bottom));
}

body.article-page > footer:not(.site-footer) {
  padding-bottom: calc(52px + var(--theme-safe-bottom));
}

.language-control--floating {
  top: calc(20px + var(--theme-safe-top));
  right: calc(24px + var(--theme-safe-right));
}

/* Function-rendered invite, share, and chain pages share these literal class
   names but intentionally keep their contextual layouts. */
html[data-theme="dark"] body.invite-page,
html[data-theme="dark"] body.landing-page,
html[data-theme="dark"] body.chain-page {
  color: var(--theme-ink);
  background: var(--theme-canvas);
}

html[data-theme="dark"] :is(body.landing-page, body.invite-page) :is(.sub, p.desc, a.home),
html[data-theme="dark"] body.invite-page a.recovery,
html[data-theme="dark"] body.chain-page :is(.back, .lede, .loc, .empty) {
  color: var(--theme-muted);
}

html[data-theme="dark"] :is(body.landing-page, body.invite-page, body.chain-page) .skip-link {
  color: #080808;
  background: #f6f5f2;
}

html[data-theme="dark"] body.invite-page p.invite-description,
html[data-theme="dark"] :is(body.landing-page, body.invite-page) :is(a.home:hover, a.recovery:hover),
html[data-theme="dark"] body.chain-page .back:hover {
  color: var(--theme-ink);
}

html[data-theme="dark"] :is(body.landing-page, body.invite-page) span.soon {
  color: var(--theme-quiet);
  border-color: var(--theme-line);
  background: var(--theme-soft-fill);
}

html[data-theme="dark"] body.chain-page .list,
html[data-theme="dark"] body.chain-page .row {
  border-color: var(--theme-line);
}

@media (max-width: 820px) {
  .site-header:not(.oauth-site-header) .header-inner {
    gap: 8px;
  }

  .site-header .header-actions {
    gap: 8px;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster {
    position: relative;
    display: flex;
    width: 151px;
    height: 46px;
    flex: 0 0 151px;
    align-items: center;
    gap: 10px;
    margin-left: auto;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .theme-toggle {
    width: 46px;
    height: 46px;
    min-width: 46px;
    flex: 0 0 46px;
    border: 1px solid transparent;
    border-radius: 999px;
    background:
      linear-gradient(var(--theme-surface), var(--theme-surface)) padding-box,
      linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
    box-shadow: 0 2px 8px var(--theme-shadow);
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .theme-toggle::after {
    content: none;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .theme-toggle:hover {
    background:
      linear-gradient(var(--theme-soft-fill), var(--theme-soft-fill)) padding-box,
      linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .theme-toggle:focus-visible {
    outline-offset: 3px;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu {
    width: 95px;
    height: 46px;
    flex: 0 0 95px;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu summary {
    width: 95px;
    min-height: 46px;
    justify-content: center;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 999px;
    background:
      linear-gradient(var(--theme-surface), var(--theme-surface)) padding-box,
      linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
    box-shadow: 0 2px 8px var(--theme-shadow);
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu summary:hover,
  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu[open] summary {
    background:
      linear-gradient(var(--theme-soft-fill), var(--theme-soft-fill)) padding-box,
      linear-gradient(67deg, #eeaeca, #94bbe9) border-box;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu summary:focus-visible {
    outline: 2px solid var(--theme-ink);
    outline-offset: 3px;
  }

  .language-popover {
    margin-top: var(--theme-safe-top);
  }

  .site-header:not(.oauth-site-header) .header-inner > .theme-toggle {
    margin-left: auto;
    margin-right: 0;
  }

  .site-header:not(.oauth-site-header) .mobile-menu {
    margin-left: auto;
  }
}

@media (max-width: 540px) {
  .theme-toggle-fixed {
    top: calc(11px + var(--theme-safe-top));
    right: calc(20px + var(--theme-safe-right));
  }

  .theme-toggle-fixed--with-language {
    right: calc(76px + var(--theme-safe-right));
  }

  .oauth-site-header .header-inner > .theme-toggle {
    margin-left: 9px;
  }

  body.invite-page {
    padding:
      calc(132px + var(--theme-safe-top))
      calc(20px + var(--theme-safe-right))
      calc(40px + var(--theme-safe-bottom))
      calc(20px + var(--theme-safe-left));
  }

  .language-control--floating {
    top: calc(14px + var(--theme-safe-top));
    right: calc(20px + var(--theme-safe-right));
  }
}

@media (min-width: 700px) {
  body.landing-page > .brand {
    top: calc(28px + var(--theme-safe-top));
    left: calc(32px + var(--theme-safe-left));
  }
}

@media (max-width: 360px) {
  .oauth-site-header .header-inner {
    width: calc(100% - 16px);
    gap: 8px;
  }

  .oauth-header-context::before {
    margin-inline: 10px;
  }

  .oauth-header-links {
    gap: 10px;
  }

  .oauth-site-header .header-inner > .theme-toggle {
    margin-left: 0;
  }
}

@media (prefers-contrast: more) {
  .site-header:not(.oauth-site-header) .header-utility-cluster > .theme-toggle,
  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu summary {
    border-color: var(--theme-ink);
    background: var(--theme-surface);
    box-shadow: none;
  }

  .theme-toggle,
  html[data-theme="dark"] .mobile-menu summary {
    border-color: var(--theme-ink);
    background: var(--theme-surface);
  }

  html[data-theme="dark"] {
    --theme-line: #77736d;
    --theme-line-strong: #aaa8a2;
  }
}

@media (forced-colors: active) {
  .header-utility-cluster {
    background: transparent;
    box-shadow: none;
  }

  .site-header:not(.oauth-site-header) .header-utility-cluster > .theme-toggle,
  .site-header:not(.oauth-site-header) .header-utility-cluster > .mobile-menu summary {
    border-color: ButtonText;
    background: ButtonFace;
    box-shadow: none;
  }

  .theme-toggle {
    border-color: ButtonText;
    color: ButtonText;
    background: ButtonFace;
    forced-color-adjust: auto;
  }

  .theme-toggle-glyph,
  .theme-toggle-glyph svg {
    color: ButtonText;
    forced-color-adjust: none;
  }

  html[data-theme] .passport-map .mapboxgl-ctrl-attrib-button {
    position: relative;
    opacity: 1;
    color: ButtonText;
    background: ButtonFace;
    filter: none;
    forced-color-adjust: none;
  }

  html[data-theme] .passport-map .mapboxgl-ctrl-attrib-button::before {
    content: "i";
    position: absolute;
    inset: 3px;
    display: grid;
    border: 2px solid ButtonText;
    border-radius: 50%;
    place-items: center;
    color: ButtonText;
    font: 700 12px/1 sans-serif;
  }
}

@media (prefers-reduced-motion: reduce) {
  .theme-toggle,
  .theme-toggle-glyph,
  .theme-icon-moon,
  .theme-icon-sun,
  html.theme-transition-fallback *,
  html.theme-transition-fallback *::before,
  html.theme-transition-fallback *::after {
    animation: none !important;
    transition: none !important;
  }
}
