/**
 * Dark Mode Overrides
 * Catches everything that theme.json can't reach:
 * - WP core hardcoded colors
 * - Legacy utility classes
 * - Navigation responsive menus
 * - Form inputs
 * - Comments
 * - Search
 * - Widgets/plugin output
 * - Admin bar adjustments
 */

/* =============================================
   GLOBAL FALLBACKS
   ============================================= */

/* Force dark background on html/body in case anything bypasses theme.json */
html, body {
    background-color: #1B1B1B !important;
    color: #CBCBCB;
}

/* =============================================
   WP CORE LEGACY COLOR CLASSES
   ============================================= */

/* Override all legacy "has-*-background-color" that are light */
:root .has-white-background-color,
:root .has-pale-pink-background-color,
:root .has-pale-cyan-blue-background-color,
:root .has-light-green-cyan-background-color,
:root .has-luminous-vivid-amber-background-color,
:root .has-luminous-vivid-orange-background-color,
:root .has-very-light-gray-background-color {
    background-color: #353535 !important;
}

:root .has-white-color,
:root .has-very-light-gray-color {
    color: #F0F0F0 !important;
}

:root .has-black-background-color,
:root .has-very-dark-gray-background-color {
    background-color: #1B1B1B !important;
}

:root .has-black-color,
:root .has-very-dark-gray-color {
    color: #F0F0F0 !important;
}

/* =============================================
   NAVIGATION — RESPONSIVE / MOBILE OVERLAY
   ============================================= */

/* The mobile nav overlay hardcodes white bg and black text */
.wp-block-navigation__responsive-container.is-menu-open {
    background-color: #1B1B1B !important;
    color: #F0F0F0 !important;
}

.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open {
    color: #F0F0F0 !important;
}

.wp-block-navigation:not(.has-text-color) .wp-block-navigation__submenu-container {
    color: #F0F0F0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    background-color: #1B1B1B;
    color: #F0F0F0;
}

/* Submenu dropdowns */
.wp-block-navigation .wp-block-navigation__submenu-container {
    background-color: #252525 !important;
    border-color: #353535 !important;
    color: #F0F0F0 !important;
}

.wp-block-navigation .wp-block-navigation-item__content {
    color: inherit;
}

/* Hamburger menu icon */
.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg {
    fill: #F0F0F0;
}

/* =============================================
   FORM INPUTS — GLOBAL
   ============================================= */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="color"],
textarea,
select {
    background-color: #252525 !important;
    color: #F0F0F0 !important;
    border-color: #444444 !important;
}

input::placeholder,
textarea::placeholder {
    color: #888888 !important;
}

/* Focus states */
input:focus,
textarea:focus,
select:focus {
    border-color: #D1D0EA !important;
    outline-color: #D1D0EA;
}

/* =============================================
   SEARCH BLOCK
   ============================================= */

.wp-block-search__input {
    background-color: #252525 !important;
    color: #F0F0F0 !important;
    border-color: #444444 !important;
}

.wp-block-search__button {
    background-color: #F0F0F0 !important;
    color: #1B1B1B !important;
}

/* =============================================
   COMMENTS
   ============================================= */

.comment-respond,
.comments-area {
    color: #CBCBCB;
}

.comment-form label {
    color: #CBCBCB;
}

.comment-form .submit {
    background-color: #F0F0F0;
    color: #1B1B1B;
}

.comment-list .comment-body {
    border-color: #353535;
}

/* =============================================
   PAGINATION
   ============================================= */

.page-numbers {
    color: #F0F0F0;
}

.page-numbers.current {
    background-color: #F0F0F0;
    color: #1B1B1B;
}

/* =============================================
   WP BLOCK COVER (ensure text is readable)
   ============================================= */

.wp-block-cover .wp-block-cover__inner-container {
    color: #F0F0F0;
}

/* =============================================
   TABLE BLOCKS
   ============================================= */

.wp-block-table table {
    border-color: #444444;
}

.wp-block-table td,
.wp-block-table th {
    border-color: #444444;
}

.wp-block-table thead {
    border-bottom-color: #555555;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #252525;
}

/* =============================================
   CODE / PRE BLOCKS
   ============================================= */

pre, code, kbd, samp {
    background-color: #252525;
    color: #D1D0EA;
}

/* =============================================
   BLOCKQUOTE
   ============================================= */

blockquote {
    border-color: #786D0A;
}

/* =============================================
   HR / SEPARATOR
   ============================================= */

hr,
.wp-block-separator {
    border-color: #353535;
    color: #353535;
}

/* =============================================
   FIGURE / FIGCAPTION
   ============================================= */

figcaption {
    color: #888888;
}

/* =============================================
   CALENDAR WIDGET
   ============================================= */

.wp-block-calendar table caption,
.wp-block-calendar table th,
.wp-block-calendar table td {
    color: #F0F0F0;
}

.wp-block-calendar table {
    background-color: #252525;
    border-color: #353535;
}

.wp-block-calendar nav a {
    color: #D1D0EA;
}

/* =============================================
   RSS / LATEST POSTS WIDGETS
   ============================================= */

.wp-block-rss__item-title a,
.wp-block-latest-posts__post-title a {
    color: #F0F0F0;
}

.wp-block-rss__item-excerpt,
.wp-block-rss__item-full-content,
.wp-block-latest-posts__post-excerpt,
.wp-block-latest-posts__post-date {
    color: #888888;
}

/* =============================================
   FOOTER (catch any light footer patterns)
   ============================================= */

footer,
.site-footer {
    background-color: #1B1B1B;
    color: #CBCBCB;
}

/* =============================================
   WP ADMIN BAR (logged-in user, keep readable)
   ============================================= */

#wpadminbar {
    opacity: 1;
}

/* =============================================
   SELECTION HIGHLIGHT
   ============================================= */

::selection {
    background-color: #442369;
    color: #F0F0F0;
}

::-moz-selection {
    background-color: #442369;
    color: #F0F0F0;
}

/* =============================================
   SCROLLBAR (subtle dark styling)
   ============================================= */

::-webkit-scrollbar {
    width: 10px;
    background-color: #1B1B1B;
}

::-webkit-scrollbar-thumb {
    background-color: #444444;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background-color: #555555;
}

/* Firefox scrollbar */
* {
    scrollbar-color: #444444 #1B1B1B;
    scrollbar-width: thin;
}

/* =============================================
   PLUGIN SAFETY NET
   Any plugin that outputs light backgrounds
   gets caught by these broad selectors
   ============================================= */

.widget {
    color: #CBCBCB;
}

.widget a {
    color: #D1D0EA;
}

/* =============================================
   404 / SEARCH RESULTS
   ============================================= */

.no-results,
.not-found {
    color: #CBCBCB;
}

/* =============================================
   IMAGE BORDERS (subtle on dark)
   ============================================= */

.wp-block-image img {
    border-color: #353535;
}

/* =============================================
   BRAND LOGOS — drop shadow for white-on-transparent
   Gives all brand logos a subtle dark glow so white
   logos stay visible without needing a filled card.
   ============================================= */

.wp-block-group .wp-block-image img[style*="max-height:80px"] {
    filter: drop-shadow(0 0 6px rgba(200, 200, 200, 0.3));
}

/* =============================================
   DETAILS/ACCORDION BLOCK
   ============================================= */

details {
    border-color: #353535;
    color: #CBCBCB;
}

details summary {
    color: #F0F0F0;
}
