:root{--hauteur-header: 72px;--hauteur-nav-basse: 5.5rem;--color-primary: #0e375f;--color-secondary: #e62a26;--color-accent: #e62a26;--color-success: #0e375f;--color-warning: #ffd93d;--color-error: #e62a26;--color-background: #0a0a0a;--color-surface: rgba(14, 55, 95, .1);--color-surface-light: rgba(14, 55, 95, .2);--color-surface-dark: #0f0f0f;--color-cream: #fffef8;--color-cream-light: #ffffff;--color-text-primary: #fffef8;--color-text-secondary: rgba(255, 254, 248, .8);--color-text-muted: rgba(255, 254, 248, .6);--font-family-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-display: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--border-radius-sm: .375rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--border-radius-2xl: 1.5rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;height:100%;min-height:100%}html:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0a0a0a 0%,#0e375f 50%,#0a0a0a 100%);z-index:-1;min-height:100vh;height:100%}body{font-family:var(--font-family-primary);background:transparent;color:var(--color-text-primary);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;min-height:100%;position:relative}#root{background:transparent;min-height:100%;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:clamp(2rem,5vw,4rem)}h2{font-size:clamp(1.5rem,4vw,3rem)}h3{font-size:clamp(1.25rem,3vw,2rem)}h4{font-size:clamp(1.125rem,2.5vw,1.5rem)}h5{font-size:clamp(1rem,2vw,1.25rem)}h6{font-size:clamp(.875rem,1.5vw,1rem)}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a{color:var(--color-text-primary);text-decoration:none;transition:all var(--transition-normal);position:relative}a:hover{color:var(--color-secondary);transform:translateY(-1px)}button{font-family:var(--font-family-primary);cursor:pointer;border:none;outline:none;transition:all var(--transition-normal)}button:focus{outline:2px solid var(--color-primary);outline-offset:2px}input,textarea,select{font-family:inherit;font-size:100%;background:var(--color-surface);border:1px solid var(--color-surface-light);border-radius:var(--border-radius-md);color:var(--color-text-primary);padding:var(--spacing-md);transition:all var(--transition-normal)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(14,55,95,.2)}@media (pointer: coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:max(16px,1em)!important}}img{max-width:100%;height:auto;display:block}html,body{scrollbar-width:thin;scrollbar-color:transparent transparent;-ms-overflow-style:none}html.scrolling,body.scrolling{scrollbar-color:var(--color-primary) var(--color-surface)}html::-webkit-scrollbar,body::-webkit-scrollbar{width:8px;height:8px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{background:transparent}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--border-radius-sm);transition:background var(--transition-normal)}html.scrolling::-webkit-scrollbar-thumb,body.scrolling::-webkit-scrollbar-thumb{background:var(--color-primary)}html.scrolling::-webkit-scrollbar-thumb:hover,body.scrolling::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}*{scrollbar-width:thin;scrollbar-color:transparent transparent}*:hover{scrollbar-color:var(--color-primary) var(--color-surface)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--border-radius-sm);transition:background var(--transition-normal)}*:hover::-webkit-scrollbar-thumb{background:var(--color-primary)}*::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}::selection{background:var(--color-secondary);color:var(--color-text-primary)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.golden-white-gradient{background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%)}.golden-white-gradient-light{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%)}.glass{background:rgba(14,55,95,.15);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(245,245,220,.1);box-shadow:0 8px 32px rgba(0,0,0,.37)}.glass-light{background:rgba(245,245,220,.05);backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);border:1px solid rgba(245,245,220,.15)}.gradient-text{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease-in-out infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.fade-in{animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scroll-animate{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate.visible{opacity:1;transform:translateY(0)}.scroll-animate-left{opacity:0;transform:translate(-30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate-left.visible{opacity:1;transform:translate(0)}.scroll-animate-right{opacity:0;transform:translate(30px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate-right.visible{opacity:1;transform:translate(0)}.scroll-animate-scale{opacity:0;transform:scale(.9);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate-scale.visible{opacity:1;transform:scale(1)}@media (max-width: 768px){.container{padding:0 var(--spacing-md)}}@media (max-width: 1023px){:root{--hauteur-header: 64px}}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(10,22,38,.92);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,254,248,.1);transition:transform var(--transition-normal)}.site-header.hidden{transform:translateY(-100%)}.site-header__inner{max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg);height:var(--hauteur-header);display:flex;align-items:center;gap:var(--spacing-2xl)}.logo{display:flex;align-items:center;flex-shrink:0;position:relative;user-select:none;-webkit-user-select:none}.logo-image{height:44px;width:auto;object-fit:contain;display:block;background:var(--color-cream-light);border-radius:var(--border-radius-md);padding:.25rem .5rem;transition:transform var(--transition-normal)}.logo:hover .logo-image{transform:scale(1.03)}.logo:focus-visible{outline:3px solid var(--color-cream);outline-offset:4px;border-radius:var(--border-radius-md)}.site-nav{display:flex;align-items:center;gap:var(--spacing-xl);margin-right:auto}.site-nav__lien{position:relative;padding:.5rem 0;color:var(--color-text-secondary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:500;transition:color var(--transition-normal)}.site-nav__lien:hover,.site-nav__lien:focus-visible{color:var(--color-cream);transform:none}.site-nav__lien:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--color-secondary);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-normal)}.site-nav__lien:hover:after,.site-nav__lien.active:after{transform:scaleX(1)}.site-nav__lien.active{color:var(--color-cream)}.site-header__actions{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0}.site-nav__groupe{position:relative;display:flex;align-items:center}.site-nav__declencheur{display:inline-flex;align-items:center;gap:.375rem;background:none;border:none;font-family:var(--font-family-display);font-size:.9375rem;font-weight:500;cursor:pointer}.site-nav__declencheur:focus{outline:none}.site-nav__declencheur:focus-visible{outline:3px solid var(--color-cream);outline-offset:3px;border-radius:var(--border-radius-sm)}.site-nav__chevron{width:.625rem;height:.625rem;transition:transform var(--transition-normal)}.site-nav__chevron.ouvert{transform:rotate(180deg)}.mega-menu{position:absolute;top:calc(100% + .5rem);left:-1rem;width:15rem;display:grid;grid-template-columns:15rem 1fr;transition:width .24s cubic-bezier(.4,0,.2,1);background:var(--color-cream-light);border:1px solid rgba(14,55,95,.14);border-radius:var(--border-radius-lg);box-shadow:0 18px 48px rgba(0,0,0,.3);overflow:hidden}.mega-menu.est-deploye{width:min(52rem,calc(100vw - 4rem))}.mega-menu__familles{list-style:none;margin:0;padding:var(--spacing-sm);background:rgba(14,55,95,.035);border-right:1px solid rgba(14,55,95,.1)}.mega-menu__tout{display:block;margin-bottom:var(--spacing-sm);padding:.5rem .625rem;border-bottom:1px solid rgba(14,55,95,.12);color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:700;text-decoration:none;transition:background-color var(--transition-normal)}.mega-menu__famille{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);width:100%;padding:.4375rem .625rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.85);font-family:var(--font-family-primary);font-size:.9375rem;line-height:1.35;text-align:left;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.mega-menu__famille:hover{background:rgba(14,55,95,.06);color:var(--color-primary)}.mega-menu__famille.active{background:var(--color-primary);color:var(--color-cream);font-weight:600}.mega-menu__chevron{flex-shrink:0;width:.625rem;height:.625rem;opacity:0;transition:opacity var(--transition-normal)}.mega-menu__famille:hover .mega-menu__chevron,.mega-menu__famille.active .mega-menu__chevron{opacity:.8}.mega-menu__famille:focus:not(:focus-visible),.mega-menu__sous-lien:focus:not(:focus-visible),.mega-menu__tout:focus:not(:focus-visible){outline:none}.mega-menu__famille:focus-visible,.mega-menu__sous-lien:focus-visible,.mega-menu__panneau-titre:focus-visible,.mega-menu__tout:focus-visible{outline:3px solid var(--color-primary);outline-offset:-2px}.mega-menu__panneau{min-width:0;padding:var(--spacing-lg)}.mega-menu__panneau-titre{display:inline-block;margin-bottom:var(--spacing-md);padding-bottom:.375rem;border-bottom:2px solid var(--color-secondary);color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:700;text-decoration:none}.mega-menu__panneau-titre:hover{color:var(--color-primary)}.mega-menu__sous-liste{list-style:none;margin:0;padding:0;columns:2;column-gap:var(--spacing-lg)}.mega-menu__sous-lien{display:block;break-inside:avoid;padding:.3125rem .5rem;border-radius:var(--border-radius-sm);color:rgba(14,55,95,.75);font-size:.875rem;line-height:1.4;text-decoration:none;transition:background-color var(--transition-normal),color var(--transition-normal)}.mega-menu__sous-lien:hover{background:rgba(14,55,95,.06);color:var(--color-primary)}.recherche-header{position:relative;display:flex;align-items:center}.recherche-header__icone{position:absolute;left:.75rem;width:.875rem;height:.875rem;color:rgba(255,254,248,.6);pointer-events:none}.recherche-header__champ{width:15rem;padding:.5rem .75rem .5rem 2.125rem;background:rgba(255,254,248,.08);border:1px solid rgba(255,254,248,.22);border-radius:var(--border-radius-lg);color:var(--color-text-primary);font-family:var(--font-family-primary);font-size:.875rem;transition:border-color var(--transition-normal),background-color var(--transition-normal)}.recherche-header__champ::placeholder{color:rgba(255,254,248,.72)}.recherche-header__champ:focus{outline:none;background:rgba(255,254,248,.14);border-color:rgba(255,254,248,.55)}.recherche-header__champ:focus-visible{outline:3px solid var(--color-cream);outline-offset:1px}.telephone-header{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-text-primary);font-family:var(--font-family-display);font-size:.875rem;font-weight:600;white-space:nowrap}.telephone-header:hover{color:var(--color-cream);transform:none}.telephone-header__icone{width:.8125rem;height:.8125rem;color:var(--color-secondary)}.bouton-compte{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:rgba(255,254,248,.1);border:1px solid rgba(255,254,248,.28);border-radius:var(--border-radius-lg);color:var(--color-text-primary);font-family:var(--font-family-display);font-size:.875rem;font-weight:600;transition:background-color var(--transition-normal)}.bouton-compte:hover{background:rgba(255,254,248,.2)}.bouton-compte:focus-visible{outline:3px solid var(--color-cream);outline-offset:2px}.bouton-compte__icone{width:.875rem;height:.875rem}.groupe-compte{position:relative}.admin-indicator{display:flex;align-items:center;gap:var(--spacing-sm);padding:.4375rem .875rem;background:rgba(255,254,248,.1);border:1px solid rgba(255,254,248,.2);border-radius:var(--border-radius-lg);color:var(--color-text-primary);font-size:.875rem;font-weight:500;transition:background-color var(--transition-normal)}.admin-indicator:hover{background:rgba(255,254,248,.18);color:var(--color-text-primary);transform:none}.admin-icon{width:.9375rem;height:.9375rem}.admin-label{max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-badge{display:flex;align-items:center;gap:.25rem;padding:.125rem .4375rem;background:var(--color-secondary);border-radius:999px;font-size:.75rem;font-weight:700}.cart-count{line-height:1}.admin-chevron{width:.625rem;height:.625rem;opacity:.7;transition:transform var(--transition-normal)}.admin-chevron.ouvert{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){.admin-chevron{transition:none}}.menu-compte{position:absolute;top:calc(100% + .5rem);right:0;z-index:1100;min-width:13rem;padding:.375rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-md);box-shadow:0 12px 32px rgba(10,10,10,.24)}.menu-compte__item{display:flex;align-items:center;gap:.625rem;width:100%;padding:.625rem .75rem;background:none;border:none;border-radius:var(--border-radius-sm);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.875rem;font-weight:500;text-align:left;cursor:pointer;transition:background-color .3s ease}.menu-compte__item:hover{background:rgba(14,55,95,.08);color:var(--color-primary)}.menu-compte__item:focus-visible{outline:3px solid var(--color-primary);outline-offset:-2px}.menu-compte__item--sortie{color:#c81f1b}.menu-compte__item--sortie:hover{background:rgba(230,42,38,.08);color:#c81f1b}.bottom-nav{display:none}@media (max-width: 1023px){.site-header__inner{gap:var(--spacing-md)}.site-nav,.mega-menu,.telephone-header{display:none}.site-header__actions{flex:1;min-width:0;display:flex;align-items:center;gap:var(--spacing-sm)}.recherche-header{flex:1;min-width:0}.recherche-header__champ{width:100%}.bouton-compte{flex-shrink:0;padding:.5rem}.bouton-compte span,.admin-label{display:none}.logo-image{height:40px}.bottom-nav{position:fixed;bottom:calc(var(--spacing-md) + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);background:rgba(10,22,38,.92);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,254,248,.12);border-radius:var(--border-radius-2xl);box-shadow:0 8px 32px rgba(0,0,0,.35);transition:transform var(--transition-normal),opacity var(--transition-normal)}.bottom-nav.hidden{transform:translate(-50%) translateY(150%);opacity:0}.nav-item{display:flex;flex-direction:column;align-items:center;gap:.1875rem;min-width:72px;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);color:var(--color-text-secondary);font-size:.75rem;transition:background-color var(--transition-normal)}.nav-item:hover,.nav-item.active{background:rgba(255,254,248,.1);color:var(--color-cream);transform:none}.nav-icon{width:1.125rem;height:1.125rem}.nav-item.active .nav-icon{color:var(--color-secondary)}.nav-label{line-height:1}}@media (max-width: 1399px) and (min-width: 1024px){.telephone-header span{display:none}}@media (max-width: 1200px) and (min-width: 1024px){.recherche-header__champ{width:10rem}}@media (prefers-reduced-motion: reduce){.mega-menu,.site-header,.bottom-nav,.logo-image,.site-nav__lien,.site-nav__lien:after{transition:none}}.mega-menu__tout{display:block;margin-bottom:var(--spacing-sm);padding:.5rem .75rem;border-bottom:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-md) var(--border-radius-md) 0 0;color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:700;text-decoration:none;transition:background-color var(--transition-normal)}.mega-menu__tout:hover{background:rgba(14,55,95,.07);color:var(--color-primary)}.mega-menu__tout:focus-visible{outline:3px solid var(--color-primary);outline-offset:-2px}.pwa-voile{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background:rgba(10,25,45,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);overflow-y:auto}.pwa-modale{position:relative;width:100%;max-width:32rem;max-height:calc(100vh - var(--spacing-2xl));padding:var(--spacing-2xl);overflow-y:auto;background:var(--color-cream-light);border-radius:var(--border-radius-lg);box-shadow:0 24px 60px rgba(10,25,45,.35)}.pwa-fermer{position:absolute;top:var(--spacing-md);right:var(--spacing-md);display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:transparent;border:none;border-radius:var(--border-radius-sm);color:rgba(14,55,95,.55);cursor:pointer;transition:background-color var(--transition-normal)}.pwa-fermer:hover{background:rgba(14,55,95,.09);color:var(--color-primary)}.pwa-fermer:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.pwa-titre{display:inline-block;margin:0 var(--spacing-2xl) var(--spacing-sm) 0;padding-bottom:.25rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:1.375rem;font-weight:700;line-height:1.15;box-shadow:inset 0 -.14em rgba(230,42,38,.85)}.pwa-accroche{margin:0 0 var(--spacing-xl);color:rgba(14,55,95,.78);font-size:.9375rem;line-height:1.55}.pwa-direct{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.pwa-direct__bouton{display:inline-flex;align-items:center;gap:.625rem;padding:.8125rem 1.5rem;border:none;border-radius:var(--border-radius-md);background:var(--color-primary);color:var(--color-cream);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal)}.pwa-direct__bouton:hover{background:#0a2a4a}.pwa-direct__bouton:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.pwa-direct__note{margin:0;color:rgba(14,55,95,.6);font-size:.8125rem}.pwa-detecte{display:flex;align-items:center;gap:.625rem;margin:0 0 var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:rgba(14,55,95,.05);border-left:3px solid var(--color-primary);border-radius:var(--border-radius-sm);color:var(--color-primary);font-size:.875rem;line-height:1.45}.pwa-detecte svg{flex-shrink:0;color:var(--color-secondary)}.pwa-etapes{margin:0 0 var(--spacing-xl);padding-left:1.375rem;color:rgba(14,55,95,.85);font-size:.9375rem;line-height:1.6}.pwa-etapes li{margin-bottom:.625rem;padding-left:.25rem}.pwa-etapes li::marker{color:var(--color-secondary);font-weight:700}.pwa-correction{padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12)}.pwa-correction__bascule{padding:0;background:none;border:none;color:var(--color-primary);font-family:inherit;font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.pwa-correction__bascule:hover{color:var(--color-secondary)}.pwa-correction__bascule:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--border-radius-sm)}.pwa-correction__champs{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-top:var(--spacing-md)}.pwa-correction__champs label{display:flex;flex-direction:column;gap:.3125rem;color:var(--color-primary);font-size:.8125rem;font-weight:600}.pwa-correction__champs select{padding:.5rem .625rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.875rem}@media (max-width: 480px){.pwa-modale{padding:var(--spacing-xl) var(--spacing-lg)}.pwa-correction__champs{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.pwa-fermer,.pwa-direct__bouton{transition:none}}.footer{position:relative;padding:var(--spacing-3xl) 0 var(--spacing-xl);background:var(--color-primary);border-top:3px solid var(--color-secondary);color:rgba(255,254,248,.82)}.footer-grille{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--spacing-2xl);padding-bottom:var(--spacing-2xl);border-bottom:1px solid rgba(255,254,248,.14)}.footer-nom{margin:0 0 var(--spacing-sm);color:var(--color-cream);font-family:var(--font-family-display);font-size:1.125rem;font-weight:700;letter-spacing:.02em}.footer-baseline{max-width:38ch;margin:0 0 var(--spacing-lg);font-size:.875rem;line-height:1.6}.footer-adresse{margin:0 0 var(--spacing-lg);font-size:.875rem;font-style:normal;line-height:1.6}.footer-contact{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}.footer-contact li{display:flex;align-items:center;gap:.625rem;font-size:.875rem}.footer-contact svg{flex-shrink:0;font-size:.75rem;color:var(--color-secondary)}.footer-contact a{color:var(--color-cream);text-decoration:none}.footer-contact a:hover{text-decoration:underline;text-underline-offset:2px}.footer-colonne h2{margin:0 0 var(--spacing-md);color:var(--color-cream);font-family:var(--font-family-display);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.footer-colonne ul{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}.footer-colonne a{color:rgba(255,254,248,.82);font-size:.875rem;text-decoration:none;transition:color var(--transition-normal)}.footer-colonne a:hover{color:var(--color-cream);text-decoration:underline;text-underline-offset:3px}.footer-colonne a:focus-visible,.footer-contact a:focus-visible,.footer-bas a:focus-visible,.footer-installer:focus-visible{outline:3px solid var(--color-cream);outline-offset:3px;border-radius:var(--border-radius-sm)}.footer-horaires{margin:0 0 var(--spacing-lg);font-size:.875rem;line-height:1.6}.footer-installer{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:transparent;border:1px solid rgba(255,254,248,.35);border-radius:var(--border-radius-md);color:var(--color-cream);font-family:var(--font-family-primary);font-size:.8125rem;cursor:pointer;transition:background-color var(--transition-normal),border-color var(--transition-normal)}.footer-installer:hover{background:rgba(255,254,248,.1);border-color:var(--color-cream)}.footer-installer svg{font-size:.75rem}.footer-bas{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm) var(--spacing-lg);padding-top:var(--spacing-lg)}.footer-bas p{margin:0;color:rgba(255,254,248,.6);font-size:.8125rem}.footer-bas a{color:rgba(255,254,248,.85);font-weight:600;text-decoration:none}.footer-bas a:hover{color:var(--color-cream);text-decoration:underline;text-underline-offset:2px}@media (max-width: 1023px){.footer-grille{grid-template-columns:1fr 1fr;gap:var(--spacing-xl)}.footer-identite{grid-column:1 / -1}}@media (max-width: 600px){.footer-grille{grid-template-columns:1fr}.footer-bas{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion: reduce){.footer-colonne a,.footer-installer{transition:none}}@media (max-width: 1023px){.footer{padding-bottom:calc(var(--hauteur-nav-basse) + env(safe-area-inset-bottom,0px))}}.hero-section{position:relative;min-height:62vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg-picture{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}.hero-bg-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,rgba(10,10,10,.88) 0%,rgba(14,55,95,.82) 45%,rgba(14,55,95,.55) 100%);z-index:1}.hero-content{position:relative;z-index:2;width:100%;max-width:1200px;margin:0 auto;padding:calc(var(--hauteur-header) + var(--spacing-3xl)) var(--spacing-lg) var(--spacing-3xl);text-align:left}.hero-eyebrow{display:inline-block;margin:0 0 var(--spacing-lg);padding:.375rem .875rem;border:1px solid rgba(255,254,248,.35);border-radius:999px;color:var(--color-text-primary);font-size:.8125rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.hero-title{max-width:20ch;margin:0 0 var(--spacing-lg);color:var(--color-text-primary);font-family:var(--font-family-display);font-size:clamp(2rem,5vw,3.75rem);font-weight:700;line-height:1.08}.hero-title-accent{color:var(--color-cream);box-shadow:inset 0 -.18em rgba(230,42,38,.85)}.hero-subtitle{max-width:58ch;margin:0 0 var(--spacing-2xl);color:var(--color-text-secondary);font-size:clamp(1rem,1.6vw,1.1875rem);line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.hero-cta{display:inline-block;padding:.9375rem 2rem;border-radius:var(--border-radius-lg);font-family:var(--font-family-display);font-size:1rem;font-weight:600;text-decoration:none;transition:transform var(--transition-normal),background-color var(--transition-normal),box-shadow var(--transition-normal)}.hero-cta--primaire{background:var(--color-secondary);color:var(--color-cream-light);box-shadow:0 8px 24px rgba(230,42,38,.32)}.hero-cta--primaire:hover{background:#cf2521;color:var(--color-cream-light);transform:translateY(-2px)}.hero-cta--secondaire{background:rgba(255,254,248,.08);color:var(--color-text-primary);border:1px solid rgba(255,254,248,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hero-cta--secondaire:hover{background:rgba(255,254,248,.16);color:var(--color-text-primary);transform:translateY(-2px)}.hero-cta:focus-visible{outline:3px solid var(--color-cream);outline-offset:3px}@media (prefers-reduced-motion: reduce){.hero-cta,.hero-cta:hover{transition:none;transform:none}}@media (max-width: 767px){.hero-section{min-height:78vh}.hero-overlay{background:linear-gradient(180deg,rgba(10,10,10,.86) 0%,rgba(14,55,95,.84) 100%)}.hero-content{padding:calc(var(--hauteur-header) + var(--spacing-2xl)) var(--spacing-lg) var(--spacing-2xl)}.hero-cta{width:100%;text-align:center}}.reassurance{background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%);border-bottom:1px solid rgba(14,55,95,.1)}.reassurance__liste{max-width:1200px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-lg)}.reassurance__item{display:flex;align-items:center;gap:var(--spacing-md)}.reassurance__icone{flex-shrink:0;width:1.75rem;height:1.75rem;color:var(--color-secondary)}.reassurance__texte{min-width:0}.reassurance__titre{margin:0;color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;line-height:1.3}.reassurance__detail{margin:.125rem 0 0;color:rgba(14,55,95,.78);font-size:.8125rem;line-height:1.4}@media (max-width: 1023px){.reassurance__liste{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md) var(--spacing-lg)}}@media (max-width: 599px){.reassurance__liste{grid-template-columns:1fr}}.about-section{position:relative;padding:60px 0 80px;overflow:hidden}.about-section__bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.about-blob{position:absolute;border-radius:50%;filter:blur(90px)}.about-blob--1{width:480px;height:480px;top:-160px;right:-100px;background:radial-gradient(circle,rgba(230,42,38,.06),transparent 70%)}.about-blob--2{width:360px;height:360px;bottom:-100px;left:-80px;background:radial-gradient(circle,rgba(14,55,95,.28),transparent 70%)}.about-section__inner{position:relative;z-index:1;max-width:760px}.about-section__eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-secondary);margin-bottom:18px}.about-section__eyebrow-line{display:block;width:22px;height:1px;background:var(--color-secondary);opacity:.5}.about-section__title{font-family:var(--font-family-display);font-size:clamp(1.9rem,3.2vw,2.7rem);font-weight:800;color:var(--color-text-primary);line-height:1.15;margin-bottom:20px}.about-section__title-accent{color:var(--color-secondary);font-weight:800;font-style:italic}.about-section__divider{width:40px;height:3px;background:linear-gradient(90deg,var(--color-secondary),transparent);border-radius:2px;margin-bottom:20px}.about-section__text{font-size:.97rem;line-height:1.8;color:var(--color-text-secondary);margin-bottom:12px}.about-section__text:last-child{margin-bottom:0}.about-brand{font-weight:700;color:var(--color-text-primary);position:relative;display:inline-block}.about-brand:after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:1.5px;background:var(--color-secondary);border-radius:1px;transition:width .4s ease}.about-brand:hover:after{width:100%}.about-section__cards{display:flex;flex-direction:column;gap:14px}.about-card{position:relative;display:flex;align-items:center;gap:18px;padding:22px 24px;border-radius:14px;background:rgba(14,55,95,.2);border:1px solid rgba(255,254,248,.07);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;cursor:default;user-select:none;transition:background .3s ease,border-color .3s ease}.about-card:hover{background:rgba(14,55,95,.28);border-color:rgba(255,254,248,.1)}.about-card__bar{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--color-secondary);border-radius:0 2px 2px 0;transition:height .3s ease}.about-card:hover .about-card__bar{height:50%}.about-card__icon-wrap{width:50px;height:50px;min-width:50px;border-radius:12px;background:rgba(255,254,248,.05);border:1px solid rgba(255,254,248,.09);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s ease,border-color .3s ease}.about-card:hover .about-card__icon-wrap{background:rgba(230,42,38,.1);border-color:rgba(230,42,38,.2)}.about-card__icon{font-size:1.25rem;color:var(--color-secondary);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.about-card:hover .about-card__icon{transform:scale(1.2)}.about-card__body{display:flex;flex-direction:column;gap:4px}.about-card__label{font-family:var(--font-family-display);font-size:.98rem;font-weight:700;color:var(--color-text-primary);line-height:1.2}.about-card__desc{font-size:.8rem;color:var(--color-text-muted);line-height:1.4}.sa{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.sa.visible{opacity:1;transform:translateY(0)}@media (max-width: 960px){.about-section__inner{max-width:none}}@media (max-width: 480px){.about-section{padding:48px 0 60px}.about-card{padding:16px 18px}.about-card__icon-wrap{width:42px;height:42px;min-width:42px}}.product-ranges-section{padding:var(--spacing-3xl) 0;background:var(--color-text-primary)}.ranges-title{text-align:center;color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.75rem,4vw,2.5rem);margin:0 0 var(--spacing-md);font-weight:700}.ranges-intro{max-width:56ch;margin:0 auto var(--spacing-3xl);text-align:center;color:rgba(14,55,95,.8);font-size:1rem;line-height:1.6}.ranges-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}.range-card{position:relative;aspect-ratio:4 / 3;text-decoration:none;border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:0 2px 15px rgba(14,55,95,.1);transition:transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1)}.range-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.32) 45%,transparent 100%);transition:background .4s ease;z-index:1}.range-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(14,55,95,.22)}.range-card:hover:after{background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.4) 45%,transparent 100%)}.range-card:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.range-image-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.range-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.range-card:hover .range-image-wrapper img{transform:scale(1.06)}.range-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#12304d 0%,#0e375f 60%,#143b66 100%)}.range-name{position:absolute;bottom:0;left:0;right:0;z-index:2;margin:0;padding:var(--spacing-md) var(--spacing-lg);color:#fff;font-family:var(--font-family-display);font-size:1.0625rem;font-weight:700;line-height:1.25;text-shadow:0 2px 10px rgba(0,0,0,.5);transition:padding .3s ease}.range-card:hover .range-name{padding-left:calc(var(--spacing-lg) + 6px)}@media (max-width: 1199px){.ranges-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 767px){.ranges-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.range-name{padding:var(--spacing-sm) var(--spacing-md);font-size:.9375rem}}@media (prefers-reduced-motion: reduce){.range-card,.range-card:hover,.range-image-wrapper img,.range-card:hover .range-image-wrapper img,.range-name{transition:none;transform:none}}.bestseller-section{padding:var(--spacing-3xl) 0;background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%);--color-text-primary: var(--color-primary);--color-text-secondary: rgba(14, 55, 95, .82);--color-text-muted: rgba(14, 55, 95, .65);position:relative;overflow:hidden}.bestseller-section .bestseller-label,.bestseller-section .bestseller-card-gamme{color:#c4211d}.bestseller-header{text-align:center;max-width:800px;margin:0 auto var(--spacing-3xl);padding:0 var(--spacing-lg)}.bestseller-label{font-size:.875rem;text-transform:uppercase;letter-spacing:3px;color:var(--color-secondary);font-weight:600;margin-bottom:var(--spacing-md);display:inline-block;position:relative}.bestseller-label:before,.bestseller-label:after{content:"";position:absolute;top:50%;width:40px;height:2px;background:linear-gradient(90deg,transparent,var(--color-secondary))}.bestseller-label:before{right:calc(100% + 1rem)}.bestseller-label:after{left:calc(100% + 1rem);background:linear-gradient(90deg,var(--color-secondary),transparent)}.bestseller-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;margin-bottom:var(--spacing-md);color:var(--color-text-primary);letter-spacing:-.02em}.bestseller-description{font-size:1.125rem;color:var(--color-text-secondary);line-height:1.8}.bestseller-carousel{width:100%;overflow:hidden;position:relative;margin-bottom:var(--spacing-3xl);cursor:grab;-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 10%,black 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,black 10%,black 90%,transparent 100%);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.bestseller-carousel:active{cursor:grabbing}.bestseller-carousel *{pointer-events:none}.bestseller-card,.bestseller-card-cta{pointer-events:auto}.bestseller-track{display:flex;gap:var(--spacing-xl);padding:var(--spacing-xl) 0}.bestseller-card{flex:0 0 400px;background:var(--color-cream-light);border-radius:var(--border-radius-xl);overflow:hidden;transition:all var(--transition-normal);border:1px solid rgba(14,55,95,.12);box-shadow:0 2px 12px rgba(14,55,95,.06);position:relative}.bestseller-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(14,55,95,.1) 0%,rgba(230,42,38,.05) 100%);opacity:0;transition:opacity var(--transition-normal);pointer-events:none;z-index:1}.bestseller-card:hover{transform:translateY(-8px);border-color:rgba(230,42,38,.3);box-shadow:0 16px 32px rgba(14,55,95,.14),0 0 0 1px rgba(230,42,38,.2)}.bestseller-card:hover:before{opacity:1}.bestseller-card-image{width:100%;height:300px;background:#ffffff;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.bestseller-card-image:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(230,42,38,.1) 50%,transparent 100%);opacity:0;transition:opacity var(--transition-slow)}.bestseller-card:hover .bestseller-card-image:before{opacity:1}.bestseller-card-image img{width:100%;height:100%;object-fit:contain;padding:var(--spacing-lg);transition:transform var(--transition-slow);position:relative;z-index:2}.bestseller-card:hover .bestseller-card-image img{transform:scale(1.05)}.bestseller-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);font-size:.875rem;background:linear-gradient(135deg,rgba(14,55,95,.3) 0%,rgba(14,55,95,.1) 100%)}.bestseller-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.8) 100%);display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);opacity:0;transition:opacity var(--transition-normal);z-index:10;border-radius:var(--border-radius-xl)}.bestseller-card:hover .bestseller-card-overlay{opacity:1}.bestseller-card-cta{background:var(--color-secondary);color:var(--color-text-primary);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:1px;text-decoration:none;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-sm);box-shadow:0 4px 12px rgba(230,42,38,.4)}.bestseller-card-cta:after{content:"→";transition:transform var(--transition-normal)}.bestseller-card-cta:hover{background:var(--color-primary);transform:translateY(-2px);box-shadow:0 6px 20px rgba(14,55,95,.5)}.bestseller-card-cta:hover:after{transform:translate(4px)}.bestseller-card-content{padding:var(--spacing-xl);position:relative;z-index:2}.bestseller-card-title{font-size:1.125rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bestseller-card-gamme{font-size:.875rem;color:var(--color-secondary);text-transform:uppercase;letter-spacing:1px;font-weight:600;margin-bottom:var(--spacing-md)}.bestseller-card-sizes-count{color:var(--color-text-muted);font-size:.8125rem;margin-bottom:var(--spacing-xs);font-weight:500;font-style:italic}.bestseller-card-prices{margin-top:auto;padding-top:var(--spacing-sm);border-top:2px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:var(--spacing-xs)}.bestseller-price-row{display:flex;align-items:center}.bestseller-price-row-main{justify-content:center}.bestseller-price-value-ht{color:var(--color-text-primary);font-size:1.125rem;font-weight:700;text-align:center;width:100%;letter-spacing:.02em}.bestseller-price-row-secondary{justify-content:center}.bestseller-price-value-ttc{color:var(--color-text-muted);font-size:.875rem;font-weight:500;text-align:center;width:100%}.bestseller-footer{text-align:center;padding:0 var(--spacing-lg)}.bestseller-footer-cta{display:inline-flex;align-items:center;gap:var(--spacing-md);background:var(--color-cream-light);color:var(--color-primary);padding:var(--spacing-lg) var(--spacing-2xl);border-radius:var(--border-radius-lg);border:2px solid rgba(14,55,95,.18);text-decoration:none;font-weight:600;font-size:1rem;transition:all var(--transition-normal);text-transform:uppercase;letter-spacing:1.5px;position:relative;overflow:hidden}.bestseller-footer-cta:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(230,42,38,.2),transparent);transition:left var(--transition-slow)}.bestseller-footer-cta:after{content:"→";font-size:1.5rem;transition:transform var(--transition-normal)}.bestseller-footer-cta:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px rgba(230,42,38,.4)}.bestseller-footer-cta:hover:before{left:100%}.bestseller-footer-cta:hover:after{transform:translate(5px);color:#fff}@media (max-width: 768px){.bestseller-section{padding:var(--spacing-2xl) 0}.bestseller-header{margin-bottom:var(--spacing-2xl)}.bestseller-label:before,.bestseller-label:after{width:20px}.bestseller-card{flex:0 0 300px}.bestseller-card-image{height:240px}.bestseller-track{gap:var(--spacing-md);padding:var(--spacing-md) 0}.bestseller-carousel{margin-bottom:var(--spacing-2xl);-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 95%,transparent 100%)}}@media (max-width: 480px){.bestseller-card{flex:0 0 260px}.bestseller-card-image{height:200px}.bestseller-card-content{padding:var(--spacing-md)}.bestseller-footer-cta{padding:var(--spacing-md) var(--spacing-xl);font-size:.875rem}}.zone-livraison{background:linear-gradient(135deg,#ffffff 0%,#fffef8 30%,#fffef5 60%,#fffef8 100%)}.zone-livraison__inner{max-width:1200px;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-xl)}.zone-livraison__icone{flex-shrink:0;width:2.25rem;height:2.25rem;color:var(--color-secondary)}.zone-livraison__texte{flex:1;min-width:0}.zone-livraison__titre{margin:0 0 var(--spacing-xs);color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.125rem,2.4vw,1.5rem);font-weight:700;line-height:1.25}.zone-livraison__sous-titre{margin:0;max-width:62ch;color:rgba(14,55,95,.8);font-size:.9375rem;line-height:1.55}.zone-livraison__cta{flex-shrink:0;padding:.8125rem 1.5rem;background:var(--color-primary);color:var(--color-cream);border-radius:var(--border-radius-lg);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;transition:background-color var(--transition-normal),transform var(--transition-normal)}.zone-livraison__cta:hover{background:#0a2a4a;color:var(--color-cream);transform:translateY(-2px)}.zone-livraison__cta:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}@media (max-width: 767px){.zone-livraison__inner{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.zone-livraison__cta{width:100%;text-align:center}}@media (prefers-reduced-motion: reduce){.zone-livraison__cta,.zone-livraison__cta:hover{transition:none;transform:none}}.home{min-height:100vh;padding-top:0;padding-bottom:0;background:transparent}.contact-section-title{text-align:center;color:var(--color-primary);font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:var(--spacing-2xl);font-weight:700}@media (max-width: 1023px){.home{padding-top:0;padding-bottom:0}.home-contact-section{padding:var(--spacing-2xl) 0}}.product-card{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--color-cream-light);border:1px solid rgba(14,55,95,.14);border-radius:var(--border-radius-md);cursor:pointer;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.product-card:hover{border-color:var(--color-primary);box-shadow:0 6px 20px rgba(14,55,95,.13)}.product-card:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.product-image{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;background:#f2f2f2;border-bottom:1px solid rgba(14,55,95,.09)}.product-image-img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.4,0,.2,1)}.product-card:hover .product-image-img{transform:scale(1.04)}.product-image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#12304d 0%,#0e375f 100%);color:var(--color-cream);font-family:var(--font-family-display);font-size:2rem;font-weight:700}.product-rupture{position:absolute;top:.5rem;left:.5rem;padding:.1875rem .5rem;border-radius:var(--border-radius-sm);background:var(--color-secondary);color:var(--color-cream-light);font-family:var(--font-family-display);font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.product-info{display:flex;flex-direction:column;flex:1;padding:.75rem .875rem .875rem}.product-gamme{margin:0 0 .1875rem;color:rgba(14,55,95,.5);font-size:.625rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.product-name{margin:0;color:var(--color-primary);font-family:var(--font-family-display);font-size:.875rem;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(.875rem * 1.35 * 2)}.product-meta{display:flex;align-items:baseline;flex-wrap:wrap;margin:.375rem 0 0;color:rgba(14,55,95,.55);font-size:.75rem}.product-ref{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.7188rem;letter-spacing:.01em}.product-prices{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4375rem;margin-top:auto;padding-top:.75rem}.price-value-ht{color:var(--color-primary);font-family:var(--font-family-display);font-size:1.0625rem;font-weight:700;white-space:nowrap}.price-value-ttc{color:rgba(14,55,95,.5);font-size:.75rem;white-space:nowrap}.product-card.est-en-rupture .product-image-img{filter:grayscale(.55);opacity:.75}@media (prefers-reduced-motion: reduce){.product-card,.product-card:hover,.product-image-img,.product-card:hover .product-image-img{transition:none;transform:none}}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.product-card-skeleton{background:#fff;border:1px solid rgba(14,55,95,.08);border-radius:var(--border-radius-lg);padding:0;display:flex;flex-direction:column;height:100%;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.05)}.skeleton-image{width:100%;aspect-ratio:1;background:linear-gradient(90deg,#f0f4f8 25%,#e2e8f0 50%,#f0f4f8 75%);background-size:600px 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-body{flex:1;display:flex;flex-direction:column;gap:8px;padding:var(--spacing-md)}.skeleton-line{border-radius:6px;background:linear-gradient(90deg,#f0f4f8 25%,#e2e8f0 50%,#f0f4f8 75%);background-size:600px 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-line-title{height:16px;width:80%}.skeleton-line-sub{height:13px;width:50%}.skeleton-line-short{height:12px;width:35%;margin-top:4px}.skeleton-price{margin-top:auto;padding-top:12px;border-top:2px solid rgba(14,55,95,.06);display:flex;flex-direction:column;gap:6px}.skeleton-line-price{height:18px;width:65%;margin:0 auto}.skeleton-line-price-sub{height:13px;width:45%;margin:0 auto}.product-card-skeleton:nth-child(2) .skeleton-line{animation-delay:.1s}.product-card-skeleton:nth-child(3) .skeleton-line{animation-delay:.2s}.product-card-skeleton:nth-child(4) .skeleton-line{animation-delay:.05s}.product-card-skeleton:nth-child(5) .skeleton-line{animation-delay:.15s}.product-card-skeleton:nth-child(6) .skeleton-line{animation-delay:.25s}.product-card-skeleton:nth-child(7) .skeleton-line{animation-delay:.1s}.product-card-skeleton:nth-child(8) .skeleton-line{animation-delay:.2s}.product-card-skeleton:nth-child(9) .skeleton-line{animation-delay:.3s}@media (max-width: 768px){.product-card{padding:var(--spacing-md)}.product-image-placeholder{font-size:2.5rem}.product-name{font-size:1rem}.product-price{font-size:1.25rem}}.product-card:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}@media (prefers-reduced-motion: reduce){.product-card,.product-card:hover,.product-card:before,.product-card:hover:before{transition:none;transform:none}}.product-card__partiel{margin:.25rem 0 0;color:rgba(14,55,95,.6);font-size:.75rem;font-style:italic;line-height:1.3}.catalogue{min-height:100vh;padding-top:var(--hauteur-header);background:var(--color-cream-light)}.catalogue-entete{padding:var(--spacing-2xl) 0;margin-bottom:var(--spacing-3xl);background:var(--color-cream);border-bottom:1px solid rgba(14,55,95,.12)}.catalogue-titre{margin:0 0 var(--spacing-sm);color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.1}.catalogue-accroche{max-width:58ch;margin:0;color:rgba(14,55,95,.75);font-size:.9375rem;line-height:1.6}.catalogue-corps{display:grid;grid-template-columns:14rem 1fr;gap:var(--spacing-2xl);align-items:start;padding-bottom:var(--spacing-3xl)}.catalogue-filtres{position:sticky;top:calc(var(--hauteur-header) + var(--spacing-md));padding-right:var(--spacing-lg);border-right:1px solid rgba(14,55,95,.12)}.catalogue-filtres__bascule{display:none}.catalogue-filtres__titre{margin:0 0 var(--spacing-sm);color:rgba(14,55,95,.55);font-family:var(--font-family-display);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.catalogue-filtres__liste{list-style:none;margin:0;padding:0}.catalogue-filtres__lien{width:100%;padding:.4375rem .625rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.85);font-family:var(--font-family-primary);font-size:.9375rem;line-height:1.35;text-align:left;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.catalogue-filtres__lien:hover{background:rgba(14,55,95,.06);color:var(--color-primary)}.catalogue-filtres__lien.active{background:var(--color-primary);color:var(--color-cream);font-weight:600}.catalogue-filtres__lien:focus:not(:focus-visible),.catalogue-filtres__sous-lien:focus:not(:focus-visible){outline:none}.catalogue-filtres__lien:focus-visible,.catalogue-filtres__sous-lien:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.catalogue-filtres__sous-liste{list-style:none;margin:.25rem 0 var(--spacing-sm) .625rem;padding-left:.625rem;border-left:1px solid rgba(14,55,95,.18)}.catalogue-filtres__sous-lien{width:100%;padding:.3125rem .5rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.7);font-family:var(--font-family-primary);font-size:.8125rem;line-height:1.35;text-align:left;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.catalogue-filtres__sous-lien.active{color:var(--color-primary);font-weight:700;box-shadow:inset 2px 0 0 var(--color-secondary)}.catalogue-barre{display:flex;align-items:center;gap:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(14,55,95,.12)}.recherche-catalogue{position:relative;flex:1;min-width:0;display:flex;align-items:center}.recherche-catalogue__icone{position:absolute;left:.75rem;color:rgba(14,55,95,.5);pointer-events:none}.recherche-catalogue__champ{width:100%;padding:.5625rem 2.25rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.16);border-radius:var(--border-radius-md);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.875rem;transition:border-color var(--transition-normal),background-color var(--transition-normal)}.recherche-catalogue__champ::placeholder{color:rgba(14,55,95,.55)}.recherche-catalogue__champ::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.recherche-catalogue__champ:focus{outline:none;background:var(--color-cream-light);border-color:var(--color-primary)}.recherche-catalogue__champ:focus-visible{outline:3px solid var(--color-primary);outline-offset:1px}.recherche-catalogue__vider{position:absolute;right:.375rem;display:flex;align-items:center;justify-content:center;width:1.625rem;height:1.625rem;border:none;border-radius:50%;background:transparent;color:rgba(14,55,95,.55);cursor:pointer;transition:background-color var(--transition-normal)}.recherche-catalogue__vider:hover{background:rgba(14,55,95,.1);color:var(--color-primary)}.affichage{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.affichage__label{color:rgba(14,55,95,.6);font-size:.75rem}.affichage__icones{display:flex;gap:.1875rem;padding:.1875rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.16);border-radius:var(--border-radius-md)}.affichage__btn{display:inline-flex;align-items:center;gap:.4375rem;height:1.75rem;padding:0 .625rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.5);cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.affichage__btn:hover{color:var(--color-primary)}.affichage__btn.active{background:var(--color-primary);color:var(--color-cream)}.affichage__btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.catalogue-compte{margin:var(--spacing-md) 0 var(--spacing-lg);color:rgba(14,55,95,.65);font-size:.8125rem}.products-grid{display:grid;gap:var(--spacing-md);width:100%}.products-grid.columns-4{grid-template-columns:repeat(4,1fr)}.products-grid.columns-6{grid-template-columns:repeat(6,1fr)}.empty-state{padding:var(--spacing-3xl) var(--spacing-lg);text-align:center;color:rgba(14,55,95,.75);font-size:1rem}.empty-state__reset{margin-top:var(--spacing-lg);padding:.625rem 1.375rem;border:1px solid var(--color-primary);border-radius:var(--border-radius-md);background:transparent;color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.empty-state__reset:hover{background:var(--color-primary);color:var(--color-cream)}@media (max-width: 1199px){.catalogue-corps{grid-template-columns:13rem 1fr;gap:var(--spacing-xl)}}@media (max-width: 1023px){.catalogue{padding-top:64px}.catalogue-corps{display:block}.catalogue-filtres{position:static;margin-bottom:var(--spacing-lg);padding-right:0;border-right:none}.catalogue-filtres__bascule{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);width:100%;padding:.75rem 1rem;border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);background:var(--color-cream);color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer}.catalogue-filtres__bascule:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.catalogue-filtres__actif{color:rgba(14,55,95,.7);font-family:var(--font-family-primary);font-weight:400}.catalogue-filtres__contenu{display:none;padding:var(--spacing-md) 0 0}.catalogue-filtres__contenu.ouvert{display:block}.catalogue-filtres__titre,.affichage{display:none}.products-grid.columns-4,.products-grid.columns-6{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}}@media (max-width: 599px){.products-grid.columns-4,.products-grid.columns-6{grid-template-columns:1fr}}.catalogue-filtres__sous-liste{list-style:none;margin:.25rem 0 var(--spacing-sm);padding:0 0 0 .75rem;border-left:1px solid rgba(14,55,95,.15)}.catalogue-filtres__sous-lien{width:100%;padding:.3125rem .75rem;border:none;border-radius:var(--border-radius-md);background:transparent;color:rgba(14,55,95,.75);font-family:var(--font-family-primary);font-size:.875rem;text-align:left;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.catalogue-filtres__sous-lien:hover{background:rgba(14,55,95,.06);color:var(--color-primary)}.catalogue-filtres__sous-lien.active{color:var(--color-primary);font-weight:600;box-shadow:inset 2px 0 0 var(--color-secondary)}.catalogue-filtres__sous-lien:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.affichage__nom{font-family:var(--font-family-primary);font-size:.8125rem;font-weight:600;letter-spacing:.01em}.product-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(10px);z-index:2000;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .3s ease-out}.product-modal-overlay.closing{animation:fadeOut .4s ease-in}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.product-modal{position:relative;width:100%;max-width:1200px;max-height:95vh;background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-2xl) var(--border-radius-2xl) 0 0;padding:var(--spacing-2xl);overflow-y:auto;animation:slideUp .4s ease-out;transform-origin:bottom;box-shadow:0 -8px 32px rgba(0,0,0,.2)}.product-modal.closing{animation:slideDown .4s ease-in}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}.product-modal-close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);background:rgba(255,255,255,.9);border:2px solid rgba(14,55,95,.2);color:var(--color-primary);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);font-size:1.3rem;font-weight:700;z-index:10;box-shadow:0 2px 8px rgba(0,0,0,.1)}.product-modal-close:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:#fff;transform:rotate(90deg) scale(1.1);box-shadow:0 4px 16px rgba(230,42,38,.4)}.product-modal-back{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg);background:rgba(14,55,95,.3);border:1px solid rgba(245,245,220,.2);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;transition:all var(--transition-normal);font-size:.95rem;z-index:10}.product-modal-back:hover{background:rgba(14,55,95,.4);transform:translate(-4px)}.product-modal-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-xl)}.product-modal-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl)}.product-modal-images{display:flex;flex-direction:column;gap:var(--spacing-md)}.product-main-image{width:100%;aspect-ratio:1;border-radius:var(--border-radius-xl);overflow:hidden;background:#f8f8f8;position:relative;border:1px solid rgba(14,55,95,.1)}.product-main-image-img{width:100%;height:100%;object-fit:contain;background:rgba(14,55,95,.1)}.product-image-placeholder-large{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:5rem;font-weight:700}.image-nav-button{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.95);border:1px solid rgba(14,55,95,.2);color:#1a1a1a;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);z-index:5;backdrop-filter:blur(10px);box-shadow:0 2px 8px rgba(0,0,0,.15)}.image-nav-button:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-50%) scale(1.1)}.image-nav-prev{left:var(--spacing-md)}.image-nav-next{right:var(--spacing-md)}.image-counter{position:absolute;bottom:var(--spacing-md);right:var(--spacing-md);background:rgba(255,255,255,.95);color:#1a1a1a;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-md);font-size:.875rem;font-weight:600;backdrop-filter:blur(10px);box-shadow:0 2px 8px rgba(0,0,0,.15);border:1px solid rgba(14,55,95,.1)}.product-thumbnails{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding-bottom:var(--spacing-xs);scrollbar-width:thin;scrollbar-color:rgba(245,245,220,.3) transparent}.product-thumbnails::-webkit-scrollbar{height:6px}.product-thumbnails::-webkit-scrollbar-track{background:rgba(14,55,95,.2);border-radius:var(--border-radius-sm)}.product-thumbnails::-webkit-scrollbar-thumb{background:rgba(245,245,220,.3);border-radius:var(--border-radius-sm)}.product-thumbnails::-webkit-scrollbar-thumb:hover{background:rgba(245,245,220,.5)}.thumbnail{min-width:80px;height:80px;border-radius:var(--border-radius-md);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all var(--transition-normal);background:#f8f8f8;position:relative}.thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail:hover{border-color:var(--color-primary);transform:scale(1.05)}.thumbnail.active{border-color:var(--color-primary);border-width:3px}.thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:rgba(14,55,95,.1);color:var(--color-primary);font-size:1.5rem;font-weight:600}.product-modal-info{display:flex;flex-direction:column;gap:var(--spacing-xl)}.product-modal-header{display:flex;flex-direction:column;gap:var(--spacing-sm)}.product-modal-gamme{display:block;margin-bottom:.375rem;color:rgba(14,55,95,.55);font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.product-modal-name{margin:0 0 var(--spacing-lg);color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.375rem,3vw,1.875rem);font-weight:700;line-height:1.2}.product-reference{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.reference-label{color:rgba(14,55,95,.6);font-size:.8125rem}.reference-value{color:var(--color-primary);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.9375rem;font-weight:600;letter-spacing:.02em}.copy-code-btn{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.6);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.copy-code-btn:hover{background:rgba(14,55,95,.09);color:var(--color-primary)}.copy-code-btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.product-modal-prices{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:rgba(14,55,95,.04);border-radius:var(--border-radius-lg)}.price-row-modal{display:flex;justify-content:space-between;align-items:baseline;gap:var(--spacing-md)}.price-row-primary{padding-bottom:.5rem}.price-row-primary .price-label-modal{color:rgba(14,55,95,.75);font-size:.875rem;font-weight:500}.price-row-primary .price-ht-modal{color:var(--color-primary);font-family:var(--font-family-display);font-size:1.75rem;font-weight:700;line-height:1}.price-row-secondary .price-label-modal{color:rgba(14,55,95,.55);font-size:.8125rem}.price-row-secondary .price-ttc-modal{color:rgba(14,55,95,.65);font-size:1rem;font-weight:600}.product-dimensions-modal{display:flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid rgba(14,55,95,.1)}.dimensions-label{color:rgba(14,55,95,.6);font-size:.8125rem}.dimensions-value{color:var(--color-primary);font-size:.9375rem;font-weight:600}.product-option-group{display:flex;flex-direction:column;gap:var(--spacing-md)}.product-option-label{color:#1a1a1a;font-size:1rem;font-weight:600}.size-selector,.material-selector,.package-type-selector{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.material-display,.quantity-display{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.material-badge,.quantity-badge{background:#f0f4f8;border:1px solid rgba(14,55,95,.2);color:#1a1a1a;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);font-size:.95rem;font-weight:500}.quantity-total{display:block;font-size:.85rem;opacity:.8;margin-top:var(--spacing-xs)}.size-option,.material-option,.package-type-option{background:rgba(255,255,255,.8);border:2px solid rgba(14,55,95,.15);color:var(--color-primary);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-normal);font-size:.95rem;font-weight:600;position:relative;overflow:hidden}.size-option:before,.material-option:before,.package-type-option:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(14,55,95,.05);transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.size-option:hover:before,.material-option:hover:before,.package-type-option:hover:before{width:200%;height:200%}.size-option:hover,.material-option:hover,.package-type-option:hover{background:rgba(255,255,255,1);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(14,55,95,.15)}.size-option.active,.material-option.active,.package-type-option.active{background:linear-gradient(135deg,var(--color-primary) 0%,#0a2847 100%);border-color:var(--color-primary);color:#fff;font-weight:700;box-shadow:0 4px 16px rgba(14,55,95,.3);transform:translateY(-2px)}.size-option.active:before,.material-option.active:before,.package-type-option.active:before{display:none}.product-description{padding-top:var(--spacing-xl);border-top:1px solid rgba(14,55,95,.1);width:100%}.product-description h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md)}.product-description p{color:#4a4a4a;line-height:1.8}.similar-products{padding-top:var(--spacing-xl);border-top:1px solid rgba(14,55,95,.1);width:100%}.similar-products h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-md)}.similar-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md)}.similar-product-card{background:#ffffff;border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-lg);padding:var(--spacing-md);cursor:pointer;transition:all var(--transition-normal);box-shadow:0 2px 4px rgba(0,0,0,.05)}.similar-product-card:hover{transform:translateY(-2px);border-color:var(--color-primary);box-shadow:0 4px 8px rgba(0,0,0,.1)}.similar-product-image{width:100%;aspect-ratio:1;border-radius:var(--border-radius-md);overflow:hidden;margin-bottom:var(--spacing-sm);background:#f8f8f8;position:relative}.similar-product-image-img{width:100%;height:100%;object-fit:cover}.similar-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:1.5rem;font-weight:600}.similar-product-name{color:#1a1a1a;font-size:.875rem;font-weight:500;margin-bottom:var(--spacing-xs);line-height:1.4}.similar-product-price{color:var(--color-primary);font-size:1rem;font-weight:600}.product-modal::-webkit-scrollbar{width:8px}.product-modal::-webkit-scrollbar-track{background:#f0f0f0;border-radius:var(--border-radius-sm)}.product-modal::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--border-radius-sm)}.product-modal::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}@media (max-width: 1024px){.product-modal-content{grid-template-columns:1fr}.similar-products-grid{grid-template-columns:repeat(2,1fr)}}.out-of-stock-badge-modal{display:inline-flex;align-items:center;gap:6px;background:#dc2626;color:#fff;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:7px 14px;border-radius:6px;margin-top:var(--spacing-xs);box-shadow:0 3px 10px rgba(220,38,38,.45);animation:pulse-stock 2s ease-in-out infinite}.out-of-stock-badge-modal:before{content:"⚠";font-size:.9rem}@keyframes pulse-stock{0%,to{box-shadow:0 3px 10px rgba(220,38,38,.45)}50%{box-shadow:0 3px 18px rgba(220,38,38,.75)}}.product-modal-actions{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid rgba(14,55,95,.1);display:flex;flex-direction:column;gap:var(--spacing-md)}.discount-tiers{margin-bottom:12px;display:flex;flex-direction:column;gap:6px}.discount-tiers-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#475569}.discount-tiers-list{display:flex;flex-wrap:wrap;gap:6px}.discount-tier-badge{background:rgba(14,55,95,.07);color:#0e375f;border:1px solid rgba(14,55,95,.15);border-radius:100px;padding:3px 10px;font-size:.78rem;font-weight:700}.product-discount-banner{background:linear-gradient(135deg,#eef6ee,#f0faf0);border:1px solid #bbdfc2;border-radius:10px;padding:14px 18px;margin:16px 0}.product-discount-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.product-discount-icon{font-size:20px;line-height:1}.product-discount-title{font-weight:600;font-size:.95rem;color:#15803d}.product-discount-tiers{display:flex;flex-wrap:wrap;gap:8px}.product-discount-tier-badge{background:white;border:1px solid #bbdfc2;border-radius:6px;padding:8px 14px;font-size:.85rem;color:#166534;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.product-discount-tier-qty{font-weight:600}.product-discount-tier-value{color:#15803d;font-weight:700;font-size:.9rem}.product-modal-actions-cart{display:flex;gap:var(--spacing-lg);align-items:flex-end}.btn-toggle-stock{width:100%;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.875rem;cursor:pointer;transition:all var(--transition-normal);border:2px solid;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-transform:uppercase;letter-spacing:.4px}.btn-toggle-stock.out-of-stock{background:rgba(220,38,38,.06);border-color:#dc2626;color:#dc2626}.btn-toggle-stock.out-of-stock:hover:not(:disabled){background:#dc2626;color:#fff}.btn-toggle-stock.in-stock{background:rgba(34,197,94,.06);border-color:#16a34a;color:#16a34a}.btn-toggle-stock.in-stock:hover:not(:disabled){background:#16a34a;color:#fff}.btn-toggle-stock:disabled{opacity:.6;cursor:not-allowed}.stock-feedback{font-size:.82rem;font-weight:600;padding:6px 12px;border-radius:var(--border-radius-sm);text-align:center;animation:fadeInUp .25s ease-out}.stock-feedback.added{background:rgba(220,38,38,.08);color:#dc2626;border:1px solid rgba(220,38,38,.2)}.stock-feedback.removed{background:rgba(34,197,94,.08);color:#16a34a;border:1px solid rgba(34,197,94,.2)}.stock-feedback.error{background:rgba(234,179,8,.08);color:#b45309;border:1px solid rgba(234,179,8,.25)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cart-quantity-selector{display:flex;flex-direction:column;gap:var(--spacing-sm)}.cart-quantity-selector label{color:var(--color-primary);font-weight:600;font-size:.9rem}.quantity-input-group{display:flex;align-items:center;gap:var(--spacing-xs);background:white;border:2px solid rgba(14,55,95,.2);border-radius:var(--border-radius-md);padding:var(--spacing-xs)}.quantity-btn-modal{width:36px;height:36px;background:var(--color-primary);color:var(--color-text-primary);border:none;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:1.2rem;font-weight:700}.quantity-btn-modal:hover:not(:disabled){background:var(--color-secondary);transform:scale(1.1)}.quantity-btn-modal:disabled{opacity:.3;cursor:not-allowed}.quantity-input-group input{width:60px;text-align:center;border:none;background:transparent;color:var(--color-primary);font-weight:700;font-size:1.1rem;-moz-appearance:textfield}.quantity-input-group input::-webkit-outer-spin-button,.quantity-input-group input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-input-group input:focus{outline:none}.btn-add-to-cart{flex:1;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:700;font-size:1rem;cursor:pointer;transition:all var(--transition-normal);border:none;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.btn-add-to-cart:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--transition-normal)}.btn-add-to-cart:hover:not(:disabled):before{left:100%}.btn-add-to-cart:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,55,95,.4)}.btn-add-to-cart:active:not(:disabled){transform:translateY(0)}.btn-add-to-cart.added{background:linear-gradient(135deg,#22c55e,#16a34a);cursor:default;animation:successPulse .5s ease-out}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.btn-add-to-cart:disabled{opacity:1}@media (max-width: 768px){.product-modal{padding:var(--spacing-xl);max-height:100vh;border-radius:0}.product-modal-name{font-size:1.5rem}.product-modal-price{font-size:2rem}.size-selector,.material-selector{flex-direction:column}.size-option,.material-option{width:100%}.similar-products-grid{grid-template-columns:1fr}.product-modal-actions,.product-modal-actions-cart{flex-direction:column;align-items:stretch}.cart-quantity-selector{width:100%}.quantity-input-group{justify-content:center}.product-discount-banner{padding:12px 14px;margin:12px 0}.product-discount-title{font-size:.9rem}.product-discount-tiers{gap:6px}.product-discount-tier-badge{padding:7px 12px;font-size:.8rem}}@media (max-width: 480px){.product-discount-banner{padding:10px 12px;margin:12px 0;border-radius:10px;box-sizing:border-box;max-width:100%;overflow:hidden}.product-discount-header{margin-bottom:8px}.product-discount-title{font-size:.85rem}.product-discount-tiers{gap:6px;flex-wrap:wrap}.product-discount-tier-badge{padding:6px 10px;font-size:.78rem;white-space:normal;word-break:break-word}}.size-option--rupture{opacity:.55;text-decoration:line-through;text-decoration-color:rgba(230,42,38,.7)}.size-option__rupture{display:block;margin-top:.125rem;color:var(--color-secondary);font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}.material-badge,.quantity-badge{padding:0;background:none;border:none;border-radius:0;color:rgba(14,55,95,.75);font-size:.9375rem;font-weight:600}.btn-add-to-cart:disabled{background:rgba(14,55,95,.12);color:rgba(14,55,95,.55);cursor:not-allowed;box-shadow:none}.btn-add-to-cart.added:disabled{background:var(--color-primary);color:var(--color-cream)}@media (min-width: 1024px){.product-modal--page .product-modal-images{position:sticky;top:calc(var(--hauteur-header) + var(--spacing-lg));align-self:start}}.similar-product-rupture{margin:.125rem 0 0;color:var(--color-secondary);font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.alerte-stock{margin-top:var(--spacing-md);padding:var(--spacing-md);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);background:rgba(14,55,95,.03)}.alerte-stock__form label{display:block;margin-bottom:.5rem;color:var(--color-primary);font-size:.875rem;font-weight:600}.alerte-stock__ligne{display:flex;flex-wrap:wrap;gap:.5rem}.alerte-stock__ligne input{flex:1 1 12rem;min-width:0;padding:.625rem .75rem;background:var(--color-cream-light);border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-sm);color:var(--color-primary);font-size:1rem}.alerte-stock__ligne button{flex:0 0 auto;padding:.625rem 1.125rem;border-radius:var(--border-radius-sm);background:var(--color-primary);color:var(--color-cream);font-size:.875rem;font-weight:700}.alerte-stock__ligne button:disabled{opacity:.6;cursor:progress}.alerte-stock__ok{display:flex;align-items:flex-start;gap:.5rem;margin:0;color:var(--color-primary);font-size:.875rem;line-height:1.5}.alerte-stock__erreur{margin:.5rem 0 0;color:var(--color-secondary);font-size:.8125rem}.page-produit{min-height:100vh;padding-top:var(--hauteur-header);padding-bottom:var(--spacing-3xl);background:var(--color-cream)}.page-produit__fil{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:var(--spacing-xl) 0 var(--spacing-md);color:rgba(14,55,95,.65);font-size:.875rem}.page-produit__fil a{color:rgba(14,55,95,.85);text-decoration:none}.page-produit__fil a:hover{color:var(--color-primary);text-decoration:underline}.page-produit__fil [aria-current=page]{color:var(--color-primary);font-weight:600}.page-produit__retour{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:var(--spacing-lg);padding:.5rem .875rem .5rem .625rem;border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-lg);background:var(--color-cream-light);color:var(--color-primary);font-family:var(--font-family-display);font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal),border-color var(--transition-normal)}.page-produit__retour:hover{background:rgba(14,55,95,.06);border-color:rgba(14,55,95,.4)}.page-produit__retour:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.page-produit__attente,.page-produit__vide{padding:var(--spacing-3xl) 0;color:rgba(14,55,95,.75)}.page-produit__vide h1{margin:0 0 var(--spacing-sm);color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.5rem,3vw,2rem)}.page-produit__retour-cta{display:inline-block;margin-top:var(--spacing-lg);padding:.75rem 1.5rem;border-radius:var(--border-radius-lg);background:var(--color-primary);color:var(--color-cream);font-family:var(--font-family-display);font-weight:600;text-decoration:none}.page-produit__retour-cta:hover{background:#0a2a4a;color:var(--color-cream)}.product-modal--page{position:static;width:100%;max-width:none;max-height:none;height:auto;padding:0;overflow:visible;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none;transform:none;animation:none}.product-modal--page .product-modal-wrapper{gap:var(--spacing-3xl);margin-top:0}.product-modal--page .product-modal-content{grid-template-columns:1.15fr 1fr;gap:var(--spacing-3xl);align-items:start}.product-modal--page .product-modal-info{position:sticky;top:calc(var(--hauteur-header) + var(--spacing-lg))}.product-modal--page .product-description,.product-modal--page .similar-products{padding-top:var(--spacing-2xl);border-top:1px solid rgba(14,55,95,.12)}.product-modal--page .product-description h3,.product-modal--page .similar-products h3{margin:0 0 var(--spacing-md);color:var(--color-primary);font-family:var(--font-family-display);font-size:1.125rem;font-weight:700}.product-modal--page .product-description p{max-width:78ch;color:rgba(14,55,95,.8);font-size:.9375rem;line-height:1.7}.product-modal--page .similar-product-card{overflow:hidden;padding:0;border:1px solid rgba(14,55,95,.14);border-radius:var(--border-radius-md);background:var(--color-cream-light);box-shadow:none;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.product-modal--page .similar-product-card:hover{transform:none;border-color:var(--color-primary);box-shadow:0 6px 20px rgba(14,55,95,.13)}.product-modal--page .similar-product-image{aspect-ratio:4 / 3;margin-bottom:0;border-radius:0;border-bottom:1px solid rgba(14,55,95,.09);background:#f2f2f2}.product-modal--page .similar-product-info{padding:.625rem .75rem .75rem}@media (max-width: 1023px){.product-modal--page .product-modal-content{grid-template-columns:1fr;gap:var(--spacing-xl)}.product-modal--page .product-modal-info{position:static}}@media (prefers-reduced-motion: reduce){.product-modal--page .similar-product-card,.product-modal--page .similar-product-card:hover{transition:none;transform:none}}.product-modal--page .similar-product-name{margin:0;color:var(--color-primary);font-family:var(--font-family-display);font-size:.8125rem;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.19375rem}.product-modal--page .similar-product-price{margin:.375rem 0 0;color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:700}.contact-form-phone-wrapper{width:100%;position:relative}.contact-form-phone-container{display:flex;width:100%;height:auto;min-height:calc(var(--spacing-md) * 2 + 1.5rem);background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(250,250,250,.9) 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-lg);transition:all var(--transition-normal);overflow:visible}.contact-form-phone-container:focus-within{border-color:var(--color-primary);background:#ffffff;box-shadow:0 4px 12px rgba(14,55,95,.15)}.contact-form-phone-container--error{border-color:var(--color-secondary)!important;background:rgba(230,42,38,.05)!important}.contact-form-phone-container--error:focus-within{border-color:var(--color-secondary)!important;box-shadow:0 0 0 3px rgba(230,42,38,.1)!important}.contact-form-phone-selector{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:transparent;border:none;border-right:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);cursor:pointer;transition:all var(--transition-normal);min-width:90px;flex-shrink:0}.contact-form-phone-container:focus-within .contact-form-phone-selector{border-right-color:var(--color-primary)}.contact-form-phone-selector:hover{background:rgba(14,55,95,.05)}.contact-form-phone-selector:focus{outline:none;background:rgba(14,55,95,.1)}.contact-form-phone-flag{font-size:1.25rem;line-height:1}.contact-form-phone-code{color:var(--color-primary);font-weight:500;font-size:.95rem;white-space:nowrap}.contact-form-phone-arrow{margin-left:auto;color:var(--color-primary);opacity:.7;transition:transform var(--transition-normal)}.contact-form-phone-arrow--open{transform:rotate(180deg)}.contact-form-phone-input{flex:1;width:100%;min-height:calc(var(--spacing-md) * 2 + 1.5rem);background:transparent;border:none;border-radius:0 var(--border-radius-lg) var(--border-radius-lg) 0;padding:var(--spacing-md);font-family:inherit;font-size:1rem;line-height:1.5;color:var(--color-primary);transition:all var(--transition-normal)}.contact-form-phone-input::placeholder{color:rgba(14,55,95,.5);opacity:1}.contact-form-phone-input:placeholder-shown{color:rgba(14,55,95,.5)}.contact-form-phone-input:not(:placeholder-shown){color:var(--color-primary)}.contact-form-phone-input:focus{outline:none}.contact-form-phone-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#FFFFFF;border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-md);box-shadow:0 8px 30px rgba(0,0,0,.2);z-index:1000;overflow:hidden;max-height:300px;display:flex;flex-direction:column}.contact-form-phone-search-container{padding:var(--spacing-sm);border-bottom:1px solid rgba(14,55,95,.1);background:rgba(14,55,95,.02)}.contact-form-phone-search{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:rgba(14,55,95,.05);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-sm);font-family:inherit;font-size:.9rem;color:var(--color-primary);transition:all var(--transition-normal)}.contact-form-phone-search:focus{outline:none;border-color:var(--color-primary);background:rgba(14,55,95,.1);box-shadow:0 0 0 2px rgba(14,55,95,.1)}.contact-form-phone-search::placeholder{color:rgba(14,55,95,.5)}.contact-form-phone-list{overflow-y:auto;max-height:240px;padding:var(--spacing-xs)}.contact-form-phone-list::-webkit-scrollbar{width:8px}.contact-form-phone-list::-webkit-scrollbar-track{background:rgba(14,55,95,.05);border-radius:var(--border-radius-sm)}.contact-form-phone-list::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--border-radius-sm)}.contact-form-phone-list::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.contact-form-phone-item{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-normal);text-align:left;font-family:inherit;font-size:.95rem;color:var(--color-primary)}.contact-form-phone-item:hover{background:rgba(14,55,95,.1)}.contact-form-phone-item:focus{outline:none;background:rgba(14,55,95,.15)}.contact-form-phone-item--selected{background:rgba(14,55,95,.15);font-weight:600}.contact-form-phone-item-flag{font-size:1.25rem;line-height:1;flex-shrink:0}.contact-form-phone-item-name{flex:1;color:var(--color-primary)}.contact-form-phone-item-code{color:rgba(14,55,95,.7);font-size:.9rem;font-weight:500}.contact-form-phone-empty{padding:var(--spacing-lg);text-align:center;color:rgba(14,55,95,.6);font-size:.9rem}@media (max-width: 768px){.contact-form-phone-selector{min-width:80px;padding:var(--spacing-sm) var(--spacing-md)}.contact-form-phone-code{font-size:.875rem}}.contact-form-wrapper{display:flex;flex-direction:column;height:100%;padding:var(--spacing-xl);background:var(--color-cream-light);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-lg)}.contact-form-title{color:var(--color-primary)!important;margin:0 0 var(--spacing-lg) 0!important;font-family:var(--font-family-display)!important;font-size:1.25rem!important;font-weight:700!important;line-height:1.2!important}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1}.contact-form-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.contact-form-label{color:var(--color-primary)!important;font-weight:600!important;font-size:.95rem!important;line-height:1.4!important;display:block!important}.contact-form-required{color:var(--color-secondary)!important}.contact-form-input,.contact-form-textarea{width:100%!important;background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(250,250,250,.9) 100%)!important;border:1px solid rgba(14,55,95,.15)!important;border-radius:var(--border-radius-lg)!important;padding:var(--spacing-md)!important;font-family:inherit!important;font-size:1rem!important;line-height:1.5!important;transition:all var(--transition-normal)!important;color:var(--color-primary)!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:0 2px 8px rgba(0,0,0,.05)!important}.contact-form-input::placeholder,.contact-form-input::-webkit-input-placeholder,.contact-form-input::-moz-placeholder,.contact-form-input:-ms-input-placeholder{color:rgba(14,55,95,.5)!important;opacity:1!important}.contact-form-textarea{resize:none!important;min-height:120px!important}.contact-form-textarea::placeholder,.contact-form-textarea::-webkit-input-placeholder,.contact-form-textarea::-moz-placeholder,.contact-form-textarea:-ms-input-placeholder{color:rgba(14,55,95,.5)!important;opacity:1!important}.contact-form-input:placeholder-shown,.contact-form-textarea:placeholder-shown{color:rgba(14,55,95,.5)!important}.contact-form-input:not(:placeholder-shown),.contact-form-textarea:not(:placeholder-shown){color:var(--color-primary)!important}.contact-form-input:focus,.contact-form-textarea:focus{outline:none!important;border-color:var(--color-primary)!important;background:#ffffff!important;box-shadow:0 4px 12px rgba(14,55,95,.15)!important;color:var(--color-primary)!important;transform:translateY(-1px)!important}.contact-form-input--error,.contact-form-textarea.contact-form-input--error{border-color:var(--color-secondary)!important;background:rgba(230,42,38,.05)!important}.contact-form-input--error:focus,.contact-form-textarea.contact-form-input--error:focus{border-color:var(--color-secondary)!important;box-shadow:0 0 0 3px rgba(230,42,38,.1)!important}.contact-form-submit-error{background:rgba(220,38,38,.08)!important;border:1px solid rgba(220,38,38,.3)!important;color:#dc2626!important;border-radius:var(--border-radius-md)!important;padding:var(--spacing-md)!important;font-size:.9rem!important;text-align:center!important}.contact-form-error{color:var(--color-secondary)!important;font-size:.875rem!important;display:flex!important;align-items:center!important;gap:var(--spacing-xs)!important;min-height:1.5rem!important;margin-top:var(--spacing-xs)!important}.contact-form-submit{background:linear-gradient(135deg,var(--color-primary) 0%,#0a2847 100%)!important;color:#fff!important;border:none!important;border-radius:var(--border-radius-lg)!important;padding:var(--spacing-lg) var(--spacing-2xl)!important;font-weight:700!important;font-size:1rem!important;font-family:inherit!important;cursor:pointer!important;transition:all var(--transition-normal)!important;margin-top:var(--spacing-md)!important;letter-spacing:.01em!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:var(--spacing-sm)!important;min-height:48px!important;box-shadow:0 4px 16px rgba(14,55,95,.3)!important;position:relative!important;overflow:hidden!important}.contact-form-submit:hover:not(:disabled){transform:translateY(-2px)!important;box-shadow:0 8px 24px rgba(14,55,95,.4)!important}.contact-form-submit:active:not(:disabled){transform:translateY(0)!important}.contact-form-submit:disabled{opacity:.7!important;cursor:not-allowed!important;transform:none!important}.contact-form-submit-spinner{width:16px!important;height:16px!important;border:2px solid rgba(245,245,220,.3)!important;border-top-color:var(--color-text-primary)!important;border-radius:50%!important;animation:contact-form-spin .6s linear infinite!important}@keyframes contact-form-spin{to{transform:rotate(360deg)}}.contact-form-success{text-align:center!important;padding:var(--spacing-3xl)!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:var(--spacing-lg)!important}.contact-form-success-icon{width:64px!important;height:64px!important;background:var(--color-primary)!important;color:var(--color-text-primary)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:2rem!important;font-weight:700!important;margin-bottom:var(--spacing-sm)!important}.contact-form-success-title{color:var(--color-primary)!important;margin:0!important;font-size:1.5rem!important;font-weight:700!important}.contact-form-success-text{color:var(--color-primary)!important;margin:0!important;font-size:1.125rem!important;line-height:1.6!important}@media (max-width: 768px){.contact-form-wrapper{padding:var(--spacing-xl)!important}.contact-form-title{margin-bottom:var(--spacing-lg)!important}.contact-form{gap:var(--spacing-md)!important}.contact-form-submit{width:100%!important;padding:var(--spacing-md) var(--spacing-xl)!important}}.contact-form-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-form-rgpd{margin:var(--spacing-md) 0 0;color:rgba(14,55,95,.7);font-size:.8125rem;line-height:1.5}.contact-form-rgpd a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.contact-form-rgpd a:hover{color:var(--color-secondary)}.contact-info h2{margin:0 0 var(--spacing-sm);color:var(--color-primary);font-family:var(--font-family-display);font-size:1.25rem;font-weight:700}.contact-info-intro{margin:0 0 var(--spacing-xl);color:rgba(14,55,95,.75);font-size:.9375rem;line-height:1.6}.contact-info-items{display:flex;flex-direction:column}.contact-info-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) 0;border-top:1px solid rgba(14,55,95,.12)}.contact-info-item:last-child{border-bottom:1px solid rgba(14,55,95,.12)}.contact-info-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;margin-top:.125rem;color:var(--color-secondary)}.contact-info-content h3{margin:0 0 .125rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.contact-info-content p{margin:0;color:rgba(14,55,95,.8);font-size:.9375rem;line-height:1.5}.contact-info-content a{color:var(--color-primary);font-size:.9375rem;font-weight:600;text-decoration:none}.contact-info-content a:hover{color:var(--color-primary);text-decoration:underline}.contact-container{min-height:100vh;padding-top:var(--hauteur-header);background:var(--color-cream)}.contact-banner{padding:var(--spacing-2xl) 0;margin-bottom:var(--spacing-3xl);border-bottom:1px solid rgba(14,55,95,.12)}.contact-banner h1{display:inline-block;margin:0 0 var(--spacing-sm);padding-bottom:.25rem;box-shadow:inset 0 -.14em rgba(230,42,38,.85);color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.1}.contact-banner p{max-width:60ch;margin:0;color:rgba(14,55,95,.75);font-size:.9375rem;line-height:1.6}.contact-content{padding-bottom:var(--spacing-3xl)}.contact-grid{display:grid;grid-template-columns:18rem 1fr;gap:var(--spacing-3xl);align-items:start}@media (max-width: 899px){.contact-grid{grid-template-columns:1fr;gap:var(--spacing-2xl)}}.contact-suite{margin:var(--spacing-xl) 0 0;padding-left:var(--spacing-md);border-left:2px solid rgba(230,42,38,.65);color:rgba(14,55,95,.78);font-size:.9375rem;line-height:1.55}.contact-suite a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.contact-suite a:hover{color:var(--color-secondary)}.page-connexion{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--hauteur-header) + var(--spacing-3xl)) var(--spacing-lg) var(--spacing-3xl);background:var(--color-cream)}.connexion-carte{width:100%;max-width:26rem;padding:var(--spacing-2xl);background:var(--color-cream-light);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-lg)}.connexion-titre{display:inline-block;margin:0 0 var(--spacing-sm);padding-bottom:.25rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:1.75rem;font-weight:700;line-height:1.1;box-shadow:inset 0 -.14em rgba(230,42,38,.85)}.connexion-accroche{margin:0 0 var(--spacing-xl);color:rgba(14,55,95,.75);font-size:.9375rem;line-height:1.55}.connexion-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.connexion-champ{display:flex;flex-direction:column;gap:.375rem}.connexion-champ label{color:var(--color-primary);font-size:.875rem;font-weight:600}.connexion-champ input{width:100%;padding:.6875rem .875rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem;transition:border-color var(--transition-normal),background-color var(--transition-normal)}.connexion-champ input:focus{outline:none;background:var(--color-cream-light);border-color:var(--color-primary)}.connexion-champ input:focus-visible{outline:3px solid var(--color-primary);outline-offset:1px}.connexion-champ__mdp{position:relative;display:flex;align-items:center}.connexion-champ__mdp input{padding-right:2.75rem}.connexion-oeil{position:absolute;right:.375rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.6);cursor:pointer;transition:background-color var(--transition-normal)}.connexion-oeil:hover{background:rgba(14,55,95,.09);color:var(--color-primary)}.connexion-oeil:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.connexion-erreur{margin:0;padding:var(--spacing-sm) var(--spacing-md);background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);border-radius:var(--border-radius-sm);color:#c81f1b;font-size:.875rem;line-height:1.45}.connexion-valider{padding:.8125rem 1.5rem;border:none;border-radius:var(--border-radius-md);background:var(--color-primary);color:var(--color-cream);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal)}.connexion-valider:hover:not(:disabled){background:#0a2a4a}.connexion-valider:disabled{opacity:.55;cursor:not-allowed}.connexion-valider:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.connexion-pied{margin:var(--spacing-xl) 0 0;padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12);color:rgba(14,55,95,.75);font-size:.875rem}.connexion-pied a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}@media (prefers-reduced-motion: reduce){.connexion-champ input,.connexion-oeil,.connexion-valider{transition:none}}@media (max-width: 480px){.page-connexion{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.connexion-carte{padding:var(--spacing-lg) var(--spacing-md)}}.page-inscription{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--hauteur-header) + var(--spacing-3xl)) var(--spacing-lg) var(--spacing-3xl);background:var(--color-cream)}.inscription-carte{width:100%;max-width:40rem;padding:var(--spacing-2xl);background:var(--color-cream-light);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-lg)}.inscription-carte--confirmation{max-width:30rem}.inscription-titre{display:inline-block;margin:0 0 var(--spacing-sm);padding-bottom:.25rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:1.75rem;font-weight:700;line-height:1.1;box-shadow:inset 0 -.14em rgba(230,42,38,.85)}.inscription-accroche{margin:0 0 var(--spacing-xl);color:rgba(14,55,95,.75);font-size:.9375rem;line-height:1.55}.inscription-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.inscription-bloc{display:flex;flex-direction:column;gap:var(--spacing-lg);margin:0;padding:0;border:none}.inscription-bloc legend{padding:0 0 var(--spacing-md);color:var(--color-primary);font-family:var(--font-family-display);font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.inscription-ligne{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.inscription-ligne--cp{grid-template-columns:9rem 1fr}.inscription-champ{display:flex;flex-direction:column;gap:.375rem;min-width:0}.inscription-champ label{color:var(--color-primary);font-size:.875rem;font-weight:600}.inscription-champ label span{color:rgba(14,55,95,.55);font-weight:400}.inscription-champ input,.inscription-champ select{width:100%;padding:.6875rem .875rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem;transition:border-color var(--transition-normal),background-color var(--transition-normal)}.inscription-champ input:focus,.inscription-champ select:focus{outline:none;background:var(--color-cream-light);border-color:var(--color-primary)}.inscription-champ input:focus-visible,.inscription-champ select:focus-visible{outline:3px solid var(--color-primary);outline-offset:1px}.inscription-champ__mdp{position:relative;display:flex;align-items:center}.inscription-champ__mdp input{padding-right:2.75rem}.inscription-oeil{position:absolute;right:.375rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.6);cursor:pointer;transition:background-color var(--transition-normal)}.inscription-oeil:hover{background:rgba(14,55,95,.09);color:var(--color-primary)}.inscription-oeil:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.inscription-indice{color:rgba(14,55,95,.6);font-size:.8125rem;line-height:1.4}.inscription-indice--alerte{color:#c81f1b}.inscription-case{display:flex;align-items:center;gap:.625rem;color:var(--color-primary);font-size:.9375rem;cursor:pointer}.inscription-case input{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer}.inscription-hors-zone{margin:0;padding:var(--spacing-md);background:rgba(14,55,95,.06);border-left:3px solid var(--color-primary);border-radius:var(--border-radius-sm);color:var(--color-primary);font-size:.875rem;line-height:1.5}.inscription-erreur{margin:0;padding:var(--spacing-sm) var(--spacing-md);background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);border-radius:var(--border-radius-sm);color:#c81f1b;font-size:.875rem;line-height:1.45}.inscription-valider{padding:.8125rem 1.5rem;border:none;border-radius:var(--border-radius-md);background:var(--color-primary);color:var(--color-cream);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal)}.inscription-valider:hover:not(:disabled){background:#0a2a4a}.inscription-valider:disabled{opacity:.55;cursor:not-allowed}.inscription-valider:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.inscription-rgpd{margin:0;color:rgba(14,55,95,.65);font-size:.8125rem;line-height:1.5}.inscription-pied{margin:var(--spacing-xl) 0 0;padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12);color:rgba(14,55,95,.75);font-size:.875rem}.inscription-pied a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.inscription-carte--confirmation .inscription-valider{margin-top:var(--spacing-lg)}@media (max-width: 640px){.inscription-carte{padding:var(--spacing-xl) var(--spacing-lg)}.inscription-ligne{grid-template-columns:1fr}.inscription-ligne--cp{grid-template-columns:8rem 1fr}}@media (prefers-reduced-motion: reduce){.inscription-champ input,.inscription-champ select,.inscription-oeil,.inscription-valider{transition:none}}.inscription-recherche{display:flex;flex-direction:column;gap:.5rem}.inscription-recherche label{color:var(--color-primary);font-size:.875rem;font-weight:600}.inscription-recherche__champ{display:flex;align-items:center;gap:.625rem;padding:0 .875rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:rgba(14,55,95,.5);transition:border-color var(--transition-normal),background-color var(--transition-normal)}.inscription-recherche__champ:focus-within{background:var(--color-cream-light);border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(14,55,95,.15)}.inscription-recherche__champ:focus-within svg{color:var(--color-primary)}.inscription-recherche__champ input{flex:1;min-width:0;padding:.6875rem 0;background:transparent;border:none;color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem}.inscription-recherche__champ input:focus{outline:none;box-shadow:none;border:none}.inscription-suggestions{display:flex;flex-direction:column;margin:.25rem 0 0;padding:0;list-style:none;border:1px solid rgba(14,55,95,.14);border-radius:var(--border-radius-md);overflow:hidden}.inscription-suggestions li+li{border-top:1px solid rgba(14,55,95,.1)}.inscription-suggestions button{display:flex;flex-direction:column;gap:.1875rem;width:100%;padding:.6875rem .875rem;background:var(--color-cream-light);border:none;text-align:left;cursor:pointer;transition:background-color var(--transition-normal)}.inscription-suggestions button:hover{background:rgba(14,55,95,.06)}.inscription-suggestions button:focus-visible{outline:3px solid var(--color-primary);outline-offset:-3px}.inscription-suggestion__nom{color:var(--color-primary);font-weight:600;font-size:.9375rem;line-height:1.3}.inscription-suggestion__adresse{color:rgba(14,55,95,.65);font-size:.8125rem}.inscription-suggestion__ferme{align-self:flex-start;margin-top:.125rem;padding:.0625rem .375rem;border-radius:var(--border-radius-sm);background:rgba(230,42,38,.1);color:#c81f1b;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.inscription-choisi{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md);background:rgba(14,55,95,.05);border-left:3px solid var(--color-primary);border-radius:var(--border-radius-sm)}.inscription-choisi div{display:flex;flex-direction:column;gap:.125rem;min-width:0}.inscription-choisi strong{color:var(--color-primary);font-size:.9375rem}.inscription-choisi span{color:rgba(14,55,95,.65);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.8125rem}.inscription-lien{align-self:flex-start;padding:0;background:none;border:none;color:var(--color-primary);font-family:inherit;font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.inscription-lien:hover{color:var(--color-secondary)}.inscription-lien:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--border-radius-sm)}@media (prefers-reduced-motion: reduce){.inscription-recherche__champ,.inscription-suggestions button{transition:none}}.inscription-vide{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);margin-top:.25rem;padding:var(--spacing-md);background:rgba(14,55,95,.05);border:1px dashed rgba(14,55,95,.25);border-radius:var(--border-radius-md)}.inscription-vide p{margin:0;color:rgba(14,55,95,.8);font-size:.875rem;line-height:1.5}.inscription-vide__action{padding:.5625rem 1rem;border:1px solid var(--color-primary);border-radius:var(--border-radius-md);background:transparent;color:var(--color-primary);font-family:var(--font-family-display);font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal),color var(--transition-normal)}.inscription-vide__action:hover{background:var(--color-primary);color:var(--color-cream)}.inscription-vide__action:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.inscription-vide__action{transition:none}}.selecteur{position:relative}.selecteur__declencheur{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);width:100%;padding:.6875rem .875rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem;text-align:left;cursor:pointer;transition:border-color var(--transition-normal),background-color var(--transition-normal)}.selecteur__declencheur:hover{border-color:rgba(14,55,95,.4)}.selecteur__declencheur.est-ouvert{background:var(--color-cream-light);border-color:var(--color-primary)}.selecteur__declencheur:focus-visible{outline:3px solid var(--color-primary);outline-offset:1px}.selecteur__valeur--vide{color:rgba(14,55,95,.6)}.selecteur__chevron{flex-shrink:0;font-size:.75rem;color:rgba(14,55,95,.55);transition:transform var(--transition-normal)}.selecteur__declencheur.est-ouvert .selecteur__chevron{transform:rotate(180deg)}.selecteur__liste{position:absolute;z-index:20;top:calc(100% + .25rem);left:0;right:0;max-height:16rem;margin:0;padding:.25rem;overflow-y:auto;list-style:none;background:var(--color-cream-light);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);box-shadow:0 12px 28px rgba(14,55,95,.16)}.selecteur__option{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:.5625rem .625rem;border-radius:var(--border-radius-sm);color:var(--color-primary);font-size:.9375rem;cursor:pointer}.selecteur__option.est-active{background:rgba(14,55,95,.09)}.selecteur__coche{flex-shrink:0;font-size:.6875rem;color:var(--color-secondary)}@media (prefers-reduced-motion: reduce){.selecteur__declencheur,.selecteur__chevron{transition:none}}.compte{min-height:100vh;padding-top:var(--hauteur-header);background:var(--color-cream-light);color:var(--color-primary)}.compte__colonne{max-width:56rem;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-lg) var(--spacing-3xl)}.compte__oeil{display:inline-block;margin-bottom:var(--spacing-md);padding:.3125rem .875rem;border:1px solid rgba(14,55,95,.25);border-radius:999px;color:rgba(14,55,95,.75);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.compte__entete{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(14,55,95,.12)}.compte__entete h1{margin:0;color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.75rem,3.5vw,2.5rem);line-height:1.1;font-weight:800;letter-spacing:-.01em}.compte__entete h1:after{content:"";display:block;width:4rem;height:5px;margin-top:.75rem;border-radius:2px;background:var(--color-secondary)}.compte__entete p{margin:var(--spacing-lg) 0 0;color:rgba(14,55,95,.7);font-size:1rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.compte__avis,.compte__erreur,.compte__succes{display:flex;align-items:center;gap:.5rem;margin:0 0 var(--spacing-lg);padding:var(--spacing-md);border-radius:var(--border-radius-sm);font-size:.9375rem;line-height:1.5}.compte__avis{background:rgba(176,112,0,.12);border-left:3px solid #b07000;color:#7a4d00}.compte__erreur{background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);color:#c81f1b}.compte__succes{background:rgba(30,120,70,.1);border-left:3px solid #1a6b43;color:#1a6b43;font-weight:600}.compte__carte{margin-bottom:var(--spacing-xl);padding:var(--spacing-2xl);background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);box-shadow:0 4px 16px rgba(0,0,0,.08),inset 0 1px rgba(255,255,255,.8)}.compte__carte h2{position:relative;display:flex;align-items:center;gap:.625rem;margin:0 0 var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(14,55,95,.1);font-family:var(--font-family-display);font-size:1.375rem}.compte__carte h2 svg{color:var(--color-secondary)}.compte__carte h2:after{content:"";position:absolute;left:0;bottom:-2px;width:3rem;height:2px;background:var(--color-secondary)}.compte__section{margin:0 0 var(--spacing-lg);padding:0;border:none}.compte__section legend{margin-bottom:var(--spacing-sm);padding:0;color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.compte__grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.compte__champ{display:flex;flex-direction:column;gap:.25rem}.compte__champ--large{grid-column:1 / -1}.compte__champ>span{font-size:.8125rem;font-weight:600}.compte__champ i{color:var(--color-secondary);font-style:normal}.compte__champ em{color:rgba(14,55,95,.6);font-size:.75rem;font-style:normal}.compte__champ input{padding:.625rem .75rem;background:#fff;border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-sm);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem}.compte__champ input:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.compte__champ input[readonly]{background:rgba(14,55,95,.06);color:rgba(14,55,95,.75);cursor:default}.compte__bouton{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--color-primary);border:none;border-radius:var(--border-radius-sm);color:var(--color-cream);font-family:var(--font-family-display);font-size:.9375rem;font-weight:700;cursor:pointer;transition:background-color .3s ease}.compte__bouton:hover:not(:disabled){background:#0a2b4a}.compte__bouton:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.28) 50%,transparent 100%);transition:left .6s ease}.compte__bouton:hover:not(:disabled):before{left:100%}.compte__bouton:disabled{opacity:.55;cursor:not-allowed}.compte__bouton:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.compte__vide{margin:0;color:rgba(14,55,95,.7);font-size:.9375rem}.compte__table{width:100%;border-collapse:collapse;font-size:.9375rem}.compte__table th,.compte__table td{padding:.625rem .5rem;text-align:left;border-bottom:1px solid rgba(14,55,95,.1)}.compte__table th{color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.compte__ref{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.compte__nombre{text-align:right;font-variant-numeric:tabular-nums}.compte__tourne{animation:compte-rotation 1s linear infinite}@keyframes compte-rotation{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.compte__tourne{animation:none}.compte__bouton,.compte__bouton:before{transition:none}.compte__bouton:hover:not(:disabled):before{left:-100%}}@media (max-width: 640px){.compte__grille{grid-template-columns:1fr}.compte__carte{padding:var(--spacing-lg)}}.page-legale{padding:calc(var(--hauteur-header) + var(--spacing-2xl)) 0 var(--spacing-3xl);background:var(--color-cream)}.legale-fil{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--spacing-lg);color:rgba(14,55,95,.55);font-size:.8125rem}.legale-fil a{color:rgba(14,55,95,.75);text-decoration:none}.legale-fil a:hover{color:var(--color-primary);text-decoration:underline}.legale-titre{display:inline-block;margin:0 0 var(--spacing-sm);padding-bottom:.25rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.625rem,3.5vw,2.25rem);font-weight:700;line-height:1.15;box-shadow:inset 0 -.14em rgba(230,42,38,.85)}.legale-maj{margin:0 0 var(--spacing-2xl);color:rgba(14,55,95,.55);font-size:.8125rem}.legale-corps{max-width:68ch;color:rgba(14,55,95,.85);font-size:.9375rem;line-height:1.7}.legale-corps h3{margin:var(--spacing-2xl) 0 var(--spacing-sm);padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12);color:var(--color-primary);font-family:var(--font-family-display);font-size:1.0625rem;font-weight:700;line-height:1.3}.legale-corps>div>h3:first-child{margin-top:0;padding-top:0;border-top:none}.legale-corps h4{margin:var(--spacing-lg) 0 .375rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600}.legale-corps p{margin:0 0 var(--spacing-md);color:rgba(14,55,95,.85)}.legale-corps li,.legale-corps ul,.legale-corps ol{color:rgba(14,55,95,.85)}.legale-corps strong{color:var(--color-primary);font-weight:600}.legale-corps ul,.legale-corps ol{margin:0 0 var(--spacing-md);padding-left:1.25rem}.legale-corps li{margin-bottom:.375rem}.legale-corps a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.legale-corps a:hover{color:var(--color-secondary)}.legale-pied,.legale-maj{color:rgba(14,55,95,.6)}.legale-pied{max-width:68ch;margin:var(--spacing-3xl) 0 0;padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12);color:rgba(14,55,95,.75);font-size:.9375rem}.legale-pied a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}@media print{.page-legale{padding:0;background:#fff}.legale-fil,.legale-pied{display:none}.legale-corps{max-width:none;color:#000}}.dashboard{min-height:100vh;padding-bottom:var(--spacing-3xl)}.dashboard-header{background:linear-gradient(135deg,rgba(14,55,95,.95) 0%,rgba(10,40,70,.97) 50%,rgba(14,55,95,.95) 100%);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-bottom:1px solid rgba(255,255,255,.1);padding:var(--spacing-2xl) 0;margin-bottom:var(--spacing-2xl);box-shadow:0 4px 20px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.1);position:relative;z-index:1001}.dashboard-header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl)}.dashboard-user{display:flex;align-items:center;gap:var(--spacing-lg)}.user-avatar{width:60px;height:60px;background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--color-text-primary);box-shadow:0 4px 12px rgba(230,42,38,.3)}.user-info h1{color:var(--color-text-primary);font-size:1.75rem;margin:0 0 var(--spacing-xs) 0}.user-info p{color:var(--color-text-secondary);margin:0;font-size:.9rem}.dashboard-actions{display:flex;gap:var(--spacing-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all var(--transition-normal);border:none;text-decoration:none;line-height:1.4;min-height:44px;vertical-align:middle}.btn-primary{background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(14,55,95,.4)}.btn-secondary{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);color:var(--color-primary);border:1px solid rgba(14,55,95,.15)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.1)}.btn-catalogue-admin{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);color:#fff;border:none;box-shadow:0 4px 12px rgba(245,158,11,.35)}.btn-catalogue-admin:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(245,158,11,.45)}.btn-logout{background:rgba(230,42,38,.1);color:var(--color-secondary);border:1px solid rgba(230,42,38,.3)}.btn-logout:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:translateY(-2px);box-shadow:0 6px 16px rgba(230,42,38,.3)}.dashboard-stats{margin-bottom:var(--spacing-2xl)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.stat-card{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:0 2px 8px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8);transition:all var(--transition-normal)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px rgba(0,0,0,.1),inset 0 1px rgba(255,255,255,.8)}.stat-card-highlight{background:linear-gradient(135deg,var(--color-primary),#0a2847);border-color:rgba(255,255,255,.2)}.stat-card-highlight .stat-icon,.stat-card-highlight .stat-label,.stat-card-highlight .stat-value{color:var(--color-text-primary)}.stat-icon{width:50px;height:50px;background:rgba(14,55,95,.1);border-radius:var(--border-radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--color-primary)}.stat-card-highlight .stat-icon{background:rgba(255,255,255,.2)}.euro-icon{font-weight:700;font-size:1.75rem}.stat-content{flex:1}.stat-label{color:var(--color-primary);opacity:.8;font-size:.85rem;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.5px}.stat-value{color:var(--color-primary);font-size:1.75rem;font-weight:700;margin:0}.cart-section{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);box-shadow:0 4px 16px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8)}.cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(14,55,95,.1)}.cart-header h2{color:var(--color-primary);font-size:1.5rem;margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.btn-clear-cart{background:rgba(230,42,38,.1);color:var(--color-secondary);border:1px solid rgba(230,42,38,.3);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.btn-clear-cart:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:translateY(-2px);box-shadow:0 4px 12px rgba(230,42,38,.3)}.empty-cart{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl)}.empty-icon{font-size:4rem;color:var(--color-primary);opacity:.3;margin-bottom:var(--spacing-lg)}.empty-cart h3{color:var(--color-primary);font-size:1.5rem;margin:0 0 var(--spacing-md) 0}.empty-cart p{color:var(--color-primary);opacity:.7;margin:0 0 var(--spacing-xl) 0}.cart-items{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.cart-item{display:grid;grid-template-columns:120px 1fr auto;gap:var(--spacing-lg);padding:var(--spacing-lg);background:rgba(14,55,95,.03);border:1px solid rgba(14,55,95,.1);border-radius:var(--border-radius-lg);transition:all var(--transition-normal)}.cart-item:hover{background:rgba(14,55,95,.05);box-shadow:0 4px 12px rgba(0,0,0,.05)}.cart-item-image{width:120px;height:120px;border-radius:var(--border-radius-md);overflow:hidden;background:white;display:flex;align-items:center;justify-content:center;border:1px solid rgba(14,55,95,.1)}.cart-item-image img{width:100%;height:100%;object-fit:contain}.cart-item-image-fallback{width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,55,95,.1),rgba(230,42,38,.05));color:var(--color-primary);font-size:2rem;font-weight:700;padding:var(--spacing-sm)}.cart-item-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.cart-item-info h3{color:var(--color-primary);font-size:1.1rem;margin:0}.item-gamme{color:var(--color-secondary);font-weight:600;font-size:.85rem;margin:0}.item-code{color:var(--color-primary);opacity:.6;font-size:.8rem;margin:0;font-family:Courier New,monospace}.item-prices{display:flex;gap:var(--spacing-lg);margin-top:auto}.item-price-ht,.item-price-ttc{color:var(--color-primary);font-size:.9rem;font-weight:600}.item-price-ttc{color:var(--color-secondary)}.cart-next-tier{font-size:.72rem;color:#d97706;font-weight:600;margin-top:2px}.cart-discount-applied{font-size:.72rem;color:#16a34a;font-weight:700;margin-top:2px}.cart-item-controls{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:flex-end}.quantity-controls{display:flex;align-items:center;gap:var(--spacing-xs);background:white;border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-md);padding:var(--spacing-xs)}.quantity-btn{width:30px;height:30px;background:var(--color-primary);color:var(--color-text-primary);border:none;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:.8rem}.quantity-btn:hover:not(:disabled){background:var(--color-secondary);transform:scale(1.1)}.quantity-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-controls input{width:50px;text-align:center;border:none;background:transparent;color:var(--color-primary);font-weight:600;font-size:1rem;-moz-appearance:textfield}.quantity-controls input::-webkit-outer-spin-button,.quantity-controls input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-controls input:focus{outline:none}.item-total{text-align:right}.total-label{color:var(--color-primary);opacity:.7;font-size:.7rem;margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;word-break:break-word}.total-value{color:var(--color-primary);font-size:1.1rem;font-weight:700;margin:0}.total-ttc{color:var(--color-secondary)}.btn-remove{background:rgba(230,42,38,.1);color:var(--color-secondary);border:1px solid rgba(230,42,38,.3);width:40px;height:40px;border-radius:var(--border-radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);margin-top:auto}.btn-remove:hover{background:var(--color-secondary);color:var(--color-text-primary);transform:scale(1.1);box-shadow:0 4px 12px rgba(230,42,38,.3)}.dashboard-client-form-section{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.25);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 2px 8px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8)}.dashboard-client-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.dashboard-client-form-title{color:#0a2847;font-size:1.25rem;margin:0;font-weight:700;font-family:var(--font-family-display)}.dashboard-client-form-toggle-btn{background:rgba(14,55,95,.15);color:#0a2847;border:1px solid rgba(14,55,95,.3);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--transition-normal);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.dashboard-client-form-toggle-btn:hover{background:var(--color-primary);color:var(--color-text-primary);border-color:var(--color-primary);transform:translateY(-2px)}.dashboard-client-form-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.dashboard-client-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.dashboard-client-form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.dashboard-client-form-label{color:#0a2847;font-weight:700;font-size:.9rem;margin:0;letter-spacing:.3px}.dashboard-client-form-input{background:var(--color-cream-light);border:2px solid rgba(14,55,95,.35);border-radius:var(--border-radius-md);color:#0a2847;padding:var(--spacing-md);font-size:.95rem;font-weight:500;transition:all var(--transition-normal);width:100%}.dashboard-client-form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(14,55,95,.15);background:#fff}.dashboard-client-form-input::placeholder{color:rgba(10,40,71,.6);font-weight:400}.client-search-wrapper{position:relative;margin-bottom:var(--spacing-md)}.client-search-bar{display:flex;align-items:center;gap:10px;background:#f0f4f8;border:2px solid rgba(14,55,95,.25);border-radius:var(--border-radius-md);padding:10px 14px;transition:border-color .2s}.client-search-bar:focus-within{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px rgba(14,55,95,.12)}.client-search-icon{color:var(--color-primary);opacity:.5;font-size:.9rem;flex-shrink:0}.client-search-input{flex:1;border:none;background:transparent;outline:none;font-size:.95rem;color:#0a2847;font-weight:500}.client-search-input::placeholder{color:rgba(10,40,71,.45);font-weight:400}.client-search-spinner{color:var(--color-primary);font-size:.85rem;flex-shrink:0}.client-search-clear{background:none;border:none;cursor:pointer;color:#888;font-size:.9rem;display:flex;align-items:center;padding:2px;border-radius:50%;transition:color .15s}.client-search-clear:hover{color:var(--color-secondary)}.client-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-md);box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:100;overflow:hidden}.client-suggestion-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .15s}.client-suggestion-item:hover{background:rgba(14,55,95,.06)}.csi-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0}.csi-info{display:flex;flex-direction:column;flex:1;min-width:0}.csi-name{font-weight:600;font-size:.9rem;color:#0a2847;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csi-email{font-size:.78rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csi-phone{font-size:.78rem;color:var(--color-primary);opacity:.7;white-space:nowrap;flex-shrink:0}.client-suggestion-empty{padding:14px 16px;font-size:.88rem;color:#888;display:flex;align-items:center;gap:8px}.cart-summary{background:linear-gradient(135deg,var(--color-primary),#0a2847);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);box-shadow:0 4px 16px rgba(14,55,95,.3)}.summary-content h3{color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;font-size:1.25rem}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid rgba(255,255,255,.1);color:var(--color-text-primary);opacity:.9}.summary-row:last-of-type{border-bottom:none}.summary-total{margin-top:var(--spacing-md);padding-top:var(--spacing-lg);border-top:2px solid rgba(255,255,255,.3);font-size:1.25rem;font-weight:700;opacity:1}.summary-value{font-weight:600}.pdf-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-top:var(--spacing-lg);font-size:.9rem;font-weight:600;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.pdf-message.success{background:rgba(34,197,94,.2);color:#16a34a;border:1px solid rgba(34,197,94,.4)}.pdf-message.error{background:rgba(239,68,68,.2);color:#dc2626;border:1px solid rgba(239,68,68,.4)}.btn-generate-pdf{width:100%;background:var(--color-secondary);color:var(--color-text-primary);padding:var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:700;font-size:1rem;cursor:pointer;transition:all var(--transition-normal);border:none;margin-top:var(--spacing-xl);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.btn-generate-pdf:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--transition-normal)}.btn-generate-pdf:hover:not(:disabled):before{left:100%}.btn-generate-pdf:hover:not(:disabled){background:#ffffff;color:var(--color-secondary);transform:translateY(-2px);box-shadow:0 6px 20px rgba(230,42,38,.4)}.btn-generate-pdf:disabled{opacity:.7;cursor:not-allowed}.btn-generate-pdf.generating{background:linear-gradient(135deg,var(--color-primary),#0a2847)}.spinner-pdf{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-text-primary);border-radius:50%;animation:spin .8s linear infinite}.dashboard-content{margin-bottom:var(--spacing-2xl)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.85);background:#1a2940;color:#fff;font-size:.72rem;font-weight:500;white-space:nowrap;padding:5px 10px;border-radius:6px;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:99999;letter-spacing:.2px;box-shadow:0 4px 12px rgba(0,0,0,.25)}[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%) scale(.85);border:5px solid transparent;border-top-color:#1a2940;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:99999}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;transform:translate(-50%) scale(1)}.cmo-quote-actions,.client-modal-header-actions,.btn-quote-action,.btn-modal,.btn-modal-close{overflow:visible}.clients-section{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);margin-bottom:0;box-shadow:0 4px 16px rgba(0,0,0,.05),inset 0 1px rgba(255,255,255,.8)}.invite-section{margin-bottom:0}.clients-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid rgba(14,55,95,.1)}.clients-header h2{color:var(--color-primary);font-size:1.5rem;margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.clients-header-actions{display:flex;gap:var(--spacing-md);align-items:center}.btn-download{background:linear-gradient(135deg,#16a34a,#15803d);color:var(--color-text-primary);border:none}.btn-download:hover{background:linear-gradient(135deg,#15803d,#166534);transform:translateY(-2px);box-shadow:0 6px 16px rgba(22,163,74,.4)}.clients-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);gap:var(--spacing-lg)}.clients-loading .spinner{font-size:2rem;color:var(--color-primary);animation:spin 1s linear infinite}.clients-loading p{color:var(--color-primary);opacity:.7;margin:0}.clients-empty{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl)}.clients-empty .empty-icon{font-size:4rem;color:var(--color-primary);opacity:.3;margin-bottom:var(--spacing-lg)}.clients-empty h3{color:var(--color-primary);font-size:1.5rem;margin:0 0 var(--spacing-md) 0}.clients-empty p{color:var(--color-primary);opacity:.7;margin:0}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.client-card-v2{position:relative;background:#fff;border:1px solid rgba(14,55,95,.12);border-radius:14px;padding:20px;cursor:pointer;transition:all .22s ease;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 8px rgba(0,0,0,.04);overflow:visible}.client-card-v2:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:14px 14px 0 0;opacity:0;transition:opacity .22s}.client-card-v2:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(14,55,95,.14);border-color:rgba(14,55,95,.25)}.client-card-v2:hover:before{opacity:1}.ccv2-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;flex-shrink:0}.ccv2-body{flex:1}.ccv2-name{font-size:1.05rem;font-weight:700;color:#0a2847;margin:0 0 5px}.ccv2-email,.ccv2-phone{font-size:.82rem;color:#666;margin:0 0 3px;display:flex;align-items:center;gap:5px}.ccv2-email svg,.ccv2-phone svg{font-size:.75rem;color:var(--color-secondary);flex-shrink:0}.ccv2-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(14,55,95,.08);padding-top:10px;margin-top:4px}.ccv2-since{font-size:.75rem;color:#999}.ccv2-cta{font-size:.78rem;font-weight:600;color:var(--color-primary);display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .2s}.client-card-v2:hover .ccv2-cta{opacity:1}.ccv2-delete{position:absolute;top:-10px;right:-10px;width:28px;height:28px;border-radius:50%;background:#fff;border:2px solid rgba(230,42,38,.3);color:var(--color-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.72rem;transition:all .18s;opacity:0;box-shadow:0 2px 8px rgba(230,42,38,.2);z-index:10}.client-card-v2:hover .ccv2-delete{opacity:1}.ccv2-delete:hover{background:var(--color-secondary);color:#fff;transform:scale(1.1)}.client-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}.client-modal{background:#fff;border-radius:18px;width:100%;max-width:820px;max-height:90vh;overflow-y:auto;overflow-x:clip;box-shadow:0 24px 60px rgba(0,0,0,.25);display:flex;flex-direction:column}.cmo-quote-actions{position:static;overflow:visible}.btn-quote-action{overflow:visible}.client-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:28px 28px 20px;border-bottom:1px solid rgba(14,55,95,.1);gap:16px;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:18px 18px 0 0}.client-modal-title{display:flex;align-items:flex-start;gap:16px;flex:1;min-width:0}.client-modal-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0a2847);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0}.client-modal-title h2{font-size:1.4rem;color:#0a2847;margin:0 0 6px}.client-modal-meta{display:flex;flex-wrap:wrap;gap:12px}.client-modal-meta span{display:flex;align-items:center;gap:5px;font-size:.83rem;color:#555}.client-modal-meta svg{font-size:.75rem;color:var(--color-secondary)}.client-modal-edit-fields{display:flex;flex-direction:column;gap:8px;flex:1}.cme-input{border:1.5px solid rgba(14,55,95,.25);border-radius:8px;padding:8px 12px;font-size:.9rem;color:#0a2847;outline:none;transition:border-color .15s;width:100%}.cme-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(14,55,95,.1)}.client-modal-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-modal{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;border:none;transition:all .18s}.btn-modal-edit{background:rgba(14,55,95,.08);color:var(--color-primary);border:1px solid rgba(14,55,95,.2)}.btn-modal-edit:hover{background:var(--color-primary);color:#fff}.btn-modal-save{background:#16a34a;color:#fff}.btn-modal-save:hover{background:#15803d}.btn-modal-cancel{background:rgba(100,100,100,.1);color:#555;border:1px solid rgba(0,0,0,.1)}.btn-modal-close{width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.06);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .15s;font-size:.9rem}.btn-modal-close:hover{background:var(--color-secondary);color:#fff}.client-modal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(14,55,95,.08);border-bottom:1px solid rgba(14,55,95,.08)}.cms-item{background:#f8fafc;padding:16px 24px;display:flex;flex-direction:column;gap:4px}.cms-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:#888;font-weight:600}.cms-value{font-size:1.2rem;font-weight:700;color:#0a2847}.cms-highlight{color:var(--color-secondary)}.client-modal-quotes{padding:24px 28px 28px}.client-modal-quotes h3{font-size:1.05rem;color:#0a2847;margin:0 0 16px;display:flex;align-items:center;gap:8px}.no-quotes{color:#aaa;font-size:.9rem;text-align:center;padding:24px}.cmo-quotes-list{display:flex;flex-direction:column;gap:10px}.cmo-quote-card{border:1px solid rgba(14,55,95,.12);border-radius:10px;overflow:visible;transition:box-shadow .18s}.cmo-quote-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}.cmo-quote-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;background:#f8fafc;transition:background .15s;gap:12px;color:var(--color-primary)}.cmo-quote-header:hover{background:#f0f4f8}.cmo-quote-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.cmo-quote-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.cmo-quote-right>svg{color:var(--color-primary);opacity:.6;font-size:.85rem;flex-shrink:0}.cmo-quote-number{font-family:Courier New,monospace;font-size:.82rem;font-weight:600;color:var(--color-primary);background:rgba(14,55,95,.08);padding:3px 8px;border-radius:5px;white-space:nowrap}.cmo-quote-date{display:flex;align-items:center;gap:5px;font-size:.8rem;color:#777}.cmo-quote-ttc{font-size:1rem;font-weight:700;color:var(--color-secondary)}.cmo-quote-actions{display:flex;gap:6px}.btn-quote-action{width:30px;height:30px;border-radius:7px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .16s}.btn-pdf{background:rgba(14,55,95,.08);color:var(--color-primary)}.btn-pdf:hover{background:var(--color-primary);color:#fff}.btn-del{background:rgba(230,42,38,.08);color:var(--color-secondary)}.btn-del:hover{background:var(--color-secondary);color:#fff}.btn-quote-action.btn-invoice{background:rgba(34,139,34,.12);color:#228b22}.btn-quote-action.btn-invoice:hover:not(:disabled){background:#228b22;color:#fff}.btn-quote-action.btn-invoice:disabled{opacity:.7;cursor:wait}.cmo-quote-detail{padding:16px;border-top:1px solid rgba(14,55,95,.08);background:#fff}.cmo-quote-table{width:100%;border-collapse:collapse;font-size:.85rem}.cmo-quote-table th{background:rgba(14,55,95,.07);color:#0a2847;font-weight:700;padding:8px 10px;text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.4px}.cmo-quote-table td{padding:8px 10px;border-bottom:1px solid rgba(0,0,0,.04);color:#333}.cmo-quote-table tr:last-child td{border-bottom:none}.cmo-quote-table tr:hover td{background:rgba(14,55,95,.02)}.cmo-quote-table .mono{font-family:Courier New,monospace;font-size:.78rem}.cmo-quote-table .center{text-align:center}.cmo-quote-table .right{text-align:right}.quote-discount-badge{display:inline-block;margin-left:5px;background:rgba(22,163,74,.1);color:#16a34a;border-radius:100px;padding:1px 6px;font-size:.7rem;font-weight:700;vertical-align:middle}.cmo-quote-totals{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(14,55,95,.1)}.cmo-total-row{display:flex;gap:24px;font-size:.88rem;color:#555}.cmo-total-row span:first-child{min-width:80px;text-align:right}.cmo-total-row span:last-child{min-width:80px;text-align:right;font-weight:600;color:#0a2847}.cmo-total-main{font-size:1rem;font-weight:700}.cmo-total-main span:last-child{color:var(--color-secondary)!important;font-size:1.05rem}.profile-summary{display:flex;flex-direction:column;gap:10px;padding:16px 0 4px;border-top:1px solid rgba(14,55,95,.1);margin-top:16px}.profile-row{display:flex;align-items:center;gap:16px}.profile-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#888;min-width:110px}.profile-value{font-size:.93rem;color:#1a1a1a;font-weight:500}.invite-form-wrapper{padding:24px 0 8px;border-top:1px solid rgba(14,55,95,.1);margin-top:16px}.invite-form{display:flex;flex-direction:column;gap:16px}.invite-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.invite-field{display:flex;flex-direction:column;gap:6px}.invite-field label{font-size:.82rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px}.invite-field input{border:1.5px solid #ddd;border-radius:8px;padding:10px 13px;font-size:.9rem;outline:none;transition:border-color .2s;color:#1a1a1a;background:#fff}.invite-field input:focus{border-color:#0e375f}.invite-field input::placeholder{color:#aaa}.invite-error{background:#fff5f5;border:1px solid #ffcdd2;border-radius:8px;padding:10px 14px;color:#c62828;font-size:.88rem}.invite-success{background:#f1f8e9;border:1px solid #c5e1a5;border-radius:8px;padding:16px 20px;color:#2e7d32;font-size:.92rem;display:flex;align-items:center;gap:10px;font-weight:500}@media (max-width: 1024px){.dashboard-header-content{flex-direction:column;text-align:center}.dashboard-user{flex-direction:column}.user-info h1{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.cart-item{grid-template-columns:100px 1fr;gap:var(--spacing-md)}.cart-item-controls{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center}.client-modal-stats{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.dashboard-header{padding:var(--spacing-xl) 0}.dashboard-actions{flex-direction:column;width:100%}.btn{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr}.cart-section{padding:var(--spacing-lg)}.cart-header{flex-direction:column;gap:var(--spacing-md)}.cart-item{grid-template-columns:80px 1fr;padding:var(--spacing-md)}.cart-item-image{width:80px;height:80px}.item-prices{flex-direction:column;gap:var(--spacing-xs)}.dashboard-client-form-row,.invite-fields{grid-template-columns:1fr}.clients-section{padding:var(--spacing-lg)}.clients-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.clients-header-actions{width:100%;flex-direction:column}.clients-grid{grid-template-columns:1fr}.client-modal{border-radius:12px}.client-modal-header{flex-direction:column}.client-modal-stats{grid-template-columns:1fr}.cmo-quote-header{flex-wrap:wrap}.cmo-quote-table{font-size:.78rem}}.dashboard-titre{max-width:75rem;margin:0 auto var(--spacing-2xl);padding:var(--spacing-2xl) var(--spacing-xl) var(--spacing-xl);border-bottom:1px solid rgba(14,55,95,.12)}.clients-header h2 svg{color:var(--color-secondary)}.clients-header{position:relative}.clients-header:after{content:"";position:absolute;left:0;bottom:-2px;width:3rem;height:2px;background:var(--color-secondary)}@media (max-width: 480px){.profile-row{flex-direction:column;gap:.125rem}.profile-label{min-width:0}}@media (max-width: 640px){.cmo-quote-detail{overflow-x:auto}.cmo-quote-table{min-width:30rem}}.admin-layout{min-height:100vh}.admin-layout__attente{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--color-primary)}.admin-nav{position:fixed;top:0;left:0;z-index:1200;display:flex;flex-direction:column;width:17rem;height:100vh;height:100dvh;padding:var(--spacing-xl) var(--spacing-md) max(var(--spacing-lg),env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(14,55,95,.55) 0%,rgba(10,22,38,.95) 45%),rgba(10,22,38,.95);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-right:1px solid rgba(255,254,248,.12)}.admin-nav__identite{display:flex;align-items:center;gap:.75rem;margin-bottom:var(--spacing-xl);padding:0 .5rem var(--spacing-lg);border-bottom:1px solid rgba(255,254,248,.12)}.admin-nav__logo{width:3rem;height:3rem;padding:.25rem;background:var(--color-cream);border-radius:var(--border-radius-md);object-fit:contain}.admin-nav__role{color:rgba(255,254,248,.6);font-family:var(--font-family-display);font-size:.6875rem;font-weight:700;line-height:1.3;text-transform:uppercase;letter-spacing:.1em}.admin-nav__liste{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.admin-nav__liste li+li{margin-top:.125rem}.admin-nav__lien{position:relative;display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem;background:none;border:none;border-radius:var(--border-radius-sm);color:rgba(255,254,248,.75);font-family:var(--font-family-primary);font-size:.875rem;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background-color .3s ease,color .3s ease}.admin-nav__pastille{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:2rem;border-radius:var(--border-radius-sm);background:rgba(255,254,248,.06);color:rgba(255,254,248,.7);transition:background-color .3s ease,color .3s ease}.admin-nav__lien:hover{background:rgba(255,254,248,.08);color:var(--color-cream)}.admin-nav__lien:hover .admin-nav__pastille{background:rgba(230,42,38,.2);color:#ff9a97}.admin-nav__lien:focus-visible{outline:3px solid var(--color-cream);outline-offset:-3px}.admin-nav__lien.est-actif{background:linear-gradient(100deg,rgba(230,42,38,.95) 0%,rgba(230,42,38,.65) 100%);color:#fff;font-weight:700;box-shadow:0 6px 18px rgba(230,42,38,.3)}.admin-nav__lien.est-actif .admin-nav__pastille{background:rgba(255,255,255,.22);color:#fff}.admin-nav__pied{padding-top:var(--spacing-sm);border-top:1px solid rgba(255,254,248,.1)}.admin-nav__lien--sortie{color:#ff9a97}.admin-nav__lien--sortie:hover{background:rgba(230,42,38,.16);color:#ffc2c0}.admin-layout__contenu{min-height:100vh;margin-left:17rem;background:var(--color-cream-light)}.admin-layout__bascule,.admin-layout__voile{display:none}.titre-page{margin:0;color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;line-height:1.1;letter-spacing:-.02em}.titre-page:after{content:"";display:block;width:4rem;height:5px;margin-top:var(--spacing-md);border-radius:3px;background:var(--color-secondary)}.admin-page>header,.admin-entete{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(14,55,95,.12)}.oeil-page{display:inline-block;margin-bottom:var(--spacing-md);padding:.3125rem .875rem;border:1px solid rgba(14,55,95,.25);border-radius:999px;color:rgba(14,55,95,.75);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.sous-titre-page{margin:var(--spacing-lg) 0 0;max-width:44rem;color:rgba(14,55,95,.7);font-size:.9375rem;line-height:1.55}.admin-page{display:block;padding:var(--spacing-2xl) var(--spacing-xl);max-width:75rem;margin:0 auto}@media (max-width: 900px){.admin-layout__contenu{margin-left:0;padding-top:3.5rem}.admin-layout__bascule{position:fixed;top:.75rem;left:.75rem;z-index:1300;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:rgba(10,10,10,.75);backdrop-filter:blur(20px);border:1px solid rgba(255,254,248,.2);border-radius:var(--border-radius-sm);color:var(--color-cream);cursor:pointer}.admin-nav{transform:translate(-100%);transition:transform .3s ease}.admin-nav.est-ouvert{transform:translate(0)}.admin-layout__voile{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1150;display:block;background:rgba(10,10,10,.5)}}@media (prefers-reduced-motion: reduce){.admin-nav{transition:none}}.accueil{padding:var(--spacing-2xl) var(--spacing-xl);max-width:75rem;margin:0 auto}.accueil>header{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(14,55,95,.12)}.accueil__attente,.accueil__erreur{color:rgba(14,55,95,.75);font-size:.875rem}.accueil__erreur{color:#c81f1b}.accueil__grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.accueil__tuile{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;padding:var(--spacing-xl);background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);color:var(--color-primary);text-decoration:none;box-shadow:0 4px 16px rgba(14,55,95,.07),inset 0 1px rgba(255,255,255,.8);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.accueil__tuile:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.85) 50%,transparent 100%);transition:left .6s ease;pointer-events:none}.accueil__tuile:hover:before{left:100%}.accueil__tuile:hover{transform:translateY(-4px);border-color:rgba(230,42,38,.45);box-shadow:0 12px 32px rgba(14,55,95,.14),inset 0 1px rgba(255,255,255,.9);color:var(--color-primary)}.accueil__tuile:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.accueil__icone{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-bottom:var(--spacing-md);border-radius:var(--border-radius-md);background:rgba(230,42,38,.1);border:1px solid rgba(230,42,38,.25);color:var(--color-secondary)}.accueil__valeur{color:var(--color-primary);font-family:var(--font-family-display);font-size:3rem;font-weight:800;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.accueil__valeur--petite{font-size:1.5rem}.accueil__label{color:rgba(14,55,95,.7);font-size:.8125rem;line-height:1.45}.accueil__alerte{display:inline-flex;align-items:center;gap:.375rem;align-self:flex-start;margin-top:var(--spacing-md);padding:.25rem .625rem;border-radius:999px;background:rgba(176,112,0,.12);border:1px solid rgba(176,112,0,.3);color:#7a4d00;font-size:.75rem;font-weight:700}@media (prefers-reduced-motion: reduce){.accueil__tuile,.accueil__tuile:before,.accueil__tuile:after{transition:none}.accueil__tuile:hover{transform:none}.accueil__tuile:hover:before{left:-100%}}.accueil__travail h2{margin:0 0 var(--spacing-lg);color:var(--color-primary);font-family:var(--font-family-display);font-size:1.25rem;font-weight:700}.accueil__travail ul{margin:0;padding:0;list-style:none}.accueil__travail li+li{margin-top:.5rem}.accueil__travail a{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-cream);border:1px solid rgba(14,55,95,.12);border-left:3px solid var(--color-secondary);border-radius:var(--border-radius-md);color:var(--color-primary);text-decoration:none;transition:background-color .3s ease,transform .3s ease}.accueil__travail a:hover{background:rgba(14,55,95,.05);transform:translate(4px);color:var(--color-primary)}.accueil__travail a:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.accueil__puce{flex-shrink:0;min-width:2.5rem;color:var(--color-secondary);font-family:var(--font-family-display);font-size:1.5rem;font-weight:800;font-variant-numeric:tabular-nums}.accueil__tache{flex:1;font-size:.9375rem;line-height:1.4}.accueil__fleche{color:rgba(14,55,95,.4);font-size:1.125rem}.accueil__rien{margin:0;padding:var(--spacing-lg);background:var(--color-cream);border:1px dashed rgba(14,55,95,.2);border-radius:var(--border-radius-md);color:rgba(14,55,95,.7);font-size:.9375rem}@media (prefers-reduced-motion: reduce){.accueil__travail a{transition:none}.accueil__travail a:hover{transform:none}}.equipe{padding:var(--spacing-2xl) var(--spacing-xl);max-width:62rem;margin:0 auto}.equipe>header{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(14,55,95,.12)}.equipe .clients-section+.clients-section{margin-top:var(--spacing-lg)}.equipe .profile-summary{border-top:none;margin-top:0}.equipe__liste{margin:0;padding:0;list-style:none}.equipe__liste li{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap;padding:.75rem 0;border-bottom:1px solid rgba(14,55,95,.08)}.equipe__liste li:last-child{border-bottom:none}.equipe__nom{color:var(--color-primary);font-size:.9375rem;font-weight:600}.equipe__nom em{color:rgba(14,55,95,.55);font-style:normal;font-weight:500}.equipe__email{color:rgba(14,55,95,.6);font-size:.8125rem}.equipe__attente,.equipe__vide{margin:0;color:rgba(14,55,95,.7);font-size:.875rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);border-radius:var(--border-radius-xl);box-shadow:0 20px 60px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.8);width:90%;max-width:450px;overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{background:linear-gradient(135deg,var(--color-primary),#0a2847);padding:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h3{color:var(--color-text-primary);margin:0;font-size:1.25rem;font-weight:600}.modal-body{padding:var(--spacing-2xl)}.modal-body p{color:var(--color-primary);margin:0;font-size:1rem;line-height:1.6}.modal-footer{padding:var(--spacing-xl);display:flex;gap:var(--spacing-md);justify-content:flex-end;background:rgba(14,55,95,.03);border-top:1px solid rgba(14,55,95,.1)}.btn-modal{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--transition-normal);border:none;min-width:100px;display:inline-flex;align-items:center;justify-content:center}.btn-cancel{background:rgba(14,55,95,.1);color:var(--color-primary);border:1px solid rgba(14,55,95,.2)}.btn-cancel:hover{background:rgba(14,55,95,.15);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.btn-confirm{background:linear-gradient(135deg,var(--color-primary),#0a2847);color:var(--color-text-primary);box-shadow:0 2px 8px rgba(14,55,95,.2)}.btn-confirm:hover{background:linear-gradient(135deg,#0a2847,var(--color-primary));transform:translateY(-2px);box-shadow:0 6px 16px rgba(14,55,95,.4)}@media (max-width: 480px){.modal-content{width:95%;max-width:none}.modal-header,.modal-body,.modal-footer{padding:var(--spacing-lg)}.modal-footer{flex-direction:column-reverse}.btn-modal{width:100%}}.cs-wrapper{position:relative;display:inline-block}.cs-trigger{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.875rem;font-weight:500;color:#1e293b;cursor:pointer;white-space:nowrap;min-width:150px;transition:border-color .15s,box-shadow .15s;user-select:none;font-family:inherit}.cs-trigger:hover{border-color:#0e375f}.cs-open .cs-trigger{border-color:#0e375f;box-shadow:0 0 0 3px rgba(14,55,95,.08)}.cs-prefix-icon{color:#94a3b8;font-size:13px;flex-shrink:0}.cs-value{flex:1;text-align:left}.cs-arrow{font-size:11px;color:#64748b;flex-shrink:0;transition:transform .2s}.cs-open .cs-arrow{transform:rotate(180deg);color:#0e375f}.cs-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.12);z-index:500;padding:6px;list-style:none;margin:0;animation:cs-fade-in .12s ease;overflow:hidden}@keyframes cs-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cs-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:8px;font-size:.875rem;color:#334155;cursor:pointer;transition:background .1s,color .1s;white-space:nowrap}.cs-option:hover{background:rgba(14,55,95,.06);color:#0e375f}.cs-option-selected{background:rgba(14,55,95,.08);color:#0e375f;font-weight:600}.cs-check{font-size:11px;color:#0e375f;flex-shrink:0}.cs-trigger{max-width:100%}.cs-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-dropdown{max-width:calc(100vw - 2rem)}@media (max-width: 480px){.cs-trigger{min-width:0}}.cs-desactive .cs-trigger{background:rgba(14,55,95,.04);color:rgba(14,55,95,.45);cursor:not-allowed}.cs-desactive .cs-arrow{opacity:.4}.cc-intro{margin:0 0 var(--spacing-md);color:rgba(14,55,95,.75);font-size:.875rem;line-height:1.5}.cc-total{color:rgba(14,55,95,.65);font-size:.8125rem;font-weight:600}.cc-attente,.cc-vide{margin:0;padding:var(--spacing-lg);color:rgba(14,55,95,.7);font-size:.875rem;text-align:center}.cc-erreur{display:flex;align-items:center;gap:.5rem;margin:0 0 var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);color:#c81f1b;font-size:.875rem}.cc-recherche{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--spacing-md);padding:.5rem .75rem;background:rgba(14,55,95,.05);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-sm);color:rgba(14,55,95,.5)}.cc-recherche input{flex:1;min-width:0;background:none;border:none;color:var(--color-primary);font-family:var(--font-family-primary);font-size:.875rem}.cc-recherche input:focus{outline:none}.cc-recherche:focus-within{border-color:var(--color-primary)}.cc-table{width:100%;border-collapse:collapse;font-size:.875rem}.cc-table th,.cc-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid rgba(14,55,95,.1);vertical-align:middle}.cc-table th{color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.cc-table td{color:var(--color-primary)}.cc-nom,.cc-contact{display:block;font-weight:600}.cc-siret,.cc-email{display:block;color:rgba(14,55,95,.6);font-size:.75rem}.cc-siret{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.cc-date{font-variant-numeric:tabular-nums;white-space:nowrap}.cc-badge{display:inline-block;padding:.1875rem .5rem;border-radius:999px;background:rgba(14,55,95,.08);color:rgba(14,55,95,.7);font-size:.75rem;font-weight:600;white-space:nowrap}.cc-badge--actif{background:rgba(30,120,70,.12);color:#1a6b43}.cc-badge--horszone{background:rgba(176,112,0,.14);color:#7a4d00}.cc-badge--suspendu{background:rgba(230,42,38,.1);color:#c81f1b}.cc-action{text-align:right;white-space:nowrap}@media (max-width: 900px){.cc-section{overflow-x:auto}.cc-table{min-width:46rem}}@media (max-width: 640px){.cc-section{overflow-x:visible}.cc-table,.cc-table tbody,.cc-table tr,.cc-table td{display:block;min-width:0}.cc-table thead{display:none}.cc-table tr{margin-bottom:var(--spacing-md);padding:var(--spacing-md);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-md);background:var(--color-cream)}.cc-table td{padding:.3125rem 0;border-bottom:none}.cc-table td[data-libelle]:before{content:attr(data-libelle);display:block;color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.cc-table td:first-child{margin-bottom:.375rem;padding-bottom:.5rem;border-bottom:1px solid rgba(14,55,95,.1)}.cc-table .cc-email,.cc-table td[data-libelle=Email]{overflow-wrap:anywhere}.cc-table td.cc-action{margin-top:var(--spacing-sm);text-align:left;white-space:normal}.cc-table td.cc-action .btn{width:100%}}.fc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:var(--spacing-lg) var(--spacing-md);background:rgba(10,10,10,.55);backdrop-filter:blur(4px);overflow-y:auto}.fc-panneau{width:100%;max-width:44rem;max-height:calc(100vh - 2 * var(--spacing-lg));overflow-y:auto;background:var(--color-cream);border-radius:var(--border-radius-md);box-shadow:0 24px 64px rgba(10,10,10,.4)}.fc-panneau:focus{outline:none}.fc-entete{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-cream);border-bottom:1px solid rgba(14,55,95,.12)}.fc-entete h3{margin:0;color:var(--color-primary);font-family:var(--font-family-display);font-size:1.125rem}.fc-origine{margin:.25rem 0 0;color:rgba(14,55,95,.6);font-size:.8125rem}.fc-fermer{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:rgba(14,55,95,.08);border:none;border-radius:var(--border-radius-sm);color:var(--color-primary);cursor:pointer;transition:background-color .3s ease}.fc-fermer:hover{background:rgba(14,55,95,.16)}.fc-erreur,.fc-suspendu{margin:var(--spacing-md) var(--spacing-lg) 0;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);font-size:.875rem}.fc-erreur{background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);color:#c81f1b}.fc-suspendu{background:rgba(230,42,38,.06);border-left:3px solid #c81f1b;color:#c81f1b}.fc-corps{padding:var(--spacing-lg)}.fc-section{margin:0 0 var(--spacing-lg);padding:0;border:none}.fc-section legend{margin-bottom:var(--spacing-sm);padding:0;color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.fc-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.fc-champ--large{grid-column:1 / -1}.fc-champ{display:flex;flex-direction:column;gap:.25rem}.fc-champ span{color:rgba(14,55,95,.75);font-size:.75rem;font-weight:600}.fc-champ i{color:var(--color-secondary);font-style:normal}.fc-champ input,.fc-motif input{padding:.5rem .625rem;background:rgba(255,255,255,.7);border:1px solid rgba(14,55,95,.2);border-radius:var(--border-radius-sm);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.875rem}.fc-champ input:focus,.fc-motif input:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.fc-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important}.fc-pied{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap;padding-top:var(--spacing-md);border-top:1px solid rgba(14,55,95,.12)}.fc-pied-droite{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:auto}.fc-motif{display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1 1 18rem}.fc-motif label{display:flex;flex-direction:column;gap:.25rem}.fc-motif span{color:rgba(14,55,95,.75);font-size:.75rem;font-weight:600}.fc-motif-actions{display:flex;gap:var(--spacing-sm)}.fc-btn--suspendre{border-color:rgba(230,42,38,.4);color:#c81f1b}.fc-btn--suspendre:hover:not(:disabled){background:rgba(230,42,38,.08)}.fc-btn--rouvrir{border-color:rgba(30,120,70,.4);color:#1a6b43}.fc-btn--rouvrir:hover:not(:disabled){background:rgba(30,120,70,.08)}.fc-tourne{animation:fc-rotation 1s linear infinite}@keyframes fc-rotation{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.fc-tourne{animation:none}}@media (max-width: 640px){.fc-grille{grid-template-columns:1fr}.fc-pied-droite{width:100%}}.cc-sansacces{margin-top:var(--spacing-xxl, 3rem);padding-top:var(--spacing-xl, 2rem);border-top:1px solid rgba(14,55,95,.12)}.cc-sansacces h3{display:flex;align-items:center;gap:.625rem;margin:0 0 .5rem;font-family:var(--font-display, "Poppins"),sans-serif;font-size:1.125rem;color:var(--color-primary, #0e375f)}.cc-sansacces h3 svg{color:var(--color-secondary, #e62a26)}.cc-sansacces__intro{margin:0 0 var(--spacing-lg, 1.5rem);color:rgba(14,55,95,.72);font-size:.9375rem}.cc-sansmail{color:rgba(14,55,95,.45);font-style:italic}.cc-invit-ok,.cc-invit-ko{margin:0 0 var(--spacing-md, 1rem);padding:.75rem 1rem;border-radius:10px;font-size:.9375rem}.cc-invit-ok{background:rgba(22,128,61,.08);border:1px solid rgba(22,128,61,.25);color:#15803d}.cc-invit-ko{background:rgba(230,42,38,.08);border:1px solid rgba(230,42,38,.25);color:var(--color-secondary, #e62a26)}.cc-tourne{animation:cc-rotation 1s linear infinite}@keyframes cc-rotation{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.cc-tourne{animation:none}}.cc-sansacces__entete{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md, 1rem);flex-wrap:wrap}.cc-sansacces__entete h3{margin-bottom:0}.cc-creation{margin:var(--spacing-lg, 1.5rem) 0;padding:var(--spacing-lg, 1.5rem);border:1px solid rgba(14,55,95,.12);border-radius:14px;background:var(--color-cream, #fffef8)}.cc-creation__champs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md, 1rem)}.cc-creation__champ{display:flex;flex-direction:column;gap:.375rem}.cc-creation__champ span{font-size:.8125rem;font-weight:600;color:rgba(14,55,95,.78)}.cc-creation__champ em{color:var(--color-secondary, #e62a26);font-style:normal}.cc-creation__champ input{padding:.625rem .75rem;border:1px solid rgba(14,55,95,.18);border-radius:8px;background:#fff;font:inherit;color:var(--color-primary, #0e375f)}.cc-creation__champ input:focus-visible{outline:2px solid var(--color-secondary, #e62a26);outline-offset:1px}.cc-creation__note{margin:var(--spacing-md, 1rem) 0;font-size:.8125rem;color:rgba(14,55,95,.6)}.cc-btn--supprimer{margin-left:.5rem;padding-inline:.75rem;color:var(--color-secondary, #e62a26)}.fc-note{margin:.625rem 0 0;font-size:.8125rem;line-height:1.5;color:rgba(14,55,95,.62)}.fc-champ__libelle{display:block;margin-bottom:.375rem;font-size:.8125rem;font-weight:600;color:rgba(14,55,95,.78)}.zones-intro{margin:0 0 var(--spacing-lg);color:rgba(14,55,95,.75);font-size:.875rem;line-height:1.5}.zones-attente,.zones-vide{margin:0;padding:var(--spacing-lg);color:rgba(14,55,95,.7);font-size:.875rem;text-align:center}.zones-erreur,.zones-succes{display:flex;align-items:center;gap:.5rem;margin:0 0 var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);font-size:.875rem}.zones-erreur{background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);color:#c81f1b}.zones-succes{background:rgba(14,55,95,.06);border-left:3px solid var(--color-primary);color:var(--color-primary);font-weight:600}.zones-table{width:100%;border-collapse:collapse;font-size:.875rem}.zones-table th,.zones-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid rgba(14,55,95,.1);vertical-align:middle}.zones-table th{color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.zones-table td{color:var(--color-primary)}.zones-nombre{text-align:right;font-variant-numeric:tabular-nums}.zones-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.zones-badge{display:inline-block;padding:.1875rem .5rem;border-radius:999px;background:rgba(14,55,95,.08);color:rgba(14,55,95,.7);font-size:.75rem;font-weight:600}.zones-badge--ouverte{background:rgba(30,120,70,.12);color:#1a6b43}.zones-action{text-align:right;white-space:nowrap}.zones-boutons{display:inline-flex;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:flex-end}.zones-tourne{animation:zones-rotation 1s linear infinite}@keyframes zones-rotation{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.zones-tourne{animation:none}}@media (max-width: 640px){.zones-table,.zones-table tbody,.zones-table tr,.zones-table td{display:block;min-width:0}.zones-table thead{display:none}.zones-table tr{margin-bottom:var(--spacing-md);padding:var(--spacing-md);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-md);background:var(--color-cream)}.zones-table td{padding:.3125rem 0;border-bottom:none;text-align:left}.zones-table td[data-libelle]{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-md)}.zones-table td[data-libelle]:before{content:attr(data-libelle);flex-shrink:0;color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.zones-code{margin-bottom:.375rem;padding-bottom:.5rem;border-bottom:1px solid rgba(14,55,95,.1);font-weight:700}.zones-nombre{text-align:right}.zones-action{margin-top:var(--spacing-sm)}.zones-action .btn,.zones-boutons{width:100%}.zones-boutons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.zones-boutons .btn{flex:1 1 10rem}}.zones-btn--fermer{border-color:rgba(230,42,38,.4);color:#c81f1b}.zones-btn--fermer:hover:not(:disabled){background:rgba(230,42,38,.08)}.zones-region{margin-bottom:var(--spacing-md, 1rem);border:1px solid rgba(14,55,95,.12);border-radius:14px;background:var(--color-cream, #fffef8);overflow:hidden}.zones-region>summary{display:flex;align-items:baseline;justify-content:space-between;gap:var(--spacing-md, 1rem);flex-wrap:wrap;padding:var(--spacing-md, 1rem) var(--spacing-lg, 1.5rem);cursor:pointer;transition:background .3s ease}.zones-region>summary:hover{background:rgba(14,55,95,.04)}.zones-region>summary:focus-visible{outline:2px solid var(--color-secondary, #e62a26);outline-offset:-2px}.zones-region__nom{font-family:var(--font-display, "Poppins"),sans-serif;font-weight:600;color:var(--color-primary, #0e375f)}.zones-region__compte{font-size:.8125rem;color:rgba(14,55,95,.6)}.zones-region .zones-table{margin:0}.sync-intro{margin:0 0 var(--spacing-lg);color:rgba(14,55,95,.75);font-size:.875rem;line-height:1.5}.sync-erreur{margin:0 0 var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);border-radius:var(--border-radius-sm);color:#c81f1b;font-size:.875rem}.sync-bandeau{margin:0 0 var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:rgba(14,55,95,.06);border-left:3px solid var(--color-primary);border-radius:var(--border-radius-sm);color:var(--color-primary);font-size:.875rem;font-weight:600}.sync-compteurs{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.sync-compteur{display:flex;align-items:baseline;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-cream);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-md)}.sync-nombre{color:var(--color-primary);font-family:var(--font-family-display);font-size:1.75rem;font-weight:700;line-height:1}.sync-libelle{display:flex;flex-direction:column;color:var(--color-primary);font-size:.8125rem;font-weight:600}.sync-libelle small{color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:400}.sync-refus{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:rgba(230,42,38,.05);border:1px solid rgba(230,42,38,.2);border-radius:var(--border-radius-md)}.sync-refus h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .375rem;color:#c81f1b;font-size:.9375rem}.sync-refus p{margin:0 0 var(--spacing-md);color:rgba(14,55,95,.75);font-size:.8125rem}.sync-table th,.sync-table td{padding:.4375rem .625rem;text-align:left;border-bottom:1px solid rgba(14,55,95,.1)}.sync-table td:first-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.sync-details{margin-bottom:var(--spacing-sm);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-md)}.sync-details summary{padding:var(--spacing-sm) var(--spacing-md);color:var(--color-primary);font-size:.875rem;font-weight:600;cursor:pointer}.sync-details summary:focus-visible{outline:3px solid var(--color-primary);outline-offset:-3px}.sync-codes{margin:0;padding:0 var(--spacing-md) var(--spacing-md);color:rgba(14,55,95,.8);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;line-height:1.7;word-break:break-word}.sync-appliquer{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12)}.sync-avertissement{margin:0 0 var(--spacing-md);color:var(--color-primary);font-size:.875rem;line-height:1.5}.sync-boutons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.sync-tourne{animation:sync-rotation 1s linear infinite}@keyframes sync-rotation{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.sync-tourne{animation:none}}.sync-journal{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid rgba(14,55,95,.12)}.sync-journal h3{margin:0 0 var(--spacing-md);color:var(--color-primary);font-family:var(--font-family-display);font-size:1rem}.sync-attente{margin:0;color:rgba(14,55,95,.65);font-size:.875rem}.sync-table{width:100%;border-collapse:collapse;font-size:.8125rem}.sync-table th,.sync-table td{padding:.5rem .625rem;text-align:left;border-bottom:1px solid rgba(14,55,95,.08)}.sync-table th{color:rgba(14,55,95,.6);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sync-table td{color:var(--color-primary)}.sync-nombre{text-align:right;font-variant-numeric:tabular-nums}.sync-date{white-space:nowrap;font-variant-numeric:tabular-nums}.sync-etat{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;white-space:nowrap}.sync-etat--ok{color:#1a6b43}.sync-etat--erreur{color:#c81f1b}@media (max-width: 640px){.sync-journal{overflow-x:auto}.sync-table{min-width:32rem}}.sync-journal__entete{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md, 1rem);flex-wrap:wrap}.sync-journal__entete h3{margin-bottom:0}.sync-journal__filtres{display:flex;gap:.375rem;padding:.25rem;border:1px solid rgba(14,55,95,.12);border-radius:10px;background:var(--color-cream, #fffef8)}.sync-filtre{padding:.4rem .75rem;border:none;border-radius:7px;background:transparent;color:rgba(14,55,95,.68);font:inherit;font-size:.8125rem;cursor:pointer;transition:background .3s ease,color .3s ease}.sync-filtre:hover{color:var(--color-primary, #0e375f)}.sync-filtre--actif{background:var(--color-primary, #0e375f);color:var(--color-cream, #fffef8)}.sync-filtre:focus-visible{outline:2px solid var(--color-secondary, #e62a26);outline-offset:1px}.sync-journal__pied{display:flex;align-items:center;gap:var(--spacing-md, 1rem);flex-wrap:wrap;margin-top:var(--spacing-md, 1rem);font-size:.875rem;color:rgba(14,55,95,.6)}.sync-ligne-erreur td{padding-top:0;color:var(--color-secondary, #e62a26);font-size:.8125rem;line-height:1.5;word-break:break-word}.sync-ligne-erreur svg{margin-right:.375rem}.sync-cause{margin:0 0 .375rem;color:var(--color-secondary, #e62a26);font-size:.875rem;line-height:1.5}.sync-cause__nombre{color:rgba(14,55,95,.55);font-weight:600}.sync-brut{margin-top:.375rem}.sync-brut summary{cursor:pointer;font-size:.75rem;color:rgba(14,55,95,.5)}.sync-brut code{display:block;margin-top:.375rem;padding:.5rem .625rem;border-radius:6px;background:rgba(14,55,95,.05);color:rgba(14,55,95,.7);font-size:.6875rem;line-height:1.5;word-break:break-word;white-space:pre-wrap}.import-section{margin-top:var(--spacing-xl, 2rem)}.import-intro{margin:0 0 var(--spacing-md, 1rem);color:rgba(14,55,95,.72)}.import-avertissement{display:flex;align-items:flex-start;gap:.625rem;margin:0 0 var(--spacing-lg, 1.5rem);padding:.875rem 1rem;border:1px solid rgba(180,83,9,.28);border-radius:10px;background:rgba(180,83,9,.07);color:#92400e;font-size:.9375rem;line-height:1.5}.import-avertissement svg{flex-shrink:0;margin-top:.2em}.import-erreur{margin:0 0 var(--spacing-md, 1rem);padding:.75rem 1rem;border:1px solid rgba(230,42,38,.25);border-radius:10px;background:rgba(230,42,38,.08);color:var(--color-secondary, #e62a26)}.import-compteurs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md, 1rem);margin-bottom:var(--spacing-lg, 1.5rem)}.import-compteur{display:flex;flex-direction:column;gap:.25rem;padding:var(--spacing-md, 1rem);border:1px solid rgba(14,55,95,.1);border-radius:12px;background:var(--color-cream, #fffef8)}.import-nombre{font-family:var(--font-display, "Poppins"),sans-serif;font-size:1.75rem;font-weight:700;line-height:1;color:var(--color-primary, #0e375f)}.import-libelle{font-size:.8125rem;color:rgba(14,55,95,.62)}.import-note,.import-fait{margin:var(--spacing-md, 1rem) 0;font-size:.9375rem;color:rgba(14,55,95,.68)}.import-fait{color:#15803d;font-weight:600}.import-echecs{margin:var(--spacing-md, 1rem) 0;padding-left:1.25rem;color:var(--color-secondary, #e62a26);font-size:.9375rem}.import-table{margin-top:var(--spacing-md, 1rem)}.import-appliquer{margin-top:var(--spacing-lg, 1.5rem)}.import-boutons{display:flex;gap:var(--spacing-sm, .75rem);flex-wrap:wrap}.import-tourne{animation:import-rotation 1s linear infinite}@keyframes import-rotation{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.import-tourne{animation:none}}.import-selection{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md, 1rem);flex-wrap:wrap;margin-top:var(--spacing-lg, 1.5rem);font-size:.9375rem;color:rgba(14,55,95,.72)}.import-case{width:5.5rem;text-align:center}.import-case input{width:1.05rem;height:1.05rem;accent-color:var(--color-secondary, #e62a26);cursor:pointer}.import-ecartee td:not(.import-case){color:rgba(14,55,95,.38);text-decoration:line-through}.import-completer{margin:var(--spacing-md, 1rem) 0;padding-left:1.25rem;font-size:.9375rem;color:rgba(14,55,95,.68)}.import-completer strong{color:var(--color-primary, #0e375f)}.import-action{text-align:right;white-space:nowrap}.import-btn--ecarter{color:var(--color-secondary, #e62a26)}.import-numero{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8125rem;color:rgba(14,55,95,.6)}.import-ecartees{margin:var(--spacing-lg, 1.5rem) 0;padding:var(--spacing-md, 1rem);border:1px solid rgba(14,55,95,.12);border-radius:12px;background:var(--color-cream, #fffef8)}.import-ecartees summary{cursor:pointer;font-weight:600;color:var(--color-primary, #0e375f)}.import-ecartees summary:focus-visible{outline:2px solid var(--color-secondary, #e62a26);outline-offset:2px}.import-ecartees table{margin-top:var(--spacing-md, 1rem)}@media (max-width: 900px){.import-section{overflow-x:auto}.import-table,.import-ecartees table{min-width:34rem}.import-action{text-align:left}}.react-joyride__tooltip{max-width:420px}.react-joyride__spotlight{border-radius:8px}.tour-tooltip{background:#fff;border-radius:10px;padding:20px;max-width:420px;min-width:320px;box-shadow:0 4px 20px rgba(0,0,0,.15);position:relative}@media (max-width: 560px){.tour-tooltip{min-width:0;padding:16px}}.tour-tooltip-title{font-size:1.05rem;font-weight:700;color:#0e375f;margin:0 0 10px;padding-right:28px}.tour-tooltip-content{font-size:.9rem;line-height:1.6;color:#444;margin-bottom:16px}.tour-btn-close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:1.3rem;color:#999;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.tour-btn-close:hover{color:#333}.tour-tooltip-footer{display:flex;flex-direction:column;gap:8px;border-top:1px solid #eee;padding-top:12px;margin-top:4px;align-items:stretch}.tour-tooltip-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.tour-tooltip-progress{font-size:.8rem;color:#999;white-space:nowrap;margin-right:auto}.tour-btn-next{background:#0E375F;color:#fff;border:none;border-radius:6px;padding:8px 20px;font-size:.9rem;cursor:pointer;transition:background .2s;white-space:nowrap}.tour-btn-next:hover{background:#15497a}.tour-btn-back{background:none;border:none;color:#0e375f;font-size:.9rem;cursor:pointer;padding:8px 10px;white-space:nowrap}.tour-btn-back:hover{text-decoration:underline}.tour-btn-skip{background:none;border:none;color:#999;font-size:.8rem;cursor:pointer;padding:0;white-space:nowrap;align-self:flex-start}.tour-btn-skip:hover{color:#666}@media (max-width: 480px){.tour-tooltip,.react-joyride__tooltip{min-width:0;max-width:calc(100vw - 2rem);padding:16px}}.tuto-bouton-aide{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;background:transparent;border:1px solid rgba(14,55,95,.25);border-radius:50%;color:var(--color-primary, #0e375f);font-size:1rem;cursor:pointer;transition:background .3s ease,border-color .3s ease}.clients-header .tuto-bouton-aide{margin-right:auto;margin-left:var(--spacing-sm, .75rem)}.tuto-bouton-aide:hover{background:rgba(14,55,95,.08);border-color:var(--color-primary, #0e375f)}@media (prefers-reduced-motion: reduce){.tuto-bouton-aide{transition:none}}.admin-page__titre{display:flex;align-items:center;gap:var(--spacing-md, 1rem);flex-wrap:wrap}.admin-page__titre .tuto-bouton-aide{margin-bottom:calc(var(--spacing-md, 1rem) + 5px)}.drrt-row{display:grid;grid-template-columns:1fr 1fr 36px;align-items:start;gap:8px}.drrt-col{display:flex;flex-direction:column;min-width:0}.drrt-col:first-child{max-width:none}.drrt-input-wrapper{position:relative;width:100%}.drrt-input-wrapper--cartons .drrt-input{padding-right:60px}.drrt-input-wrapper--pct .drrt-input{padding-right:32px}.drrt-input{width:100%;min-width:0;padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;box-sizing:border-box;background:#fff;color:#1e293b;caret-color:#0e375f;-webkit-text-fill-color:#1e293b}.drrt-input:focus{outline:none;border-color:#0e375f}.drrt-input:invalid{color:#1e293b;-webkit-text-fill-color:#1e293b}.drrt-input-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:.8rem;color:#94a3b8;pointer-events:none;user-select:none}.drrt-input.drrt-input-error{border-color:#dc2626;color:#dc2626;-webkit-text-fill-color:#dc2626}.drrt-field-error{color:#dc2626;font-size:.75rem;margin-top:4px;line-height:1.2}.drrt-remove{width:32px;height:32px;background:none;border:none;color:#dc2626;opacity:.75;padding:0;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,opacity .15s,color .15s}.drrt-remove:hover:not(:disabled){background:rgba(239,68,68,.12);opacity:1;color:#dc2626}.drrt-remove:disabled{opacity:.35;cursor:not-allowed}@media (max-width: 768px){.drrt-row{grid-template-columns:1fr 1fr 34px;gap:6px}.drrt-input-wrapper--cartons .drrt-input{padding-right:54px}.drrt-input-wrapper--pct .drrt-input{padding-right:30px}.drrt-remove{width:30px;height:30px}}@media (max-width: 480px){.drrt-row{grid-template-columns:1fr 1fr 32px;gap:6px}.drrt-input-wrapper--cartons .drrt-input{padding-right:50px}.drrt-input-wrapper--pct .drrt-input{padding-right:28px}.drrt-input{font-size:.85rem;padding:9px 10px}.drrt-remove{width:28px;height:28px;border-radius:8px}}.drf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px}.drf-modal{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.25);overflow:hidden}.drf-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;flex-shrink:0}.drf-header h2{font-size:1.1rem;font-weight:700;margin:0}.drf-close{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.drf-close:hover{background:rgba(255,255,255,.25)}.drf-form{display:flex;flex-direction:column;flex:1;min-height:0}.drf-scroll{padding:24px;overflow-y:auto;flex:1;min-height:0}.drf-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:#64748b}.drf-field{margin-bottom:18px}.drf-field label{display:block;font-size:.85rem;font-weight:600;color:#334155;margin-bottom:6px}.drf-field input[type=text],.drf-field input[type=number],.drf-field textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;background:#fff;color:#1a1a1a;caret-color:#1a1a1a;-webkit-text-fill-color:#1a1a1a;box-sizing:border-box}.drf-field input:focus,.drf-field textarea:focus{outline:none;border-color:#0e375f}.drf-field textarea{resize:vertical;min-height:60px}.drf-checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer}.drf-checkbox input[type=checkbox]{width:18px;height:18px}.drf-tiers-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}.drf-tiers-section{background:#f8f9fa;border-radius:8px;padding:16px;margin:16px 0}.drf-tiers-title{font-size:.95rem;font-weight:600;color:#1e293b;margin:0}.drf-tiers-column-labels{display:grid;grid-template-columns:1fr 1fr 36px;gap:8px;padding:0 4px;margin-bottom:6px}.drf-tiers-column-labels span{font-size:.75rem;color:#94a3b8;font-weight:500}.drf-tiers-hint{font-size:.75rem;color:#94a3b8;margin:8px 0 0 4px}.drf-add-tier-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;color:#0e375f;background:rgba(14,55,95,.08);border:1px solid rgba(14,55,95,.2);border-radius:8px;cursor:pointer;transition:background .15s}.drf-add-tier-btn:hover{background:rgba(14,55,95,.15)}.drf-btn-add{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;color:#0e375f;background:rgba(14,55,95,.08);border:1px solid rgba(14,55,95,.2);border-radius:8px;cursor:pointer;transition:background .15s}.drf-btn-add:hover{background:rgba(14,55,95,.15)}.drf-tiers{display:flex;flex-direction:column;gap:8px}.drf-tier-row{display:flex;align-items:center;gap:10px}.drf-tier-row input{flex:1;min-width:0}.drf-tier-row input:first-of-type{max-width:120px}.drf-btn-remove{width:32px;height:32px;background:none;border:none;color:#dc2626;padding:0;cursor:pointer;border-radius:8px;transition:color .15s,background .15s;display:inline-flex;align-items:center;justify-content:center}.drf-btn-remove:hover:not(:disabled){color:#dc2626;background:rgba(239,68,68,.12)}.drf-btn-remove:disabled{opacity:.4;cursor:not-allowed}.drf-error{color:#dc2626;font-size:.875rem;margin:12px 0 0}.drf-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px 16px;border-top:1px solid #e2e8f0}.drf-btn{padding:10px 20px;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s;border:none;display:inline-flex;align-items:center;gap:8px}.drf-btn-cancel{background:#f1f5f9;color:#475569}.drf-btn-cancel:hover{background:#e2e8f0}.drf-btn-save{background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff}.drf-btn-save:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.drf-btn-save:disabled{opacity:.7;cursor:not-allowed}.drf-input-error{border-color:#dc2626!important}.drf-field-error{color:#dc2626;font-size:.8rem;margin-top:6px;line-height:1.2}@media (max-width: 768px){.drf-scroll{padding:18px}.drf-tiers-section{padding:14px;margin:14px 0}.drf-tiers-column-labels{grid-template-columns:1fr 1fr 32px;gap:6px}.drf-tiers-column-labels span{font-size:.7rem}.drf-add-tier-btn,.drf-btn-add{padding:7px 10px;font-size:.8rem}.drf-modal{max-width:100%;width:100%;border-radius:14px}.drf-tier-row{gap:8px}.drf-tier-row input:first-of-type{max-width:100px}}@media (max-width: 480px){.drf-overlay{padding:12px}.drf-modal{max-width:100%;width:100%;max-height:95vh;border-radius:12px 12px 0 0}.drf-header,.drf-scroll{padding:16px}.drf-footer{padding:20px 16px 16px;flex-direction:column;gap:10px}.drf-tiers-column-labels{grid-template-columns:1fr 1fr 28px;display:none}.drf-tier-row{flex-wrap:wrap;gap:6px}.drf-tier-row input{min-width:0;flex:1 1 calc(50% - 6px)}.drf-tier-row input:first-of-type{max-width:none;flex:1 1 calc(50% - 6px)}.drf-footer .drf-btn{width:100%;justify-content:center}}.drapr-row:hover td{background:#f0f9ff}.drapr-row td{color:#333}.drapr-col-check input[type=checkbox]{width:20px;height:20px;accent-color:#0E375F}.drapr-cell{display:flex;align-items:center;gap:10px;min-width:0}.drapr-product-name{font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:120px;word-break:break-word}.drapr-product-code{color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drapr-product-gamme{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#1a1a1a;font-size:.8rem;white-space:nowrap}.drapr-rule{display:flex;flex-direction:column;gap:6px;min-width:0}.drapr-current-rule{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;max-width:100%;padding:3px 10px;border-radius:999px;background:#f1f5f9;color:#475569;border:1px solid rgba(14,55,95,.12)}.drapr-warning{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#fef3c7;color:#b45309;border:1px solid rgba(180,83,9,.25);font-size:.85rem;font-weight:600;line-height:1.2;white-space:nowrap}.dra-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px}.dra-modal{background:#fff;border-radius:16px;width:90%;max-width:950px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.25);overflow:hidden;position:relative;z-index:10001}.dra-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff;flex-shrink:0}.dra-header h2{font-size:1.1rem;font-weight:700;margin:0}.dra-close{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.dra-close:hover{background:rgba(255,255,255,.25)}.dra-body{padding:16px 24px 0;flex:1;min-height:0;display:flex;flex-direction:column}.dra-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:#64748b}.dra-error{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:10px;margin-bottom:12px;font-size:.9rem}.dra-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.dra-search,.dra-select{padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:.9rem;box-sizing:border-box;background:#fff;color:#333}.dra-search{flex:1;min-width:240px}.dra-select{flex:0 0 240px;min-width:220px}.dra-search:focus,.dra-select:focus{outline:none;border-color:#0e375f}.dra-table-wrapper{overflow-x:auto;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.07);background:#fff;flex:1;min-height:0}.dra-table{width:100%;border-collapse:collapse;font-size:.875rem;table-layout:auto}.dra-table thead tr{background:#f8fafc;border-bottom:2px solid #e2e8f0}.dra-table th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;white-space:nowrap}.dra-table thead{display:block;width:100%}.dra-table thead tr{display:table;width:100%;table-layout:auto}.dra-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle;word-break:break-word;color:#333}.dra-table td,.dra-table th{color:#333}.assign-product-row td{color:#333;font-size:.9rem}.dra-tbody{display:block;max-height:420px;overflow-y:auto;scrollbar-gutter:stable}.dra-tbody tr{display:table;width:100%;table-layout:auto}.dra-table thead{display:block;width:100%;overflow-y:scroll;scrollbar-gutter:stable;visibility:visible}.dra-table tbody tr:last-child td{border-bottom:none}.dra-table tbody tr:hover td{background:#f0f9ff}.dra-col-check{width:50px;min-width:50px;text-align:center}.dra-col-check input[type=checkbox]{width:20px;height:20px;accent-color:#0E375F}.dra-col-product{width:40%;min-width:200px}.dra-col-code{width:15%;min-width:80px}.dra-col-gamme,.dra-col-current-rule{width:20%;min-width:100px}.drapr-col-check{width:50px;min-width:50px;text-align:center}.drapr-col-product{width:40%;min-width:200px}.drapr-col-code{width:15%;min-width:80px}.drapr-col-gamme,.drapr-col-current-rule{width:20%;min-width:100px}.dra-empty-row{text-align:center;color:#64748b;padding:24px 14px;white-space:normal;word-break:normal;overflow-wrap:normal;min-width:240px}.dra-pagination{display:flex;justify-content:center;align-items:center;gap:12px;padding:14px 0 16px}.dra-pagination-btn{padding:10px 16px;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;border:none;background:#f1f5f9;color:#475569;transition:background .15s}.dra-pagination-btn:hover:not(:disabled){background:#e2e8f0;transform:translateY(-1px)}.dra-pagination-btn:disabled{opacity:.65;cursor:not-allowed}.dra-page-label{color:#334155;font-weight:600;font-size:.9rem;white-space:nowrap}.dra-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0}.dra-footer-counter{font-size:.9rem;color:#475569;font-weight:700;white-space:nowrap}.dra-footer-actions{display:flex;align-items:center;gap:12px}.dra-btn{padding:10px 20px;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .15s;border:none;display:inline-flex;align-items:center;gap:8px}.dra-btn-cancel{background:#f1f5f9;color:#475569}.dra-btn-cancel:hover:not(:disabled){background:#e2e8f0}.dra-btn-save{background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff}.dra-btn-save:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.dra-btn-save:disabled,.dra-btn-cancel:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.dra-table th,.dra-table td{padding:10px 12px}.dra-col-product,.drapr-col-product{min-width:180px}.dra-col-code,.drapr-col-code{min-width:70px}.dra-col-gamme,.dra-col-current-rule,.drapr-col-gamme,.drapr-col-current-rule{min-width:90px}.dra-tbody{max-height:52vh}.dra-modal{width:95%;max-width:100%}.dra-filters{flex-direction:column}.dra-search,.dra-select{width:100%;min-width:0;flex:none}.dra-footer{flex-direction:column;align-items:stretch;gap:10px}.dra-footer-counter{text-align:center}.dra-footer-actions{justify-content:center}}@media (max-width: 480px){.dra-overlay{padding:12px}.dra-modal{width:100%;max-height:95vh;border-radius:14px 14px 0 0}.dra-header{padding:16px}.dra-body{padding:16px 16px 0}.dra-filters{gap:10px;margin-bottom:10px}.dra-search{min-width:0}.dra-select{flex:1 1 160px;min-width:0}.dra-table-wrapper{border-radius:10px}.dra-table th,.dra-table td{padding:8px 10px}.dra-table{font-size:.8rem}.dra-col-product,.drapr-col-product{min-width:160px}.dra-col-code,.drapr-col-code{min-width:60px}.dra-col-gamme,.dra-col-current-rule,.drapr-col-gamme,.drapr-col-current-rule{min-width:80px}.dra-footer{padding:16px}.dra-col-gamme,.drapr-col-gamme,.dra-table th.dra-col-gamme{display:none}.dra-footer-actions{flex-direction:column;width:100%}.dra-footer-actions .dra-btn{width:100%;justify-content:center}}.drl-page{padding-bottom:80px}.drl-header{padding-bottom:var(--spacing-lg, 1.5rem);margin-bottom:var(--spacing-xl, 2rem);border-bottom:1px solid rgba(14,55,95,.12)}.drl-header-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.drl-btn-back{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(14,55,95,.18);color:var(--color-primary, #0e375f);border-radius:10px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .3s ease,border-color .3s ease;flex-shrink:0}.drl-btn-back:hover{background:rgba(14,55,95,.06);border-color:rgba(14,55,95,.3)}.drl-title{flex:1;min-width:0;margin:0;font-family:var(--font-display, "Poppins"),sans-serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:var(--color-primary, #0e375f)}.drl-btn-create{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#0e375f 0%,#1a5490 100%);color:#fff;border:none;border-radius:10px;padding:10px 18px;font-size:.875rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:filter .15s;flex-shrink:0}.drl-btn-create:hover{filter:brightness(1.07)}.drl-content{padding:0}.drl-error{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:.9rem}.drl-loading,.drl-empty{text-align:center;padding:60px 20px;color:#475569;font-size:1rem;display:flex;flex-direction:column;align-items:center;gap:16px}.drl-empty p{margin:0;color:#334155;font-weight:500}.drl-loading .drl-spin,.drl-empty svg{font-size:40px;opacity:.5;color:#64748b}.drl-spin{animation:drl-spin .8s linear infinite}.discount-rules-help-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid rgba(14,55,95,.18);border-radius:50%;background:transparent;color:var(--color-primary, #0e375f);font-size:1rem;cursor:pointer;transition:background .3s ease,border-color .3s ease}.discount-rules-help-icon:hover{background:rgba(14,55,95,.07);border-color:rgba(14,55,95,.32)}.discount-rules-help-icon:focus-visible{outline:2px solid var(--color-secondary, #e62a26);outline-offset:2px}@keyframes drl-spin{to{transform:rotate(360deg)}}.drl-table-wrapper{overflow-x:auto;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.07);background:#fff}.drl-table{width:100%;border-collapse:collapse;font-size:.875rem}.drl-table thead tr{background:#f8fafc;border-bottom:2px solid #e2e8f0}.drl-table th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;white-space:nowrap}.drl-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:#333!important}.drl-table tbody tr:last-child td{border-bottom:none}.drl-table tbody tr:hover{background:#f0f9ff}.drl-col-name{min-width:140px;font-weight:600}.drl-col-desc{max-width:240px;color:#64748b}.drl-col-tiers,.drl-col-products{white-space:nowrap}.drl-col-actions{width:120px}.drl-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.drl-badge-active{background:#dcfce7;color:#166534}.drl-badge-inactive{background:#f1f5f9;color:#334155}.drl-actions{display:flex;align-items:center;gap:6px}.drl-btn-action{width:34px;height:34px;border:none;border-radius:8px;background:#f1f5f9;color:#475569;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.drl-btn-action:hover{background:#e2e8f0;color:#0e375f}.drl-btn-edit:hover,.drl-btn-assign:hover{color:#0e375f}.drl-btn-delete:hover{color:#dc2626;background:#fef2f2}@media (max-width: 768px){.drl-col-desc,.drl-col-tiers,.drl-table .drl-col-desc,.drl-table .drl-col-tiers{display:none}.drl-header-inner{justify-content:center;gap:12px}.drl-title{width:100%;text-align:center;font-size:1.1rem}.drl-btn-create{width:100%;justify-content:center}}@media (max-width: 480px){.drl-header{padding-bottom:1rem;margin-bottom:1.25rem}.drl-content{padding:16px 12px}.drl-btn-back{padding:8px 12px;font-size:.8rem}.drl-btn-create{padding:9px 14px;font-size:.8rem}.drl-table th,.drl-table td{padding:10px;font-size:.8rem}.drl-col-products,.drl-table .drl-col-products{display:none}.drl-btn-action{width:30px;height:30px}.drl-actions{gap:4px}}.image-uploader{display:flex;flex-direction:column;gap:12px}.image-preview-grid{display:flex;flex-wrap:wrap;gap:10px}.image-preview-item{position:relative;width:90px;height:90px;border-radius:8px;overflow:hidden;border:2px solid var(--color-border, #e2e8f0);background:#f8fafc}.image-preview-item.is-primary{border-color:var(--color-primary, #0E375F)}.image-preview-item img{width:100%;height:100%;object-fit:cover;display:block}.image-preview-actions{position:absolute;top:4px;right:4px;display:flex;flex-direction:column;gap:4px;opacity:0;transition:opacity .15s}.image-preview-item:hover .image-preview-actions{opacity:1}.img-btn{width:24px;height:24px;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;transition:transform .15s}.img-btn:hover{transform:scale(1.15)}.img-btn-remove{background:#ef4444;color:#fff}.img-btn-primary{background:#f59e0b;color:#fff}.image-primary-badge{position:absolute;bottom:0;left:0;right:0;background:rgba(14,55,95,.82);color:#fff;font-size:9px;font-weight:600;text-align:center;padding:2px 0;text-transform:uppercase;letter-spacing:.5px}.upload-drop-zone{border:2px dashed var(--color-border, #cbd5e1);border-radius:10px;padding:24px 16px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:#f8fafc;color:#64748b;user-select:none}.upload-drop-zone:hover,.upload-drop-zone.drag-over{border-color:var(--color-primary, #0E375F);background:rgba(14,55,95,.04)}.upload-drop-zone.uploading{cursor:wait;opacity:.7}.upload-zone-icon{font-size:28px;color:var(--color-primary, #0E375F);margin-bottom:8px;opacity:.6}.upload-drop-zone p{margin:4px 0;font-size:.875rem;color:#475569}.upload-hint{font-size:.75rem;color:#94a3b8}.upload-input-hidden{display:none}.upload-uploading{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--color-primary, #0E375F);font-size:.875rem}.upload-spinner{width:28px;height:28px;border:3px solid rgba(14,55,95,.2);border-top-color:var(--color-primary, #0E375F);border-radius:50%;animation:spin .7s linear infinite}.url-input-row{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:6px 10px}.url-icon{color:#94a3b8;font-size:14px;flex-shrink:0}.url-input-row input{flex:1;border:none;background:transparent;font-size:.875rem;color:#1e293b;outline:none}.url-input-row input::placeholder{color:#94a3b8}.btn-add-url{width:30px;height:30px;border:none;border-radius:6px;background:var(--color-primary, #0E375F);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:background .2s;flex-shrink:0}.btn-add-url:disabled{background:#cbd5e1;cursor:not-allowed}.upload-error{color:#ef4444;font-size:.8rem;margin:0}.upload-bilan{margin:.5rem 0 0;font-size:.8125rem;color:#15803d}@media (max-width: 480px){.url-input-row{flex-wrap:wrap}.url-input-row input{min-width:0;flex:1 1 100%}}.pfm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:16px;animation:pfm-fade-in .15s ease}@keyframes pfm-fade-in{0%{opacity:0}to{opacity:1}}.pfm-modal{background:#fff;border-radius:16px;width:100%;max-width:780px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.25);animation:pfm-slide-up .2s ease;overflow:hidden}@keyframes pfm-slide-up{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.pfm-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;flex-shrink:0}.pfm-header h2{font-size:1.1rem;font-weight:700;margin:0}.pfm-close{background:rgba(255,255,255,.15);border:none;border-radius:8px;color:#fff;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:background .15s}.pfm-close:hover{background:rgba(255,255,255,.25)}.pfm-body{overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:20px;flex:1}.pfm-draft-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:rgba(14,55,95,.06);border:1px solid rgba(14,55,95,.16);border-left:3px solid #0E375F;border-radius:10px;flex-wrap:wrap}.pfm-draft-banner-text{display:flex;align-items:center;gap:8px;color:#0e375f;font-size:.875rem;font-weight:500}.pfm-draft-banner-text svg{font-size:14px;opacity:.75;flex-shrink:0}.pfm-draft-banner-actions{display:flex;gap:8px;flex-shrink:0}.pfm-draft-btn{padding:6px 14px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;border:none;font-family:inherit;transition:background .15s}.pfm-draft-btn-restore{background:#0E375F;color:#fff}.pfm-draft-btn-restore:hover{background:#0c2f52}.pfm-draft-btn-discard{background:rgba(230,42,38,.08);color:#e62a26;border:1px solid rgba(230,42,38,.2)}.pfm-draft-btn-discard:hover{background:rgba(230,42,38,.15)}.pfm-section{border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px 20px;margin:0}.pfm-section legend{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#0e375f;padding:0 8px;background:#fff}.pfm-row{display:grid;gap:14px;margin-top:14px}.pfm-row-2{grid-template-columns:1fr 1fr}.pfm-row-3{grid-template-columns:1fr 1fr 1fr}.pfm-field{display:flex;flex-direction:column;gap:5px}.pfm-field label{font-size:.8rem;font-weight:600;color:#475569}.pfm-field input,.pfm-field select,.pfm-field textarea{border:1.5px solid #e2e8f0;border-radius:8px;padding:9px 12px;font-size:.875rem;color:#1e293b;background:#f8fafc;transition:border-color .15s,box-shadow .15s;outline:none;font-family:inherit}.pfm-field input:focus,.pfm-field select:focus,.pfm-field textarea:focus{border-color:#0e375f;box-shadow:0 0 0 3px rgba(14,55,95,.08);background:#fff}.pfm-field input[type=number]{-moz-appearance:textfield}.pfm-field input[type=number]::-webkit-inner-spin-button,.pfm-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pfm-field textarea{resize:vertical;min-height:80px}.pfm-field input.input-error,.pfm-field select.input-error{border-color:#ef4444}.field-error{color:#ef4444;font-size:.75rem}.field-hint{color:#94a3b8;font-size:.72rem}.pfm-select-wrap{min-height:40px}.pfm-select-wrap.input-error .cs-trigger{border-color:#ef4444}.pfm-label-max{font-weight:400;color:#94a3b8;font-size:.8em}.pfm-size-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.pfm-size-btn{min-width:44px;padding:8px 12px;border:1.5px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#475569;font-size:.875rem;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.pfm-size-btn:hover:not(:disabled){border-color:#0e375f;background:rgba(14,55,95,.06);color:#0e375f}.pfm-size-btn.active{border-color:#0e375f;background:#0E375F;color:#fff}.pfm-size-btn:disabled{opacity:.5;cursor:not-allowed}.pfm-size-subtitle{display:flex;flex-direction:column;gap:4px;margin-top:4px}.pfm-size-subtitle input{border:1.5px solid #e2e8f0;border-radius:8px;padding:7px 10px;font-size:.8rem;color:#1e293b;background:#f8fafc;outline:none;font-family:inherit;transition:border-color .15s}.pfm-size-subtitle input:focus{border-color:#0e375f;box-shadow:0 0 0 3px rgba(14,55,95,.08);background:#fff}.pfm-field-toggle{justify-content:flex-start}.toggle-switch{display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none;padding:8px 0}.toggle-switch input[type=checkbox]{display:none}.toggle-slider{position:relative;width:44px;height:24px;background:#cbd5e1;border-radius:12px;transition:background .2s;flex-shrink:0}.toggle-slider:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.15)}.toggle-switch input:checked+.toggle-slider{background:#ef4444}.toggle-switch input:checked+.toggle-slider:after{transform:translate(20px)}.toggle-label{font-size:.875rem;font-weight:500;color:#475569}.tag-field{display:flex;flex-direction:column;gap:6px}.tags-list{display:flex;flex-wrap:wrap;gap:6px;min-height:30px}.tag{display:inline-flex;align-items:center;gap:5px;background:rgba(14,55,95,.08);color:#0e375f;border-radius:100px;padding:3px 10px 3px 8px;font-size:.78rem;font-weight:500}.tag svg{font-size:9px;opacity:.6}.tag button{background:none;border:none;cursor:pointer;color:#64748b;display:flex;align-items:center;padding:0;font-size:10px;margin-left:2px;transition:color .15s}.tag button:hover{color:#ef4444}.tag-input-row{display:flex;gap:6px}.tag-input-row input{flex:1;border:1.5px solid #e2e8f0;border-radius:8px;padding:7px 10px;font-size:.8rem;color:#1e293b;background:#f8fafc;outline:none;font-family:inherit;transition:border-color .15s}.tag-input-row input:focus{border-color:#0e375f}.btn-tag-add{width:34px;height:34px;border:none;border-radius:8px;background:var(--color-primary, #0E375F);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;transition:background .15s}.btn-tag-add:hover:not(:disabled){background:#1a5490}.btn-tag-add:disabled{background:#cbd5e1;cursor:not-allowed;opacity:.8}.pfm-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc}.btn-pfm{padding:10px 22px;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;gap:8px;transition:all .15s}.btn-pfm:disabled{opacity:.6;cursor:not-allowed}.btn-pfm-cancel{background:#e2e8f0;color:#475569}.btn-pfm-cancel:hover:not(:disabled){background:#cbd5e1}.btn-pfm-save{background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;box-shadow:0 4px 12px rgba(14,55,95,.3)}.btn-pfm-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px rgba(14,55,95,.4)}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@media (max-width: 640px){.pfm-modal{max-height:96vh;border-radius:12px}.pfm-body{padding:16px}.pfm-row-2,.pfm-row-3{grid-template-columns:1fr}}.pfm-lecture-note{margin:0 0 var(--spacing-md);color:rgba(14,55,95,.65);font-size:.8125rem;line-height:1.45}.pfm-field input[readonly]{background:rgba(14,55,95,.06);color:rgba(14,55,95,.75);cursor:default}.pfm-aide{display:block;margin-top:.25rem;color:rgba(14,55,95,.55);font-size:.75rem;line-height:1.4}.admin-catalogue{min-height:100vh;padding-bottom:80px}.ac-header{background:linear-gradient(135deg,#0E375F 0%,#1a5490 100%);color:#fff;padding:20px 0;position:sticky;top:0;z-index:100;box-shadow:0 4px 16px rgba(14,55,95,.35)}.ac-header-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ac-header-title{flex:1;min-width:0}.ac-header-title h1{font-size:1.25rem;font-weight:700;margin:0 0 2px;display:flex;align-items:center;gap:10px}.ac-header-title p{margin:0;font-size:.85rem;opacity:.75}.btn-back{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s;flex-shrink:0}.btn-back:hover{background:rgba(255,255,255,.25)}.btn-add-product{display:flex;align-items:center;gap:8px;background:#fff;color:#0e375f;border:none;border-radius:10px;padding:10px 18px;font-size:.875rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .15s;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,.15)}.btn-add-product:hover{background:#f0f9ff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.ac-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.btn-manage-discounts{display:flex;align-items:center;gap:8px;background:rgba(14,55,95,.06);color:var(--color-primary, #0e375f);border:1px solid rgba(14,55,95,.25);border-radius:10px;padding:9px 16px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .3s ease,border-color .3s ease}.btn-manage-discounts:hover{background:rgba(14,55,95,.12);border-color:var(--color-primary, #0e375f)}.dashboard-titre__actions{display:flex;align-items:center;gap:var(--spacing-sm, .75rem);margin-top:var(--spacing-md, 1rem)}@media (prefers-reduced-motion: reduce){.btn-manage-discounts{transition:none}}.ac-note{margin:4px 0 0;padding:12px 16px;background:#fff;border-left:3px solid #E62A26;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.06);font-size:.85rem;line-height:1.5;color:#334155}.ac-note strong{color:#0e375f}.ac-stats{display:flex;gap:16px;padding:20px 0 8px;flex-wrap:wrap}.ac-stat{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid transparent;border-radius:12px;padding:14px 20px;box-shadow:0 1px 4px rgba(0,0,0,.06);min-width:130px;font:inherit;text-align:left;cursor:pointer;transition:border-color .3s ease,box-shadow .3s ease,transform .3s ease}.ac-stat:hover{border-color:rgba(14,55,95,.25);box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-1px)}.ac-stat:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.ac-stat:active{transform:scale(.96);box-shadow:0 1px 2px rgba(0,0,0,.1)}.ac-stat--actif{position:relative;background:#eef4fa;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),0 4px 12px rgba(14,55,95,.15)}.ac-stat--actif .ac-stat-label,.ac-stat--actif .ac-stat-val{color:var(--color-primary)}.ac-stat--actif .ac-stat-label{font-weight:700}.ac-stat--actif:after{content:"✓";position:absolute;top:6px;right:8px;color:var(--color-primary);font-size:12px;font-weight:700;line-height:1}.ac-stat--actif:hover:after{content:"✕"}@media (prefers-reduced-motion: reduce){.ac-stat{transition:none}.ac-stat:hover,.ac-stat:active{transform:none}}.ac-stat svg{font-size:22px;color:#64748b;flex-shrink:0}.ac-stat-ok svg{color:#22c55e}.ac-stat-warn svg{color:#f59e0b}.ac-stat div{display:flex;flex-direction:column;gap:1px}.ac-stat-val{font-size:1.4rem;font-weight:800;color:#1e293b;line-height:1}.ac-stat-label{font-size:.75rem;color:#64748b;font-weight:500}.ac-filters{display:flex;align-items:center;gap:12px;padding:16px 0 12px;flex-wrap:wrap}.ac-search{position:relative;flex:1;min-width:200px}.ac-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:14px;pointer-events:none}.ac-search input{width:100%;padding:10px 12px 10px 38px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.875rem;background:#fff;color:#1e293b;outline:none;box-sizing:border-box;transition:border-color .15s}.ac-search input:focus{border-color:#0e375f}.btn-reset-filters{background:none;border:1.5px solid #e2e8f0;border-radius:10px;padding:9px 14px;font-size:.8rem;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s}.btn-reset-filters:hover{border-color:#ef4444;color:#ef4444}.ac-results-count{font-size:.8rem;color:#64748b;margin:0 0 8px}.ac-loading,.ac-empty{text-align:center;padding:60px 20px;color:#475569;font-size:1rem;display:flex;flex-direction:column;align-items:center;gap:12px}.ac-empty p{color:#334155;font-weight:500;margin:0}.ac-loading svg,.ac-empty svg{font-size:40px;opacity:.5;color:#64748b}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ac-table-wrapper{overflow-x:auto;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.07);background:#fff;margin-bottom:24px}.ac-table{width:100%;border-collapse:collapse;font-size:.875rem}.ac-table thead tr{background:#f8fafc;border-bottom:2px solid #e2e8f0}.ac-table th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;white-space:nowrap}.ac-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.ac-table tbody tr:last-child td{border-bottom:none}.ac-table tbody tr:hover{background:#fafcff}.ac-table tbody tr.row-rupture{background:#fff7f7}.ac-table tbody tr.row-rupture:hover{background:#fff0f0}.col-image{width:60px}.col-name{min-width:180px}.col-gamme{width:120px}.col-price{width:90px;text-align:right;color:#1e293b}.col-stock{width:130px}.col-actions{width:90px}.product-thumb{position:relative;width:48px;height:48px;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.ac-photos{position:absolute;right:2px;bottom:2px;min-width:16px;padding:0 3px;border-radius:8px;background:rgba(14,55,95,.82);color:#fff;font-size:.625rem;font-weight:700;line-height:16px;text-align:center}.ac-photos--seule{background:#b45309}.ac-photos--aucune{background:var(--color-secondary, #e62a26)}.product-thumb img{width:100%;height:100%;object-fit:cover}.product-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#cbd5e1;font-size:18px}.product-name-cell{display:flex;flex-direction:column;gap:3px}.product-name{font-weight:600;color:#1e293b;line-height:1.3}.product-code{font-size:.75rem;color:#94a3b8;font-family:monospace}.gamme-badge{display:inline-block;background:rgba(14,55,95,.08);color:#0e375f;border-radius:100px;padding:3px 10px;font-size:.75rem;font-weight:600;white-space:nowrap}.stock-toggle{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:100px;padding:5px 12px;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s}.stock-dispo{background:rgba(34,197,94,.1);color:#16a34a}.stock-dispo:hover,.stock-rupture{background:rgba(239,68,68,.1);color:#dc2626}.stock-rupture:hover{background:rgba(34,197,94,.1);color:#16a34a}.actions-group{display:flex;gap:6px}.btn-action{width:34px;height:34px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s}.btn-edit{background:rgba(14,55,95,.08);color:#0e375f}.btn-edit:hover{background:#0E375F;color:#fff}.btn-delete{background:rgba(239,68,68,.08);color:#ef4444}.btn-delete:hover{background:#ef4444;color:#fff}.btn-discounts{background:rgba(245,158,11,.12);color:#b45309}.btn-discounts:hover{background:#f59e0b;color:#fff}.ac-save-error{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#ef4444;color:#fff;padding:12px 20px;border-radius:10px;font-size:.875rem;z-index:4000;box-shadow:0 4px 16px rgba(239,68,68,.35)}.ac-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);padding:12px 20px;border-radius:10px;font-size:.875rem;font-weight:600;z-index:4000;display:flex;align-items:center;gap:8px;box-shadow:0 4px 16px rgba(0,0,0,.15);animation:toast-in .2s ease;white-space:nowrap}@keyframes toast-in{0%{transform:translate(-50%) translateY(10px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.ac-toast-success{background:#0E375F;color:#fff}.ac-toast-error{background:#ef4444;color:#fff}@media (max-width: 768px){.ac-header-inner{flex-wrap:wrap}.ac-header-title h1{font-size:1.1rem}.ac-table-wrapper{overflow-x:visible}.ac-table,.ac-table tbody,.ac-table tr,.ac-table td{display:block;min-width:0}.ac-table thead{display:none}.ac-table tbody tr{display:grid;grid-template-columns:3.5rem repeat(3,minmax(0,1fr));gap:.375rem .5rem;align-items:center;padding:.625rem .75rem;border-bottom:1px solid #e2e8f0}.ac-table td{padding:0;border:none}.ac-table td.col-image{grid-column:1;grid-row:1 / span 2;align-self:start;width:auto}.ac-table td.col-name{grid-column:2 / -1;grid-row:1;min-width:0}.ac-table td.col-gamme{grid-column:2;grid-row:2;width:auto}.ac-table td.col-price--ht{grid-column:3;grid-row:2;width:auto;text-align:left;font-weight:700}.ac-table th.col-price--ttc,.ac-table td.col-price--ttc{display:none}.ac-table td.col-stock--iabako{grid-column:4;grid-row:2;width:auto;justify-self:end;text-align:right}.ac-table td.col-stock--vente{grid-column:1 / 3;grid-row:3;width:auto}.ac-table td.col-stock--ligne{grid-column:3;grid-row:3;width:auto}.ac-table td.col-stock--vente .stock-toggle,.ac-table td.col-stock--ligne .ac-publie{width:100%;justify-content:center;font-size:.6875rem}.ac-table td.col-actions{grid-column:4;grid-row:3;width:auto;justify-self:end}.ac-table .product-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.25}.ac-table tbody tr.row-rupture{border-left:3px solid #e62a26}.ac-filters{gap:8px}.ac-search{min-width:160px}}@media (max-width: 480px){.container{padding:0 12px}.ac-stats{gap:10px}.ac-stat{flex:1;min-width:100px;padding:12px 14px}}.ac-publie{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border:1px solid transparent;border-radius:999px;font-family:var(--font-family-primary);font-size:.75rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:background-color .3s ease}.ac-publie--oui{background:rgba(30,120,70,.12);color:#1a6b43}.ac-publie--oui:hover{background:rgba(30,120,70,.22)}.ac-publie--non{background:rgba(176,112,0,.16);color:#7a4d00}.ac-publie--non:hover{background:rgba(176,112,0,.26)}.ac-publie:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.ac-lecture{color:rgba(14,55,95,.7)}@media (prefers-reduced-motion: reduce){.ac-publie{transition:none}}.ac-stat,.ac-table-wrapper{background:linear-gradient(135deg,#ffffff 0%,#fffef9 50%,#ffffff 100%);border:1px solid rgba(14,55,95,.15);box-shadow:0 4px 16px rgba(14,55,95,.06),inset 0 1px rgba(255,255,255,.8)}.ac-rupture{color:#c81f1b;font-weight:700}.page-setup{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--hauteur-header) + var(--spacing-3xl)) var(--spacing-lg) var(--spacing-3xl);background:var(--color-cream)}.setup-carte{width:100%;max-width:26rem;padding:var(--spacing-2xl);background:var(--color-cream-light);border:1px solid rgba(14,55,95,.12);border-radius:var(--border-radius-lg)}.setup-titre{display:inline-block;margin:0 0 var(--spacing-sm);padding-bottom:.25rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:1.75rem;font-weight:700;line-height:1.1;box-shadow:inset 0 -.14em rgba(230,42,38,.85)}.setup-accroche{margin:0 0 var(--spacing-xl);color:rgba(14,55,95,.75);font-size:.9375rem;line-height:1.55}.setup-attente{margin:0;color:rgba(14,55,95,.7);font-size:.9375rem}.setup-coche{margin:0 0 var(--spacing-md);color:var(--color-secondary);font-size:2rem;line-height:1}.setup-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.setup-champ{display:flex;flex-direction:column;gap:.375rem}.setup-champ label{display:flex;align-items:center;gap:.4375rem;color:var(--color-primary);font-size:.875rem;font-weight:600}.setup-champ label svg{font-size:.75rem;color:rgba(14,55,95,.45)}.setup-champ input{width:100%;padding:.6875rem .875rem;background:var(--color-cream);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem;transition:border-color var(--transition-normal),background-color var(--transition-normal)}.setup-champ input:focus{outline:none;background:var(--color-cream-light);border-color:var(--color-primary)}.setup-champ input:focus-visible{outline:3px solid var(--color-primary);outline-offset:1px}.setup-champ small{color:rgba(14,55,95,.6);font-size:.8125rem;line-height:1.4}.setup-champ__mdp{position:relative;display:flex;align-items:center}.setup-champ__mdp input{padding-right:2.75rem}.setup-oeil{position:absolute;right:.375rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:var(--border-radius-sm);background:transparent;color:rgba(14,55,95,.6);cursor:pointer;transition:background-color var(--transition-normal)}.setup-oeil:hover{background:rgba(14,55,95,.09);color:var(--color-primary)}.setup-oeil:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.setup-erreur{margin:0;padding:var(--spacing-sm) var(--spacing-md);background:rgba(230,42,38,.08);border-left:3px solid var(--color-secondary);border-radius:var(--border-radius-sm);color:#c81f1b;font-size:.875rem;line-height:1.45}.setup-valider{padding:.8125rem 1.5rem;border:none;border-radius:var(--border-radius-md);background:var(--color-primary);color:var(--color-cream);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal)}.setup-valider:hover:not(:disabled){background:#0a2a4a}.setup-valider:disabled{opacity:.55;cursor:not-allowed}.setup-valider:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.setup-champ input,.setup-oeil,.setup-valider{transition:none}}@media (max-width: 480px){.page-setup{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.setup-carte{padding:var(--spacing-lg) var(--spacing-md)}}.page-erreur{min-height:70vh;padding:calc(var(--hauteur-header) + var(--spacing-3xl)) 0 var(--spacing-3xl);background:var(--color-cream)}.erreur-code{margin:0 0 var(--spacing-sm);color:var(--color-secondary);font-family:var(--font-family-display);font-size:.8125rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.erreur-titre{display:inline-block;margin:0 0 var(--spacing-md);padding-bottom:.25rem;color:var(--color-primary);font-family:var(--font-family-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;line-height:1.1;box-shadow:inset 0 -.14em rgba(230,42,38,.85)}.erreur-texte{max-width:55ch;margin:0 0 var(--spacing-2xl);color:rgba(14,55,95,.78);font-size:1rem;line-height:1.6}.erreur-texte code{padding:.0625rem .3125rem;background:rgba(14,55,95,.07);border-radius:var(--border-radius-sm);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.875em;word-break:break-all}.erreur-recherche{display:flex;gap:var(--spacing-sm);max-width:34rem;margin-bottom:var(--spacing-3xl)}.erreur-recherche__champ{display:flex;align-items:center;gap:.625rem;flex:1;min-width:0;padding:0 .875rem;background:var(--color-cream-light);border:1px solid rgba(14,55,95,.18);border-radius:var(--border-radius-md);color:rgba(14,55,95,.5);transition:border-color var(--transition-normal)}.erreur-recherche__champ:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(14,55,95,.15)}.erreur-recherche__champ:focus-within svg{color:var(--color-primary)}.erreur-recherche__champ input{flex:1;min-width:0;padding:.75rem 0;background:transparent;border:none;color:var(--color-primary);font-family:var(--font-family-primary);font-size:.9375rem}.erreur-recherche__champ input:focus{outline:none;border:none;box-shadow:none}.erreur-recherche button{flex-shrink:0;padding:.75rem 1.375rem;border:none;border-radius:var(--border-radius-md);background:var(--color-primary);color:var(--color-cream);font-family:var(--font-family-display);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color var(--transition-normal)}.erreur-recherche button:hover:not(:disabled){background:#0a2a4a}.erreur-recherche button:disabled{opacity:.5;cursor:not-allowed}.erreur-familles h2{margin:0 0 var(--spacing-md);color:var(--color-primary);font-family:var(--font-family-display);font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.erreur-familles ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.25rem var(--spacing-lg);margin:0 0 var(--spacing-2xl);padding:0;list-style:none}.erreur-familles a{display:block;padding:.4375rem 0;color:var(--color-primary);font-size:.9375rem;text-decoration:none;border-bottom:1px solid rgba(14,55,95,.1);transition:color var(--transition-normal)}.erreur-familles a:hover{color:var(--color-secondary)}.erreur-familles a:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.erreur-secours{margin:0;color:rgba(14,55,95,.78);font-size:.9375rem;line-height:1.6}.erreur-secours a{color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.erreur-secours a:hover{color:var(--color-secondary)}@media (max-width: 640px){.erreur-recherche{flex-direction:column}}@media (prefers-reduced-motion: reduce){.erreur-recherche__champ,.erreur-recherche button,.erreur-familles a{transition:none}}
