/* Semantic palettes live in console.css; this file owns only theme controls. */
.theme-toggle {
  display: none; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; padding: 10px 12px; border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm); color: var(--ink); background: var(--paper);
  font-size: 12px; font-weight: 650; line-height: 1.4;
  transition: border-color .16s ease, background .16s ease;
}
:root[data-theme-ready="true"] .theme-toggle { display: inline-flex; }
.theme-toggle:hover { border-color: var(--accent-border); color: var(--accent-text); background: var(--accent-subtle); }
.theme-toggle svg { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.theme-icon-sun { display: none; }
:root[data-ui-theme="dark"] .theme-icon-sun { display: block; }
:root[data-ui-theme="dark"] .theme-icon-moon { display: none; }
.sidebar-theme { margin: 0 6px 8px; }
.sidebar-theme .theme-toggle { width: 100%; }
.mobile-actions { display: flex; align-items: center; gap: 8px; }
.credential-theme-control { position: absolute; z-index: 10; top: 20px; right: 24px; }
.reader-header > .theme-toggle { flex: 0 0 auto; }
:root:not([data-ui-theme="dark"]) .login-aside:not(.login-aside--artwork) { background: linear-gradient(145deg,#fff0d9,#eaf0f8); }
:root:not([data-ui-theme="dark"]) .login-aside-copy { color: var(--ink); text-shadow: none; }
:root:not([data-ui-theme="dark"]) .login-grid { background-image: linear-gradient(rgba(153,75,8,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(153,75,8,.12) 1px,transparent 1px); }
@media (max-width:620px) {
  .credential-theme-control { top: 14px; right: 16px; }
  .mobile-bar .theme-toggle [data-theme-label], .mobile-actions .theme-toggle [data-theme-label] { display: none; }
  .reader-header .theme-toggle { margin-left: auto; }
}
@media (prefers-reduced-motion:reduce) { .theme-toggle { transition: none; } }
