/* =========================================================
   SOCIALHOT — MODO OSCURO PÚBLICO
   Control dentro del menú del usuario.
   ========================================================= */

/* =========================================================
   SWITCH DEL MENÚ
   ========================================================= */

.socialhot-theme-menu-item {
    padding: 4px;
}

.socialhot-theme-menu-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;

    min-height: 58px;
    padding: 9px 10px;

    border-radius: 9px;
}

.socialhot-theme-menu-label {
    display: block;
    width: 100%;
    margin: 0;

    color: var(--socialhot-text);
    font-size: 0.95rem;
    font-weight: 500;
    line-height: 1.2;

    cursor: pointer;
}

.socialhot-theme-switch-wrap {
    min-height: 0;
    margin: 0;
    padding-left: 0;
}

.socialhot-theme-switch {
    float: none !important;

    width: 2.7rem !important;
    height: 1.42rem;
    margin: 0 !important;

    border-color: #a9adb5;
    background-color: #cfd2d7;

    cursor: pointer;
}

.socialhot-theme-switch:checked {
    border-color: var(--socialhot-primary);
    background-color: var(--socialhot-primary);
}

.socialhot-theme-switch:focus {
    border-color: var(--socialhot-primary);
    box-shadow: 0 0 0 .2rem rgba(111, 66, 193, .18);
}


/* =========================================================
   PALETA OSCURA — CONTRASTE ALTO
   ========================================================= */

html[data-theme="dark"] {
    --sh-bg: #101114;
    --sh-surface: #191a1f;
    --sh-surface-2: #222329;
    --sh-surface-3: #2b2c34;
    --sh-input: #141519;
    --sh-border: #41434d;
    --sh-border-soft: #33353d;
    --sh-text: #f7f7fa;
    --sh-muted: #b9bbc5;
    --sh-primary: #b58cff;
    --sh-primary-hover: #c9acff;
    --sh-primary-soft: rgba(181, 140, 255, .16);
    --sh-danger: #ff7b88;
    --sh-success: #73dda0;
    --sh-warning: #ffd36a;

    --socialhot-primary: var(--sh-primary);
    --socialhot-primary-dark: var(--sh-primary-hover);
    --socialhot-primary-light: var(--sh-primary-soft);
    --socialhot-border: var(--sh-border);
    --socialhot-text: var(--sh-text);
    --socialhot-muted: var(--sh-muted);
    --socialhot-background: var(--sh-bg);

    --bs-body-color: var(--sh-text);
    --bs-body-color-rgb: 247, 247, 250;
    --bs-body-bg: var(--sh-bg);
    --bs-body-bg-rgb: 16, 17, 20;

    --bs-emphasis-color: #ffffff;
    --bs-emphasis-color-rgb: 255, 255, 255;

    --bs-secondary-color: var(--sh-muted);
    --bs-secondary-color-rgb: 185, 187, 197;

    --bs-secondary-bg: var(--sh-surface);
    --bs-secondary-bg-rgb: 25, 26, 31;

    --bs-tertiary-bg: var(--sh-surface-2);
    --bs-tertiary-bg-rgb: 34, 35, 41;

    --bs-border-color: var(--sh-border);
    --bs-border-color-translucent: rgba(255, 255, 255, .12);

    --bs-heading-color: #ffffff;
    --bs-link-color: var(--sh-primary);
    --bs-link-hover-color: var(--sh-primary-hover);
}


/* =========================================================
   BASE
   ========================================================= */

html[data-theme="dark"],
html[data-theme="dark"] body {
    color: var(--sh-text);
    background: var(--sh-bg);
}

html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .socialhot-main {
    background-color: var(--sh-bg);
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] .h1,
html[data-theme="dark"] .h2,
html[data-theme="dark"] .h3,
html[data-theme="dark"] .h4,
html[data-theme="dark"] .h5,
html[data-theme="dark"] .h6,
html[data-theme="dark"] .text-dark,
html[data-theme="dark"] .text-body,
html[data-theme="dark"] .text-body-emphasis {
    color: var(--sh-text) !important;
}

html[data-theme="dark"] .text-muted,
html[data-theme="dark"] .text-secondary,
html[data-theme="dark"] .form-text {
    color: var(--sh-muted) !important;
}

html[data-theme="dark"] .bg-white {
    background-color: var(--sh-surface) !important;
}

html[data-theme="dark"] .bg-light,
html[data-theme="dark"] .bg-body-tertiary {
    background-color: var(--sh-surface-2) !important;
}

html[data-theme="dark"] .border,
html[data-theme="dark"] .border-top,
html[data-theme="dark"] .border-end,
html[data-theme="dark"] .border-bottom,
html[data-theme="dark"] .border-start {
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] a:not(.btn):not(.dropdown-item) {
    color: var(--sh-primary);
}

html[data-theme="dark"] a:not(.btn):not(.dropdown-item):hover {
    color: var(--sh-primary-hover);
}


/* =========================================================
   CABECERA Y NAVEGACIÓN
   ========================================================= */

html[data-theme="dark"] .navbar,
html[data-theme="dark"] .socialhot-navbar {
    background-color: #17181c !important;
    border-color: var(--sh-border-soft) !important;
    box-shadow: 0 3px 18px rgba(0, 0, 0, .38) !important;
}

html[data-theme="dark"] .socialhot-logo {
    filter: brightness(0) invert(1);
    opacity: .96;
}

html[data-theme="dark"] .socialhot-header-action,
html[data-theme="dark"] .user-menu-button {
    color: #f4f4f7 !important;
    background-color: #222329 !important;
    border-color: #444650 !important;
}

html[data-theme="dark"] .socialhot-header-action:hover,
html[data-theme="dark"] .socialhot-header-action:focus,
html[data-theme="dark"] .user-menu-button:hover,
html[data-theme="dark"] .user-menu-button:focus,
html[data-theme="dark"] .user-menu-button.show {
    color: #ffffff !important;
    background-color: #2d2e36 !important;
    border-color: #626572 !important;
}

html[data-theme="dark"] .socialhot-header-action.is-active,
html[data-theme="dark"] .socialhot-donate-header-button.is-active {
    color: #ffffff !important;
    background-color: rgba(181, 140, 255, .22) !important;
    border-color: rgba(181, 140, 255, .46) !important;
}

html[data-theme="dark"] .user-menu-name {
    color: #ffffff !important;
}

html[data-theme="dark"] .socialhot-donate-header-button,
html[data-theme="dark"] .socialhot-mobile-donate-heart {
    color: #d9c3ff !important;
}


/* =========================================================
   MENÚ DEL USUARIO
   ========================================================= */

html[data-theme="dark"] .user-dropdown-menu,
html[data-theme="dark"] .dropdown-menu {
    color: var(--sh-text);
    background-color: #1c1d22;
    border-color: #454751;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .48);
}

html[data-theme="dark"] .user-dropdown-header,
html[data-theme="dark"] .socialhot-theme-menu-row {
    color: var(--sh-text);
}

html[data-theme="dark"] .user-dropdown-menu .dropdown-divider,
html[data-theme="dark"] .dropdown-divider,
html[data-theme="dark"] hr {
    border-color: #41434d;
    opacity: 1;
}

html[data-theme="dark"] .dropdown-item,
html[data-theme="dark"] .user-dropdown-item {
    color: #eeeeF3 !important;
}

html[data-theme="dark"] .dropdown-item:hover,
html[data-theme="dark"] .dropdown-item:focus,
html[data-theme="dark"] .user-dropdown-item:hover,
html[data-theme="dark"] .user-dropdown-item:focus {
    color: #ffffff !important;
    background-color: #2b2c34 !important;
}

html[data-theme="dark"] .dropdown-item.active,
html[data-theme="dark"] .dropdown-item:active,
html[data-theme="dark"] .user-dropdown-item.active {
    color: #ffffff !important;
    background-color: rgba(181, 140, 255, .22) !important;
}

html[data-theme="dark"] .socialhot-theme-menu-row:hover {
    background-color: #26272e;
}

html[data-theme="dark"] .socialhot-theme-menu-label {
    color: #f4f4f7;
}


html[data-theme="dark"] .socialhot-theme-switch {
    border-color: #5a5d68;
    background-color: #4a4c55;
}

html[data-theme="dark"] .socialhot-theme-switch:checked {
    border-color: var(--sh-primary);
    background-color: var(--sh-primary);
}


/* =========================================================
   SUPERFICIES PRINCIPALES
   ========================================================= */

html[data-theme="dark"] .card,
html[data-theme="dark"] .estado-card,
html[data-theme="dark"] .create-post-card,
html[data-theme="dark"] .profile-card,
html[data-theme="dark"] .profile-section,
html[data-theme="dark"] .profile-edit-card,
html[data-theme="dark"] .public-profile-card,
html[data-theme="dark"] .public-profile-tabs,
html[data-theme="dark"] .public-profile-actions-card,
html[data-theme="dark"] .post-detail-card,
html[data-theme="dark"] .user-search-card,
html[data-theme="dark"] .notifications-page-card,
html[data-theme="dark"] .blocked-users-card,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .legal-page,
html[data-theme="dark"] .contact-form-card,
html[data-theme="dark"] .publipost-card,
html[data-theme="dark"] .publipost-footer,
html[data-theme="dark"] .verification-pending-card,
html[data-theme="dark"] .estado-empty-card,
html[data-theme="dark"] .feed-empty-card,
html[data-theme="dark"] .user-not-found-card,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .offcanvas,
html[data-theme="dark"] .toast {
    color: var(--sh-text) !important;
    background-color: var(--sh-surface) !important;
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] .estado-card,
html[data-theme="dark"] .create-post-card,
html[data-theme="dark"] .profile-card,
html[data-theme="dark"] .profile-section,
html[data-theme="dark"] .profile-edit-card,
html[data-theme="dark"] .public-profile-card,
html[data-theme="dark"] .post-detail-card,
html[data-theme="dark"] .user-search-card,
html[data-theme="dark"] .notifications-page-card,
html[data-theme="dark"] .blocked-users-card,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .legal-page,
html[data-theme="dark"] .contact-form-card {
    box-shadow: 0 10px 32px rgba(0, 0, 0, .24) !important;
}

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

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


/* =========================================================
   TEXTOS DE CONTENIDO
   ========================================================= */

html[data-theme="dark"] .estado-contenido,
html[data-theme="dark"] .estado-card-content,
html[data-theme="dark"] .estado-card-summary,
html[data-theme="dark"] .estado-comment-content,
html[data-theme="dark"] .feed-latest-comment-content,
html[data-theme="dark"] .post-detail-content,
html[data-theme="dark"] .private-message-text,
html[data-theme="dark"] .notification-page-text,
html[data-theme="dark"] .notifications-menu-text,
html[data-theme="dark"] .publipost-title,
html[data-theme="dark"] .publipost-description,
html[data-theme="dark"] .legal-page-content,
html[data-theme="dark"] .contact-page-title,
html[data-theme="dark"] .auth-title,
html[data-theme="dark"] .profile-heading,
html[data-theme="dark"] .profile-username,
html[data-theme="dark"] .profile-section-title,
html[data-theme="dark"] .profile-detail-value,
html[data-theme="dark"] .public-profile-name,
html[data-theme="dark"] .public-profile-bio,
html[data-theme="dark"] .public-profile-preferences-text,
html[data-theme="dark"] .private-conversation-name,
html[data-theme="dark"] .user-search-result-name {
    color: var(--sh-text) !important;
}

html[data-theme="dark"] .estado-card-meta,
html[data-theme="dark"] .feed-post-date-link,
html[data-theme="dark"] .estado-comment-date,
html[data-theme="dark"] .create-post-subtitle,
html[data-theme="dark"] .profile-subtitle,
html[data-theme="dark"] .profile-email,
html[data-theme="dark"] .profile-section-help,
html[data-theme="dark"] .profile-edit-page-subtitle,
html[data-theme="dark"] .profile-edit-section-description,
html[data-theme="dark"] .profile-edit-preferences-help,
html[data-theme="dark"] .public-profile-handle,
html[data-theme="dark"] .public-profile-meta,
html[data-theme="dark"] .private-conversation-preview,
html[data-theme="dark"] .private-conversation-time,
html[data-theme="dark"] .private-message-meta,
html[data-theme="dark"] .notifications-menu-date,
html[data-theme="dark"] .notification-page-date,
html[data-theme="dark"] .publipost-sponsored-label,
html[data-theme="dark"] .publipost-footer-text,
html[data-theme="dark"] .auth-description,
html[data-theme="dark"] .auth-help-text,
html[data-theme="dark"] .legal-page-updated,
html[data-theme="dark"] .contact-page-description {
    color: var(--sh-muted) !important;
}


/* =========================================================
   FEED, COMENTARIOS Y BLOQUES SECUNDARIOS
   ========================================================= */

html[data-theme="dark"] .estado-comment-body,
html[data-theme="dark"] .feed-latest-comment,
html[data-theme="dark"] .feed-latest-comment-body,
html[data-theme="dark"] .post-comments-empty,
html[data-theme="dark"] .profile-empty-state,
html[data-theme="dark"] .profile-stat,
html[data-theme="dark"] .profile-edit-preference-option,
html[data-theme="dark"] .register-preference,
html[data-theme="dark"] .register-preference-content,
html[data-theme="dark"] .post-video-analysis,
html[data-theme="dark"] .post-upload-progress,
html[data-theme="dark"] .notification-page-item,
html[data-theme="dark"] .notifications-menu-item,
html[data-theme="dark"] .blocked-user-item {
    color: var(--sh-text) !important;
    background-color: var(--sh-surface-2) !important;
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] .estado-comment:target .estado-comment-body,
html[data-theme="dark"] .profile-edit-preference-option:has(.form-check-input:checked),
html[data-theme="dark"] .notification-page-item.is-unread,
html[data-theme="dark"] .notifications-menu-item.is-unread {
    background-color: rgba(181, 140, 255, .16) !important;
}

html[data-theme="dark"] .profile-locked-badge,
html[data-theme="dark"] .post-edited-badge,
html[data-theme="dark"] .profile-preference-badge {
    color: #e7e7eb !important;
    background-color: #30313a !important;
    border-color: #4a4c56 !important;
}

html[data-theme="dark"] .profile-divider,
html[data-theme="dark"] .profile-detail-row,
html[data-theme="dark"] .post-comment-form,
html[data-theme="dark"] .notifications-menu-header,
html[data-theme="dark"] .notifications-menu-footer,
html[data-theme="dark"] .notifications-menu-empty {
    border-color: var(--sh-border) !important;
}


/* =========================================================
   AVATARES E IMÁGENES
   ========================================================= */

html[data-theme="dark"] .feed-avatar,
html[data-theme="dark"] .profile-avatar,
html[data-theme="dark"] .profile-edit-avatar,
html[data-theme="dark"] .estado-comment-avatar,
html[data-theme="dark"] .user-menu-avatar,
html[data-theme="dark"] .user-dropdown-avatar,
html[data-theme="dark"] .blocked-user-avatar,
html[data-theme="dark"] .notification-page-avatar,
html[data-theme="dark"] .notifications-menu-avatar,
html[data-theme="dark"] .user-search-result-avatar {
    background-color: var(--sh-surface-3) !important;
    border-color: #51535f !important;
}

html[data-theme="dark"] .profile-avatar {
    border-color: var(--sh-surface) !important;
}

html[data-theme="dark"] .post-image-gallery,
html[data-theme="dark"] .post-image-gallery-item,
html[data-theme="dark"] .post-image-preview-item,
html[data-theme="dark"] .post-edit-existing-item,
html[data-theme="dark"] .private-message-media-preview-item {
    background-color: #24252b !important;
    border-color: var(--sh-border) !important;
}


/* =========================================================
   FORMULARIOS
   ========================================================= */

html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select,
html[data-theme="dark"] .auth-input,
html[data-theme="dark"] .auth-select,
html[data-theme="dark"] .create-post-textarea,
html[data-theme="dark"] .estado-comment-input,
html[data-theme="dark"] .user-search-input,
html[data-theme="dark"] .private-message-input {
    color: #ffffff !important;
    background-color: var(--sh-input) !important;
    border-color: #4a4c56 !important;
}

html[data-theme="dark"] .form-control::placeholder,
html[data-theme="dark"] .auth-input::placeholder,
html[data-theme="dark"] .create-post-textarea::placeholder,
html[data-theme="dark"] .estado-comment-input::placeholder,
html[data-theme="dark"] .user-search-input::placeholder,
html[data-theme="dark"] .private-message-input::placeholder,
html[data-theme="dark"] textarea::placeholder,
html[data-theme="dark"] input::placeholder {
    color: #989ba7 !important;
    opacity: 1;
}

html[data-theme="dark"] .form-control:focus,
html[data-theme="dark"] .form-select:focus,
html[data-theme="dark"] .auth-input:focus,
html[data-theme="dark"] .auth-select:focus,
html[data-theme="dark"] .create-post-textarea:focus,
html[data-theme="dark"] .estado-comment-input:focus,
html[data-theme="dark"] .user-search-input:focus,
html[data-theme="dark"] .private-message-input:focus {
    color: #ffffff !important;
    background-color: #18191e !important;
    border-color: var(--sh-primary) !important;
    box-shadow: 0 0 0 .2rem rgba(181, 140, 255, .18) !important;
}

html[data-theme="dark"] .form-control:disabled,
html[data-theme="dark"] .form-control[readonly],
html[data-theme="dark"] .form-select:disabled,
html[data-theme="dark"] .profile-edit-field .form-control:disabled {
    color: #aeb0b9 !important;
    background-color: #25262d !important;
    border-color: #444650 !important;
}

html[data-theme="dark"] .input-group-text {
    color: #e0e1e6 !important;
    background-color: #25262d !important;
    border-color: #4a4c56 !important;
}

html[data-theme="dark"] .form-check-input {
    border-color: #676a76;
    background-color: #26272e;
}

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


/* =========================================================
   BOTONES
   ========================================================= */

html[data-theme="dark"] .btn-outline-primary {
    --bs-btn-color: #c9acff;
    --bs-btn-border-color: #a879f5;
    --bs-btn-hover-color: #111216;
    --bs-btn-hover-bg: #c9acff;
    --bs-btn-hover-border-color: #c9acff;
    --bs-btn-active-color: #111216;
    --bs-btn-active-bg: #c9acff;
    --bs-btn-active-border-color: #c9acff;
}

html[data-theme="dark"] .btn-primary {
    --bs-btn-color: #111216;
    --bs-btn-bg: #b58cff;
    --bs-btn-border-color: #b58cff;
    --bs-btn-hover-color: #111216;
    --bs-btn-hover-bg: #c9acff;
    --bs-btn-hover-border-color: #c9acff;
}

html[data-theme="dark"] .btn-outline-secondary {
    --bs-btn-color: #e5e5e9;
    --bs-btn-border-color: #626570;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: #34353d;
    --bs-btn-hover-border-color: #777a86;
}

html[data-theme="dark"] .btn-light {
    --bs-btn-color: #f7f7fa;
    --bs-btn-bg: #2a2b32;
    --bs-btn-border-color: #484a54;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: #34353d;
    --bs-btn-hover-border-color: #5b5e69;
}

html[data-theme="dark"] .estado-action-button,
html[data-theme="dark"] .estado-comment-toggle,
html[data-theme="dark"] .estado-like-button,
html[data-theme="dark"] .estado-card-menu-button,
html[data-theme="dark"] .estado-comment-menu-button,
html[data-theme="dark"] .post-edit-button,
html[data-theme="dark"] .private-message-attach,
html[data-theme="dark"] .private-message-delete-button {
    color: #d7d8de !important;
}

html[data-theme="dark"] .estado-action-button:hover,
html[data-theme="dark"] .estado-comment-toggle:hover,
html[data-theme="dark"] .estado-comment-toggle[aria-expanded="true"],
html[data-theme="dark"] .estado-like-button:hover,
html[data-theme="dark"] .estado-card-menu-button:hover,
html[data-theme="dark"] .estado-card-menu-button:focus,
html[data-theme="dark"] .estado-comment-menu-button:hover,
html[data-theme="dark"] .estado-comment-menu-button:focus {
    color: #ffffff !important;
    background-color: #2d2e36 !important;
}


/* =========================================================
   BUSCADOR Y LISTADOS
   ========================================================= */

html[data-theme="dark"] .user-search-result,
html[data-theme="dark"] .private-conversation-item {
    color: var(--sh-text) !important;
    background-color: transparent !important;
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] .user-search-result:hover,
html[data-theme="dark"] .user-search-result:focus,
html[data-theme="dark"] .user-search-result.is-active,
html[data-theme="dark"] .private-conversation-item:hover,
html[data-theme="dark"] .private-conversation-item.is-active {
    color: #ffffff !important;
    background-color: var(--sh-surface-3) !important;
}


/* =========================================================
   NOTIFICACIONES
   ========================================================= */

html[data-theme="dark"] .notifications-menu,
html[data-theme="dark"] .notifications-dropdown {
    color: var(--sh-text) !important;
    background-color: #1c1d22 !important;
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] .notifications-menu-item:hover,
html[data-theme="dark"] .notification-page-item:hover {
    background-color: var(--sh-surface-3) !important;
}


/* =========================================================
   MENSAJERÍA PRIVADA
   ========================================================= */

html[data-theme="dark"] .private-messages-shell,
html[data-theme="dark"] .private-conversations,
html[data-theme="dark"] .private-conversations-header,
html[data-theme="dark"] .private-chat,
html[data-theme="dark"] .private-chat-header,
html[data-theme="dark"] .private-message-form-wrap,
html[data-theme="dark"] .private-empty,
html[data-theme="dark"] .private-no-conversations {
    color: var(--sh-text) !important;
    background-color: var(--sh-surface) !important;
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] .private-message-bubble {
    color: #f7f7fa !important;
    background-color: #2a2b32 !important;
    border-color: #484a54 !important;
}

html[data-theme="dark"] .private-message.is-own .private-message-bubble,
html[data-theme="dark"] .private-message-bubble.is-own {
    color: #ffffff !important;
    background-color: #60429b !important;
    border-color: #7653b7 !important;
}

html[data-theme="dark"] .private-message-form-wrap {
    box-shadow: 0 -8px 24px rgba(0, 0, 0, .24) !important;
}

html[data-theme="dark"] .private-message-upload-progress-track,
html[data-theme="dark"] .post-upload-progress .progress {
    background-color: #363741 !important;
}


/* =========================================================
   ESTADOS Y MENSAJES ESPECIALES
   ========================================================= */

html[data-theme="dark"] .estado-like-error,
html[data-theme="dark"] .load-more-message.is-error,
html[data-theme="dark"] .email-verification-icon.is-error,
html[data-theme="dark"] .post-not-found-icon,
html[data-theme="dark"] .user-not-found-icon {
    color: #ffd7dc !important;
    background-color: rgba(220, 53, 69, .18) !important;
    border-color: rgba(255, 123, 136, .35) !important;
}

html[data-theme="dark"] .profile-email-status.is-pending {
    color: #ffe8a3 !important;
    background-color: rgba(255, 193, 7, .14) !important;
    border-color: rgba(255, 211, 106, .35) !important;
}

html[data-theme="dark"] .verification-pending-email {
    color: #e9ddff !important;
    background-color: rgba(181, 140, 255, .14) !important;
    border-color: rgba(181, 140, 255, .30) !important;
}


/* =========================================================
   PIE DE PÁGINA
   ========================================================= */

html[data-theme="dark"] .site-footer {
    color: var(--sh-muted) !important;
    background-color: #15161a !important;
    border-color: var(--sh-border-soft) !important;
}

html[data-theme="dark"] .site-footer-brand {
    color: #ffffff !important;
}

html[data-theme="dark"] .site-footer-brand img {
    filter: brightness(0) invert(1);
    opacity: .94;
}

html[data-theme="dark"] .site-footer-nav a {
    color: #c1c3cc !important;
}

html[data-theme="dark"] .site-footer-nav a:hover {
    color: #d6c1ff !important;
}


/* =========================================================
   TABLAS / ACORDEONES / LISTAS
   ========================================================= */

html[data-theme="dark"] .table {
    --bs-table-color: #f1f1f4;
    --bs-table-bg: var(--sh-surface);
    --bs-table-border-color: var(--sh-border);
    --bs-table-striped-color: #f1f1f4;
    --bs-table-striped-bg: rgba(255, 255, 255, .035);
    --bs-table-hover-color: #ffffff;
    --bs-table-hover-bg: rgba(181, 140, 255, .10);
}

html[data-theme="dark"] .list-group-item,
html[data-theme="dark"] .accordion-item,
html[data-theme="dark"] .accordion-button {
    color: var(--sh-text) !important;
    background-color: var(--sh-surface) !important;
    border-color: var(--sh-border) !important;
}

html[data-theme="dark"] .accordion-button:not(.collapsed) {
    color: #ffffff !important;
    background-color: rgba(181, 140, 255, .16) !important;
}

html[data-theme="dark"] .accordion-button::after {
    filter: invert(1) grayscale(100%) brightness(190%);
}


/* =========================================================
   SELECCIÓN / CÓDIGO
   ========================================================= */

html[data-theme="dark"] code,
html[data-theme="dark"] pre {
    color: #f3d7ff;
    background-color: #17181d;
}

html[data-theme="dark"] ::selection {
    color: #ffffff;
    background: rgba(111, 66, 193, .78);
}


/* =========================================================
   MOVIMIENTO REDUCIDO
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
    .socialhot-theme-switch,
    .socialhot-theme-menu-row {
        transition: none;
    }
}
