/* Les formulaires et opérations restent gérés par WooCommerce. */
.woocommerce {
    --wc-form-border-color:var(--rnk-field-border);
    --wc-form-border-radius:var(--rnk-field-radius);
    --wc-form-border-width:1px;
    --wc-form-color-background:var(--rnk-color-surface);
    --wc-form-color-text:var(--rnk-color-text);
}
/* Le passage en caisse est le CTA principal du mini-panier. */
.rnk-mini-cart__body .woocommerce-mini-cart__buttons .button.checkout {
    background-color:var(--rnk-color-dark);
    border-color:var(--rnk-color-dark);
    color:var(--rnk-color-dark-text);
    transition:background-color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), color var(--rnk-transition-fast);
}
.rnk-mini-cart__body .woocommerce-mini-cart__buttons .button.checkout:hover,
.rnk-mini-cart__body .woocommerce-mini-cart__buttons .button.checkout:focus-visible {
    background-color:var(--rnk-color-accent);
    border-color:var(--rnk-color-accent);
    color:var(--rnk-color-dark-text);
}
.rnk-catalog-heading { margin-top: var(--rnk-spacing-md); max-width:50rem; }
.rnk-catalog-sort { margin-left:auto; }
.rnk-filter-chip[aria-current="true"] { background:var(--rnk-color-text); color:var(--rnk-color-bg); border-color:var(--rnk-color-text); }
.rnk-filter-chip--accent[aria-current="true"] { background:var(--rnk-color-accent); border-color:var(--rnk-color-accent); }
.rnk-stock-note { font-size:.75rem; color:var(--rnk-color-accent); }
.woocommerce ul.products.rnk-product-grid, ul.products.rnk-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--rnk-spacing-lg); margin:0; padding:0; }
.woocommerce ul.products.rnk-product-grid::before, .woocommerce ul.products.rnk-product-grid::after { display:none; }
.woocommerce ul.products.rnk-product-grid li.product, ul.products.rnk-product-grid li.product { float:none; width:auto; margin:0; padding:0; }
.woocommerce ul.products.rnk-product-grid li.product img { margin:0; width:100%; }
.rnk-native-card .rnk-product-card__title { font-size:1rem; }
.woocommerce nav.woocommerce-pagination { margin-top:var(--rnk-spacing-xl); }
.woocommerce nav.woocommerce-pagination ul { border:0; display:flex; gap:.5rem; justify-content:center; flex-wrap:wrap; }
.woocommerce nav.woocommerce-pagination ul li { border:0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { padding:.75rem 1rem; border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-sm); color:var(--rnk-color-text); }
.woocommerce nav.woocommerce-pagination ul li span.current { background:var(--rnk-color-text); color:var(--rnk-color-bg); }
.woocommerce div.product .rnk-product-layout { margin:var(--rnk-spacing-xl) 0; }
.woocommerce div.product div.summary { float:none; width:auto; margin:0; }
.rnk-native-gallery { position:relative; min-width:0; align-self:start; }
.woocommerce div.product .rnk-native-gallery div.images { float:none; width:100%; margin:0; }
.rnk-gallery-open {
    position:absolute;
    z-index:2;
    top:1rem;
    right:1rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.45rem;
    width:auto;
    height:2.75rem;
    min-width:2.75rem;
    padding:0 .9rem;
    border:1px solid var(--rnk-color-border);
    border-radius:999px;
    background:rgb(255 255 255 / .94);
    color:var(--rnk-color-text);
    box-shadow:0 2px 10px rgb(31 31 29 / .1);
    font-family:var(--rnk-font-body);
    font-size:.8125rem;
    font-weight:var(--rnk-fw-medium);
    line-height:1;
    transition:background-color var(--rnk-transition-fast), color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast);
}
.rnk-gallery-open svg {
    width:1.1rem;
    height:1.1rem;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
}
.rnk-gallery-open:hover,
.rnk-gallery-open:focus-visible {
    border-color:var(--rnk-color-text);
    background:var(--rnk-color-text);
    color:var(--rnk-color-dark-text);
    box-shadow:0 4px 14px rgb(31 31 29 / .16);
}
.woocommerce div.product div.images .woocommerce-product-gallery__image > a { cursor:pointer; }
.woocommerce div.product div.images img { border-radius:var(--rnk-radius-md); }
.woocommerce div.product div.images .flex-control-thumbs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.5rem; margin-top:.75rem; }
.woocommerce div.product div.images .flex-control-thumbs li { float:none; width:auto; }
@media (max-width:63.99rem) {
    .woocommerce div.product div.images:not(:has(.flex-viewport)) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child) { display:none; }
    .woocommerce div.product div.images:not(:has(.flex-control-thumbs))::after { content:""; display:block; height:calc(((100vw - 4rem) / 5) + .75rem); }
    .woocommerce div.product div.images .flex-viewport { aspect-ratio:3/4; height:auto !important; overflow:hidden !important; }
    .woocommerce div.product div.images .flex-control-thumbs { min-height:calc((100vw - 4rem) / 5); }
}
.woocommerce div.product .product_title { font-family:var(--rnk-font-heading); font-size:clamp(2rem,4vw,3rem); margin:1rem 0; }
.woocommerce div.product .rnk-product-title__type,
.woocommerce div.product .rnk-product-title__motif { display:block; }
.woocommerce div.product .rnk-product-title__type { font-size:.75em; line-height:1.15; }
.woocommerce div.product .rnk-product-title__motif { color:var(--rnk-color-accent); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color:var(--rnk-color-text); font-size:2.5rem; margin-bottom:1rem; }
.woocommerce div.product .rnk-product-info__price { display:flex; flex-wrap:wrap; align-items:baseline; gap:.35rem .75rem; font-family:var(--rnk-font-heading); font-size:2.5rem; }
.woocommerce div.product .rnk-product-info__tax { font-family:var(--rnk-font-body); font-size:.8125rem; font-weight:400; color:var(--rnk-color-text-muted); }
.rnk-tag--universe {
    --rnk-universe-tag-bg:var(--rnk-color-text);
    --rnk-universe-tag-hover:#181818;
    --rnk-universe-tag-text:#fff;
    background:var(--rnk-universe-tag-bg);
    border-color:var(--rnk-universe-tag-bg);
    color:var(--rnk-universe-tag-text);
    font-weight:var(--rnk-fw-medium);
    transition:background-color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), color var(--rnk-transition-fast);
}
.rnk-tag--universe:hover,
.rnk-tag--universe:focus-visible {
    background:var(--rnk-universe-tag-hover);
    border-color:var(--rnk-universe-tag-hover);
    color:var(--rnk-universe-tag-text);
}
.rnk-tag--universe-horreur     { --rnk-universe-tag-bg:#a8203a; --rnk-universe-tag-hover:#861a2e; }
.rnk-tag--universe-fantasy     { --rnk-universe-tag-bg:#c8a850; --rnk-universe-tag-hover:#a08640; }
.rnk-tag--universe-romance     { --rnk-universe-tag-bg:#c87a9a; --rnk-universe-tag-hover:#a0627b; }
.rnk-tag--universe-pop-culture { --rnk-universe-tag-bg:#d44a28; --rnk-universe-tag-hover:#aa3b20; }
.rnk-tag--universe-goth        { --rnk-universe-tag-bg:#9868c8; --rnk-universe-tag-hover:#7a53a0; }
.rnk-tag--universe-tattoo      { --rnk-universe-tag-bg:#c8783a; --rnk-universe-tag-hover:#a0602e; }
.rnk-tag--universe-cosy        { --rnk-universe-tag-bg:#7a9e5a; --rnk-universe-tag-hover:#627e48; }
.rnk-product-features { margin:0; }
.woocommerce div.product .woocommerce-product-details__short-description { color:var(--rnk-color-text-muted); font-size:1rem; line-height:1.7; }
.woocommerce div.product form.cart { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; margin:1.5rem 0; }
.woocommerce div.product form.cart .variations { flex-basis:100%; }
.woocommerce div.product form.cart .single_variation_wrap { width:100%; }
.woocommerce-variation-add-to-cart { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; }
.woocommerce div.product form.cart .button { flex:1; min-height:var(--rnk-control-height); }
.woocommerce div.product form.cart .quantity { display:grid; grid-template-columns:2.75rem minmax(3rem,4rem) 2.75rem; height:var(--rnk-control-height); border:1px solid var(--rnk-color-border-strong); border-radius:var(--rnk-control-radius); overflow:hidden; background:var(--rnk-color-surface); }
.woocommerce div.product form.cart .quantity .qty { width:100%; min-height:0; padding:0 .25rem; border:0; border-radius:0; box-shadow:none; background:transparent; color:var(--rnk-color-text); text-align:center; appearance:textfield; -moz-appearance:textfield; }
.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
.woocommerce div.product form.cart .rnk-quantity__button { width:2.75rem; min-height:0; padding:0; border:0; border-radius:0; background:transparent; color:var(--rnk-color-text); font-size:1.125rem; }
.woocommerce div.product form.cart .rnk-quantity__button:hover { background:var(--rnk-color-bg-alt); }
.woocommerce div.product form.cart .rnk-quantity__button:disabled { color:var(--rnk-color-text-soft); cursor:not-allowed; }
.woocommerce div.product form.cart .single_add_to_cart_button { background:var(--rnk-color-text); border-color:var(--rnk-color-text); }
.woocommerce div.product form.cart .single_add_to_cart_button:hover { background:var(--rnk-color-accent); border-color:var(--rnk-color-accent); }
.woocommerce div.product form.cart .variations select { width:100%; }
.rnk-product-format-link { text-decoration:underline; font-size:.875rem; }
.woocommerce div.product .product_meta { font-size:.8125rem; color:var(--rnk-color-text-muted); margin-top:1rem; }
.woocommerce div.product .product_meta > span { display:block; margin:.5rem 0; }
.rnk-native-product-details { clear:both; max-width:52rem; margin:var(--rnk-spacing-xl) 0; }
.woocommerce section.related, .woocommerce section.up-sells { clear:both; margin-top:var(--rnk-spacing-2xl); padding-top:var(--rnk-spacing-xl); border-top:1px solid var(--rnk-color-border); }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error { background:var(--rnk-color-bg-alt); color:var(--rnk-color-text); border-top-color:var(--rnk-color-accent); border-radius:var(--rnk-radius-sm); font-size:.875rem; }
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5M12 8h.01'/%3E%3C/svg%3E");
    display:flex;
    align-items:center;
    gap:1rem;
    min-height:5rem;
    padding:1.25rem 1.5rem;
}
.woocommerce .woocommerce-info {
    --rnk-notice-info:#4f6f83;
    --rnk-notice-info-soft:#edf3f6;
    min-height:0;
    margin:1rem 0 1.5rem;
    padding:.9375rem 1rem;
    border:1px solid color-mix(in srgb, var(--rnk-notice-info) 24%, var(--rnk-color-border));
    border-left:4px solid var(--rnk-notice-info);
    border-radius:var(--rnk-radius-md);
    background:var(--rnk-notice-info-soft);
    box-shadow:var(--rnk-shadow-sm);
    line-height:1.5;
}
.woocommerce .woocommerce-message {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 2.5 2.5L16 9'/%3E%3C/svg%3E");
    min-height:0;
    margin:1rem 0 1.5rem;
    padding:.9375rem 1rem;
    border:1px solid color-mix(in srgb, var(--rnk-color-secondary) 22%, var(--rnk-color-border));
    border-left:4px solid var(--rnk-color-secondary);
    border-radius:var(--rnk-radius-md);
    background:var(--rnk-color-secondary-soft);
    box-shadow:var(--rnk-shadow-sm);
    line-height:1.5;
}
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-message::before {
    content:"";
    position:static;
    inset:auto;
    display:block;
    flex:0 0 1.5rem;
    width:1.5rem;
    height:1.5rem;
    margin:0;
    background-color:var(--rnk-color-accent);
    -webkit-mask-image:var(--rnk-notice-icon);
    -webkit-mask-position:center;
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size:contain;
    mask-image:var(--rnk-notice-icon);
    mask-position:center;
    mask-repeat:no-repeat;
    mask-size:contain;
}
.woocommerce .woocommerce-info::before {
    flex-basis:1.25rem;
    width:1.25rem;
    height:1.25rem;
    background-color:var(--rnk-notice-info);
}
.woocommerce .woocommerce-message::before {
    flex-basis:1.25rem;
    width:1.25rem;
    height:1.25rem;
    background-color:var(--rnk-color-secondary);
}
.woocommerce .woocommerce-info::after,
.woocommerce .woocommerce-message::after { display:none; }
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-message .button { float:none; margin-left:auto; white-space:nowrap; }
.woocommerce .woocommerce-message .button {
    border-color:var(--rnk-color-secondary);
    background:var(--rnk-color-surface);
    color:var(--rnk-color-secondary);
}
.woocommerce .woocommerce-message .button:hover,
.woocommerce .woocommerce-message .button:focus-visible {
    border-color:var(--rnk-color-secondary);
    background:var(--rnk-color-secondary);
    color:#fff;
}

/* WooCommerce place brièvement le message d’ajout au panier au focus pour
   l’annoncer aux technologies d’assistance. On conserve ce comportement sans
   afficher l’anneau de focus autour de toute la notification. */
.single-product .woocommerce-message[role="alert"]:focus,
.single-product .woocommerce-message[role="alert"]:focus-visible {
    outline:none;
}

/* Laisse respirer les notifications produit sous le fil d’Ariane. */
.single-product .rnk-breadcrumb + .woocommerce-notices-wrapper {
    margin-top:var(--rnk-spacing-md);
}

/* Une icône sémantique pour chaque contexte WooCommerce. */
.woocommerce-cart .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h2l2 11h9l2-8H7M10 20h.01M17 20h.01'/%3E%3C/svg%3E");
}
.woocommerce-checkout .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4h10v17H7zM9 4V2h6v2M10 9h4M10 13h4M10 17h3'/%3E%3C/svg%3E");
}
.woocommerce-form-coupon-toggle .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m20 12-8 8-9-9V4h7l10 8Z'/%3E%3Ccircle cx='7.5' cy='8.5' r='1'/%3E%3C/svg%3E");
}
.woocommerce-form-coupon-toggle .woocommerce-info .showcoupon,
.woocommerce-form-login-toggle .woocommerce-info .showlogin {
    color:var(--rnk-color-text);
    font-weight:600;
    text-decoration-line:underline;
    text-decoration-color:var(--rnk-notice-info);
    text-decoration-thickness:1.5px;
    text-underline-offset:.2em;
}
.woocommerce-form-coupon-toggle .woocommerce-info .showcoupon:hover,
.woocommerce-form-login-toggle .woocommerce-info .showlogin:hover {
    color:#3d5b6d;
}
.woocommerce-form-login-toggle .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.2-4.2 3.9-6 8-6s6.8 1.8 8 6'/%3E%3C/svg%3E");
}
.woocommerce-checkout-payment .woocommerce-info,
.woocommerce-Payment .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18M7 15h3'/%3E%3C/svg%3E");
    align-items:flex-start;
}
.woocommerce-no-products-found .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 4.5 4.5'/%3E%3C/svg%3E");
}
.single-product .woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E");
}
.single-product .wc-no-matching-variations.woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h10M18 6h2M4 12h3M11 12h9M4 18h8M16 18h4'/%3E%3Ccircle cx='16' cy='6' r='2'/%3E%3Ccircle cx='9' cy='12' r='2'/%3E%3Ccircle cx='14' cy='18' r='2'/%3E%3C/svg%3E");
}
.woocommerce-review-order__notice.woocommerce-info {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.6 5.3 5.9.9-4.3 4.2 1 5.9-5.2-2.8-5.2 2.8 1-5.9-4.3-4.2 5.9-.9L12 3Z'/%3E%3C/svg%3E");
}
.woocommerce .woocommerce-error {
    margin:1.25rem 0 3rem;
    padding:0;
    overflow:hidden;
    background:var(--rnk-color-bg-alt);
    border:1px solid var(--rnk-color-border);
    border-top:3px solid var(--rnk-color-accent);
    border-radius:var(--rnk-radius-md);
    box-shadow:0 .4rem 1.25rem rgba(31,31,29,.045);
    font-size:.9375rem;
    line-height:1.55;
}
.woocommerce .woocommerce-error::before { display:none; }
.woocommerce .woocommerce-error > li {
    display:grid;
    grid-template-columns:1.5rem minmax(0,1fr) auto;
    align-items:center;
    gap:1rem;
    min-height:5.5rem;
    margin:0;
    padding:1.25rem 1.5rem !important;
}
.woocommerce .woocommerce-error > li::before {
    content:"";
    display:block;
    align-self:center;
    width:1.5rem;
    height:1.5rem;
    background-color:var(--rnk-color-accent);
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm-1 5h2v7h-2V7Zm0 9h2v2h-2v-2Z'/%3E%3C/svg%3E");
    -webkit-mask-position:center;
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size:contain;
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm-1 5h2v7h-2V7Zm0 9h2v2h-2v-2Z'/%3E%3C/svg%3E");
    mask-position:center;
    mask-repeat:no-repeat;
    mask-size:contain;
}
.woocommerce .woocommerce-error .button {
    float:none;
    justify-self:end;
    margin:0 0 0 .5rem;
    white-space:nowrap;
}
.woocommerce .woocommerce-error:focus { outline:none; }
.woocommerce .woocommerce-error:focus-visible {
    outline:none;
    box-shadow:0 0 0 3px var(--rnk-color-accent-soft), 0 .4rem 1.25rem rgba(31,31,29,.045);
}
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .wc-block-components-button { display:inline-flex; align-items:center; justify-content:center; min-height:var(--rnk-control-height); padding:.6875rem var(--rnk-control-padding-x); font-family:var(--rnk-font-body); font-size:var(--rnk-control-font-size); font-weight:600; line-height:1.25; text-align:center; border:1px solid var(--rnk-field-border); border-radius:var(--rnk-control-radius); background:var(--rnk-color-bg-alt); color:var(--rnk-color-text); transition:background-color var(--rnk-transition-fast), color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast); }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce #respond input#submit.alt, .woocommerce .single_add_to_cart_button, .wc-block-components-button:not(.is-link) { background:var(--rnk-color-accent); border-color:var(--rnk-color-accent); color:#fff; }
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover { background:var(--rnk-color-text); color:var(--rnk-color-bg); }
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { opacity:.5; cursor:not-allowed; }
.woocommerce .input-text,
.woocommerce input[type="email"],
.woocommerce input[type="text"],
.woocommerce input[type="password"],
.woocommerce input[type="tel"],
.woocommerce input[type="url"],
.woocommerce input[type="number"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select {
    width:100%;
    min-height:var(--rnk-field-height);
    max-width:100%;
    padding:.625rem var(--rnk-field-padding-x);
    font-family:var(--rnk-font-body);
    font-size:1rem;
    line-height:1.5;
    color:var(--rnk-color-text);
    background-color:var(--rnk-color-surface);
    border:1px solid var(--rnk-field-border);
    border-radius:var(--rnk-field-radius);
    box-shadow:inset 0 1px 1px rgba(30,30,30,.025);
    caret-color:var(--rnk-color-accent);
    transition:border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast), background-color var(--rnk-transition-fast);
}
.woocommerce textarea { min-height:8rem; resize:vertical; }
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
    border-color:var(--rnk-field-border);
    border-radius:var(--rnk-field-radius);
}
.woocommerce select {
    -webkit-appearance:none;
    appearance:none;
    padding-right:2.75rem;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%231e1e1e' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");
    background-position:right .9rem center;
    background-repeat:no-repeat;
    background-size:1.15rem;
}
.woocommerce .input-text::placeholder,
.woocommerce textarea::placeholder,
.woocommerce input::placeholder { color:var(--rnk-field-placeholder); opacity:1; }
.woocommerce .input-text:hover,
.woocommerce textarea:hover,
.woocommerce select:hover,
.woocommerce form .form-row .input-text:hover,
.woocommerce form .form-row textarea:hover,
.woocommerce form .form-row select:hover { border-color:var(--rnk-field-border-hover); }
.woocommerce form .form-row label { font-weight:600; font-size:.875rem; line-height:1.4; margin-bottom:.5rem; color:var(--rnk-color-text); }
.woocommerce form .form-row .required { color:var(--rnk-color-danger); text-decoration:none; visibility:visible; }
.woocommerce input:focus-visible,
.woocommerce select:focus-visible,
.woocommerce textarea:focus-visible,
.woocommerce form .form-row .input-text:focus-visible,
.woocommerce form .form-row select:focus-visible,
.woocommerce form .form-row textarea:focus-visible {
    outline:0;
    border-color:var(--rnk-color-accent);
    box-shadow:var(--rnk-field-focus-shadow);
}
.woocommerce input:disabled,
.woocommerce select:disabled,
.woocommerce textarea:disabled,
.woocommerce input[readonly] { background-color:var(--rnk-color-bg-alt); color:var(--rnk-color-text-muted); cursor:not-allowed; opacity:1; }
.woocommerce form .form-row.woocommerce-invalid label { color:var(--rnk-color-text); }
.woocommerce form .form-row.woocommerce-invalid .input-text,
.woocommerce form .form-row.woocommerce-invalid select,
.woocommerce form .form-row.woocommerce-invalid .select2-selection { border-color:var(--rnk-color-danger); box-shadow:0 0 0 3px rgba(181,41,59,.1); }
.woocommerce form .form-row.woocommerce-validated .input-text,
.woocommerce form .form-row.woocommerce-validated select,
.woocommerce form .form-row.woocommerce-validated .select2-selection { border-color:var(--rnk-field-border); }
.woocommerce form .form-row { margin-bottom:1.125rem; }
.woocommerce .select2-container { width:100% !important; }
.woocommerce .select2-container--default .select2-selection--single {
    min-height:var(--rnk-field-height);
    border:1px solid var(--rnk-field-border);
    border-radius:var(--rnk-field-radius);
    background:var(--rnk-color-surface);
    box-shadow:inset 0 1px 1px rgba(30,30,30,.025);
    transition:border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast);
}
.woocommerce .select2-container--default .select2-selection--single:hover { border-color:var(--rnk-field-border-hover); }
.woocommerce .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce .select2-container--default.select2-container--open .select2-selection--single { border-color:var(--rnk-color-accent); box-shadow:var(--rnk-field-focus-shadow); }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered { padding:0 2.75rem 0 var(--rnk-field-padding-x); line-height:calc(var(--rnk-field-height) - 2px); color:var(--rnk-color-text); }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__placeholder { color:var(--rnk-field-placeholder); }
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow { right:.75rem; height:var(--rnk-field-height); }
.select2-container--open .select2-dropdown { overflow:hidden; border:1px solid var(--rnk-field-border); border-radius:var(--rnk-field-radius); box-shadow:var(--rnk-shadow-md); }
.select2-container--default .select2-search--dropdown .select2-search__field { min-height:var(--rnk-control-height); padding:.625rem .75rem; border:1px solid var(--rnk-field-border); border-radius:var(--rnk-control-radius); }
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] { background-color:var(--rnk-color-accent); color:#fff; }
.woocommerce form.checkout { display:block; }
.woocommerce form.checkout .rnk-checkout-express:not(:has(*)) { display:none; }
.woocommerce form.checkout .rnk-checkout-express > * { min-width:0; margin-bottom:var(--rnk-spacing-lg); }
.woocommerce form.checkout .rnk-checkout-columns {
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(20rem,1fr);
    gap:var(--rnk-spacing-xl);
    align-items:start;
}
.woocommerce form.checkout .rnk-checkout-customer,
.woocommerce form.checkout .rnk-checkout-summary { min-width:0; }
.woocommerce form.checkout #order_review_heading,
.woocommerce form.checkout #order_review { margin:0; }
.woocommerce form.checkout .col2-set .col-1, .woocommerce form.checkout .col2-set .col-2 { float:none; width:100%; }
.woocommerce form.checkout .woocommerce-additional-fields { margin-top:var(--rnk-spacing-lg); }
.woocommerce-checkout #order_comments { min-height:8rem; resize:vertical; }
.woocommerce-checkout #ship-to-different-address { margin-top:1rem; }
.woocommerce form.checkout_coupon .form-row-first {
    float:left;
    width:min(42rem,calc(100% - 18rem));
    margin:0;
}
.woocommerce form.checkout_coupon .form-row-last {
    float:left;
    width:auto;
    margin:0 0 0 .75rem;
}
.woocommerce #payment { background:var(--rnk-color-bg-alt); border-radius:var(--rnk-radius-md); }
.woocommerce #payment.woocommerce-checkout-payment { background:var(--rnk-color-surface); border:1px solid var(--rnk-color-border); }
.woocommerce #payment div.payment_box { background:var(--rnk-color-surface); color:var(--rnk-color-text); }
.woocommerce #payment div.payment_box::before { border-bottom-color:var(--rnk-color-surface); }
.woocommerce #payment ul.payment_methods li { overflow-wrap:anywhere; }
.woocommerce #payment .payment_method_woocommerce_payments fieldset.wc-payment-form {
    min-width:0;
    margin:.75rem 0 0;
    padding:1rem;
    border:1px solid var(--rnk-color-border);
    border-radius:var(--rnk-radius-md);
    background:var(--rnk-color-surface);
}
.woocommerce #payment .payment_method_woocommerce_payments fieldset.wc-payment-form .wcpay-upe-element {
    padding:0;
}
.woocommerce #payment .payment_method_ppcp-gateway .payment_box {
    display:none !important;
}
/* Tous les choix du checkout utilisent le meme radio natif. WooPayments
   imposait sinon des radios bleus de 13 px (et un halo carre sur les cartes
   enregistrees), alors que les modes de livraison etaient rouges en 18 px. */
.woocommerce-checkout #order_review input[type="radio"] {
    width:1.125rem !important;
    height:1.125rem !important;
    border-radius:50% !important;
    accent-color:var(--rnk-color-accent);
    box-shadow:none !important;
    cursor:pointer;
}
.woocommerce-checkout #order_review input[type="radio"]:focus-visible {
    outline:2px solid var(--rnk-color-accent);
    outline-offset:2px;
    box-shadow:0 0 0 3px var(--rnk-color-accent-soft) !important;
}
/* Les moyens de paiement reprennent la meme carte interactive que les
   modes de livraison. Le contenu propre a chaque passerelle reste dans la
   carte selectionnee et peut occuper toute sa largeur. */
.woocommerce-checkout #payment ul.payment_methods {
    display:grid;
    gap:.625rem;
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method {
    display:grid;
    grid-template-columns:1.125rem minmax(0, 1fr);
    column-gap:.75rem;
    row-gap:0;
    align-items:center;
    min-width:0;
    margin:0;
    padding:.8125rem .875rem;
    border:1px solid var(--rnk-color-border);
    border-radius:var(--rnk-radius-sm);
    background:var(--rnk-color-surface);
    line-height:1.4;
    transition:background-color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast);
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method:hover {
    border-color:var(--rnk-field-border-hover);
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method:has(> input:checked) {
    border-color:var(--rnk-color-text);
    background:var(--rnk-color-bg-alt);
    box-shadow:none;
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > input[type="radio"] {
    grid-column:1;
    grid-row:1;
    margin:0;
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label {
    display:flex;
    grid-column:2;
    grid-row:1;
    align-items:center;
    gap:.5rem;
    width:auto !important;
    min-width:0;
    margin:0;
    line-height:1.4;
    cursor:pointer;
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label .wc-block-components-payment-method-icons,
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > label button {
    margin-left:auto;
}
.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method > .payment_box {
    grid-column:1 / -1;
    min-width:0;
    margin:.25rem 0 0;
}
.woocommerce-checkout #order_review .ppc-button-wrapper {
    width:min(100%, 24rem);
    margin:1rem 0 0 auto;
}
.woocommerce-checkout #order_review .ppcp-messages {
    margin-bottom:.5rem;
}
.woocommerce-checkout #ppcp-recaptcha-v2-container.rnk-paypal-captcha--required {
    margin:1rem 0 0 !important;
    padding:1rem;
    border:1px solid var(--rnk-color-accent);
    border-radius:var(--rnk-radius-sm);
    background:var(--rnk-color-accent-soft);
}
.rnk-paypal-captcha__message {
    margin:0 0 .875rem;
    color:var(--rnk-color-text);
    font-size:.875rem;
    line-height:1.5;
}
.rnk-paypal-captcha__message strong { display:block; margin-bottom:.125rem; }
@media(max-width:600px) {
    .woocommerce-checkout #order_review .ppc-button-wrapper { width:100%; }
}
.woocommerce table.shop_table { border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-md); font-size:.875rem; border-collapse:separate; }
.woocommerce table.shop_table.woocommerce-checkout-review-order-table { background:var(--rnk-color-surface); }
.woocommerce-checkout-review-order-table .product-name { width:60%; vertical-align:middle; }
.woocommerce-checkout-review-order-table .product-total {
    width:40%;
    vertical-align:middle;
    text-align:left;
    white-space:nowrap;
}
.woocommerce-checkout-review-order-table thead tr,
.woocommerce-checkout-review-order-table tbody tr.cart_item,
.woocommerce-checkout-review-order-table tfoot tr:not(.woocommerce-shipping-totals):not(.rnk-vat-exemption) {
    display:grid;
    grid-template-columns:minmax(0, 3fr) minmax(0, 2fr);
    width:100%;
}
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals,
.woocommerce-checkout-review-order-table tr.rnk-vat-exemption {
    display:grid;
    grid-template-columns:minmax(0, 3fr) minmax(0, 7fr);
    width:100%;
}
.woocommerce-checkout-review-order-table tr > th,
.woocommerce-checkout-review-order-table tr > td {
    width:auto !important;
    min-width:0;
}
.woocommerce-checkout-review-order-table tfoot tr.rnk-checkout-coupon {
    display:block !important;
}
.woocommerce-checkout-review-order-table .rnk-checkout-coupon > td {
    display:block;
    width:100% !important;
    box-sizing:border-box;
    padding:1rem;
    background:var(--rnk-color-bg-alt);
}
.rnk-checkout-coupon label {
    display:block;
    margin:0 0 .5rem;
    font-weight:600;
}
.rnk-checkout-coupon__controls {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:.5rem;
}
.woocommerce .rnk-checkout-coupon__controls .input-text {
    width:100%;
    min-width:0;
    margin:0;
}
.woocommerce .rnk-checkout-coupon__button {
    min-height:var(--rnk-field-height);
    margin:0;
    white-space:nowrap;
}
.rnk-checkout-coupon__status {
    margin:.5rem 0 0;
    color:var(--rnk-color-text-muted);
    font-size:.8125rem;
}
.rnk-checkout-coupon__status:empty { display:none; }
.rnk-checkout-coupon__status[data-state="error"] { color:var(--rnk-color-danger); }
.rnk-checkout-coupon__status[data-state="success"] { color:var(--rnk-color-success); }
.rnk-checkout-product {
    display:grid;
    grid-template-columns:3.75rem minmax(0, 1fr);
    gap:.75rem;
    align-items:center;
}
.rnk-checkout-product__media {
    display:block;
    width:3.75rem;
    aspect-ratio:1;
    overflow:hidden;
    border:0;
    border-radius:0;
    background:var(--rnk-color-bg-alt);
}
.rnk-checkout-product__image {
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:cover;
}
.rnk-checkout-product__copy {
    display:grid;
    gap:.2rem;
    min-width:0;
    line-height:1.3;
}
.rnk-checkout-product__type {
    color:var(--rnk-color-text-muted);
    font-size:.75rem;
    font-weight:var(--rnk-fw-medium);
    letter-spacing:.045em;
    line-height:1.35;
    text-transform:uppercase;
}
.rnk-checkout-product__main { display:flex; align-items:baseline; gap:.4rem; min-width:0; }
.rnk-checkout-product__title { overflow-wrap:anywhere; font-size:1rem; font-weight:600; }
.rnk-checkout-product__quantity { flex:0 0 auto; color:var(--rnk-color-text-muted); white-space:nowrap; font-size:.8125rem; font-weight:500; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding:1rem; }
.woocommerce table.shop_table td { border-top-color:var(--rnk-color-border); }
.woocommerce table.cart img { width:5rem; border-radius:var(--rnk-radius-sm); }
.woocommerce-cart .rnk-commerce-content > .woocommerce { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(19rem,1fr); column-gap:var(--rnk-spacing-xl); row-gap:var(--rnk-spacing-md); align-items:start; }
.woocommerce-cart .rnk-commerce-content > .woocommerce > .woocommerce-notices-wrapper { grid-column:1 / -1; }
.woocommerce-cart .rnk-commerce-content > .woocommerce > .woocommerce-cart-form { grid-column:1; }
.woocommerce-cart .rnk-commerce-content > .woocommerce > .cart-collaterals { grid-column:2; }
.woocommerce .cart-collaterals .cart_totals { float:none; width:100%; background:var(--rnk-color-bg-alt); border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-md); padding:var(--rnk-spacing-lg); }
.woocommerce .cart-collaterals .cart_totals h2 { font-size:1.5rem; margin-bottom:1rem; }
.woocommerce .cart-collaterals .cart_totals table { border:0; }
.woocommerce .cart-collaterals .cart_totals td, .woocommerce .cart-collaterals .cart_totals th { padding:.8rem 0; }
.woocommerce .cart-collaterals .cart_totals .checkout-button { font-size:var(--rnk-control-font-size); }
.woocommerce table.cart td.actions .coupon { display:flex; flex-wrap:wrap; gap:.5rem; }
.woocommerce table.cart td.actions .coupon .input-text { width:10rem; padding:.625rem var(--rnk-field-padding-x); margin:0; }
.woocommerce-cart .rnk-commerce-content > .woocommerce > .cart-empty, .woocommerce-cart .rnk-commerce-content > .woocommerce > .return-to-shop, .woocommerce-cart .rnk-commerce-content > .woocommerce > .wc-empty-cart-message { grid-column:1 / -1; }
.woocommerce-cart .rnk-commerce-content > .woocommerce > .cart-empty { margin-bottom:0; }
.woocommerce-account .rnk-account-layout { display:grid; grid-template-columns:16rem minmax(0,1fr); gap:var(--rnk-spacing-xl); align-items:start; }
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content { float:none; width:auto; }
.woocommerce-account .rnk-account-nav { margin:0; }
.woocommerce-account .rnk-account-content { min-width:0; }
.woocommerce-account .rnk-account-content > :first-child { margin-top:0; }
.woocommerce-account .rnk-account-content p { max-width:none; }
.woocommerce-account .rnk-account-welcome { font-family:var(--rnk-font-body); font-size:1.125rem; margin:0 0 .75rem; }
.woocommerce-account .rnk-account-subheading { font-family:var(--rnk-font-body); font-size:1.125rem; margin:2rem 0 1rem; }
.woocommerce-account .rnk-account-action__icon svg { width:1.25rem; height:1.25rem; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.woocommerce-account .rnk-account-empty { display:flex; min-height:12rem; flex-direction:column; align-items:center; justify-content:center; gap:.75rem; text-align:center; }
.woocommerce-account .rnk-account-empty > span { display:grid; place-items:center; width:4.5rem; height:4.5rem; border-radius:50%; background:var(--rnk-color-bg-alt); font-size:1.4rem; }
.woocommerce-account .rnk-account-empty > span svg { width:1.5rem; height:1.5rem; fill:none; stroke:var(--rnk-color-accent); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.woocommerce-account .rnk-account-empty p { margin:0; color:var(--rnk-color-text-muted); }
.woocommerce-account .rnk-account-recent-orders { border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-md); overflow:hidden; }
.woocommerce-account .rnk-account-recent-orders a { display:grid; grid-template-columns:1fr 1fr auto; gap:1rem; padding:1rem; align-items:center; }
.woocommerce-account .rnk-account-recent-orders a + a { border-top:1px solid var(--rnk-color-border); }
.woocommerce-account .rnk-account-intro { margin-bottom:1.5rem; color:var(--rnk-color-text-muted); }
.woocommerce-account .rnk-address-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--rnk-spacing-lg); }
.woocommerce-account .rnk-address-card { display:flex; flex-direction:column; min-height:17rem; padding:var(--rnk-spacing-lg); border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-md); background:var(--rnk-color-surface); }
.woocommerce-account .rnk-address-card h2 { font-size:1.5rem; margin:.75rem 0; }
.woocommerce-account .rnk-address-card address { flex:1; margin-bottom:1.25rem; color:var(--rnk-color-text-muted); font-style:normal; }
.woocommerce-account .rnk-address-card .button { width:100%; text-align:center; }
.woocommerce-account .woocommerce-orders-table { width:100%; }
.woocommerce-account .woocommerce-orders-table thead { background:var(--rnk-color-bg-alt); text-align:left; }
.woocommerce-account .woocommerce-orders-table .button { padding:.65rem 1rem; white-space:nowrap; }
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-address-fields { width:100%; max-width:44rem; }
.woocommerce-account .woocommerce-EditAccountForm .input-text,
.woocommerce-account .woocommerce-address-fields .input-text { width:100%; }
.woocommerce-account .woocommerce-EditAccountForm fieldset { margin:1.5rem 0; padding:1.5rem; border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-md); }
.woocommerce-account .woocommerce-EditAccountForm fieldset legend { padding:0 .5rem; font-weight:600; }
.woocommerce-account .woocommerce-EditAccountForm #account_display_name_description { display:block; margin-top:.4rem; color:var(--rnk-color-text-muted); font-size:.8125rem; }
.woocommerce-account .woocommerce-info { display:flex; align-items:center; gap:1rem; width:100%; min-height:0; padding:.9375rem 1rem; }
.woocommerce-account .woocommerce-info::before {
    content:"";
    position:static;
    inset:auto;
    display:block;
    flex:0 0 1.25rem;
    width:1.25rem;
    height:1.25rem;
    margin:0;
    color:inherit;
    background-color:var(--rnk-color-accent);
    -webkit-mask-image:var(--rnk-notice-icon);
    -webkit-mask-position:center;
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size:contain;
    mask-image:var(--rnk-notice-icon);
    mask-position:center;
    mask-repeat:no-repeat;
    mask-size:contain;
}
.woocommerce-account.rnk-account-page--orders .woocommerce-info::before,
.woocommerce-account.rnk-account-page--view-order .woocommerce-info::before {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14v12H5zM8 8V5h8v3M5 12h14'/%3E%3Cpath d='M10 15h4'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h14v12H5zM8 8V5h8v3M5 12h14'/%3E%3Cpath d='M10 15h4'/%3E%3C/svg%3E");
}
.woocommerce-account.rnk-account-page--downloads .woocommerce-info::before {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12M7 10l5 5 5-5M5 20h14'/%3E%3C/svg%3E");
}
.woocommerce-account.rnk-account-page--edit-address .woocommerce-info::before {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s6-5.3 6-11a6 6 0 1 0-12 0c0 5.7 6 11 6 11Z'/%3E%3Ccircle cx='12' cy='10' r='2'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s6-5.3 6-11a6 6 0 1 0-12 0c0 5.7 6 11 6 11Z'/%3E%3Ccircle cx='12' cy='10' r='2'/%3E%3C/svg%3E");
}
.woocommerce-account.rnk-account-page--edit-account .woocommerce-info::before {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.2-4.2 3.9-6 8-6s6.8 1.8 8 6'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1.2-4.2 3.9-6 8-6s6.8 1.8 8 6'/%3E%3C/svg%3E");
}
.woocommerce-account.rnk-account-page--payment-methods .woocommerce-info::before {
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18M7 15h3'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18M7 15h3'/%3E%3C/svg%3E");
}
.woocommerce-account.rnk-account-page--lost-password .woocommerce-info,
.woocommerce-account.rnk-account-page--lost-password .woocommerce-message {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
}
.woocommerce-account.rnk-account-page--stock-notifications .woocommerce-info,
.woocommerce-account.rnk-account-page--stock-notifications .woocommerce-message {
    --rnk-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E");
}
.woocommerce-account .woocommerce-info .button { margin-left:auto; order:2; }
.woocommerce form.login, .woocommerce form.register { background:var(--rnk-color-surface); padding:var(--rnk-spacing-lg); border-color:var(--rnk-color-border); border-radius:var(--rnk-radius-md); max-width:38rem; }
.woocommerce form.register .woocommerce-form-register__submit { margin-top:var(--rnk-spacing-md); }
.woocommerce form.login .form-row:has(.woocommerce-form-login__rememberme) {
    display:flex;
    align-items:center;
    gap:var(--rnk-spacing-md);
}
.woocommerce form.login .woocommerce-form-login__rememberme {
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    margin:0;
    line-height:1.25;
}
.woocommerce form.login .woocommerce-form-login__rememberme input[type="checkbox"] { margin:0; }
@media (min-width:48rem) {
    .woocommerce-account #customer_login {
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:var(--rnk-spacing-xl);
        align-items:stretch;
    }
    .woocommerce-account #customer_login::before,
    .woocommerce-account #customer_login::after { display:none; }
    .woocommerce-account #customer_login > .u-column1,
    .woocommerce-account #customer_login > .u-column2 {
        float:none;
        display:flex;
        flex-direction:column;
        width:auto;
    }
    .woocommerce-account #customer_login form.login,
    .woocommerce-account #customer_login form.register {
        flex:1;
        width:100%;
        max-width:none;
        margin-bottom:0;
    }
}
.woocommerce form .form-row { padding:0; margin-bottom:1rem; }
.woocommerce .woocommerce-Addresses .woocommerce-Address { border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-md); padding:1.25rem; margin-bottom:1rem; }
.woocommerce .woocommerce-Addresses .woocommerce-Address h2 { font-size:1.5rem; }
.woocommerce ul.order_details { display:flex; flex-wrap:wrap; gap:1rem; padding:0; margin:1.5rem 0; }
.woocommerce ul.order_details li { float:none; padding:.75rem 1rem; margin:0; border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-sm); }
.woocommerce ul.order_details::before, .woocommerce ul.order_details::after { display:none; }
.wc-block-cart, .wc-block-checkout { --wp--preset--color--primary:var(--rnk-color-accent); --wc--form--border-color:var(--rnk-color-border-strong); font-family:var(--rnk-font-body); }
/* WCMultiShipping: make the pickup-point action unmistakably interactive. */
.woocommerce .wms_pickup_open_modal_mondial_relay,
.woocommerce .wms_pickup_open_modal_openstreetmap,
.woocommerce .wms_pickup_open_modal_google_maps,
.wc-block-checkout .wms_pickup_selection_button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:var(--rnk-control-height);
    margin:.75rem 0 1rem;
    padding:.6875rem var(--rnk-control-padding-x);
    border:1px solid var(--rnk-color-text);
    border-radius:var(--rnk-control-radius);
    background:var(--rnk-color-surface);
    color:var(--rnk-color-text);
    font-family:var(--rnk-font-body);
    font-size:var(--rnk-control-font-size);
    font-weight:700;
    line-height:1.25;
    text-align:center;
    cursor:pointer;
    box-shadow:none;
    transition:background-color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast), transform var(--rnk-transition-fast);
}
.woocommerce .wms_pickup_open_modal_mondial_relay:hover,
.woocommerce .wms_pickup_open_modal_openstreetmap:hover,
.woocommerce .wms_pickup_open_modal_google_maps:hover,
.wc-block-checkout .wms_pickup_selection_button:hover {
    border-color:var(--rnk-color-accent);
    background:var(--rnk-color-accent-soft);
    color:var(--rnk-color-accent-hover);
    transform:translateY(-1px);
}
.woocommerce .wms_pickup_open_modal_mondial_relay:focus-visible,
.woocommerce .wms_pickup_open_modal_openstreetmap:focus-visible,
.woocommerce .wms_pickup_open_modal_google_maps:focus-visible,
.wc-block-checkout .wms_pickup_selection_button:focus-visible {
    outline:2px solid var(--rnk-color-text);
    outline-offset:3px;
    box-shadow:0 0 0 4px var(--rnk-color-accent-soft);
}
/* La livraison a besoin de toute la largeur de la carte de commande : dans
   deux cellules de tableau, les intitulés longs et le sélecteur Point Relais
   se retrouvaient tassés et visuellement déconnectés. */
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals {
    display:grid;
    grid-template-columns:minmax(0, 1fr);
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals > th,
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals > td {
    display:block;
    grid-column:1 / -1;
    width:auto !important;
    min-width:0;
    box-sizing:border-box;
    text-align:left;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals > th {
    padding-bottom:.5rem;
    border-bottom:0;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals > td {
    padding-top:0;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods {
    display:grid;
    gap:.625rem;
    width:100%;
    margin:0;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods li {
    display:grid;
    grid-template-columns:1.125rem minmax(0, 1fr);
    gap:.75rem;
    align-items:center;
    min-width:0;
    margin:0;
    padding:.8125rem .875rem;
    border:1px solid var(--rnk-color-border);
    border-radius:var(--rnk-radius-sm);
    background:var(--rnk-color-surface);
    line-height:1.4;
    transition:background-color var(--rnk-transition-fast), border-color var(--rnk-transition-fast), box-shadow var(--rnk-transition-fast);
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods li:hover {
    border-color:var(--rnk-field-border-hover);
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods li:has(input:checked) {
    border-color:var(--rnk-color-text);
    background:var(--rnk-color-bg-alt);
    box-shadow:none;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods input[type="radio"] {
    width:1.125rem;
    height:1.125rem;
    margin:0;
    accent-color:var(--rnk-color-accent);
    cursor:pointer;
}
.woocommerce-checkout-review-order-table ul#shipping_method.woocommerce-shipping-methods label {
    display:flex;
    align-items:baseline;
    gap:.5rem;
    min-width:0;
    margin:0;
    font-weight:var(--rnk-fw-medium);
    cursor:pointer;
}
.woocommerce-checkout-review-order-table ul#shipping_method.woocommerce-shipping-methods label .amount {
    display:block;
    flex:0 0 auto;
    margin-left:auto;
    font-weight:700;
    white-space:nowrap;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods .wms_pickup_open_modal_mondial_relay,
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods .wms_pickup_open_modal_openstreetmap,
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods .wms_pickup_open_modal_google_maps {
    grid-column:2;
    width:100%;
    min-height:2.75rem;
    margin:.125rem 0 0;
}
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods #wms_ajax_error,
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods #wms_selected_pickup_desc {
    grid-column:2;
}
.rnk-search-form { display:flex; flex-wrap:wrap; gap:.5rem; max-width:36rem; margin-top:1.5rem; }
.rnk-search-form input[type="search"] { flex:1; min-width:12rem; }
@media(max-width:1100px) { .woocommerce ul.products.rnk-product-grid, ul.products.rnk-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .woocommerce-cart .rnk-commerce-content > .woocommerce { display:block; } .woocommerce-cart .cart-collaterals { margin-top:1.5rem; } }
@media(max-width:800px) { .woocommerce form.checkout .rnk-checkout-columns { display:block; } .woocommerce form.checkout #order_review_heading { margin:1.5rem 0 1rem; } .woocommerce-account .rnk-account-layout { display:block; } .woocommerce-account .rnk-account-nav { margin-bottom:1.5rem; } .woocommerce-account .rnk-address-grid { grid-template-columns:1fr; } .woocommerce ul.products.rnk-product-grid, ul.products.rnk-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; } .woocommerce table.shop_table th, .woocommerce table.shop_table td { padding:.75rem; } }
@media(max-width:480px) { .woocommerce div.product .product_title { font-size:2rem; } .rnk-catalog-sort { margin-left:0; } .rnk-filter-bar__mobile { flex-wrap:wrap; gap:.5rem; } .woocommerce form .form-row-first, .woocommerce form .form-row-last { float:none; width:100%; } }
@media(max-width:480px) { .woocommerce-account .rnk-account-recent-orders a { grid-template-columns:1fr auto; } .woocommerce-account .rnk-account-recent-orders a span:first-of-type { grid-column:1 / -1; } .woocommerce-account .woocommerce-info { align-items:center; flex-wrap:wrap; } .woocommerce-account .woocommerce-info .button { flex-basis:100%; margin:0 0 0 2.5rem; order:2; text-align:center; } }
@media(max-width:480px) {
    .woocommerce-form-coupon-toggle .woocommerce-info,
    .woocommerce-form-login-toggle .woocommerce-info { display:block; }
    .woocommerce-form-coupon-toggle .woocommerce-info::before,
    .woocommerce-form-login-toggle .woocommerce-info::before {
        display:inline-block;
        margin-right:.625rem;
        vertical-align:-.25rem;
    }
}
@media(max-width:640px) { .woocommerce .woocommerce-error { margin:1rem 0 2rem; } .woocommerce .woocommerce-error > li { grid-template-columns:1.5rem minmax(0,1fr); gap:.75rem 1rem; padding:1.125rem !important; } .woocommerce .woocommerce-error .button { grid-column:2; justify-self:start; margin:0; } }
@media(max-width:640px) { .woocommerce form.checkout_coupon .form-row-first, .woocommerce form.checkout_coupon .form-row-last { float:none; width:100%; margin:0; } .woocommerce form.checkout_coupon .form-row-last { margin-top:.75rem; } .woocommerce form.checkout_coupon .button { width:100%; } }
@media(max-width:480px) { .rnk-checkout-coupon__controls { grid-template-columns:1fr; } .woocommerce .rnk-checkout-coupon__button { width:100%; } }
@media(max-width:480px) { .woocommerce .wms_pickup_open_modal_mondial_relay, .woocommerce .wms_pickup_open_modal_openstreetmap, .woocommerce .wms_pickup_open_modal_google_maps, .wc-block-checkout .wms_pickup_selection_button { width:100%; } }
.navigation.pagination .nav-links { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:center; margin-top:2rem; }
.navigation.pagination .page-numbers { padding:.75rem 1rem; border:1px solid var(--rnk-color-border); border-radius:var(--rnk-radius-sm); }
.navigation.pagination .page-numbers.current { background:var(--rnk-color-text); color:var(--rnk-color-bg); }
.rnk-native-purchase-bar { display:none; }
@media(max-width:767px) { body.single-product .rnk-main { padding-bottom:5rem; } .rnk-native-purchase-bar:not([hidden]) { position:fixed; bottom:0; left:0; right:0; z-index:50; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left)); background:var(--rnk-color-surface); border-top:1px solid var(--rnk-color-border); } .rnk-native-purchase-bar__price { font-size:.875rem; } }
.woocommerce .cart-collaterals .cross-sells { float:none; width:100%; margin-bottom:1.5rem; }
.woocommerce .cart-collaterals .cross-sells ul.products.rnk-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
