/* ── Sticky header gradient ────────────────────────────── */

.site-header {
  background: linear-gradient(
    to bottom,
    oklch(0.185 0.014 270 / 1)   0%,
    oklch(0.185 0.014 270 / 0.5) 50%,
    oklch(0.185 0.014 270 / 0)   100%
  );
}

html.theme-light .site-header {
  background: linear-gradient(
    to bottom,
    oklch(0.985 0.006 85 / 1)   0%,
    oklch(0.985 0.006 85 / 0.5) 50%,
    oklch(0.985 0.006 85 / 0)   100%
  );
}

/* ── Theme toggle buttons ──────────────────────────────── */

.theme-toggle {
  display: flex;
  gap: 1px;
  align-items: center;
  flex-shrink: 0;
}

.theme-btn {
  all: unset;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  border-radius: 5px;
  cursor: pointer;
  color: oklch(0.46 0.012 270);
  transition: color .12s, background .12s;
}

.theme-btn:hover {
  color: oklch(0.80 0.008 85);
  background: oklch(0.24 0.012 270);
}

.theme-btn[aria-pressed="true"] {
  color: oklch(0.7 0.22 38);
}

/* ── Light theme ───────────────────────────────────────── */

html.theme-light,
html.theme-light body {
  background: oklch(0.985 0.006 85) !important;
}

html.theme-light [style*="background: oklch(0.185"] {
  background: oklch(0.985 0.006 85) !important;
}

html.theme-light [style*="background: oklch(0.23 0.014"] {
  background: oklch(0.96 0.004 85) !important;
}

html.theme-light [style*="color: oklch(0.95 0.006 85)"]  { color: oklch(0.13 0.01 270)  !important; }
html.theme-light [style*="color: oklch(0.88 0.008 85)"]  { color: oklch(0.22 0.012 270) !important; }
html.theme-light [style*="color: oklch(0.84 0.008 85)"]  { color: oklch(0.28 0.012 270) !important; }
html.theme-light [style*="color: oklch(0.82 0.008 85)"]  { color: oklch(0.30 0.012 270) !important; }
html.theme-light [style*="color: oklch(0.80 0.008 85)"]  { color: oklch(0.32 0.012 270) !important; }
html.theme-light [style*="color: oklch(0.72 0.012 270)"] { color: oklch(0.42 0.012 270) !important; }
html.theme-light [style*="color: oklch(0.64 0.012 270)"] { color: oklch(0.50 0.012 270) !important; }
html.theme-light [style*="color: oklch(0.62 0.012 270)"] { color: oklch(0.52 0.012 270) !important; }

html.theme-light a { color: oklch(0.30 0.012 270); }

html.theme-light [style*="color: oklch(0.7 0.22 38)"] { color: oklch(0.6 0.235 38) !important; }

html.theme-light [style*="oklch(0.32 0.014 270)"] { border-color: oklch(0.88 0.006 85) !important; }
html.theme-light [style*="oklch(0.30 0.014 270)"] { border-color: oklch(0.88 0.006 85) !important; }
html.theme-light [style*="oklch(0.34 0.014 270)"] { border-color: oklch(0.84 0.006 85) !important; }
html.theme-light [style*="oklch(0.36 0.014 270)"] { border-color: oklch(0.82 0.006 85) !important; }

html.theme-light input:focus,
html.theme-light textarea:focus { border-color: oklch(0.6 0.235 38) !important; }

html.theme-light ::placeholder { color: oklch(0.58 0.01 270) !important; }

html.theme-light .theme-btn { color: oklch(0.50 0.012 270); }
html.theme-light .theme-btn:hover {
  color: oklch(0.18 0.01 270);
  background: oklch(0.92 0.006 85);
}
html.theme-light .theme-btn[aria-pressed="true"] { color: oklch(0.58 0.22 38); }
