/* Lightroom Classic–inspired dark theme — only active when html[data-theme="dark"] */

[data-theme="dark"] {
    color-scheme: dark;

    --ps-ink: #e3e3e3;
    --ps-muted: #9a9a9a;
    --ps-border: #3e3e3e;
    --ps-surface: #1f1f1f;
    --ps-card: #2d2d2d;
    --ps-card-elevated: #363636;
    --ps-hover: #383838;

    --ps-primary: #5c9fd4;
    --ps-primary-hover: #6eb0e0;
    --ps-primary-active: #4a8ec4;
    --ps-primary-soft: #2a3540;
    --ps-primary-tint: #262d35;

    --ps-like: #e8e8e8;
    --ps-like-hover: #ffffff;

    --ps-link: #7eb3e8;
    --ps-link-hover: #9ec8f0;
    --ps-link-soft: #243040;
    --ps-link-border: #3a4f62;

    --bs-body-bg: var(--ps-surface);
    --bs-body-color: var(--ps-ink);
    --bs-border-color: var(--ps-border);
    --bs-secondary-color: var(--ps-muted);
    --bs-tertiary-bg: var(--ps-card);
    --bs-emphasis-color: #f2f2f2;
}

[data-theme="dark"] body {
    background: var(--ps-surface);
    color: var(--ps-ink);
}

[data-theme="dark"] .skip-link {
    background: var(--ps-card);
    color: var(--ps-ink);
    border-color: var(--ps-border);
}

[data-theme="dark"] .navbar.bg-white,
[data-theme="dark"] .navbar-light {
    background-color: var(--ps-card) !important;
    border-color: var(--ps-border) !important;
}

[data-theme="dark"] .navbar-light .navbar-brand,
[data-theme="dark"] .navbar-light .navbar-nav .nav-link {
    color: var(--ps-ink);
}

[data-theme="dark"] .navbar-light .navbar-nav .nav-link:hover,
[data-theme="dark"] .navbar-light .navbar-nav .nav-link:focus {
    color: var(--ps-link);
}

[data-theme="dark"] .nav-menu-bar {
    background: var(--ps-ink);
}

[data-theme="dark"] .auth-card,
[data-theme="dark"] .site-flash,
[data-theme="dark"] .post-card,
[data-theme="dark"] .feed-sidebar-card,
[data-theme="dark"] .explore-hashtags-panel,
[data-theme="dark"] .modal-content,
[data-theme="dark"] .dropdown-menu,
[data-theme="dark"] .list-group-item,
[data-theme="dark"] .card {
    background: var(--ps-card);
    border-color: var(--ps-border);
    color: var(--ps-ink);
}

[data-theme="dark"] .site-flash-success {
    background: var(--ps-primary-tint);
    border-color: var(--ps-link-border);
}

[data-theme="dark"] .site-flash-danger {
    background: #3a2c28;
    border-color: #5c4038;
}

[data-theme="dark"] .site-flash-danger .site-flash-text {
    color: #e8c4b8;
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] .input-group-text {
    background-color: #262626;
    border-color: var(--ps-border);
    color: var(--ps-ink);
}

[data-theme="dark"] .form-control::placeholder {
    color: #707070;
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
    background-color: #262626;
    border-color: var(--ps-primary);
    color: var(--ps-ink);
    box-shadow: 0 0 0 0.2rem rgba(92, 159, 212, 0.2);
}

[data-theme="dark"] .form-check-input {
    background-color: #262626;
    border-color: #555;
}

[data-theme="dark"] .form-check-input:checked {
    background-color: var(--ps-primary);
    border-color: var(--ps-primary);
}

[data-theme="dark"] .btn-outline-secondary {
    --bs-btn-color: var(--ps-ink);
    --bs-btn-border-color: var(--ps-border);
    --bs-btn-hover-bg: var(--ps-hover);
    --bs-btn-hover-border-color: #555;
    --bs-btn-hover-color: var(--ps-ink);
    --bs-btn-active-bg: #444;
    --bs-btn-active-border-color: #555;
}

[data-theme="dark"] .btn-link,
[data-theme="dark"] .text-muted {
    color: var(--ps-muted) !important;
}

[data-theme="dark"] .text-dark {
    color: var(--ps-ink) !important;
}

[data-theme="dark"] a.text-dark:hover,
[data-theme="dark"] a.text-dark:focus {
    color: var(--ps-link) !important;
}

[data-theme="dark"] .border-top,
[data-theme="dark"] .border-bottom,
[data-theme="dark"] .border,
[data-theme="dark"] hr {
    border-color: var(--ps-border) !important;
}

[data-theme="dark"] .post-card {
    box-shadow: none;
}

[data-theme="dark"] .comment-item .comment-body {
    color: var(--ps-ink);
}

[data-theme="dark"] .inbox-thread {
    border-color: var(--ps-border);
}

[data-theme="dark"] .inbox-thread.is-unread {
    background: var(--ps-primary-tint);
}

[data-theme="dark"] .inbox-message-body {
    background: #363636;
}

[data-theme="dark"] .inbox-message.is-own .inbox-message-body {
    background: var(--ps-primary-soft);
}

[data-theme="dark"] .inbox-reply-btn:hover,
[data-theme="dark"] .inbox-edit-btn:hover {
    color: var(--ps-ink);
}

[data-theme="dark"] .inbox-folder-tab {
    color: var(--ps-muted);
}

[data-theme="dark"] .inbox-folder-tab.is-active {
    color: var(--ps-ink);
    border-color: var(--ps-ink);
}

[data-theme="dark"] .location-suggestion:hover,
[data-theme="dark"] .location-suggestion.is-active {
    background: var(--ps-primary-tint);
    color: var(--ps-link);
}

[data-theme="dark"] .location-suggestions {
    background: var(--ps-card-elevated);
    border-color: var(--ps-border);
}

[data-theme="dark"] .feed-sidebar-user-link:hover {
    background: var(--ps-hover);
}

[data-theme="dark"] .explore-hashtags-toggle {
    color: var(--ps-muted);
}

[data-theme="dark"] .dropdown-item {
    color: var(--ps-ink);
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background: var(--ps-hover);
    color: var(--ps-ink);
}

[data-theme="dark"] .dropdown-divider {
    border-color: var(--ps-border);
}

[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
    border-color: var(--ps-border);
}

[data-theme="dark"] .btn-close {
    filter: invert(1) grayscale(1) brightness(1.6);
}

[data-theme="dark"] .guest-signup-modal,
[data-theme="dark"] .ps-confirm-content {
    background: var(--ps-card);
    color: var(--ps-ink);
}

[data-theme="dark"] .legal-page {
    color: var(--ps-ink);
}

[data-theme="dark"] .profile-stats a {
    color: var(--ps-ink);
}

[data-theme="dark"] .profile-follow-btn-following {
    color: var(--ps-muted);
}

[data-theme="dark"] .profile-follow-btn-following:hover,
[data-theme="dark"] .profile-follow-btn-following:focus-visible {
    color: var(--ps-ink);
}

[data-theme="dark"] .hashtag-link {
    color: var(--ps-link);
}

[data-theme="dark"] .hashtag-link:hover {
    color: var(--ps-link-hover);
}

[data-theme="dark"] .alert-danger {
    background: #3a2c28;
    border-color: #5c4038;
    color: #f0d4cc;
}

[data-theme="dark"] .alert-info {
    background: var(--ps-primary-tint);
    border-color: var(--ps-link-border);
    color: var(--ps-ink);
}

[data-theme="dark"] .alert-warning {
    background: #3d3520;
    border-color: #5c5028;
    color: #e8ddb8;
}

[data-theme="dark"] .story-lightbox-backdrop {
    background: rgba(0, 0, 0, 0.92);
}

[data-theme="dark"] .nav-drawer-backdrop.show {
    background: rgba(0, 0, 0, 0.65);
}

@media (max-width: 991.98px) {
    [data-theme="dark"] .navbar-collapse.nav-drawer {
        background: var(--ps-card);
        border-color: var(--ps-border);
    }

    [data-theme="dark"] .navbar-main-nav .nav-link:hover,
    [data-theme="dark"] .navbar-main-nav .nav-link:focus,
    [data-theme="dark"] .navbar-user-nav .nav-link:hover,
    [data-theme="dark"] .navbar-user-nav .nav-link:focus {
        background: var(--ps-hover);
    }
}