/*
Theme Name: Ombra Intérieurs
Theme URI: https://ombrainterieur.com/
Description: Thème enfant Shoptimizer — Ombra Intérieurs, mobilier haut de gamme. DA « Soir premium » : dark mode intégral charbon / ivoire / laiton.
Author: Ombra Intérieurs
Template: shoptimizer
Version: 1.0.0
Text Domain: ombra-child
*/

/* ═══════════════════════════════════════════════════════════════
   OMBRA INTÉRIEURS — DA « Soir premium »
   Charbon #131313 · Surface #1C1A17 · Ivoire #F3EEE6
   Secondaire #A79E92 · Laiton #D9A441 · Bordure #2A2825
   Outfit (titres) + Manrope (texte)
   ═══════════════════════════════════════════════════════════════ */

:root{
    --ob-bg:#131313;
    --ob-surface:#1C1A17;
    --ob-surface2:#211E1A;
    --ob-ink:#F3EEE6;
    --ob-mut:#A79E92;
    --ob-brass:#D9A441;
    --ob-brass2:#E8B95C;
    --ob-line:#2A2825;
    --ob-radius:8px;
    --ob-glow:0 0 0 1px rgba(217,164,65,.55), 0 14px 40px -14px rgba(217,164,65,.28);
}

/* ── Base globale ─────────────────────────────────────────────── */
html{background:var(--ob-bg);}
body,
body.woocommerce,
.site,
.site-content,
#content,
.col-full{
    background:var(--ob-bg) !important;
    color:var(--ob-ink);
    font-family:'Manrope',system-ui,sans-serif;
}
h1,h2,h3,h4,h5,h6,
.woocommerce-loop-product__title,
.product_title{
    font-family:'Outfit',sans-serif !important;
    font-weight:600;
    color:var(--ob-ink);
}
p,li,td,th,dd,dt,span,label,legend,figcaption{color:inherit;}
body a{color:var(--ob-ink);}
body a:hover{color:var(--ob-brass);}
.site-content a:not(.button):not(.ob-btn){transition:color .2s;}
hr{border-color:var(--ob-line);}

::selection{background:rgba(217,164,65,.35);color:var(--ob-ink);}

/* barres de défilement discrètes */
*{scrollbar-color:#3A362F var(--ob-bg);}

/* ── Boutons ──────────────────────────────────────────────────── */
body .button,
body button:not(.ob-plain),
body input[type=submit],
body input[type=button],
body .added_to_cart,
body .single_add_to_cart_button,
body .checkout-button,
body .wc-block-components-button{
    background:var(--ob-brass) !important;
    color:#131313 !important;
    border:none !important;
    border-radius:var(--ob-radius) !important;
    font-family:'Outfit',sans-serif !important;
    font-weight:600 !important;
    letter-spacing:.01em;
    text-transform:none;
    transition:background .2s, transform .2s, box-shadow .2s;
}
body .button:hover,
body input[type=submit]:hover,
body .single_add_to_cart_button:hover,
body .checkout-button:hover{
    background:var(--ob-brass2) !important;
    color:#131313 !important;
    transform:translateY(-1px);
    box-shadow:0 10px 26px -12px rgba(217,164,65,.55);
}

/* ── Formulaires ──────────────────────────────────────────────── */
body input[type=text],
body input[type=email],
body input[type=tel],
body input[type=password],
body input[type=search],
body input[type=number],
body input[type=url],
body select,
body textarea,
body .select2-container--default .select2-selection--single,
body .qty{
    background:var(--ob-surface) !important;
    color:var(--ob-ink) !important;
    border:1px solid var(--ob-line) !important;
    border-radius:var(--ob-radius) !important;
}
body input:focus,body select:focus,body textarea:focus{
    border-color:var(--ob-brass) !important;
    box-shadow:0 0 0 3px rgba(217,164,65,.18) !important;
    outline:none;
}
body ::placeholder{color:var(--ob-mut);opacity:.7;}
.select2-dropdown,.select2-container--default .select2-results>.select2-results__options{
    background:var(--ob-surface);color:var(--ob-ink);border-color:var(--ob-line);
}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--ob-brass);color:#131313;}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--ob-ink);}

/* ── Fil d'Ariane / titres d'archive ─────────────────────────── */
.woocommerce-breadcrumb,
.woocommerce-breadcrumb a,
.shoptimizer-breadcrumb,
.shoptimizer-breadcrumb a{
    background:transparent !important;
    color:var(--ob-mut) !important;
    font-family:'Manrope',sans-serif;
}
.woocommerce-breadcrumb a:hover{color:var(--ob-brass) !important;}
.woocommerce-products-header,
.shoptimizer-archive-header{
    background:var(--ob-surface) !important;
    border-bottom:1px solid var(--ob-line);
}
.woocommerce-products-header__title,
.page-title{color:var(--ob-ink) !important;}
.term-description,.archive-description{color:var(--ob-mut);}

/* ── Cartes produits (boucles boutique / catégorie / related) ── */
ul.products{background:transparent;}
ul.products li.product,
.products .product,
.product-grid-item{
    background:var(--ob-surface) !important;
    border:1px solid var(--ob-line) !important;
    border-radius:var(--ob-radius);
    overflow:hidden;
    transition:border-color .25s, box-shadow .25s, transform .25s;
}
ul.products li.product:hover{
    border-color:rgba(217,164,65,.6) !important;
    box-shadow:var(--ob-glow);
    transform:translateY(-3px);
}
ul.products li.product .woocommerce-loop-product__link{color:var(--ob-ink);}
ul.products li.product img{
    background:#fff;
    border-radius:0;
    display:block;
}
ul.products li.product .woocommerce-loop-product__title{
    color:var(--ob-ink) !important;
    font-size:1rem;
    padding:14px 16px 2px;
}
ul.products li.product .price,
.price{
    color:var(--ob-brass) !important;
    font-family:'Outfit',sans-serif;
    font-weight:600;
}
ul.products li.product .price{padding:0 16px 14px;}
ul.products li.product .price del{color:var(--ob-mut) !important;opacity:.8;}
ul.products li.product .price ins{color:var(--ob-brass) !important;background:none;text-decoration:none;}
ul.products li.product .button{margin:0 16px 16px;}
.woocommerce-loop-category__title,
ul.products li.product-category h2{color:var(--ob-ink) !important;background:var(--ob-surface);}

/* badge promo */
span.onsale{
    background:var(--ob-brass) !important;
    color:#131313 !important;
    font-family:'Outfit',sans-serif;font-weight:700;
    border-radius:999px;
    padding:4px 12px;
    min-height:0;min-width:0;line-height:1.4;
}

/* compteur de résultats / tri */
.woocommerce-result-count{color:var(--ob-mut);}
.woocommerce-ordering select{background:var(--ob-surface);color:var(--ob-ink);}

/* pagination */
.woocommerce-pagination ul.page-numbers{border:none;}
.woocommerce-pagination ul.page-numbers li{border-color:var(--ob-line) !important;}
.woocommerce-pagination .page-numbers li .page-numbers{
    background:var(--ob-surface);color:var(--ob-ink);
    border:1px solid var(--ob-line);border-radius:6px;margin:0 3px;
}
.woocommerce-pagination .page-numbers li .page-numbers.current,
.woocommerce-pagination .page-numbers li .page-numbers:hover{
    background:var(--ob-brass);color:#131313;border-color:var(--ob-brass);
}

/* sidebar / widgets éventuels */
.widget-area,.widget,.sidebar{background:transparent;color:var(--ob-ink);}
.widget-title{color:var(--ob-ink);}
.widget a{color:var(--ob-mut);}
.widget a:hover{color:var(--ob-brass);}

/* ── Fiche produit ────────────────────────────────────────────── */
.single-product div.product{background:transparent;}
.single-product div.product .product_title{color:var(--ob-ink);font-weight:600;}
.single-product div.product p.price,
.single-product div.product span.price{color:var(--ob-brass) !important;font-size:1.5em;}
.single-product div.product p.price del{color:var(--ob-mut) !important;}
.single-product div.product p.price ins{background:none;color:var(--ob-brass) !important;}
.single-product div.product .woocommerce-product-details__short-description{color:var(--ob-mut);}
.single-product div.product .woocommerce-product-gallery{
    background:#fff;
    border:1px solid var(--ob-line);
    border-radius:var(--ob-radius);
    overflow:hidden;
}
.single-product div.product .woocommerce-product-gallery .flex-viewport{border-radius:0;}
.woocommerce-product-gallery__trigger{background:#fff !important;}
.single-product .product_meta{color:var(--ob-mut);border-top:1px solid var(--ob-line);padding-top:14px;}
.single-product .product_meta a{color:var(--ob-brass);}
.single-product form.cart{border-color:var(--ob-line);}
.single-product form.cart .quantity .qty{background:var(--ob-surface);color:var(--ob-ink);}

/* onglets */
.woocommerce-tabs{background:transparent;}
.woocommerce-tabs ul.tabs,
.woocommerce-tabs ul.wc-tabs{border-bottom:1px solid var(--ob-line) !important;background:transparent;}
.woocommerce-tabs ul.tabs li,
.woocommerce-tabs ul.wc-tabs li{
    background:transparent !important;border:none !important;
}
.woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.wc-tabs li a{color:var(--ob-mut) !important;font-family:'Outfit',sans-serif;}
.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.wc-tabs li.active a{color:var(--ob-brass) !important;border-bottom:2px solid var(--ob-brass);}
.woocommerce-Tabs-panel{color:var(--ob-mut);background:transparent;}
.woocommerce-Tabs-panel h2,.woocommerce-Tabs-panel h3{color:var(--ob-ink);}
table.woocommerce-product-attributes,
table.shop_attributes{border-color:var(--ob-line);}
table.woocommerce-product-attributes th,
table.woocommerce-product-attributes td,
table.shop_attributes th,table.shop_attributes td{
    background:var(--ob-surface) !important;color:var(--ob-ink) !important;border-color:var(--ob-line) !important;
}

/* avis produits (réels uniquement) */
#reviews,.woocommerce-Reviews{color:var(--ob-mut);}
#reviews .comment_container,.commentlist li .comment_container{
    background:var(--ob-surface);border:1px solid var(--ob-line);border-radius:var(--ob-radius);
}
.star-rating span::before,.star-rating::before{color:var(--ob-brass);}
.comment-form-rating .stars a{color:var(--ob-brass);}
#review_form #respond{background:var(--ob-surface);border:1px solid var(--ob-line);border-radius:var(--ob-radius);}

.related.products>h2, .upsells.products>h2{color:var(--ob-ink);}

/* barre sticky mobile ajout panier (Shoptimizer / CommerceKit) */
.shoptimizer-sticky-add-to-cart,
.sticky-add-to-cart,
.commercekit-atc-sticky,
.cg-sticky-cart{
    background:var(--ob-surface) !important;
    border-top:1px solid var(--ob-line) !important;
    color:var(--ob-ink) !important;
}
.shoptimizer-sticky-add-to-cart .price{color:var(--ob-brass) !important;}

/* ── Notices Woo ──────────────────────────────────────────────── */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.woocommerce-notice,.wc-block-components-notice-banner{
    background:var(--ob-surface) !important;
    color:var(--ob-ink) !important;
    border:1px solid var(--ob-line) !important;
    border-left:3px solid var(--ob-brass) !important;
    border-radius:var(--ob-radius);
}
.woocommerce-message a,.woocommerce-info a{color:var(--ob-brass) !important;}
.woocommerce-error{border-left-color:#C25454 !important;}

/* ── Panier ───────────────────────────────────────────────────── */
.woocommerce-cart-form,
.woocommerce table.shop_table{
    background:var(--ob-surface) !important;
    border:1px solid var(--ob-line) !important;
    border-radius:var(--ob-radius);
    color:var(--ob-ink);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
    border-color:var(--ob-line) !important;
    background:transparent !important;
    color:var(--ob-ink) !important;
}
.woocommerce table.shop_table .product-name a{color:var(--ob-ink);}
.woocommerce table.shop_table .product-name a:hover{color:var(--ob-brass);}
.woocommerce table.shop_table td.product-thumbnail img{background:#fff;border-radius:6px;border:1px solid var(--ob-line);}
.woocommerce .cart_totals,
.cart-collaterals .cart_totals{
    background:var(--ob-surface) !important;
    border:1px solid var(--ob-line);
    border-radius:var(--ob-radius);
    padding:10px 18px 18px;
    color:var(--ob-ink);
}
.cart_totals h2{color:var(--ob-ink);}
.woocommerce .cart_totals .amount,
.woocommerce td.product-subtotal .amount{color:var(--ob-brass);font-weight:700;}
.woocommerce a.remove{color:var(--ob-mut) !important;}
.woocommerce a.remove:hover{color:#fff !important;background:#C25454 !important;}
.coupon .input-text{min-width:160px;}
.cross-sells>h2{color:var(--ob-ink);}
.wc-proceed-to-checkout .checkout-button{font-size:1.05em;}
.cart-empty,.return-to-shop{color:var(--ob-ink);}

/* ── Checkout (habillage visuel uniquement) ───────────────────── */
.woocommerce-checkout #payment,
#payment{
    background:var(--ob-surface) !important;
    border:1px solid var(--ob-line) !important;
    border-radius:var(--ob-radius);
    color:var(--ob-ink);
}
#payment div.payment_box,
.woocommerce-checkout #payment div.payment_box{
    background:var(--ob-surface2) !important;
    color:var(--ob-mut) !important;
}
#payment div.payment_box::before{border-bottom-color:var(--ob-surface2) !important;}
#payment ul.payment_methods{border-color:var(--ob-line) !important;}
#payment ul.payment_methods li{color:var(--ob-ink);}
.woocommerce-checkout-review-order-table{background:var(--ob-surface) !important;}
.woocommerce form .form-row label{color:var(--ob-mut);}
.woocommerce-billing-fields h3,
#order_review_heading,
.woocommerce-additional-fields h3{color:var(--ob-ink);}
.checkout.woocommerce-checkout{color:var(--ob-ink);}

/* ── Mon compte ───────────────────────────────────────────────── */
.woocommerce-MyAccount-navigation ul{border-color:var(--ob-line);}
.woocommerce-MyAccount-navigation ul li{border-color:var(--ob-line) !important;}
.woocommerce-MyAccount-navigation ul li a{color:var(--ob-mut);}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover{color:var(--ob-brass);}
.woocommerce-MyAccount-content{color:var(--ob-ink);}
.woocommerce-form-login,.woocommerce-form-register{
    background:var(--ob-surface) !important;border:1px solid var(--ob-line) !important;border-radius:var(--ob-radius);
}
.u-columns h2,.woocommerce-account h2{color:var(--ob-ink);}

/* ── Pages simples (mentions, CGV, etc.) ─────────────────────── */
.page .entry-content,
.page .entry-header,
.hentry{background:transparent;color:var(--ob-ink);}
.page .entry-content{color:#D8D2C8;}
.page .entry-content h2,
.page .entry-content h3,
.page .entry-content h4{color:var(--ob-ink);margin-top:1.6em;}
.page .entry-content a{color:var(--ob-brass);}
.page .entry-content hr{border:none;border-top:1px solid var(--ob-line);margin:26px 0;}
.page .entry-content table th,.page .entry-content table td{border-color:var(--ob-line);}
.entry-title{color:var(--ob-ink);}

/* ── Archives produits : pleine largeur (plus de colonne sidebar fantôme) ── */
.archive.woocommerce #secondary,
.post-type-archive-product #secondary,
.archive.woocommerce .widget-area,
.post-type-archive-product .widget-area{display:none !important;}
.archive.woocommerce .content-area,
.post-type-archive-product .content-area,
body.left-woocommerce-sidebar.archive .content-area,
body.right-woocommerce-sidebar.archive .content-area{
    width:100% !important;
    float:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
}

/* ── Divers Shoptimizer ───────────────────────────────────────── */
.shoptimizer-loading,.loader{background:var(--ob-bg);}
.site-info{display:none;}
mark{background:rgba(217,164,65,.25);color:var(--ob-ink);}

/* ── Fix police des contrôles de formulaire (select tri, inputs) ── */
input, select, textarea, button, .woocommerce-ordering select {
  font-family: "Manrope", "Outfit", system-ui, sans-serif;
}

/* ══ Fiche produit — description stable (sans JS) + lisible sur fond sombre ══ */
.woocommerce-tabs ul.wc-tabs { display: none !important; }
.woocommerce-tabs .woocommerce-Tabs-panel {
  display: block !important; width: 100% !important; max-width: 100% !important;
  float: none !important; opacity: 1 !important; padding: 24px 0 8px !important;
}
.woocommerce-Tabs-panel--description { color: #CFC7BB !important; font-size: 16px; line-height: 1.75; }
.woocommerce-Tabs-panel--description p,
.woocommerce-Tabs-panel--description li,
.woocommerce-Tabs-panel--description td,
.woocommerce-Tabs-panel--description th,
.woocommerce-Tabs-panel--description dd,
.woocommerce-Tabs-panel--description dt { color: #CFC7BB !important; font-size: 16px; }
.woocommerce-Tabs-panel--description h1, .woocommerce-Tabs-panel--description h2,
.woocommerce-Tabs-panel--description h3, .woocommerce-Tabs-panel--description h4,
.woocommerce-Tabs-panel--description strong, .woocommerce-Tabs-panel--description b { color: #F3EEE6 !important; }
.woocommerce-Tabs-panel--description a { color: #D9A441 !important; }
.woocommerce-Tabs-panel--description hr { border: 0; border-top: 1px solid #2A2825; margin: 28px 0; }
.woocommerce-Tabs-panel--description table { border-color: #2A2825; }

/* ══ Fiche produit — sections parent en blanc → fond sombre Ombra ══ */
section.related-wrapper, .related-wrapper,
.woocommerce-tabs, .woocommerce-tabs.wc-tabs-wrapper,
.product-details-wrapper { background: transparent !important; }
.woocommerce-tabs.wc-tabs-wrapper { border-top-color: #2A2825 !important; }
.related.products > h2 { color: #F3EEE6 !important; }
.product_meta, .product_meta span { color: #A79E92 !important; }
.product_meta a { color: #D9A441 !important; }

/* ══ Mini-panier latéral (drawer Shoptimizer) en DA sombre ══ */
.shoptimizer-mini-cart-wrap { background: #1C1A17 !important; color: #F3EEE6 !important; }
.shoptimizer-mini-cart-wrap .cart-drawer-heading,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart-item,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart-item a,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart__total,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart__empty-message { color: #F3EEE6 !important; }
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart-item { border-color: #2A2825 !important; }
.shoptimizer-mini-cart-wrap .woocommerce-Price-amount { color: #D9A441 !important; }

/* ══ Encart réassurance fiche produit — DA Soir premium ══ */
.ob-reassure { margin-top: 30px; background: #1C1A17; border: 1px solid #2A2825; border-radius: 8px; overflow: hidden; }
.ob-reassure__head { padding: 13px 20px; border-bottom: 1px solid #2A2825; font-size: 12px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: #D9A441; }
.ob-reassure__item { display: flex; gap: 14px; align-items: flex-start; padding: 15px 20px; border-bottom: 1px solid #2A2825; }
.ob-reassure__item:last-child { border-bottom: 0; }
.ob-reassure__item svg { flex: 0 0 22px; width: 22px; height: 22px; color: #D9A441; margin-top: 2px; }
.ob-reassure__item strong { display: block; font-family: 'Outfit', sans-serif; font-weight: 600; font-size: 15px; color: #F3EEE6 !important; margin-bottom: 2px; }
.ob-reassure__item span { font-size: 13.5px; line-height: 1.5; color: #A79E92 !important; }
