/* Shared theme controls for both the login screen and journal. */
.theme-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 9px 12px; color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 7px; font: inherit; font-size: 12px; cursor: pointer; }
.theme-toggle:hover { background: var(--tint, var(--paper)); }
.theme-toggle:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
.theme-icon-sun { display: none; }
[data-theme="dark"] .theme-icon-sun { display: block; }
[data-theme="dark"] .theme-icon-moon { display: none; }
.login-theme-control { position: absolute; top: 25px; right: 28px; z-index: 1; }
:root[data-theme="dark"] { color-scheme: dark; --bg: #0e2428; --paper: #153137; --surface: #153137; --ink: #f0faf7; --muted: #a4bfbe; --green: #6feeb7; --green-dark: #a2f7d2; --tint: #1b403e; --line: #35565a; --red: #f0a195; --amber: #dfc38b; }
[data-theme="dark"] .topics-sidebar { background: #112b30; }
[data-theme="dark"] .topic-item:hover { background: #193b3e; }
[data-theme="dark"] .living-summary-card { background: #193a3b; border-color: var(--line); }
[data-theme="dark"] .milestone-badge { background: #234c43; }
[data-theme="dark"] .badge-milestone-uncertain, [data-theme="dark"] .pill-paused, [data-theme="dark"] .pill-processing, [data-theme="dark"] .pill-uploading, [data-theme="dark"] .recovery-banner { background: #413b29; }
[data-theme="dark"] .pill-recording, [data-theme="dark"] .pill-failed, [data-theme="dark"] .pill-interrupted { background: #482e2a; }
[data-theme="dark"] .dropzone-area { background: #112b30; border-color: #59877d; }
[data-theme="dark"] .intro { background: radial-gradient(ellipse at 20% 50%, #6feeb70d, transparent 70%); }
[data-theme="dark"] .password-toggle:hover { background: var(--tint); }
[data-theme="dark"] input { border-color: var(--line); }
[data-theme="dark"] .error { color: var(--red); background: #422b27; border-color: #68433a; }
[data-theme="dark"] #tab-recorder, [data-theme="dark"] .btn-record-primary, [data-theme="dark"] .btn-primary, [data-theme="dark"] .btn-record-big, [data-theme="dark"] .btn-success, [data-theme="dark"] .submit { color: #0e2428; }
[data-theme="dark"] .submit:hover { background: var(--green-dark); }
[data-theme="dark"] .brand-icon, [data-theme="dark"] .brand-mark { color: #0e2428; }
[data-theme="dark"] .login-layout { background: var(--bg); }
@media (max-width: 767px) { .login-theme-control { top: 24px; right: 18px; } .login-theme-control .theme-toggle span { display: none; } }

[data-theme="dark"] .sound-line { background: #355f5b; }
[data-theme="dark"] input::placeholder { color: var(--muted); }

/* The destination is visible throughout the journal, in both appearance modes. */
.privacy-mode-bar { max-width: 1440px; margin: 0 auto; padding: 12px 32px 4px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.privacy-mode-toggle { background: var(--green); color: var(--paper); border: 1px solid var(--green); border-radius: 999px; min-height: 44px; padding: 10px 18px; font: inherit; font-weight: 650; cursor: pointer; }
.privacy-mode-toggle:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.privacy-mode-toggle:disabled { opacity: .7; cursor: not-allowed; }
.privacy-mode-bar p { margin: 0; font-size: 14px; color: var(--ink); }
.privacy-processing-note { flex-basis: 100%; font-size: 12px; color: var(--muted); }
.vault-sync-status { margin: 12px 0; color: var(--muted); font-size: 14px; }
.vault-sync-status[data-status="failed"] { color: var(--red); }
.vault-sync-status[data-status="synced"] { color: var(--green); }
:root[data-privacy="private"] { --bg: #f5f1fa; --paper: #fffcff; --surface: #fffcff; --ink: #30253e; --muted: #746680; --green: #765099; --green-dark: #583875; --tint: #ece2f4; --line: #d9cce4; }
:root[data-privacy="private"][data-theme="dark"] { --bg: #211b2b; --paper: #2c2438; --surface: #2c2438; --ink: #f4edf9; --muted: #c0aecf; --green: #cea6ef; --green-dark: #e2c7f7; --tint: #3c2e4c; --line: #5b486e; }
[data-privacy="private"] .topics-sidebar, [data-privacy="private"] .dropzone-area { background: var(--bg); }
[data-privacy="private"] .topic-item:hover, [data-privacy="private"] .living-summary-card, [data-privacy="private"] .milestone-badge { background: var(--tint); }
[data-privacy="private"][data-theme="dark"] .privacy-mode-toggle { color: var(--bg); }
@media (max-width: 767px) { .privacy-mode-bar { padding: 12px 18px 4px; } .privacy-mode-toggle { width: 100%; } .privacy-processing-note { line-height: 1.5; } }
