/*
 * AiCORPly dark theme overrides.
 * This file is deliberately loaded after page-specific styles so the light theme
 * can keep its existing design while dark mode receives consistent surfaces,
 * typography and interactive states.
 */

html[data-theme="dark"] {
    color-scheme: dark;
    --dark-body: #16151a;
    --dark-header: #27242d;
    --dark-sidebar: #1d1b22;
    --dark-panel: #211f27;
    --dark-panel-raised: #27242d;
    --dark-panel-soft: #2b2832;
    --dark-input: #1b1920;
    --dark-border: #3c3746;
    --dark-border-soft: rgba(193, 181, 211, .16);
    --dark-text: #f5f2f8;
    --dark-text-soft: #d5cfdd;
    --dark-muted: #aaa4b4;
    --dark-accent: #79a9ff;
    --dark-accent-strong: #a9c8ff;
    --dark-accent-soft: #302d45;
    --dark-success: #55d68b;
    --dark-warning: #f4c56b;
    --dark-danger: #ff858f;
    --dark-shadow: 0 16px 38px rgba(0, 0, 0, .26);
}

/* The toggle remains wired for a later re-enable, but is temporarily hidden. */
html[data-theme="dark"] .default-theme-theme-toggle,
html:not([data-theme="dark"]) .default-theme-theme-toggle {
    display: none !important;
}

html[data-theme="dark"] body,
html[data-theme="dark"] .default-theme-app-shell,
html[data-theme="dark"] .public-main,
html[data-theme="dark"] .public-home-main,
html[data-theme="dark"] .public-home-shell,
html[data-theme="dark"] .public-home-main-column,
html[data-theme="dark"] .account-main,
html[data-theme="dark"] .create-main,
html[data-theme="dark"] .public-help-main,
html[data-theme="dark"] .public-help-shell,
html[data-theme="dark"] .public-help-page {
    background: var(--dark-body);
    color: var(--dark-text);
}

html[data-theme="dark"] a { color: var(--dark-accent); }
html[data-theme="dark"] hr { border-color: var(--dark-border); }
html[data-theme="dark"] ::selection { background: rgba(121, 169, 255, .34); color: #fff; }

/* Application chrome */
html[data-theme="dark"] .default-theme-header,
html[data-theme="dark"] .public-home-header-region,
html[data-theme="dark"] .public-header {
    background: var(--dark-header);
    border-color: var(--dark-border);
    box-shadow: 0 8px 28px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .default-theme-sidebar,
html[data-theme="dark"] .public-home-left-region,
html[data-theme="dark"] .public-home-sidebar,
html[data-theme="dark"] .public-sidebar {
    background: var(--dark-sidebar);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.brand, .brand > span, .public-sidebar-brand, .public-sidebar-brand .brand) {
    color: var(--dark-text) !important;
}

html[data-theme="dark"] :is(.public-home-sidebar-link, .public-nav-group__toggle, .default-theme-sidebar-link) {
    color: var(--dark-text-soft);
}

html[data-theme="dark"] :is(.public-home-sidebar-link, .public-nav-group__toggle, .default-theme-sidebar-link):is(:hover, :focus-visible),
html[data-theme="dark"] :is(.public-home-sidebar-link, .default-theme-sidebar-link).is-active,
html[data-theme="dark"] :is(.public-home-sidebar-link, .default-theme-sidebar-link)[aria-current="page"] {
    background: var(--dark-accent-soft);
    color: var(--dark-accent-strong);
}

html[data-theme="dark"] :is(.public-sidebar-footer, .public-sidebar-footer a, .public-sidebar-footer span, .public-sidebar-footer small) {
    color: var(--dark-muted);
}

html[data-theme="dark"] .public-sidebar-footer { border-color: var(--dark-border); }
html[data-theme="dark"] .public-sidebar-footer a:hover { color: var(--dark-accent-strong); }

html[data-theme="dark"] :is(.default-theme-search-shell, .default-theme-search-command, .default-theme-sidebar-toggle, .default-theme-header-action, .default-theme-notifications__trigger) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] .default-theme-search-shell input { background: transparent; color: var(--dark-text); }
html[data-theme="dark"] :is(.default-theme-header-link, .default-theme-header-link span) { color: var(--dark-text-soft); }
html[data-theme="dark"] .default-theme-theme-toggle { background: #343044; border-color: #514b66; color: #f5c86b; }
html[data-theme="dark"] .default-theme-theme-toggle:is(:hover, :focus-visible) { background: #423b57; color: #ffdf91; }

html[data-theme="dark"] :is(.default-theme-dropdown-menu, .default-theme-notifications__menu, .public-user-menu) {
    background: var(--dark-panel-raised);
    border-color: var(--dark-border);
    box-shadow: var(--dark-shadow);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.default-theme-dropdown-item, .default-theme-notification) { color: var(--dark-text-soft); }
html[data-theme="dark"] :is(.default-theme-dropdown-item, .default-theme-notification):hover,
html[data-theme="dark"] .default-theme-notification.is-unread { background: var(--dark-accent-soft); color: var(--dark-text); }
html[data-theme="dark"] :is(.default-theme-notifications__head, .default-theme-notification) { border-color: var(--dark-border-soft); }

/* Shared controls and surfaces */
html[data-theme="dark"] :is(input, select, textarea) {
    background-color: var(--dark-input);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(input, select, textarea):focus {
    border-color: var(--dark-accent);
    box-shadow: 0 0 0 3px rgba(121, 169, 255, .16);
}

html[data-theme="dark"] ::placeholder { color: #8f8998; opacity: 1; }

html[data-theme="dark"] :is(.button-secondary, .default-theme-button-secondary, .cookie-settings-button, .public-sidebar-footer__cookie-settings) {
    background: var(--dark-panel-raised);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] .public-sidebar-footer__cookie-settings svg { color: #aaa1c2; }

html[data-theme="dark"] :is(.button-secondary, .default-theme-button-secondary, .cookie-settings-button, .public-sidebar-footer__cookie-settings):hover {
    background: var(--dark-accent-soft);
    border-color: #595273;
    color: var(--dark-accent-strong);
}

html[data-theme="dark"] :is(
    .default-theme-panel,
    .default-theme-right-card,
    .default-theme-content-card,
    .public-home-content-card,
    .public-content-card,
    .public-post-detail,
    .public-article-detail,
    .marketplace-card,
    .marketplace-list-table,
    .marketplace-form,
    .marketplace-detail__card
) {
    background-color: var(--dark-panel);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

/* Home, Explore and public content lists */
html[data-theme="dark"] :is(.default-theme-hero-stats, .default-theme-filter, .default-theme-filter-row, .explore-secondary-filter) {
    background: var(--dark-panel) !important;
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] .default-theme-filter-row.is-sticky { box-shadow: 0 12px 28px rgba(0, 0, 0, .2); }

html[data-theme="dark"] :is(.default-theme-filter-link, .explore-secondary-filter__button) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] :is(.default-theme-filter-link, .explore-secondary-filter__button):is(:hover, .is-active, [aria-current="page"]) {
    background: var(--dark-accent-soft);
    border-color: #5a6f9d;
    color: var(--dark-accent-strong);
}

html[data-theme="dark"] .public-content-card__stats {
    background: var(--dark-panel-raised);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] :is(.public-content-card__stats a, .public-content-card__stats button, .public-content-card__stats span) { color: var(--dark-text-soft); }
html[data-theme="dark"] .public-content-card__stat.public-content-card__like {
    background: transparent !important;
    border-color: var(--dark-border);
    color: var(--dark-text-soft) !important;
}
html[data-theme="dark"] .public-content-card__stat.public-content-card__like:is(:hover, .is-active) {
    background: var(--dark-accent-soft) !important;
    color: var(--dark-accent-strong) !important;
}
html[data-theme="dark"] .public-content-card__like .default-theme-icon { color: currentColor; }
html[data-theme="dark"] :is(.public-home-side-row, .public-home-creator-view, .empty-state) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] :is(.public-home-side-row, .public-home-creator-view, .empty-state) :is(h2, h3, strong) { color: var(--dark-text); }

/* Content detail */
html[data-theme="dark"] :is(.public-post-media, .public-post-media__viewer, .public-post-section, .public-home-card-group.public-post-related-grid) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.public-post-detail-card, .public-post-prompt-block, .public-post-workflow__placeholder) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] .public-post-media__trigger { background: #19171e; border-color: var(--dark-border); }

html[data-theme="dark"] :is(.public-post-section, .public-post-detail, .public-article-detail) :is(h1, h2, h3, h4, strong) { color: var(--dark-text); }
html[data-theme="dark"] :is(.public-post-section, .public-post-detail, .public-article-detail) :is(p, small, time, dt, dd) { color: var(--dark-text-soft); }

html[data-theme="dark"] :is(.public-post-creator-growth, .public-post-creator-growth__stats > span) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] :is(.public-post-creator-card__name, .public-post-creator-growth strong) { color: var(--dark-text); }
html[data-theme="dark"] .public-post-creator-growth__level { background: var(--dark-accent-soft); color: var(--dark-accent-strong); }

html[data-theme="dark"] :is(.public-post-action, .public-post-rights-details, .comments-sort, .comments-subscribe, .comment-login-prompt__action) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] :is(.public-post-action, .public-post-rights-details, .comments-sort, .comments-subscribe, .comment-login-prompt__action):hover {
    background: var(--dark-accent-soft);
    color: var(--dark-accent-strong);
}

html[data-theme="dark"] .public-post-action.is-danger { color: var(--dark-danger); }
html[data-theme="dark"] .public-post-action.is-danger.is-disabled { background: var(--dark-panel-soft); border-color: var(--dark-border); }

/* Comments */
html[data-theme="dark"] :is(.comments-shell, .comments-composer, .comment-card, .comment-reply-form, .comment-login-prompt, .comments-moderation-menu, .comments-report-modal__dialog) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.comment-card, .comments-composer, .comment-reply-form) :is(strong, h2, h3) { color: var(--dark-text); }
html[data-theme="dark"] :is(.comment-card, .comments-composer, .comment-reply-form) :is(p, span, small, time) { color: var(--dark-text-soft); }
html[data-theme="dark"] :is(.comment-editor, .comment-editor textarea, .comment-editor__tools) { background: var(--dark-input); border-color: var(--dark-border); color: var(--dark-text); }

/* Public profile */
html[data-theme="dark"] :is(.public-profile-stat-strip, .public-profile-tabs, .public-profile-panel) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
    color: var(--dark-text);
}

html[data-theme="dark"] .public-profile-hero--showcase { background-color: var(--dark-panel); }

html[data-theme="dark"] .public-profile-stat-strip :is(strong, b) { color: var(--dark-text); }
html[data-theme="dark"] .public-profile-stat-strip :is(span, small) { color: var(--dark-muted); }
html[data-theme="dark"] .public-profile-tabs a { background: transparent; color: var(--dark-text-soft); }
html[data-theme="dark"] .public-profile-tabs a:is(:hover, .is-active, [aria-current="page"]) { background: var(--dark-accent-soft); color: var(--dark-accent-strong); }

html[data-theme="dark"] .public-profile-panel :is(h1, h2, h3, h4, strong, b) { color: var(--dark-text); }
html[data-theme="dark"] .public-profile-panel :is(p, span, small, time, li) { color: var(--dark-text-soft); }
html[data-theme="dark"] :is(.public-profile-ranking-list > *, .public-profile-activity-list > *, .public-profile-achievement-card, .public-profile-badge-slot) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
}

html[data-theme="dark"] .public-profile-ranking-list .is-current { background: var(--dark-accent-soft); color: var(--dark-text); }
html[data-theme="dark"] .public-profile-shell--reference .public-profile-achievements .public-profile-achievement-placeholder,
html[data-theme="dark"] .public-profile-shell--reference .public-profile-overview-grid .public-profile-achievement-placeholder,
html[data-theme="dark"] .public-profile-achievement-placeholder {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-muted);
}

html[data-theme="dark"] :is(.public-profile-week-labels, .public-profile-streak-note) { color: var(--dark-muted); }
html[data-theme="dark"] :is(.public-profile-share, .public-profile-more) { background: var(--dark-panel-raised); border-color: var(--dark-border); color: var(--dark-text); }

/* Account and settings pages */
html[data-theme="dark"] .account-settings-heading h1 { color: var(--dark-text); }
html[data-theme="dark"] .account-settings-heading p { color: var(--dark-muted); }
html[data-theme="dark"] .account-settings-heading__icon { background: var(--dark-accent-soft); color: var(--dark-accent); }
html[data-theme="dark"] .account-settings-tabs { border-color: var(--dark-border); }
html[data-theme="dark"] .account-settings-tabs a { color: var(--dark-text-soft); }
html[data-theme="dark"] .account-settings-tabs a:is(:hover, .is-active) { background: var(--dark-accent-soft); color: var(--dark-accent-strong); }

html[data-theme="dark"] :is(
    .account-settings-card,
    .account-panel,
    .account-stat-card,
    .account-email-card,
    .account-notification-card,
    .account-security-card,
    .account-privacy-card,
    .account-danger-card,
    .account-danger-export,
    .account-danger-support
) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.account-settings-card, .account-panel, .account-email-card, .account-notification-card, .account-security-card, .account-privacy-card) :is(h2, h3, h4, strong, label) { color: var(--dark-text); }
html[data-theme="dark"] :is(.account-settings-card, .account-panel, .account-email-card, .account-notification-card, .account-security-card, .account-privacy-card) :is(p, small, span) { color: var(--dark-text-soft); }
html[data-theme="dark"] :is(.account-settings-column, .account-settings-banner-column, .account-settings-creator-field, .account-settings-social-field, .account-settings-creator-note) { border-color: var(--dark-border); }
html[data-theme="dark"] :is(.account-settings-art, .account-settings-banner-preview, .account-settings-token-row, .account-settings-username) { background-color: var(--dark-panel-soft); border-color: var(--dark-border); color: var(--dark-text-soft); }

html[data-theme="dark"] .account-danger-warning { background: linear-gradient(110deg, #2d2025, #251e24); border-color: #5d343d; }
html[data-theme="dark"] .account-danger-warning :is(h2, p) { color: var(--dark-text); }
html[data-theme="dark"] .account-danger-support { background: #2b2025; }

/* Help Center and legal content (page CSS is loaded before this file). */
html[data-theme="dark"] .public-help-hero,
html[data-theme="dark"] .public-help-article__header,
html[data-theme="dark"] .public-help-contact__header {
    background: linear-gradient(135deg, #27242d, #211f27);
    border-color: var(--dark-border);
    box-shadow: var(--dark-shadow);
}

html[data-theme="dark"] .public-help-hero::after { opacity: .28; }
html[data-theme="dark"] .public-help-hero__spark { background: var(--dark-accent-soft); border-color: #504966; box-shadow: none; color: var(--dark-accent); }
html[data-theme="dark"] .public-help-search { background: var(--dark-panel); border-color: var(--dark-border); box-shadow: var(--dark-shadow); }
html[data-theme="dark"] .public-help-search input { color: var(--dark-text); }

html[data-theme="dark"] :is(.public-help-hero, .public-help-section__heading, .public-help-article__header, .public-help-contact__header) :is(h1, h2, h3) { color: var(--dark-text); }
html[data-theme="dark"] :is(.public-help-hero, .public-help-article__header, .public-help-contact__header) p { color: var(--dark-text-soft); }

html[data-theme="dark"] :is(.public-help-featured-card, .public-help-category-card, .public-help-article-card, .public-help-support-card, .public-help-empty, .public-help-article, .public-help-contact, .public-help-feedback) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .18);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.public-help-category-card.is-active, .public-help-support-card--accent) { background: var(--dark-accent-soft); border-color: #595273; }
html[data-theme="dark"] .public-help-articles { background: rgba(43, 40, 50, .72); }
html[data-theme="dark"] :is(.public-help-card__icon, .public-help-category-card__icon, .public-help-article-card__icon, .public-help-support-card__icon) { background: var(--dark-accent-soft); color: var(--dark-accent); }

html[data-theme="dark"] :is(.public-help-card__body strong, .public-help-category-card strong, .public-help-article-card strong, .public-help-support-card h2, .public-help-empty h3, .public-help-feedback h2) { color: var(--dark-text); }
html[data-theme="dark"] :is(.public-help-card__body span, .public-help-category-card small, .public-help-article-card__body > span:last-child, .public-help-support-card p, .public-help-empty, .public-help-feedback p) { color: var(--dark-text-soft); }

html[data-theme="dark"] .public-help-article__body { background: var(--dark-panel); color: var(--dark-text-soft); }
html[data-theme="dark"] .public-help-contact__form { background: var(--dark-panel); }
html[data-theme="dark"] .public-help-contact__field label { color: var(--dark-text); }
html[data-theme="dark"] :is(.public-help-contact__privacy, .public-help-contact__unavailable) { background: var(--dark-panel-soft); border-color: var(--dark-border); color: var(--dark-text-soft); }
html[data-theme="dark"] .public-help-contact__unavailable strong { color: var(--dark-text); }
html[data-theme="dark"] .public-help-feedback__button { background: var(--dark-panel-soft); border-color: var(--dark-border); color: var(--dark-text-soft); }
html[data-theme="dark"] .public-help-feedback__button:is(:hover, .is-selected) { background: var(--dark-accent-soft); color: var(--dark-accent-strong); }
html[data-theme="dark"] .public-help-pagination :is(a, span) { background: var(--dark-panel); border-color: var(--dark-border); color: var(--dark-text-soft); }

/* Create flows */
html[data-theme="dark"] :is(.create-card, .create-panel, .image-create-card, .video-create-card, .prompt-create-card, .article-create-card, .create-details-card, .file-picker) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.create-card, .create-panel, .image-create-card, .video-create-card, .prompt-create-card, .article-create-card, .create-details-card) :is(h1, h2, h3, strong, label) { color: var(--dark-text); }
html[data-theme="dark"] :is(.create-card, .create-panel, .image-create-card, .video-create-card, .prompt-create-card, .article-create-card, .create-details-card) :is(p, small, span) { color: var(--dark-text-soft); }

/* Authentication */
html[data-theme="dark"] :is(.app-shell, .login-page, .register-page, .verify-page, .username-page) {
    background: var(--dark-body);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.login-page, .register-page)::before,
html[data-theme="dark"] .register-page::after { background: #211f27; opacity: .72; }

html[data-theme="dark"] :is(.login-card, .register-card, .auth-simple-card, .bootstrap-panel, .verify-card, .username-card) {
    background: var(--dark-panel);
    border-color: var(--dark-border);
    box-shadow: var(--dark-shadow);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.login-card__form-panel, .register-card__form-panel, .verify-card__content, .username-card__content) {
    background: var(--dark-panel);
    color: var(--dark-text);
}

html[data-theme="dark"] .login-card--single .login-card__form-panel,
html[data-theme="dark"] .register-card--split .register-card__form-panel {
    background: var(--dark-panel);
    color: var(--dark-text);
}

html[data-theme="dark"] :is(.login-brand, .login-brand__name, .verify-brand, .verify-brand__name, .username-brand, .username-brand__name) { color: var(--dark-text); }
html[data-theme="dark"] :is(.login-card__form-panel, .register-card__form-panel, .verify-main, .username-main) :is(h1, h2, h3, strong, label) { color: var(--dark-text); }
html[data-theme="dark"] :is(.login-card__subtitle, .register-card__subtitle, .login-create, .register-signin, .verify-lead, .username-lead, .auth-mfa-help) { color: var(--dark-text-soft); }

html[data-theme="dark"] :is(.login-field, .register-field) { color: var(--dark-text); }
html[data-theme="dark"] :is(.login-input-wrap, .register-input-wrap, .username-input-wrap) {
    background: var(--dark-input);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html[data-theme="dark"] .login-card--single .login-input-wrap,
html[data-theme="dark"] .register-card--split .register-input-wrap {
    background: var(--dark-input);
    border-color: var(--dark-border);
}

html[data-theme="dark"] :is(.login-input-wrap, .register-input-wrap, .username-input-wrap) input { background: transparent; color: var(--dark-text); }
html[data-theme="dark"] :is(.login-input-action, .register-input-action) { color: var(--dark-muted); }
html[data-theme="dark"] .login-options label { color: var(--dark-text-soft); }

html[data-theme="dark"] :is(.register-form__consent-column, .register-consent-heading, .register-consents, .auth-captcha, .verify-hint, .username-hint, .verify-security) {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
    color: var(--dark-text-soft);
}

html[data-theme="dark"] .register-card--split .register-form__consent-column,
html[data-theme="dark"] .register-card--split .register-consents {
    background: var(--dark-panel-soft);
    border-color: var(--dark-border);
}

html[data-theme="dark"] :is(.register-consents label, .register-consent-heading strong, .auth-captcha strong, .verify-hint strong, .username-hint strong, .verify-security strong) { color: var(--dark-text); }
html[data-theme="dark"] :is(.verify-secondary, .auth-mfa-button, .username-submit) { border-color: var(--dark-border); }

html[data-theme="dark"] .forgot-password-success { background: #1d3529; border-color: #35654b; color: #8de2af; }

/* Floating/mobile UI */
html[data-theme="dark"] :is(.public-mobile-bottom-nav, .public-mobile-bottom-nav__bar) {
    background: rgba(33, 31, 39, .97);
    border-color: var(--dark-border);
    box-shadow: 0 -12px 36px rgba(0, 0, 0, .34);
    color: var(--dark-text);
}

html[data-theme="dark"] .public-mobile-bottom-nav a { color: var(--dark-muted); }
html[data-theme="dark"] .public-mobile-bottom-nav a:is(.is-active, [aria-current="page"]) { color: var(--dark-accent-strong); }

@media (prefers-reduced-motion: reduce) {
    html[data-theme="dark"] *,
    html[data-theme="dark"] *::before,
    html[data-theme="dark"] *::after {
        scroll-behavior: auto !important;
    }
}
