/* ============================================
   DESIRE INTERDIT — Custom CSS
   Reskin dark luxury des pages internes WpRentals
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=Jost:wght@300;400;500;600&display=swap');

:root {
    --burgundy: #4a0e1f;
    --burgundy-light: #631429;
    --black: #1a1a1a;
    --darker: #0d0d0d;
    --darkest: #080808;
    --cream: #f5f0e8;
    --gold: #c9a84c;
    --gold-dark: #b89842;
}

/* GLOBAL */
body {
    background-color: var(--black) !important;
    color: var(--cream) !important;
    font-family: 'Jost', sans-serif !important;
}

body::-webkit-scrollbar { width: 8px; }
body::-webkit-scrollbar-track { background: var(--black); }
body::-webkit-scrollbar-thumb { background: var(--burgundy); border-radius: 4px; }
body::-webkit-scrollbar-thumb:hover { background: var(--gold); }

h1, h2, h3, h4, h5 {
    font-family: 'Playfair Display', serif !important;
    color: var(--cream) !important;
}

/* HEADER */
header, .header-main, #header, #masthead {
    background: rgba(0,0,0,0.9) !important;
    backdrop-filter: blur(8px) !important;
    border-bottom: 1px solid rgba(201,168,76,0.15) !important;
}

nav a, .nav-menu a, #main-nav a, .main-navigation a {
    color: var(--cream) !important;
    font-family: 'Jost', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    font-size: 0.8rem !important;
    transition: color 0.3s !important;
}
nav a:hover, .nav-menu a:hover { color: var(--gold) !important; }

/* BOUTONS */
.button, button, input[type="submit"], .btn,
.wprentals_search_submit, .booking_form_submit {
    background: var(--gold) !important;
    color: white !important;
    border: none !important;
    border-radius: 9999px !important;
    font-family: 'Jost', sans-serif !important;
    font-weight: 700 !important;
    transition: background 0.3s !important;
}
.button:hover, button:hover, input[type="submit"]:hover {
    background: var(--gold-dark) !important;
}

/* INPUTS */
input[type="text"], input[type="email"],
input[type="search"], input[type="number"],
input[type="date"], select, textarea {
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: white !important;
    border-radius: 8px !important;
    font-family: 'Jost', sans-serif !important;
}
input::placeholder, textarea::placeholder {
    color: rgba(255,255,255,0.4) !important;
}

/* SECTIONS */
.section, section, .content-area,
.page-content, .site-content, #content,
.entry-content, .page-wrapper {
    background: var(--black) !important;
}

/* CARDS LISTINGS */
.property_listing, .property-item,
.listing-item, .wprentals-loop-property {
    background: #111111 !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    transition: transform 0.4s, border-color 0.4s !important;
}
.property_listing:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(201,168,76,0.3) !important;
}

.property_listing h3 a,
.property_listing h2 a,
.property_listing .listing-title a {
    color: var(--cream) !important;
    font-family: 'Playfair Display', serif !important;
    background: transparent !important;
    text-decoration: none !important;
}
.property_listing h3 a:hover { color: var(--gold) !important; }

.property_listing p, .property_listing span {
    color: rgba(245,240,232,0.6) !important;
    background: transparent !important;
}

.property_listing .listing-unit-price,
.listing-price, .property-price {
    color: var(--gold) !important;
    font-weight: 700 !important;
}

/* BADGE FEATURED */
.featured_label, [class*="featured"] {
    background: var(--burgundy) !important;
    color: var(--gold) !important;
    border-color: var(--burgundy) !important;
}

/* WISHLIST/COEUR */
.save_property, .heart-icon {
    color: var(--gold) !important;
    background: rgba(74,14,31,0.8) !important;
    border-radius: 50% !important;
}

/* ÉTOILES */
.star-rating, [class*="star"] { color: var(--gold) !important; }

/* CATÉGORIES */
[class*="category"], [class*="rental-type"] {
    background: var(--burgundy) !important;
    border-radius: 12px !important;
}
[class*="category"] a { color: var(--gold) !important; }

/* TÉMOIGNAGES */
[class*="testimonial"], [class*="review"] {
    background: #111111 !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    border-left: 3px solid var(--gold) !important;
    border-radius: 16px !important;
}

/* PAGE DETAIL PROPRIÉTÉ */
.property-detail, .single-property,
.property-page, .listing-detail {
    background: var(--black) !important;
}
.property-detail h1, .single-property h1 {
    font-family: 'Playfair Display', serif !important;
    color: var(--cream) !important;
}

/* BOOKING FORM */
.booking-form, .reservation-form,
.wprentals-booking-form {
    background: #111111 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 16px !important;
    padding: 2rem !important;
}

/* DASHBOARD */
.dashboard, .user-dashboard,
.wprentals-dashboard {
    background: var(--black) !important;
}
.dashboard-menu a, .dashboard-nav a {
    color: rgba(245,240,232,0.7) !important;
    transition: color 0.3s !important;
}
.dashboard-menu a:hover, .dashboard-nav a.active {
    color: var(--gold) !important;
}

/* FOOTER */
footer, #footer, .site-footer {
    background: var(--darkest) !important;
    border-top: 1px solid rgba(201,168,76,0.15) !important;
    color: rgba(245,240,232,0.4) !important;
}
footer a, #footer a {
    color: rgba(245,240,232,0.55) !important;
}
footer a:hover, #footer a:hover { color: var(--gold) !important; }

/* PAGINATION */
.pagination a, .page-numbers {
    background: #111111 !important;
    color: var(--cream) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
}
.pagination a:hover, .page-numbers.current {
    background: var(--burgundy) !important;
    color: var(--gold) !important;
}
