/**
 * EU Legal Guarantee Notice & GARAN Label
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Commercial License
 * you can't distribute, modify or sell this code
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file
 * If you need help please contact leo@prestachamps.com
 *
 * @author    PrestaChamps
 * @copyright PrestaChamps
 * @license   commercial
 */

/* Storefront styles: .eugl-* classes only, no theme dependency. */

/* Modal ------------------------------------------------------------------ */
.eugl-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}
.eugl-modal[hidden]{display:none}
.eugl-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.6);animation:eugl-fade .15s ease-out}
.eugl-modal__dialog{position:relative;z-index:1;width:100%;max-width:640px;max-height:90vh;overflow:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;padding:16px;border-radius:6px;background:#fff;color:#222;box-shadow:0 10px 40px rgba(0,0,0,.3);animation:eugl-rise .15s ease-out}
.eugl-modal__dialog:focus{outline:none}
.eugl-modal__close{position:absolute;top:8px;right:8px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:#222;font:24px/36px Arial,sans-serif;cursor:pointer}
.eugl-modal__close:hover,.eugl-modal__close:focus{background:#eee;outline:2px solid #034ea2}
.eugl-modal__title{margin:0 44px 12px 0;font-size:1.25rem;font-weight:600;line-height:1.3}
.eugl-modal__figure{margin:0}
.eugl-modal__image{display:block;width:100%;height:auto;background:#fff}
.eugl-modal__caption{margin:8px 0 0;font-size:.95rem;color:#444}
.eugl-modal__links{margin:12px 0 0;font-size:.95rem}
.eugl-modal__link{color:#034ea2;text-decoration:underline}
body.eugl-modal-open{overflow:hidden}
@keyframes eugl-fade{from{opacity:0}to{opacity:1}}
@keyframes eugl-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.eugl-modal__backdrop,.eugl-modal__dialog{animation:none}}

/* Notice triggers -------------------------------------------------------- */
.eugl-notice{margin:.5rem 0}
.eugl-notice--header{display:inline-flex;align-items:center;align-self:center;margin:0 .75rem}
.eugl-notice--footer{width:100%;margin:.5rem 0;text-align:center}
.eugl-notice--listing{margin:.5rem 0 1rem;text-align:right}
.eugl-notice--product,.eugl-notice--cart{margin:.75rem 0}
.eugl-notice--checkout{margin:0 0 1rem;font-size:.95rem}
.eugl-notice--custom,.eugl-notice--widget{display:inline-block;margin:0}
.eugl-link{color:inherit;text-decoration:underline;cursor:pointer}
.eugl-link:hover,.eugl-link:focus{color:#034ea2}
.eugl-btn{display:inline-block;padding:.5rem 1rem;border-radius:999px;background:#034ea2;color:#fff;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer}
.eugl-btn:hover,.eugl-btn:focus{background:#023b7a;color:#fff;text-decoration:none}
.eugl-reassurance{display:flex;align-items:center;gap:.5rem;margin:.5rem 0;font-size:.95rem}
.eugl-reassurance__icon{flex:none;width:24px;height:24px;fill:#034ea2}

/* Label ------------------------------------------------------------------ */
.eugl-badge{height:28px;width:auto;vertical-align:middle}
.eugl-label-trigger{display:inline-block;line-height:1;text-decoration:none}
.eugl-label-trigger:hover .eugl-badge,.eugl-label-trigger:focus .eugl-badge{outline:2px solid #034ea2;outline-offset:2px}
.eugl-label-trigger--text{font-size:.9rem;line-height:1.3;text-decoration:underline}
.eugl-badge-text{font-size:.9rem}
.eugl-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.eugl-product-guarantees{display:grid;gap:.75rem;margin:1rem 0}
.eugl-label-block img{display:block;max-width:320px;width:100%;height:auto}
.eugl-label-block__caption{margin:.5rem 0 0;font-size:.95rem}
.eugl-label-block__link{margin:.25rem 0 0;font-size:.9rem}
.eugl-cart-line{display:flex;align-items:center;gap:.5rem;margin:.25rem 0;font-size:.9rem}
/* Classic prints displayCartExtraProductActions in the delete-icon column (~50 px): stack badge and text right-aligned
   so they extend left over the free space under quantity and price instead of into the order summary. */
.cart-line-product-actions .eugl-cart-line{flex-direction:column;align-items:flex-end;gap:.25rem;margin-top:.5rem;text-align:right}
.cart-line-product-actions .eugl-badge-text{white-space:nowrap}
.eugl-checkout-guarantees{margin:0 0 1rem}
.eugl-checkout-guarantees__title{margin:0 0 .5rem;font-size:1rem;font-weight:600}
.eugl-checkout-guarantees__list{margin:0;padding:0;list-style:none}
.eugl-checkout-guarantees__item{display:flex;align-items:center;gap:.75rem;padding:.35rem 0}
.eugl-checkout-guarantees__thumb{flex:none;width:40px;height:40px;object-fit:contain}
.eugl-checkout-guarantees__name{flex:1 1 auto;min-width:0}

/* Short producer guarantee (2 years or less): a plain, neutral mention, never styled like the GARAN label
   (no EU blue, no shield, no badge art). */
.eugl-short-guarantee{margin:0;font-size:.9rem;line-height:1.4;color:inherit}
.eugl-short-guarantee--chip{display:inline-block;padding:.1rem .45rem;border:1px solid #cfcfcf;border-radius:3px;background:#f7f7f7;color:#333;font-size:.8rem;vertical-align:middle}
.cart-line-product-actions .eugl-short-guarantee{white-space:nowrap}

/* No-JS pages (module/eugaranlabel/notice and /label) -------------------- */
.eugl-page{max-width:720px;margin:0 auto}
.eugl-page__intro{margin:0 0 1rem}
.eugl-page__figure{margin:0 0 1rem}
.eugl-page__figure img{display:block;width:100%;max-width:640px;height:auto;margin:0 auto}
.eugl-page__caption{margin:.5rem 0 0;font-size:.95rem;color:#444;text-align:center}
.eugl-page__links{margin:1rem 0 0}
.eugl-page__links a{color:#034ea2;text-decoration:underline}

/* Classic cart line on small screens: the stacked badge (right-aligned under the delete icon) would
   cover the unit price and the quantity buttons, which sit beside that icon there; start it below them.
   The hook prints .eugl-cart-line as a direct child of .cart-line-product-actions. */
@media (max-width:767px){.cart-line-product-actions>.eugl-cart-line{clear:both;padding-top:3rem}}

/* The notice button keeps white text in the theme's header and footer: themes colour their links there
   with ID selectors (Classic: #header a {color:#232323}, #header a:hover {color:#24b9d7}), which outrank
   .eugl-btn and printed dark or cyan text on the EU blue. Scoped to the storefront wrapper (.eugl-notice):
   the back office uses .eugl-btn for its own buttons, some of them not blue. */
.eugl-notice .eugl-btn,.eugl-notice .eugl-btn:visited,.eugl-notice .eugl-btn:hover,.eugl-notice .eugl-btn:focus,.eugl-notice .eugl-btn:active{color:#fff!important}
