@charset "UTF-8";
/* Mode sombre — activé par l'icône 🌙 (attribut data-mode="sombre" sur <html>, choix mémorisé sur l'appareil).
   1. Palette sombre ; 2. bases ; 3. règles générées automatiquement à partir de css/site.css
   (fonds blancs → surfaces sombres, textes noirs → clairs, bordures claires → sombres). */
html[data-mode="sombre"]{color-scheme:dark;
  --sp-bg:#15171C;--sp-ink:#E4E4E7;--sp-tx:#F4F4F5;--sp-tx2:#A1A1AA;
  --nv-bg:#15171C;--nv-surface:#1E2027;--nv-panel:#1E2027;--nv-panel2:#252831;--nv-tx:#F4F4F5;--nv-tx2:#A1A1AA;--nv-bd:#E4E4E7;
  --a9-bg:#1E2027;--a9-bd:2px solid #E4E4E7;--a9-sh:4px 4px 0 #E4E4E7;--a9-blk:#2A2D36;
  --dk-bg:#15171C;--dk-surface:#1E2027;--dk-surface2:#252831;--dk-tx:#F4F4F5;--dk-tx2:#A1A1AA;--dk-bd:#3A3D47;--dk-line:#E4E4E7;
}
html[data-mode="sombre"],html[data-mode="sombre"] body{background-color:var(--dk-bg) !important;color:var(--dk-tx);}
html[data-mode="sombre"] input,html[data-mode="sombre"] select,html[data-mode="sombre"] textarea{background-color:var(--dk-surface2) !important;color:var(--dk-tx) !important;border-color:var(--dk-bd) !important;}
html[data-mode="sombre"] ::placeholder{color:var(--dk-tx2) !important;opacity:.8;}
html[data-mode="sombre"] .pm-wrap{color-scheme:light;color:#111827;--sp-bg:#F1F5F9;--sp-ink:#27272A;--sp-tx:#111827;--sp-tx2:#4B5563;--nv-bg:var(--sp-bg);--nv-surface:#fff;--nv-panel:#fff;--nv-panel2:#fff;--nv-tx:var(--sp-tx);--nv-tx2:var(--sp-tx2);--nv-bd:var(--sp-ink);--a9-bg:#fff;--a9-bd:2px solid #27272A;--a9-sh:4px 4px 0 #27272A;--a9-blk:#E5E7EB;}
html body #themeBtn{display:inline-flex !important;align-items:center;justify-content:center;}
html[data-mode="sombre"] img,html[data-mode="sombre"] video{filter:brightness(.92);}

/* ── animation du changement de mode ── */
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal;}
::view-transition-new(root){z-index:2;}
::view-transition-old(root){transform-origin:var(--mode-x,50%) var(--mode-y,50%);}
html.mode-bascule *,html.mode-bascule *::before,html.mode-bascule *::after{transition:none !important;}
.mode-tourne{display:inline-block;animation:modeTourne .9s cubic-bezier(.34,1.56,.64,1);}
@keyframes modeTourne{0%{transform:rotate(0) scale(1)}40%{transform:rotate(200deg) scale(.4)}100%{transform:rotate(360deg) scale(1)}}
@media (prefers-reduced-motion: reduce){.mode-tourne{animation:none}}

/* ── règles générées ── */
html[data-mode="sombre"] .glass-btn{background:linear-gradient(135deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.05) 100%), rgba(255,255,255,.05);border:1.5px solid var(--dk-bd)}
html[data-mode="sombre"] .glass-btn::after{border:1.5px solid var(--dk-bd)}
html[data-mode="sombre"] nav{border-bottom:1px solid var(--dk-bd)}
html[data-mode="sombre"] .nav-a:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .nav-pill{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .nav-pill:hover{border-color:var(--dk-bd)}
html[data-mode="sombre"] .nav-pill.gold{color:var(--dk-tx)}
html[data-mode="sombre"] .nav-pill.gold:hover{color:var(--dk-tx)}
html[data-mode="sombre"] .icon-btn{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .icon-btn:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .lang-dd{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .lang-opt:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .wish-count,html[data-mode="sombre"] .cart-count{color:var(--dk-tx);border:2px solid var(--dk-line)}
html[data-mode="sombre"] .marquee-section{border-top:1px solid var(--dk-bd);border-bottom:1px solid var(--dk-bd)}
html[data-mode="sombre"] .mq-icon{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .product-card{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .product-card:hover{border-color:var(--dk-bd)}
html[data-mode="sombre"] .product-card-badge{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .footer-badge{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .cat-btn{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .cat-btn:hover{border-color:var(--dk-bd);background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .cat-btn.active{background:var(--dk-surface);color:var(--dk-tx);border-color:var(--dk-bd)}
html[data-mode="sombre"] .sw-badge{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .media-upload-zone{border:1.5px dashed var(--dk-bd);background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .media-upload-zone:hover{border-color:var(--dk-bd);background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .media-thumb{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .media-add-btn{border:1.5px dashed var(--dk-bd)}
html[data-mode="sombre"] .media-add-btn:hover{border-color:var(--dk-bd)}
html[data-mode="sombre"] .detail-gallery-item{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .lightbox-nav{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .lightbox-nav:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .modal-box{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .modal-close:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .form-input,html[data-mode="sombre"] .form-textarea,html[data-mode="sombre"] .form-select{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .form-input:focus,html[data-mode="sombre"] .form-textarea:focus,html[data-mode="sombre"] .form-select:focus{border-color:var(--dk-bd)}
html[data-mode="sombre"] .form-btn{background:var(--dk-surface);color:var(--dk-tx)}
html[data-mode="sombre"] .form-btn-ghost{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .form-btn-ghost:hover{border-color:var(--dk-bd)}
html[data-mode="sombre"] .admin-close-btn{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .admin-close-btn:hover{border-color:var(--dk-bd)}
html[data-mode="sombre"] .admin-add-btn{background:var(--dk-surface);color:var(--dk-tx)}
html[data-mode="sombre"] .admin-stat{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .admin-product-row{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .admin-edit-btn{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .admin-edit-btn:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .admin-sep{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .search-input{background:rgba(255,255,255,.05);border:1.5px solid var(--dk-bd)}
html[data-mode="sombre"] .search-input:focus{border-color:var(--dk-bd);background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .search-suggestions{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .search-suggestion-item{border-bottom:1px solid var(--dk-bd)}
html[data-mode="sombre"] .search-suggestion-item:hover,html[data-mode="sombre"] .search-suggestion-item.active{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .search-suggestion-img{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .cart-drawer{border-left:1px solid var(--dk-bd)}
html[data-mode="sombre"] .cart-header{border-bottom:1px solid var(--dk-bd)}
html[data-mode="sombre"] .drawer-close:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .cart-item{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .cart-footer{border-top:1px solid var(--dk-bd)}
html[data-mode="sombre"] .cart-checkout-btn{background:var(--dk-surface);color:var(--dk-tx)}
html[data-mode="sombre"] .wish-drawer{border-left:1px solid var(--dk-bd)}
html[data-mode="sombre"] .share-copy{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .share-copied{color:var(--dk-tx) !important}
html[data-mode="sombre"] .card-cart-btn{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .card-cart-btn:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .card-add-cart{background:var(--dk-surface);color:var(--dk-tx)}
html[data-mode="sombre"] .card-wish-btn{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .toast{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .dash-tabs{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .dash-tab.active{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .order-row{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .chart-wrap{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .bar{background:linear-gradient(180deg, var(--dk-surface) 0%, rgba(255,255,255,.05) 100%)}
html[data-mode="sombre"] .cat-bar-wrap{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .ai-ph{border-bottom:1px solid var(--dk-bd)}
html[data-mode="sombre"] #ai-messages::-webkit-scrollbar-thumb{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .ai-msg.user .ai-av{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .ai-msg.user .ai-bubble{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .ai-sugg{border-top:1px solid var(--dk-bd)}
html[data-mode="sombre"] .ai-ir{border-top:1px solid var(--dk-bd)}
html[data-mode="sombre"] .ai-inp{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .ai-pcard{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .ai-pcard:hover{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .ai-pthumb{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .card-cart-btn{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .footer-links{border-top:1px solid var(--dk-bd)}
html[data-mode="sombre"] .footer-bottom{border-top:1px solid var(--dk-bd)}
html[data-mode="sombre"] .news-card{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .news-del{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .news-in{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .news-btn{color:var(--dk-tx)}
html[data-mode="sombre"] .news-btn.ghost{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] body{background:radial-gradient(1200px 700px at 15% -10%,rgba(255,255,255,.05),transparent 60%),
  radial-gradient(900px 600px at 110% 30%,rgba(0,0,0,.25),transparent 60%),
  var(--nv-bg) !important}
html[data-mode="sombre"] .nav-pill.gold,html[data-mode="sombre"] .cart-count{background:var(--dk-surface) !important;color:var(--dk-tx) !important}
html[data-mode="sombre"] .news-tag{background:rgba(255,255,255,.05) !important}
html[data-mode="sombre"] .glass-btn,html[data-mode="sombre"] .news-btn,html[data-mode="sombre"] .bn-btn{background:var(--dk-surface) !important;color:var(--dk-tx) !important}
html[data-mode="sombre"] .news-btn.ghost,html[data-mode="sombre"] .bn-btn.ghost{border:1px solid var(--dk-bd) !important}
html[data-mode="sombre"] .cat-btn.active{background:var(--dk-surface) !important;color:var(--dk-tx) !important}
html[data-mode="sombre"] .bn-bar{border-color:var(--dk-bd) !important}
html[data-mode="sombre"] .bn-bar button.pub{background:var(--dk-surface) !important;color:var(--dk-tx) !important}
html[data-mode="sombre"] .mm-chip.acc{background:var(--dk-surface) !important;color:var(--dk-tx) !important}
html[data-mode="sombre"] .ai-fab{background:var(--dk-surface) !important;color:var(--dk-tx) !important}
html[data-mode="sombre"] .site-switch{background:rgba(255,255,255,.05);border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .site-switch:hover{background:rgba(255,255,255,.05);border-color:var(--dk-bd)}
html[data-mode="sombre"] nav#main-nav{background:var(--dk-surface) !important}
html[data-mode="sombre"] .nav-pill,html[data-mode="sombre"] .icon-btn,html[data-mode="sombre"] .site-switch,html[data-mode="sombre"] .mm-btn{background:var(--dk-surface) !important}
html[data-mode="sombre"] .marquee-section,html[data-mode="sombre"] #catalogue-section,html[data-mode="sombre"] .news-section,html[data-mode="sombre"] .value-section,html[data-mode="sombre"] footer.footer-links{background:var(--dk-surface) !important}
html[data-mode="sombre"] .marquee-section{background:var(--dk-surface) !important}
html[data-mode="sombre"] .product-card,html[data-mode="sombre"] .news-card,html[data-mode="sombre"] .news-composer,html[data-mode="sombre"] .order-row,html[data-mode="sombre"] .cart-item,html[data-mode="sombre"] .admin-stat,html[data-mode="sombre"] .admin-product-row{background:var(--dk-surface) !important}
html[data-mode="sombre"] .search-input,html[data-mode="sombre"] .news-in,html[data-mode="sombre"] .form-input,html[data-mode="sombre"] .form-select,html[data-mode="sombre"] .form-textarea,html[data-mode="sombre"] .ai-inp{background:var(--dk-surface) !important}
html[data-mode="sombre"] .news-btn.ghost,html[data-mode="sombre"] .bn-btn.ghost,html[data-mode="sombre"] .form-btn-ghost{background:var(--dk-surface) !important}
html[data-mode="sombre"] .cat-btn{background:var(--dk-surface) !important}
html[data-mode="sombre"] .footer-badge{background:var(--dk-surface) !important}
html[data-mode="sombre"] .modal-box,html[data-mode="sombre"] .cart-drawer,html[data-mode="sombre"] .wish-drawer,html[data-mode="sombre"] #cart-drawer,html[data-mode="sombre"] .ai-panel,html[data-mode="sombre"] .lang-dd,html[data-mode="sombre"] .mm-sheet,html[data-mode="sombre"] .pwa-bar{background:var(--dk-surface) !important}
html[data-mode="sombre"] #lightbox{background:var(--dk-surface) !important}
html[data-mode="sombre"] .dash-tabs{background:var(--dk-surface) !important}
html[data-mode="sombre"] .dash-panel{background:var(--dk-surface) !important}
html[data-mode="sombre"] #ax-top{background:var(--dk-surface) !important}
html[data-mode="sombre"] .ax-band{background:var(--dk-surface)}
html[data-mode="sombre"] .footer-cta-right img{background:var(--dk-surface)}
html[data-mode="sombre"] .ax-band{background:var(--dk-surface) !important}
html[data-mode="sombre"] .pwa-bar{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .pwa-bar .go{background:var(--dk-surface);color:var(--dk-tx)}
html[data-mode="sombre"] .bn-box{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .bn-box input{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .bn-btn{color:var(--dk-tx)}
html[data-mode="sombre"] .bn-btn.ghost{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .bn-bar button,html[data-mode="sombre"] .bn-bar a{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .bn-bar button.pub{color:var(--dk-tx)}
html[data-mode="sombre"] .mm-btn{border:1px solid var(--dk-bd);background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .mm-sheet{border-top:1px solid var(--dk-bd)}
html[data-mode="sombre"] .mm-grab{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .mm-link{border-bottom:1px solid var(--dk-bd)}
html[data-mode="sombre"] .mm-chip{border:1px solid var(--dk-bd);background:rgba(255,255,255,.05)}
html[data-mode="sombre"] .mm-chip.acc{color:var(--dk-tx)}
html[data-mode="sombre"] #nv-progress{background:linear-gradient(90deg,var(--dk-surface),#c4b5fd)}
@media (prefers-reduced-motion:no-preference){
  html[data-mode="sombre"] .hero::after{background:radial-gradient(420px circle at var(--sx) var(--sy),rgba(255,255,255,.05),transparent 65%)}
  html[data-mode="sombre"] .product-card::after{background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.05),transparent 60%)}
}
html[data-mode="sombre"] #ax-cur{background:var(--dk-surface)}
html[data-mode="sombre"] #ax-ring{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] #ax-ring.ax-big{background:rgba(255,255,255,.05);border-color:var(--dk-bd)}
html[data-mode="sombre"] #ax-ring.ax-txt{background:var(--dk-surface)}
html[data-mode="sombre"] #ax-intro i{background:rgba(255,255,255,.05)}
html[data-mode="sombre"] #ax-intro i::after{background:var(--dk-surface)}
html[data-mode="sombre"] #ax-top{border:1px solid var(--dk-bd)}
html[data-mode="sombre"] .ax-line{background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent)}
@media (prefers-reduced-motion:no-preference){
  html[data-mode="sombre"] .ax-spark{background:var(--dk-surface)}
}
@media (prefers-reduced-motion:no-preference){
  html[data-mode="sombre"] .ax-star{background:linear-gradient(90deg,rgba(255,255,255,.05),var(--dk-surface))}
  html[data-mode="sombre"] .ax-star::after{background:var(--dk-surface)}
  html[data-mode="sombre"] .ax-band{border-top:1px solid var(--dk-bd);border-bottom:1px solid var(--dk-bd)}
  html[data-mode="sombre"] #ax-ring.ax-view{background:var(--dk-surface);border-color:var(--dk-bd)}
  html[data-mode="sombre"] #ax-ring.ax-view::after{color:var(--dk-tx)}
}
@media (prefers-reduced-motion:no-preference){
  html[data-mode="sombre"] .val-impact{background:linear-gradient(transparent 55%,var(--dk-surface) 55%,var(--dk-surface) 92%,transparent 92%) no-repeat 0 0/0% 100%}
}
@media (prefers-reduced-motion:no-preference){
  html[data-mode="sombre"] .sp-note::before{background:var(--dk-surface)}
}
@media (prefers-reduced-motion:no-preference){
  html[data-mode="sombre"] .sp-trail path{stroke:var(--dk-tx)}
  html[data-mode="sombre"] .sp-conf{border:1.5px solid var(--dk-line)}
  html[data-mode="sombre"] .sp-sig text{fill:var(--dk-tx2)}
}
html[data-mode="sombre"] body nav#mainNav{background:var(--dk-surface) !important}
html[data-mode="sombre"] .cp-all a{border:var(--cp-bd,1px solid var(--dk-line))}
html[data-mode="sombre"] .cp-crumb{color:var(--cp-mute,var(--dk-tx2)) !important}
html[data-mode="sombre"] .cp-crumb:hover{color:var(--cp-ink,var(--dk-tx)) !important}
html[data-mode="sombre"] .cp-h1{color:var(--cp-ink,var(--dk-tx))}
html[data-mode="sombre"] .cp-h1 em{color:var(--cp-mute,var(--dk-tx2))}
html[data-mode="sombre"] .cp-count{color:var(--cp-mute,var(--dk-tx2))}
html[data-mode="sombre"] .a7-shine::before{background:linear-gradient(105deg,transparent,var(--dk-surface),transparent)}
html[data-mode="sombre"] body #main-nav.lg{border:2px solid var(--sp-ink,var(--dk-line)) !important}
html[data-mode="sombre"] .hw-br{color:var(--dk-tx)}
html[data-mode="sombre"] .hw-br .hw-k{color:var(--dk-tx2)}
html[data-mode="sombre"] .hw-br .hw-t{color:var(--dk-tx)}
html[data-mode="sombre"] .hw-br .hw-note{border:2.5px solid var(--dk-line);box-shadow:6px 6px 0 var(--dk-line)}
html[data-mode="sombre"] .hw-br .hw-step:hover .hw-note{box-shadow:9px 9px 0 var(--dk-line)}
html[data-mode="sombre"] .hw-br .hw-tape{background:var(--dk-surface)}
html[data-mode="sombre"] .hw-br .hw-n{color:var(--dk-tx)}
html[data-mode="sombre"] .hw-br .hw-ic{border:2px solid var(--dk-line);background:var(--dk-surface);color:var(--dk-tx);box-shadow:2px 2px 0 var(--dk-line)}
html[data-mode="sombre"] .hw-br .hw-st{color:var(--dk-tx)}
html[data-mode="sombre"] .hw-br .hw-sd{color:var(--dk-tx)}
html[data-mode="sombre"] .hw-br .hw-arr{stroke:var(--dk-tx)}
html[data-mode="sombre"] .a9-sk{background:var(--a9-bg,var(--dk-surface));border:var(--a9-bd,1px solid var(--dk-bd))}
html[data-mode="sombre"] .a9-sk i{background:var(--a9-blk,var(--dk-surface))}
html[data-mode="sombre"] .a9-sk::after{background:linear-gradient(100deg,transparent 20%,var(--dk-surface) 50%,transparent 80%)}
html[data-mode="sombre"] .product-card-price{color:var(--sp-ink,var(--dk-tx))}
html[data-mode="sombre"] .product-modal-price{color:var(--sp-ink,var(--dk-tx))}
