/**
 * WooCommerce — Design Sara Beaulac
 * Couleurs : Noir #000 | Blanc #fff | Bleu #b0d7ec
 * Police : Times New Roman
 */

:root {
  --black:  #000000;
  --white:  #ffffff;
  --blue:   #b0d7ec;
  --grey:   #888888;
  --line:   rgba(255,255,255,0.12);
  --font:   'Times New Roman', Times, serif;
}

/* ══ BASE ══════════════════════════════════════════ */
body.woocommerce,
body.woocommerce-page,
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account {
  background: var(--black) !important;
  color: var(--white) !important;
  font-family: var(--font) !important;
}

.woocommerce, .woocommerce-page { font-family: var(--font); }

/* ══ TITRES ═════════════════════════════════════════ */
.woocommerce h1, .woocommerce h2, .woocommerce h3,
.woocommerce-page h1, .woocommerce-page h2, .woocommerce-page h3 {
  color: var(--white);
  font-family: var(--font);
  font-weight: 400;
}

/* ══ BOUTONS ════════════════════════════════════════ */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  background: var(--blue) !important;
  color: #000 !important;
  font-family: var(--font) !important;
  font-size: .8rem !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 14px 28px !important;
  transition: background .25s, transform .2s !important;
  cursor: pointer;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  background: #7ab8d8 !important;
  color: #000 !important;
  transform: translateY(-1px);
}

/* Bouton désactivé */
.woocommerce .button:disabled,
.woocommerce .button.disabled {
  background: rgba(176,215,236,.3) !important;
  color: rgba(0,0,0,.5) !important;
  cursor: not-allowed;
}

/* ══ CHAMPS DE FORMULAIRE ════════════════════════════ */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="number"],
.woocommerce input[type="password"],
.woocommerce textarea,
.woocommerce select {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid var(--line) !important;
  color: var(--white) !important;
  font-family: var(--font) !important;
  font-size: .9rem !important;
  padding: 12px 16px !important;
  border-radius: 0 !important;
  outline: none !important;
  transition: border-color .25s !important;
  width: 100%;
}

.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
  border-color: var(--blue) !important;
  background: rgba(176,215,236,.05) !important;
}

.woocommerce label {
  color: rgba(255,255,255,.7) !important;
  font-size: .82rem !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-family: var(--font) !important;
}

/* ══ PAGE BOUTIQUE (SHOP) ═══════════════════════════ */
.woocommerce ul.products li.product {
  background: #0a0a0a !important;
  border: 1px solid var(--line) !important;
  padding: 1.5rem !important;
  transition: border-color .3s, transform .3s !important;
}

.woocommerce ul.products li.product:hover {
  border-color: rgba(176,215,236,.4) !important;
  transform: translateY(-4px) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  color: var(--white) !important;
  font-family: var(--font) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
}

.woocommerce ul.products li.product .price {
  color: var(--blue) !important;
  font-family: var(--font) !important;
  font-size: 1.1rem !important;
}

/* ══ PAGE PANIER (CART) ══════════════════════════════ */
.woocommerce-cart .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 6%;
}

.woocommerce table.shop_table {
  background: transparent !important;
  border: 1px solid var(--line) !important;
  border-collapse: collapse !important;
  width: 100% !important;
}

.woocommerce table.shop_table th {
  background: rgba(176,215,236,.08) !important;
  color: var(--blue) !important;
  font-family: var(--font) !important;
  font-size: .75rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  border-bottom: 1px solid var(--line) !important;
}

.woocommerce table.shop_table td {
  background: transparent !important;
  color: var(--white) !important;
  font-family: var(--font) !important;
  padding: 16px !important;
  border-bottom: 1px solid var(--line) !important;
  vertical-align: middle !important;
}

.woocommerce table.shop_table .product-name a {
  color: var(--white) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

.woocommerce table.shop_table .product-name a:hover {
  color: var(--blue) !important;
}

.woocommerce table.shop_table .product-price,
.woocommerce table.shop_table .product-subtotal {
  color: var(--blue) !important;
  font-size: 1rem !important;
}

/* Quantité */
.woocommerce .quantity input.qty {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid var(--line) !important;
  color: var(--white) !important;
  font-family: var(--font) !important;
  text-align: center !important;
  width: 60px !important;
  padding: 8px !important;
}

/* Supprimer article */
.woocommerce table.cart a.remove {
  color: var(--grey) !important;
  font-size: 1.2rem !important;
  transition: color .2s !important;
}
.woocommerce table.cart a.remove:hover { color: #ff6b6b !important; }

/* Totaux du panier */
.woocommerce-cart-form__cart-item .product-thumbnail img {
  border: 1px solid var(--line);
}

.cart_totals h2 {
  color: var(--white) !important;
  font-size: 1.3rem !important;
  font-family: var(--font) !important;
  font-weight: 400 !important;
  margin-bottom: 1.5rem !important;
  padding-bottom: 1rem !important;
  border-bottom: 1px solid var(--line) !important;
}

.cart_totals table.shop_table tr th,
.cart_totals table.shop_table tr td {
  color: rgba(255,255,255,.8) !important;
}

.cart_totals table.shop_table .order-total th,
.cart_totals table.shop_table .order-total td {
  color: var(--white) !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
}

.cart_totals table.shop_table .order-total .amount {
  color: var(--blue) !important;
  font-size: 1.3rem !important;
}

/* ══ PAGE CAISSE (CHECKOUT) ══════════════════════════ */
.woocommerce-checkout .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 6%;
}

#order_review_heading {
  color: var(--white) !important;
  font-family: var(--font) !important;
  font-size: 1.3rem !important;
  font-weight: 400 !important;
  border-bottom: 1px solid var(--line) !important;
  padding-bottom: 1rem !important;
  margin-bottom: 1.5rem !important;
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
  color: var(--blue) !important;
  font-size: .75rem !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  font-family: var(--font) !important;
  margin-bottom: 1.5rem !important;
}

/* Récapitulatif commande */
#order_review table.shop_table {
  background: rgba(176,215,236,.04) !important;
  border: 1px solid var(--line) !important;
}

.woocommerce-checkout #payment {
  background: rgba(255,255,255,.03) !important;
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  padding: 1.5rem !important;
}

.woocommerce-checkout #payment div.payment_box {
  background: rgba(176,215,236,.06) !important;
  color: rgba(255,255,255,.7) !important;
}

.woocommerce-checkout #payment ul.payment_methods li label {
  color: var(--white) !important;
  font-family: var(--font) !important;
}

/* ══ NOTICES / ALERTES ═══════════════════════════════ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-top: 3px solid var(--blue) !important;
  background: rgba(176,215,236,.08) !important;
  color: var(--white) !important;
  font-family: var(--font) !important;
  border-radius: 0 !important;
}

.woocommerce-error {
  border-top-color: #ff6b6b !important;
  background: rgba(255,107,107,.08) !important;
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: var(--blue) !important;
}

/* ══ PAGE MON COMPTE ═════════════════════════════════ */
.woocommerce-account .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 6%;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  border: 1px solid var(--line) !important;
}

.woocommerce-MyAccount-navigation ul li {
  border-bottom: 1px solid var(--line) !important;
}

.woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 12px 20px !important;
  color: rgba(255,255,255,.7) !important;
  font-family: var(--font) !important;
  font-size: .85rem !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: color .2s, background .2s !important;
}

.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a {
  color: var(--blue) !important;
  background: rgba(176,215,236,.06) !important;
}

/* ══ MINI CART (WIDGET) ══════════════════════════════ */
.widget_shopping_cart .cart_list li {
  border-bottom: 1px solid var(--line) !important;
  padding: 10px 0 !important;
}

.widget_shopping_cart .cart_list li a {
  color: var(--white) !important;
}

.widget_shopping_cart .total {
  border-top: 1px solid var(--line) !important;
  color: var(--white) !important;
}

.widget_shopping_cart .total .amount {
  color: var(--blue) !important;
  font-weight: 700 !important;
}

/* ══ PRIX ═════════════════════════════════════════════ */
.woocommerce .price,
.woocommerce .amount {
  color: var(--blue) !important;
  font-family: var(--font) !important;
}

.woocommerce del .amount {
  color: var(--grey) !important;
}

/* ══ ÉVALUATIONS / ÉTOILES ═══════════════════════════ */
.woocommerce .star-rating span::before,
.woocommerce p.stars a::before,
.woocommerce p.stars a:hover~a::before,
.woocommerce p.stars.selected a.active~a::before {
  color: var(--blue) !important;
}

/* ══ BREADCRUMB ══════════════════════════════════════ */
.woocommerce .woocommerce-breadcrumb {
  color: var(--grey) !important;
  font-size: .78rem !important;
  letter-spacing: .08em !important;
  font-family: var(--font) !important;
}

.woocommerce .woocommerce-breadcrumb a {
  color: var(--blue) !important;
  text-decoration: none !important;
}

/* ══ RESPONSIVE ══════════════════════════════════════ */
@media (max-width: 768px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce,
  .woocommerce-account .woocommerce {
    padding: 40px 4%;
  }
  .woocommerce table.shop_table { font-size: .85rem; }
}
