/* Dark mode — system preference + manual toggle */

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --color-text: #e8e4dc;
        --color-text-muted: #a09a8e;
        --color-text-light: #7a7468;
        --color-link: #7eb5d6;
        --color-link-hover: #a3cde5;
        --color-accent: #c0392b;
        --color-accent-bg: rgba(192, 57, 43, 0.08);
        --color-bg: #1a1a1a;
        --color-border: #3a3530;
        --color-code-bg: #2a2520;
    }
}

[data-theme="dark"] {
    --color-text: #e8e4dc;
    --color-text-muted: #a09a8e;
    --color-text-light: #7a7468;
    --color-link: #7eb5d6;
    --color-link-hover: #a3cde5;
    --color-accent: #c0392b;
    --color-accent-bg: rgba(192, 57, 43, 0.08);
    --color-bg: #1a1a1a;
    --color-border: #3a3530;
    --color-code-bg: #2a2520;
}

[data-theme="light"] {
    --color-text: #1a1a1a;
    --color-text-muted: #555;
    --color-text-light: #767676;
    --color-link: #1a5276;
    --color-link-hover: #0e3a5c;
    --color-accent: #8b0000;
    --color-accent-bg: rgba(139, 0, 0, 0.03);
    --color-bg: #fffff8;
    --color-border: #ddd;
    --color-code-bg: #f5f5f0;
}

/* Toggle button */
.dark-mode-toggle {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.2rem;
    color: var(--color-text-muted);
    padding: 0.25em;
    line-height: 1;
    transition: color 0.15s;
}

.dark-mode-toggle:hover {
    color: var(--color-text);
}

/* Show/hide icons based on current theme */
.toggle-icon-sun { display: none; }
.toggle-icon-moon { display: inline; }

[data-theme="dark"] .toggle-icon-sun { display: inline; }
[data-theme="dark"] .toggle-icon-moon { display: none; }

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .toggle-icon-sun { display: inline; }
    :root:not([data-theme="light"]) .toggle-icon-moon { display: none; }
}

/* Ensure images don't blow out in dark mode */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) img:not(.site-logo) {
        opacity: 0.9;
    }
}

[data-theme="dark"] img:not(.site-logo) {
    opacity: 0.9;
}
