/* ═══════════════════════════════════════════════════════════════════════════
   cyrisia site themes — base (shared chrome + dropdown styles)

   Per-theme palettes live in their own files: theme-<id>.css (see the
   server-side concat in reader_server/render_common.py + routes/themes.py).
   The engine (themes.js) sets html[data-site-theme="X"] plus a shared
   html.theme-dark class for every dark theme (deep chrome overrides key on
   that class so all dark themes share them).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── theme dropdown (rendered inside the account popup) ── */
.site-theme-dd{margin:2px 0}
.site-theme-current{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;color:inherit;font:inherit;font-size:12px;cursor:pointer;padding:8px 16px;text-align:left}
.site-theme-current::after{content:"▼";margin-left:4px;font-size:14px;line-height:1;opacity:.75;color:var(--st-faint,#a1a1aa);transition:transform .15s}
.site-theme-dd.open .site-theme-current::after{transform:rotate(180deg)}
.site-theme-current:hover{background:color-mix(in srgb,var(--st-accent,#8b6f47) 10%,transparent)}
.site-theme-menu{display:none;padding:0 8px 6px}
.site-theme-dd.open .site-theme-menu{display:block}
.site-theme-option{display:flex;align-items:center;gap:6px;width:100%;border:none;background:none;cursor:pointer;font-family:inherit;font-size:12px;color:inherit;text-align:left;padding:6px 10px;border-radius:6px}
.site-theme-option:hover{background:color-mix(in srgb,var(--st-accent,#8b6f47) 12%,transparent)}
.site-theme-option.active{background:color-mix(in srgb,var(--st-accent,#8b6f47) 18%,transparent);font-weight:600}

/* cyrisia site theme — Catppuccin Mocha */
html[data-site-theme="catppuccin"]{--st-bg:#1e1e2e;--st-fg:#cdd6f4;--st-muted:#a6adc8;--st-card:#181825;--st-border:#313244;--st-accent:#89b4fa;--st-accent-2:#cba6f7;--st-accent-strong:#89b4fa;--st-header:#181825;--st-input:#313244;--st-secondary:#cdd6f4;--st-faint:#a6adc8;--st-popup:#181825;--st-popup-hover:#313244;--st-popup-sep:#313244;--st-acct-btn:#313244;--st-acct-border:#89b4fa;--st-acct-hover:#313244;--st-acct-fg:#cba6f7;--st-goal-bg-1:#26263a;--st-goal-bg-2:#0e0e17;--st-goal-border:#313244;--st-goal-fill-1:#89b4fa;--st-goal-fill-2:#cba6f7;--st-soft:#313244;--st-input-border:#313244;--st-hm-0:#45475a;--st-hm-1:#585b70;--st-hm-2:#6c7086;--st-hm-3:#89b4fa;--st-hm-4:#7287fd}

/* cyrisia site theme — original dark */
html[data-site-theme="dark"]{--st-bg:#1c1c1f;--st-fg:#e4e4e7;--st-muted:#71717a;--st-card:#2a2a2e;--st-border:#3f3f46;--st-accent:#8b6f47;--st-accent-2:#a08b6f;--st-accent-strong:#8b6f47;--st-header:#232326;--st-input:#27272a;--st-secondary:#d4d4d8;--st-faint:#71717a;--st-popup:#2a2a2e;--st-popup-hover:#27272a;--st-popup-sep:#3f3f46;--st-acct-btn:#27272a;--st-acct-border:#3f3f46;--st-acct-hover:#2a2a2e;--st-acct-fg:#a08b6f;--st-goal-bg-1:#34343a;--st-goal-bg-2:#19191c;--st-goal-border:#3f3f46;--st-goal-fill-1:#8b6f47;--st-goal-fill-2:#a08b6f;--st-soft:#3f3f46;--st-input-border:#3f3f46;--st-hm-0:#3a3a3f;--st-hm-1:#6b5a44;--st-hm-2:#8b6f47;--st-hm-3:#a08b6f;--st-hm-4:#c4a87c}

/* cyrisia site theme — Dracula */
html[data-site-theme="dracula"]{--st-bg:#282a36;--st-fg:#f8f8f2;--st-muted:#6272a4;--st-card:#21222c;--st-border:#44475a;--st-accent:#bd93f9;--st-accent-2:#9d6fe3;--st-accent-strong:#bd93f9;--st-header:#21222c;--st-input:#191a21;--st-secondary:#f8f8f2;--st-faint:#6272a4;--st-popup:#21222c;--st-popup-hover:#191a21;--st-popup-sep:#44475a;--st-acct-btn:#191a21;--st-acct-border:#bd93f9;--st-acct-hover:#21222c;--st-acct-fg:#bd93f9;--st-goal-bg-1:#33344a;--st-goal-bg-2:#16171f;--st-goal-border:#44475a;--st-goal-fill-1:#bd93f9;--st-goal-fill-2:#9d6fe3;--st-soft:#44475a;--st-input-border:#44475a;--st-hm-0:#31333f;--st-hm-1:#44475a;--st-hm-2:#6272a4;--st-hm-3:#bd93f9;--st-hm-4:#ff79c6}

/* cyrisia site theme — original light (default) */
html[data-site-theme="light"]{--st-bg:#ffffff;--st-fg:#18181b;--st-muted:#71717a;--st-card:#ffffff;--st-border:#e5e7eb;--st-accent:#8b6f47;--st-accent-2:#a08b6f;--st-accent-strong:#8b6f47;--st-header:#fafafa;--st-input:#f4f4f5;--st-secondary:#52525b;--st-faint:#a1a1aa;--st-popup:#fff;--st-popup-hover:#f5f0e8;--st-popup-sep:#f4f4f5;--st-acct-btn:#f5f0e8;--st-acct-border:#c4a87c;--st-acct-hover:#ede3d5;--st-acct-fg:#6b5235;--st-goal-bg-1:#f6f0e3;--st-goal-bg-2:#eee5d2;--st-goal-border:#dccfae;--st-goal-fill-1:#c4a87c;--st-goal-fill-2:#d4b896;--st-soft:#f0ece4;--st-input-border:#e5e7eb;--st-hm-0:#ece8e0;--st-hm-1:#d9cbb4;--st-hm-2:#b89a6f;--st-hm-3:#8b6f47;--st-hm-4:#5d4830}

/* cyrisia site theme — Monokai */
html[data-site-theme="monokai"]{--st-bg:#272822;--st-fg:#f8f8f2;--st-muted:#75715e;--st-card:#1e1f1c;--st-border:#3e3d32;--st-accent:#a6e22e;--st-accent-2:#f92672;--st-accent-strong:#a6e22e;--st-header:#1e1f1c;--st-input:#1e1f1c;--st-secondary:#f8f8f2;--st-faint:#75715e;--st-popup:#1e1f1c;--st-popup-hover:#272822;--st-popup-sep:#3e3d32;--st-acct-btn:#1e1f1c;--st-acct-border:#a6e22e;--st-acct-hover:#272822;--st-acct-fg:#a6e22e;--st-goal-bg-1:#32332c;--st-goal-bg-2:#12130f;--st-goal-border:#3e3d32;--st-goal-fill-1:#a6e22e;--st-goal-fill-2:#f92672;--st-soft:#3e3d32;--st-input-border:#3e3d32;--st-hm-0:#3e3d32;--st-hm-1:#49483e;--st-hm-2:#75715e;--st-hm-3:#a6e22e;--st-hm-4:#f92672}

/* cyrisia site theme — Solarized Light */
html[data-site-theme="solarized-light"]{--st-bg:#fdf6e3;--st-fg:#586e75;--st-muted:#93a1a1;--st-card:#fdf6e3;--st-border:#eee8d5;--st-accent:#268bd2;--st-accent-2:#2aa198;--st-accent-strong:#268bd2;--st-header:#eee8d5;--st-input:#eee8d5;--st-secondary:#586e75;--st-faint:#93a1a1;--st-popup:#fdf6e3;--st-popup-hover:#eee8d5;--st-popup-sep:#eee8d5;--st-acct-btn:#eee8d5;--st-acct-border:#268bd2;--st-acct-hover:#e0d9b8;--st-acct-fg:#268bd2;--st-goal-bg-1:#ddd5b8;--st-goal-bg-2:#d0c7a5;--st-goal-border:#657b83;--st-goal-fill-1:#268bd2;--st-goal-fill-2:#2aa198;--st-soft:#eee8d5;--st-input-border:#657b83;--st-hm-0:#e0d9b8;--st-hm-1:#9cc7e8;--st-hm-2:#5ba3dd;--st-hm-3:#268bd2;--st-hm-4:#155a8f}
