.theme-toggle { min-height: 44px; white-space: nowrap; flex-shrink: 0; }
.login-theme { width: 100%; max-width: 350px; display: flex; justify-content: flex-end; margin-bottom: 18px; }
.topbar:has(.theme-toggle) { height: auto; min-height: 76px; gap: 12px; flex-wrap: wrap; padding-top: 12px; padding-bottom: 12px; }
.topbar-account:has(.theme-toggle) { max-width: 100%; flex-wrap: wrap; gap: 10px 16px; margin-left: auto; }
:root[data-theme="light"] {
  color-scheme: light;
  --bg: #f5f7f6;
  --panel: #ffffff;
  --border: #c6d1cc;
  --muted: #4f6058;
  --text: #172b22;
  --mint: #126341;
}
[data-theme="light"] .sidebar { background: #edf3ef; }
[data-theme="light"] .login-story { background: radial-gradient(ellipse at 35% 63%, #d7eade, transparent 65%), #edf3ef; }
[data-theme="light"] .primary { background: #126341; color: #ffffff; border-color: #126341; }
[data-theme="light"] .primary:hover { background: #0b4c30; }
[data-theme="light"] .secondary { background: #ffffff; color: #233c2f; border-color: #9cacA3; }
[data-theme="light"] .secondary:hover { background: #e5eee8; }
[data-theme="light"] input, [data-theme="light"] select { background: #ffffff; border-color: #879b90; }
[data-theme="light"] input::placeholder { color: #5c6e64; }
[data-theme="light"] label, [data-theme="light"] .topbar,
[data-theme="light"] .file-info a { color: var(--text); }
[data-theme="light"] .crumb, [data-theme="light"] .sidebar-caption,
[data-theme="light"] .login-footer, [data-theme="light"] .workspace-footer,
[data-theme="light"] .credit-definition, [data-theme="light"] .section-footnote,
[data-theme="light"] .text-button { color: var(--muted); }
[data-theme="light"] .nav-item.selected { background: #d6e9dd; color: #125434; }
[data-theme="light"] .nav-item:hover { background: #dfeae3; color: var(--text); }
[data-theme="light"] .support-box { background: linear-gradient(130deg, #e6f1e9, #ffffff); }
[data-theme="light"] .join-guide { background: #edf5ef; }
[data-theme="light"] .join-help-link, [data-theme="light"] .dashboard-join>summary { color: #185a3b; }
[data-theme="light"] .join-steps li:before { background: #d9ebdf; border-color: #8aad99; }
[data-theme="light"] .credit-card { background: radial-gradient(ellipse at 5% 0, #e4f2e8, transparent 65%), var(--panel); }
[data-theme="light"] .tile-icon { background: #e3f0e7; border-color: #adc7b7; }
[data-theme="light"] .pill { background: #edf2ef; border-color: #bacbc1; color: #3d5247; }
[data-theme="light"] .pill.warning, [data-theme="light"] .count { background: #fff0dc; border-color: #c6a16f; color: #7a3e0b; }
[data-theme="light"] .notice { background: #e5f3e9; border-color: #88ac96; color: #1c5636; }
[data-theme="light"] .error-text, [data-theme="light"] .login-form .error-text { color: #a52229; }
[data-theme="light"] .error-status { color: #87440d; }
[data-theme="light"] .error-status.resolved { color: #126341; }
[data-theme="light"] .empty-symbol { background: #e6f3ea; border-color: #a7c7b2; }
[data-theme="light"] .drop-zone { background: #f1f7f3; border-color: #829e8d; }
[data-theme="light"] .drop-zone:hover, [data-theme="light"] .drop-zone.dragging { background: #e1efe6; border-color: var(--mint); }
[data-theme="light"] .file-icon { color: #305b41; border-color: #a3b9ab; }
[data-theme="light"] .credit-definition { border-color: var(--border); }
[data-theme="light"] progress { background: #d8e3dc; }
[data-theme="light"] progress::-webkit-progress-bar { background: #d8e3dc; }
[data-theme="light"] .orbit, [data-theme="light"] .orbit:before { border-color: #a8c3b3; }
[data-theme="light"] .orbit-inner { background: linear-gradient(140deg, #d7eade, #f3f8f5); border-color: #94b5a1; box-shadow: none; }
[data-theme="light"] .orbit-label { background: #edf5ef; color: #315941; border-color: #a8c3b3; }
[data-theme="light"] .brand img, [data-theme="light"] .orbit-inner img { filter: brightness(0) saturate(100%) invert(28%) sepia(33%) saturate(1116%) hue-rotate(103deg) brightness(92%) contrast(91%); }
@media (max-width: 700px) {
  .topbar-account:has(.theme-toggle) { gap: 10px; }
  .topbar-account .theme-toggle { font-size: 12px; padding: 8px 12px; }
}
