/*
Theme Name: Riff & Needle
Description: Thème sur mesure pour la boutique Riff & Needle.
Version: 1.0.1
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: riff-needle
*/

/* Ajustements WordPress ; le design commun reste dans assets/css/main.css. */
body.admin-bar .rnk-site-header { top: 32px; }
body.admin-bar { --rnk-adminbar-h: 32px; }
.rnk-form-pending { border: 0; padding: 0; margin: 0; min-width: 0; }
.rnk-newsletter__form :disabled { opacity: 0.65; cursor: not-allowed; }
.rnk-mini-cart__body .woocommerce-mini-cart { list-style: none; padding: 0; }
.rnk-mini-cart__body .woocommerce-mini-cart-item { padding-block: 1rem; border-bottom: 1px solid var(--rnk-color-border); }
.rnk-mini-cart__body .woocommerce-mini-cart-item img { width: 4rem; height: auto; float: right; }
.rnk-mini-cart__body .woocommerce-mini-cart__buttons { display: flex; gap: 0.75rem; flex-wrap: wrap; }
.rnk-mini-cart__body .woocommerce-mini-cart__buttons .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--rnk-control-height);
  padding: 0.6875rem var(--rnk-control-padding-x);
  font-size: var(--rnk-control-font-size);
  font-weight: var(--rnk-fw-bold);
  line-height: 1.25;
  text-align: center;
  border: 1px solid var(--rnk-field-border);
  border-radius: var(--rnk-control-radius);
}
@media (max-width: 782px) {
  body.admin-bar .rnk-site-header { top: 46px; }
  body.admin-bar { --rnk-adminbar-h: 46px; }
}
@media (max-width: 600px) {
  body.admin-bar .rnk-site-header { top: 0; }
}

.rnk-newsletter__consent { flex-basis: 100%; border: 0; padding: 0; margin: 0.75rem 0 0; text-align: left; }
.rnk-newsletter__consent label { display:flex; align-items:flex-start; gap:.625rem; font-size:.875rem; line-height:1.5; cursor:pointer; }
.rnk-newsletter__consent input { flex:0 0 auto; margin-top:.1875rem; }
.rnk-newsletter__legal { flex-basis: 100%; font-size: 0.75rem; text-align: left; margin: 0; color: var(--rnk-color-text-muted); }
.rnk-newsletter__legal a { color:inherit; text-decoration:underline; text-underline-offset:.15em; }
.rnk-newsletter__honeypot { position: absolute; left: -5000px; }

.rnk-consent-banner { position:fixed; bottom:1rem; left:1rem; right:1rem; z-index:80; display:flex; flex-wrap:wrap; gap:1rem; align-items:center; max-width:76rem; margin:auto; padding:1.25rem; background:var(--rnk-color-surface); border:1px solid var(--rnk-color-border-strong); border-radius:var(--rnk-radius-md); box-shadow:0 4px 24px rgba(0,0,0,.1); }
.rnk-consent-banner > div { flex:1; min-width:16rem; }
.rnk-consent-banner h2 { font:600 1rem var(--rnk-font-body); margin:0 0 .5rem; }
.rnk-consent-banner p { font-size:.8125rem; margin:0; }
.rnk-consent-banner form { display:flex; flex-wrap:wrap; gap:.5rem; }
@media(max-width:600px) { .rnk-consent-banner { max-height:50vh; overflow:auto; padding:1rem; bottom:.5rem; left:.5rem; right:.5rem; } }

.rnk-mobile-menu, .rnk-mobile-menu .sub-menu { list-style:none; margin:0; padding:0; }
.rnk-mobile-menu a { display:block; padding:.7rem 0; font-size:.9375rem; }
.rnk-mobile-menu > li { border-bottom:1px solid var(--rnk-color-border); padding:.5rem 0; }
.rnk-mobile-menu .sub-menu { padding-left:1rem; }
.rnk-mobile-menu .sub-menu a { font-size:.875rem; }
.rnk-footer-extra-menu { display:flex; flex-wrap:wrap; gap:1rem; list-style:none; padding:1rem 0; font-size:.875rem; }
[hidden] { display:none !important; }

/* Garder les dimensions du logo malgré les règles globales WooCommerce. */
.rnk-site-header__brand { flex-shrink: 0; }
.rnk-site-header .rnk-site-header__brand-logo {
  display: block;
  height: 4.25rem;
  width: auto;
  max-width: none;
}
.rnk-drawer .rnk-drawer__logo {
  display: block;
  width: auto;
  height: 1.75rem;
  max-width: 7rem;
  flex: 0 1 auto;
}
.rnk-site-footer .rnk-site-footer__logo {
  display: block;
  width: auto;
  height: 5rem;
  max-width: 100%;
}
.rnk-nav__chevron { display: block; flex-shrink: 0; }
@media (min-width: 48rem) and (max-width: 63.999rem) {
  .rnk-site-header .rnk-site-header__brand-logo { height: 3.5rem; }
}
@media (max-width: 47.999rem) {
  .rnk-site-header .rnk-site-header__brand-logo {
    width: auto;
    height: 2.25rem;
    max-width: 6.5rem;
  }
  .rnk-site-footer .rnk-site-footer__logo {
    width: auto;
    height: 2.75rem;
    max-width: 8rem;
  }
  .rnk-drawer .rnk-drawer__logo {
    width: auto;
    height: 1.75rem;
    max-width: 7rem;
    flex: 0 1 auto;
  }
  .rnk-drawer__body {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media (max-width: 22.5rem) {
  .rnk-site-header .rnk-site-header__brand-logo {
    height: 2rem;
    max-width: 5.75rem;
  }
}
