:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #07090d;
  --rail: #080b10;
  --source: #0b0f15;
  --panel: #111720;
  --text: #e7edf5;
  --muted: #9aa5b4;
  --line: #26303b;
  --accent: #5aa7ff;
  --accent-soft: #17283a;
  --accent-strong: #8cc7ff;
  --accent-dark: #3b82f6;
  --success: #69d7a3;
  --success-bg: #0d2a1e;
  --error: #fca5a5;
  --error-bg: #2a1215;
  --warning: #facc15;
  --orange: #ffb454;
  --shadow: 0 18px 38px rgba(0, 0, 0, 0.34);
}

.dark-mode-toggle {
  position: fixed !important;
  left: 76px !important;
  top: 16px !important;
  bottom: auto !important;
  z-index: 9999 !important;
  display: grid !important;
  place-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  height: 38px !important;
  padding: 0 10px !important;
  border: 1px solid rgba(17, 24, 39, 0.12) !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--panel, #0c1727) 88%, transparent) !important;
  color: var(--text, #edf6ff) !important;
  box-shadow: 0 12px 28px rgba(17, 24, 39, 0.2) !important;
  cursor: pointer !important;
}

.dark-mode-toggle.inline-theme-toggle {
  position: static !important;
  left: auto !important;
  top: auto !important;
  bottom: auto !important;
  z-index: auto !important;
  flex: 0 0 auto !important;
  width: 42px !important;
  height: 34px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

.mode-switch .dark-mode-toggle.inline-theme-toggle {
  width: 38px !important;
  min-width: 38px !important;
  grid-column: auto !important;
}

.mode-switch:has(.inline-theme-toggle) {
  grid-template-columns: 38px 1fr 1fr;
}

.toolbar-actions .dark-mode-toggle.inline-theme-toggle,
.actions .dark-mode-toggle.inline-theme-toggle,
.page-head .dark-mode-toggle.inline-theme-toggle {
  margin-left: auto !important;
}

.dark-mode-toggle.inline-theme-toggle .theme-toggle-name {
  display: none;
}

.nav > .icon-button:last-of-type,
.app-nav > .icon-button:last-of-type,
.app-nav .icon-button:last-of-type {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.dark-mode-toggle.inline-theme-toggle.nav-theme-toggle {
  position: static !important;
  left: auto !important;
  top: auto !important;
  bottom: auto !important;
  z-index: auto !important;
  display: grid !important;
  place-items: center !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.dark-mode-toggle.inline-theme-toggle.nav-theme-toggle:hover {
  background: rgba(255, 180, 84, 0.13) !important;
  transform: none !important;
}

.dark-mode-toggle.inline-theme-toggle.nav-theme-toggle::before {
  display: none !important;
}

.dark-mode-toggle.inline-theme-toggle.nav-theme-toggle .theme-toggle-swatches {
  display: grid !important;
  grid-template-columns: repeat(2, 8px) !important;
  gap: 3px !important;
}

.dark-mode-toggle.inline-theme-toggle.nav-theme-toggle .theme-toggle-swatches i {
  width: 8px !important;
  height: 8px !important;
  border: 0 !important;
}

.theme-toggle {
  gap: 7px !important;
  grid-auto-flow: column !important;
}

.theme-toggle-swatches {
  display: inline-flex;
  gap: 3px;
  align-items: center;
}

.theme-toggle-swatches i {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--galaxy-accent, #3dd9ee);
  box-shadow: 0 0 10px var(--galaxy-accent, #3dd9ee);
}

.theme-toggle-swatches i:nth-child(2) { opacity: 0.58; }
.theme-toggle-swatches i:nth-child(3) { opacity: 0.32; }

.theme-toggle-name {
  font-size: 12px;
  font-weight: 800;
}

.dark-mode-toggle:hover {
  transform: translateY(-1px);
}

.dark-mode-toggle:active {
  transform: scale(0.94);
}

@media (min-width: 861px) {
  .app-nav .icon-button:last-of-type,
  .nav > .icon-button:last-of-type {
    margin-top: auto;
    margin-bottom: 12px;
  }
}

.dark-mode-glyph {
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: inset -5px -3px 0 0 #111827;
}

:root[data-theme="dark"] .dark-mode-toggle {
  border-color: var(--line, rgba(255, 255, 255, 0.16)) !important;
  background: color-mix(in srgb, var(--panel, #0c1727) 88%, transparent) !important;
  color: var(--text, #edf6ff) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.44) !important;
}

:root[data-theme="dark"] .dark-mode-glyph {
  box-shadow: 0 0 0 4px rgba(17, 24, 39, 0.18);
}

:root[data-theme="dark"] body,
:root[data-theme="dark"] .reader {
  background: var(--bg);
  color: var(--text);
}

:root[data-theme="dark"] .app-nav,
:root[data-theme="dark"] .nav {
  border-color: var(--line);
  background: var(--rail);
}

:root[data-theme="dark"] .icon-button,
:root[data-theme="dark"] .article-tools button,
:root[data-theme="dark"] .entry-tools button,
:root[data-theme="dark"] .group-title button,
:root[data-theme="dark"] .right-tools a,
:root[data-theme="dark"] .tool-button,
:root[data-theme="dark"] .tool-link {
  color: #a7b1c1;
}

:root[data-theme="dark"] .icon-button:hover,
:root[data-theme="dark"] .icon-button.active {
  background: rgba(255, 180, 84, 0.13);
  color: var(--orange);
  box-shadow: none;
}

:root[data-theme="dark"] .shell,
:root[data-theme="dark"] .sources,
:root[data-theme="dark"] .entries,
:root[data-theme="dark"] .reader.video-mode .entries,
:root[data-theme="dark"] .article {
  background: var(--bg);
  color: var(--text);
}

:root[data-theme="dark"] .sources {
  background: var(--source);
}

:root[data-theme="dark"] .entries,
:root[data-theme="dark"] .sources,
:root[data-theme="dark"] .article {
  border-color: var(--line);
}

:root[data-theme="dark"] .entries-head,
:root[data-theme="dark"] .article-tools,
:root[data-theme="dark"] .mode-switch,
:root[data-theme="dark"] .tabs,
:root[data-theme="dark"] .menu-popover {
  border-color: var(--line);
  background: rgba(17, 23, 32, 0.94);
  color: var(--text);
}

:root[data-theme="dark"] .panel,
:root[data-theme="dark"] .sync-panel,
:root[data-theme="dark"] .sync-stats,
:root[data-theme="dark"] .stats,
:root[data-theme="dark"] .backup-panel,
:root[data-theme="dark"] .status-panel,
:root[data-theme="dark"] .table-wrap,
:root[data-theme="dark"] .feed-card,
:root[data-theme="dark"] .status,
:root[data-theme="dark"] .entry.selected,
:root[data-theme="dark"] .menu-popover,
:root[data-theme="dark"] .video-detail {
  border-color: var(--line);
  background: var(--panel);
  color: var(--text);
  box-shadow: none;
}

:root[data-theme="dark"] .sync-stats div,
:root[data-theme="dark"] .stats div,
:root[data-theme="dark"] .status-panel div,
:root[data-theme="dark"] table th,
:root[data-theme="dark"] table td {
  border-color: var(--line);
}

:root[data-theme="dark"] thead,
:root[data-theme="dark"] th {
  background: #0c1118;
  color: #c8d2df;
}

:root[data-theme="dark"] tbody tr:hover,
:root[data-theme="dark"] .feed:hover,
:root[data-theme="dark"] .group:hover,
:root[data-theme="dark"] .group-feed:hover,
:root[data-theme="dark"] .source:hover,
:root[data-theme="dark"] .mode-button:hover,
:root[data-theme="dark"] .menu-popover button:hover,
:root[data-theme="dark"] .tool-button:hover,
:root[data-theme="dark"] .tool-link:hover,
:root[data-theme="dark"] .save-button:hover,
:root[data-theme="dark"] .empty-action:hover,
:root[data-theme="dark"] .video-inline-action:hover,
:root[data-theme="dark"] button.secondary:hover {
  background: #172334;
  color: var(--accent-strong);
}

:root[data-theme="dark"] .source.active,
:root[data-theme="dark"] .feed.active,
:root[data-theme="dark"] .group.active,
:root[data-theme="dark"] .group-feed.active,
:root[data-theme="dark"] .mode-button.active,
:root[data-theme="dark"] .tab.active {
  background: var(--accent-soft);
  color: var(--accent-strong);
  box-shadow: none;
}

:root[data-theme="dark"] input,
:root[data-theme="dark"] select,
:root[data-theme="dark"] textarea {
  border-color: var(--line);
  background: #0b1119;
  color: var(--text);
}

:root[data-theme="dark"] input::placeholder,
:root[data-theme="dark"] textarea::placeholder {
  color: #6f7b8d;
}

:root[data-theme="dark"] button.secondary,
:root[data-theme="dark"] .empty-action,
:root[data-theme="dark"] .video-inline-action,
:root[data-theme="dark"] .video-back,
:root[data-theme="dark"] .watch-button.secondary {
  background: #172334;
  color: #d5deea;
}

:root[data-theme="dark"] a {
  color: #8cc7ff;
}

:root[data-theme="dark"] .entry,
:root[data-theme="dark"] .feed,
:root[data-theme="dark"] .source,
:root[data-theme="dark"] .group,
:root[data-theme="dark"] .group-feed,
:root[data-theme="dark"] .video-card,
:root[data-theme="dark"] .menu-popover button {
  color: var(--text);
}

:root[data-theme="dark"] .entry.read strong,
:root[data-theme="dark"] .entry small,
:root[data-theme="dark"] .video-card small,
:root[data-theme="dark"] .article-meta,
:root[data-theme="dark"] .toolbar p,
:root[data-theme="dark"] .eyebrow,
:root[data-theme="dark"] .hint,
:root[data-theme="dark"] .empty,
:root[data-theme="dark"] .empty-list {
  color: var(--muted);
}

:root[data-theme="dark"] .feed-icon,
:root[data-theme="dark"] .feed-badge,
:root[data-theme="dark"] .feed-icon img,
:root[data-theme="dark"] .feed-badge img,
:root[data-theme="dark"] .video-thumb {
  background: #172334;
}

:root[data-theme="dark"] .article-body {
  background: #07090d;
  color: var(--text);
}

:root[data-theme="dark"] .content {
  color: #dfe7f1;
  background: #07090d;
}

:root[data-theme="dark"] .content,
:root[data-theme="dark"] .content section,
:root[data-theme="dark"] .content div,
:root[data-theme="dark"] .content p,
:root[data-theme="dark"] .content h1,
:root[data-theme="dark"] .content h2,
:root[data-theme="dark"] .content h3,
:root[data-theme="dark"] .content h4,
:root[data-theme="dark"] .content h5,
:root[data-theme="dark"] .content h6,
:root[data-theme="dark"] .content li,
:root[data-theme="dark"] .content table,
:root[data-theme="dark"] .content tbody,
:root[data-theme="dark"] .content thead,
:root[data-theme="dark"] .content tr,
:root[data-theme="dark"] .content td,
:root[data-theme="dark"] .content th,
:root[data-theme="dark"] .content blockquote,
:root[data-theme="dark"] .content code,
:root[data-theme="dark"] .content pre,
:root[data-theme="dark"] .content span {
  border-color: #2a3441 !important;
  background-color: transparent !important;
  color: #dfe7f1 !important;
  box-shadow: none !important;
}

:root[data-theme="dark"] .content a,
:root[data-theme="dark"] .content a span {
  color: #8cc7ff !important;
}

:root[data-theme="dark"] .content img,
:root[data-theme="dark"] .content video,
:root[data-theme="dark"] .content iframe {
  background: #0b1119;
}

:root[data-theme="dark"] .ai-summary-toggle.is-active {
  background: #17283a;
  color: var(--accent-strong);
}

:root[data-theme="dark"] .ai-prompt-dialog {
  border-color: var(--line);
  background: rgba(17, 23, 32, 0.98);
  color: var(--text);
}

:root[data-theme="dark"] .ai-prompt-dialog p {
  color: var(--muted);
}

:root[data-theme="dark"] .ai-summary-card {
  border-color: rgba(140, 199, 255, 0.2);
  background:
    linear-gradient(135deg, rgba(17, 23, 32, 0.98), rgba(11, 17, 25, 0.94)),
    repeating-linear-gradient(90deg, rgba(90, 167, 255, 0.08) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(0deg, rgba(34, 197, 94, 0.055) 0 1px, transparent 1px 38px);
  color: var(--text);
  box-shadow: none;
}

:root[data-theme="dark"] .ai-summary-card.is-pending {
  border-color: var(--line);
  background: #0b1119;
}

:root[data-theme="dark"] .ai-summary-card p {
  color: #dfe7f1;
}

:root[data-theme="dark"] .ai-summary-actions button,
:root[data-theme="dark"] .ai-summary-footer span {
  border-color: var(--line);
  background: rgba(23, 35, 52, 0.82);
  color: #d5deea;
}

:root[data-theme="dark"] .ai-summary-actions button:hover {
  background: #17283a;
  color: var(--accent-strong);
}

:root[data-theme="dark"] .ai-prompt-dialog textarea {
  border-color: var(--line);
  background: #0b1119;
  color: var(--text);
}

:root[data-theme="dark"] .ai-scope-settings {
  border-color: var(--line);
  background: #0b1119;
}

:root[data-theme="dark"] .ai-scope-option {
  border-color: var(--line);
  background: #172334;
  color: #d5deea;
}

:root[data-theme="dark"] .ai-scope-option.active {
  border-color: var(--accent-strong);
  background: #17283a;
  color: var(--accent-strong);
}

:root[data-theme="dark"] .ai-prompt-actions button.secondary {
  background: #172334;
  color: #d5deea;
}

:root[data-theme="light"] {
  color-scheme: light;
}

:root[data-theme="dark"] {
  --paper: #0b0f15;
  --ink: #e7edf5;
  --theme-hover: #172334;
  --theme-active: #17283a;
  --theme-active-text: #8cc7ff;
  --theme-input: #0b1119;
  --theme-content-bg: #07090d;
  --theme-content-text: #dfe7f1;
  --theme-soft-panel: rgba(17, 23, 32, 0.94);
}

:root[data-system-theme="dark"] {
  --galaxy-accent: #3dd9ee;
  --galaxy-dim: rgba(126, 172, 219, 0.18);
  --galaxy-glow: rgba(45, 191, 216, 0.12);
}

:root[data-system-theme="nebula"] {
  --accent: #7aa7ff;
  --accent-strong: #b8c8ff;
  --accent-soft: #172045;
  --accent-dark: #6c8cff;
  --orange: #b59cff;
  --galaxy-accent: #7aa7ff;
  --galaxy-dim: rgba(196, 164, 255, 0.16);
  --galaxy-glow: rgba(122, 167, 255, 0.12);
}

:root[data-system-theme="aurora"] {
  --accent: #21d6a0;
  --accent-strong: #8cf5d1;
  --accent-soft: #0f342d;
  --accent-dark: #18ad83;
  --orange: #21d6a0;
  --galaxy-accent: #21d6a0;
  --galaxy-dim: rgba(117, 231, 187, 0.16);
  --galaxy-glow: rgba(33, 214, 160, 0.12);
}

:root[data-system-theme="light"] {
  --galaxy-accent: #2563eb;
  --galaxy-dim: rgba(37, 99, 235, 0.12);
  --galaxy-glow: rgba(37, 99, 235, 0.06);
}

:root[data-system-theme="ember"] {
  --galaxy-accent: #b45f18;
  --galaxy-dim: rgba(180, 95, 24, 0.13);
  --galaxy-glow: rgba(180, 95, 24, 0.055);
}

.system-galaxy-canvas {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.55;
}

:root[data-system-theme="light"] .system-galaxy-canvas,
:root[data-system-theme="ember"] .system-galaxy-canvas {
  opacity: 0.32;
}

body > *:not(.system-galaxy-canvas):not(.dark-mode-toggle):not(.unified-switcher) {
  position: relative;
  z-index: 1;
}

.reader {
  padding-top: 0 !important;
}

.app-nav,
.nav {
  z-index: 2147482500 !important;
}

:root[data-theme="dark"] .settings-tabs,
:root[data-theme="dark"] .tabs,
:root[data-theme="dark"] .mode-switch {
  background: color-mix(in srgb, var(--panel, #111720) 92%, transparent) !important;
}

:root[data-theme="dark"] .settings-tab,
:root[data-theme="dark"] .tab,
:root[data-theme="dark"] .mode-button {
  border-radius: 8px !important;
}

:root[data-theme="eye"] {
  color-scheme: light;
  --bg: #eef6eb;
  --rail: #e7f0e2;
  --source: #e4efdd;
  --panel: #fbfff7;
  --paper: #fbfff7;
  --text: #1e2a20;
  --ink: #1e2a20;
  --muted: #60705f;
  --line: #c9d8c1;
  --accent: #2f7d4d;
  --accent-soft: #d9ecd5;
  --accent-strong: #1f6b3c;
  --accent-dark: #24683f;
  --success: #1f7a45;
  --success-bg: #dff1e2;
  --error: #a9362c;
  --error-bg: #f7e1dd;
  --warning: #9b6b00;
  --orange: #d98212;
  --shadow: 0 16px 34px rgba(42, 77, 42, 0.12);
  --theme-hover: #dcebd7;
  --theme-active: #d9ecd5;
  --theme-active-text: #1f6b3c;
  --theme-input: #fbfff7;
  --theme-content-bg: #fbfff7;
  --theme-content-text: #1e2a20;
  --theme-soft-panel: rgba(251, 255, 247, 0.94);
}

:root[data-theme="kraft"] {
  color-scheme: light;
  --bg: #f2ead8;
  --rail: #eadfca;
  --source: #e8dcc4;
  --panel: #fffaf0;
  --paper: #fffaf0;
  --text: #2c2418;
  --ink: #2c2418;
  --muted: #786b58;
  --line: #d7c7aa;
  --accent: #9a6428;
  --accent-soft: #ead7b8;
  --accent-strong: #7b4a19;
  --accent-dark: #7b4a19;
  --success: #367345;
  --success-bg: #e5efd9;
  --error: #a33b2e;
  --error-bg: #f3ded6;
  --warning: #94620b;
  --orange: #b96d1a;
  --shadow: 0 16px 36px rgba(87, 62, 27, 0.15);
  --theme-hover: #eadcc1;
  --theme-active: #ead7b8;
  --theme-active-text: #7b4a19;
  --theme-input: #fffaf0;
  --theme-content-bg: #fffaf0;
  --theme-content-text: #2c2418;
  --theme-soft-panel: rgba(255, 250, 240, 0.94);
}

.theme-toggle {
  overflow: hidden !important;
  border-color: var(--line, rgba(17, 24, 39, 0.12)) !important;
  background: var(--panel, #111827) !important;
  color: var(--text, #f8fafc) !important;
}

.theme-toggle::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 25% 20%, rgba(255, 255, 255, 0.42), transparent 28%);
  pointer-events: none;
}

.theme-toggle-swatches {
  display: grid;
  grid-template-columns: repeat(2, 8px);
  gap: 2px;
}

.theme-toggle-swatches i {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 1px solid rgba(17, 24, 39, 0.18);
}

.theme-toggle-swatches i:nth-child(1) {
  background: #ffffff;
}

.theme-toggle-swatches i:nth-child(2) {
  background: #111827;
}

.theme-toggle-swatches i:nth-child(3) {
  background: #9fc68e;
}

.theme-toggle-swatches i:nth-child(4) {
  background: #c99a55;
}

.theme-toggle-name {
  position: absolute;
  right: 3px;
  bottom: 2px;
  color: var(--accent-strong, currentColor);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}

.dark-mode-glyph {
  display: none;
}

:root[data-theme="dark"] .theme-toggle {
  background: var(--panel) !important;
  color: var(--text) !important;
}

:root[data-theme="eye"] .theme-toggle,
:root[data-theme="kraft"] .theme-toggle {
  box-shadow: var(--shadow) !important;
}

:root[data-theme="eye"] body,
:root[data-theme="eye"] .reader,
:root[data-theme="eye"] .shell,
:root[data-theme="eye"] .daily-shell,
:root[data-theme="eye"] .newspaper,
:root[data-theme="kraft"] body,
:root[data-theme="kraft"] .reader,
:root[data-theme="kraft"] .shell,
:root[data-theme="kraft"] .daily-shell,
:root[data-theme="kraft"] .newspaper {
  background: var(--bg);
  color: var(--text);
}

:root[data-theme="eye"] .app-nav,
:root[data-theme="eye"] .nav,
:root[data-theme="kraft"] .app-nav,
:root[data-theme="kraft"] .nav {
  border-color: var(--line);
  background: var(--rail);
}

:root[data-theme="eye"] .reader.video-mode .entries,
:root[data-theme="eye"] .sources,
:root[data-theme="kraft"] .reader.video-mode .entries,
:root[data-theme="kraft"] .sources {
  background: var(--source);
}

:root[data-theme="eye"] .entries,
:root[data-theme="eye"] .sources,
:root[data-theme="eye"] .article,
:root[data-theme="eye"] .daily-head,
:root[data-theme="eye"] .section,
:root[data-theme="eye"] .story,
:root[data-theme="eye"] .source-column,
:root[data-theme="eye"] .ai-settings,
:root[data-theme="eye"] .detail-modal-head,
:root[data-theme="kraft"] .entries,
:root[data-theme="kraft"] .sources,
:root[data-theme="kraft"] .article,
:root[data-theme="kraft"] .daily-head,
:root[data-theme="kraft"] .section,
:root[data-theme="kraft"] .story,
:root[data-theme="kraft"] .source-column,
:root[data-theme="kraft"] .ai-settings,
:root[data-theme="kraft"] .detail-modal-head {
  border-color: var(--line);
}

:root[data-theme="eye"] .entries,
:root[data-theme="eye"] .article,
:root[data-theme="eye"] .entries-head,
:root[data-theme="eye"] .article-tools,
:root[data-theme="eye"] .mode-switch,
:root[data-theme="eye"] .tabs,
:root[data-theme="eye"] .settings-tabs,
:root[data-theme="eye"] .menu-popover,
:root[data-theme="eye"] .context-menu,
:root[data-theme="eye"] .modal-card,
:root[data-theme="eye"] .lead-stats,
:root[data-theme="eye"] .empty,
:root[data-theme="eye"] .light-button,
:root[data-theme="kraft"] .entries,
:root[data-theme="kraft"] .article,
:root[data-theme="kraft"] .entries-head,
:root[data-theme="kraft"] .article-tools,
:root[data-theme="kraft"] .mode-switch,
:root[data-theme="kraft"] .tabs,
:root[data-theme="kraft"] .settings-tabs,
:root[data-theme="kraft"] .menu-popover,
:root[data-theme="kraft"] .context-menu,
:root[data-theme="kraft"] .modal-card,
:root[data-theme="kraft"] .lead-stats,
:root[data-theme="kraft"] .empty,
:root[data-theme="kraft"] .light-button {
  border-color: var(--line);
  background: var(--theme-soft-panel);
  color: var(--text);
}

:root[data-theme="eye"] .panel,
:root[data-theme="eye"] .sync-panel,
:root[data-theme="eye"] .sync-stats,
:root[data-theme="eye"] .stats,
:root[data-theme="eye"] .backup-panel,
:root[data-theme="eye"] .status-panel,
:root[data-theme="eye"] .table-wrap,
:root[data-theme="eye"] .feed-card,
:root[data-theme="eye"] .status,
:root[data-theme="eye"] .entry.selected,
:root[data-theme="eye"] .video-detail,
:root[data-theme="eye"] .story,
:root[data-theme="eye"] .source-option,
:root[data-theme="kraft"] .panel,
:root[data-theme="kraft"] .sync-panel,
:root[data-theme="kraft"] .sync-stats,
:root[data-theme="kraft"] .stats,
:root[data-theme="kraft"] .backup-panel,
:root[data-theme="kraft"] .status-panel,
:root[data-theme="kraft"] .table-wrap,
:root[data-theme="kraft"] .feed-card,
:root[data-theme="kraft"] .status,
:root[data-theme="kraft"] .entry.selected,
:root[data-theme="kraft"] .video-detail,
:root[data-theme="kraft"] .story,
:root[data-theme="kraft"] .source-option {
  border-color: var(--line);
  background: var(--panel);
  color: var(--text);
  box-shadow: none;
}

:root[data-theme="eye"] tbody tr:hover,
:root[data-theme="eye"] .feed:hover,
:root[data-theme="eye"] .group:hover,
:root[data-theme="eye"] .group-feed:hover,
:root[data-theme="eye"] .source:hover,
:root[data-theme="eye"] .mode-button:hover,
:root[data-theme="eye"] .menu-popover button:hover,
:root[data-theme="eye"] .context-menu button:hover,
:root[data-theme="eye"] .tool-button:hover,
:root[data-theme="eye"] .tool-link:hover,
:root[data-theme="eye"] .save-button:hover,
:root[data-theme="eye"] .empty-action:hover,
:root[data-theme="eye"] .video-inline-action:hover,
:root[data-theme="eye"] button.secondary:hover,
:root[data-theme="kraft"] tbody tr:hover,
:root[data-theme="kraft"] .feed:hover,
:root[data-theme="kraft"] .group:hover,
:root[data-theme="kraft"] .group-feed:hover,
:root[data-theme="kraft"] .source:hover,
:root[data-theme="kraft"] .mode-button:hover,
:root[data-theme="kraft"] .menu-popover button:hover,
:root[data-theme="kraft"] .context-menu button:hover,
:root[data-theme="kraft"] .tool-button:hover,
:root[data-theme="kraft"] .tool-link:hover,
:root[data-theme="kraft"] .save-button:hover,
:root[data-theme="kraft"] .empty-action:hover,
:root[data-theme="kraft"] .video-inline-action:hover,
:root[data-theme="kraft"] button.secondary:hover {
  background: var(--theme-hover);
  color: var(--theme-active-text);
}

:root[data-theme="eye"] .source.active,
:root[data-theme="eye"] .feed.active,
:root[data-theme="eye"] .group.active,
:root[data-theme="eye"] .group-feed.active,
:root[data-theme="eye"] .mode-button.active,
:root[data-theme="eye"] .tab.active,
:root[data-theme="eye"] .settings-tab.active,
:root[data-theme="eye"] .icon-button:hover,
:root[data-theme="eye"] .icon-button.active,
:root[data-theme="kraft"] .source.active,
:root[data-theme="kraft"] .feed.active,
:root[data-theme="kraft"] .group.active,
:root[data-theme="kraft"] .group-feed.active,
:root[data-theme="kraft"] .mode-button.active,
:root[data-theme="kraft"] .tab.active,
:root[data-theme="kraft"] .settings-tab.active,
:root[data-theme="kraft"] .icon-button:hover,
:root[data-theme="kraft"] .icon-button.active {
  background: var(--theme-active);
  color: var(--theme-active-text);
  box-shadow: none;
}

:root[data-theme="eye"] input,
:root[data-theme="eye"] select,
:root[data-theme="eye"] textarea,
:root[data-theme="kraft"] input,
:root[data-theme="kraft"] select,
:root[data-theme="kraft"] textarea {
  border-color: var(--line);
  background: var(--theme-input);
  color: var(--text);
}

:root[data-theme="eye"] button.secondary,
:root[data-theme="eye"] .empty-action,
:root[data-theme="eye"] .video-inline-action,
:root[data-theme="eye"] .video-back,
:root[data-theme="eye"] .watch-button.secondary,
:root[data-theme="kraft"] button.secondary,
:root[data-theme="kraft"] .empty-action,
:root[data-theme="kraft"] .video-inline-action,
:root[data-theme="kraft"] .video-back,
:root[data-theme="kraft"] .watch-button.secondary {
  background: var(--theme-hover);
  color: var(--text);
}

:root[data-theme="eye"] a,
:root[data-theme="kraft"] a {
  color: var(--accent-strong);
}

:root[data-theme="eye"] .entry,
:root[data-theme="eye"] .feed,
:root[data-theme="eye"] .source,
:root[data-theme="eye"] .group,
:root[data-theme="eye"] .group-feed,
:root[data-theme="eye"] .video-card,
:root[data-theme="eye"] .menu-popover button,
:root[data-theme="eye"] .context-menu button,
:root[data-theme="kraft"] .entry,
:root[data-theme="kraft"] .feed,
:root[data-theme="kraft"] .source,
:root[data-theme="kraft"] .group,
:root[data-theme="kraft"] .group-feed,
:root[data-theme="kraft"] .video-card,
:root[data-theme="kraft"] .menu-popover button,
:root[data-theme="kraft"] .context-menu button {
  color: var(--text);
}

:root[data-theme="eye"] .entry.read strong,
:root[data-theme="eye"] .entry small,
:root[data-theme="eye"] .video-card small,
:root[data-theme="eye"] .article-meta,
:root[data-theme="eye"] .toolbar p,
:root[data-theme="eye"] .eyebrow,
:root[data-theme="eye"] .hint,
:root[data-theme="eye"] .empty,
:root[data-theme="eye"] .empty-list,
:root[data-theme="eye"] .story p,
:root[data-theme="eye"] .meta,
:root[data-theme="eye"] .section-head p,
:root[data-theme="eye"] .story small,
:root[data-theme="eye"] .detail-meta,
:root[data-theme="eye"] .detail-playback-note,
:root[data-theme="eye"] .detail-excerpt,
:root[data-theme="kraft"] .entry.read strong,
:root[data-theme="kraft"] .entry small,
:root[data-theme="kraft"] .video-card small,
:root[data-theme="kraft"] .article-meta,
:root[data-theme="kraft"] .toolbar p,
:root[data-theme="kraft"] .eyebrow,
:root[data-theme="kraft"] .hint,
:root[data-theme="kraft"] .empty,
:root[data-theme="kraft"] .empty-list,
:root[data-theme="kraft"] .story p,
:root[data-theme="kraft"] .meta,
:root[data-theme="kraft"] .section-head p,
:root[data-theme="kraft"] .story small,
:root[data-theme="kraft"] .detail-meta,
:root[data-theme="kraft"] .detail-playback-note,
:root[data-theme="kraft"] .detail-excerpt {
  color: var(--muted);
}

:root[data-theme="eye"] .feed-icon,
:root[data-theme="eye"] .feed-badge,
:root[data-theme="eye"] .feed-icon img,
:root[data-theme="eye"] .feed-badge img,
:root[data-theme="eye"] .video-thumb,
:root[data-theme="kraft"] .feed-icon,
:root[data-theme="kraft"] .feed-badge,
:root[data-theme="kraft"] .feed-icon img,
:root[data-theme="kraft"] .feed-badge img,
:root[data-theme="kraft"] .video-thumb {
  background: var(--theme-hover);
}

:root[data-theme="eye"] .article-body,
:root[data-theme="eye"] .content,
:root[data-theme="eye"] .article-content,
:root[data-theme="kraft"] .article-body,
:root[data-theme="kraft"] .content,
:root[data-theme="kraft"] .article-content {
  background: var(--theme-content-bg);
  color: var(--theme-content-text);
}

:root[data-theme="eye"] .content,
:root[data-theme="eye"] .content section,
:root[data-theme="eye"] .content div,
:root[data-theme="eye"] .content p,
:root[data-theme="eye"] .content h1,
:root[data-theme="eye"] .content h2,
:root[data-theme="eye"] .content h3,
:root[data-theme="eye"] .content h4,
:root[data-theme="eye"] .content h5,
:root[data-theme="eye"] .content h6,
:root[data-theme="eye"] .content li,
:root[data-theme="eye"] .content table,
:root[data-theme="eye"] .content tbody,
:root[data-theme="eye"] .content thead,
:root[data-theme="eye"] .content tr,
:root[data-theme="eye"] .content td,
:root[data-theme="eye"] .content th,
:root[data-theme="eye"] .content blockquote,
:root[data-theme="eye"] .content code,
:root[data-theme="eye"] .content pre,
:root[data-theme="eye"] .content span,
:root[data-theme="kraft"] .content,
:root[data-theme="kraft"] .content section,
:root[data-theme="kraft"] .content div,
:root[data-theme="kraft"] .content p,
:root[data-theme="kraft"] .content h1,
:root[data-theme="kraft"] .content h2,
:root[data-theme="kraft"] .content h3,
:root[data-theme="kraft"] .content h4,
:root[data-theme="kraft"] .content h5,
:root[data-theme="kraft"] .content h6,
:root[data-theme="kraft"] .content li,
:root[data-theme="kraft"] .content table,
:root[data-theme="kraft"] .content tbody,
:root[data-theme="kraft"] .content thead,
:root[data-theme="kraft"] .content tr,
:root[data-theme="kraft"] .content td,
:root[data-theme="kraft"] .content th,
:root[data-theme="kraft"] .content blockquote,
:root[data-theme="kraft"] .content code,
:root[data-theme="kraft"] .content pre,
:root[data-theme="kraft"] .content span {
  border-color: var(--line) !important;
  background-color: transparent !important;
  color: var(--theme-content-text) !important;
  box-shadow: none !important;
}

:root[data-theme="eye"] .ai-summary-card,
:root[data-theme="eye"] .detail-insight,
:root[data-theme="kraft"] .ai-summary-card,
:root[data-theme="kraft"] .detail-insight {
  border-color: color-mix(in srgb, var(--accent) 22%, var(--line));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--panel) 92%, var(--accent-soft)), var(--panel)),
    repeating-linear-gradient(90deg, color-mix(in srgb, var(--accent) 10%, transparent) 0 1px, transparent 1px 42px);
  color: var(--text);
  box-shadow: none;
}

/* Reader inline controls: keep the theme switch inside the existing segmented bar. */
.reader .system-galaxy-canvas {
  opacity: 0.08 !important;
}

.app-nav ~ .shell + .system-galaxy-canvas,
body:has(.app-nav) .system-galaxy-canvas {
  display: none !important;
  opacity: 0 !important;
}

:root[data-system-theme="light"] [data-unified-switcher] a,
:root[data-system-theme="ember"] [data-unified-switcher] a {
  color: #53657d !important;
}

:root[data-system-theme="light"] [data-unified-switcher] a:hover,
:root[data-system-theme="ember"] [data-unified-switcher] a:hover {
  background: color-mix(in srgb, var(--accent, #2563eb) 10%, #ffffff) !important;
  color: var(--accent-dark, #174ea6) !important;
}

:root[data-system-theme="light"] [data-unified-switcher] a.active,
:root[data-system-theme="ember"] [data-unified-switcher] a.active {
  background: var(--accent, #2563eb) !important;
  color: #ffffff !important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--accent, #2563eb) 38%, transparent),
    0 10px 24px rgba(37, 99, 235, 0.12) !important;
}

:root[data-theme="eye"] [data-unified-switcher] a.active,
:root[data-theme="kraft"] [data-unified-switcher] a.active {
  background: var(--accent, #2563eb) !important;
  color: #ffffff !important;
}

:root[data-system-theme="light"] .settings-tab.active,
:root[data-system-theme="ember"] .settings-tab.active,
:root[data-system-theme="light"] .tab.active,
:root[data-system-theme="ember"] .tab.active {
  background: var(--accent, #2563eb) !important;
  color: #ffffff !important;
}

:root[data-theme="dark"] .reader .sources,
:root[data-theme="dark"] .reader .entries,
:root[data-theme="dark"] .reader .article {
  background-color: var(--bg) !important;
}

:root[data-theme="dark"] .reader .sources {
  background-color: var(--source) !important;
}

/* Keep article diagrams readable across every theme. Mermaid/SVG exports often
   inherit page colors, which can make light-theme diagram text disappear. */
.content svg,
.article-content svg,
.article-body svg {
  background: #ffffff !important;
  color: #111827 !important;
}

.content svg text,
.content svg tspan,
.content svg .label,
.content svg foreignObject,
.content svg foreignObject *,
.article-content svg text,
.article-content svg tspan,
.article-content svg .label,
.article-content svg foreignObject,
.article-content svg foreignObject *,
.article-body svg text,
.article-body svg tspan,
.article-body svg .label,
.article-body svg foreignObject,
.article-body svg foreignObject * {
  fill: #111827 !important;
  color: #111827 !important;
  stroke: none !important;
  opacity: 1 !important;
}

.content svg .node rect,
.content svg .node circle,
.content svg .node ellipse,
.content svg .node polygon,
.content svg .node path,
.article-content svg .node rect,
.article-content svg .node circle,
.article-content svg .node ellipse,
.article-content svg .node polygon,
.article-content svg .node path,
.article-body svg .node rect,
.article-body svg .node circle,
.article-body svg .node ellipse,
.article-body svg .node polygon,
.article-body svg .node path {
  fill: #dbeafe !important;
  stroke: #2563eb !important;
}

.content svg .edgePath path,
.content svg .flowchart-link,
.article-content svg .edgePath path,
.article-content svg .flowchart-link,
.article-body svg .edgePath path,
.article-body svg .flowchart-link {
  fill: none !important;
  stroke: #334155 !important;
}
