/* Sauna Watts : « panneau de commande » (07/11/2026). DA : theme/DA.md. Polices locales : /polices/polices.css */
:root{
  --fond:#f4f3ef; --carte:#ffffff; --encre:#13161c; --doux:#555b68; --trait:#d9d7cf; --zebre:#f8f7f3;
  --nuit:#13161c; --nuit2:#1b1f27; --ambre:#ffb547; --rouge:#b3261e; --rouge-txt:#fff; --sarcelle:#0f6b6b; --lien:#0f6b6b;
  --thermo:linear-gradient(90deg,#0f6b6b 0%,#2f8f87 22%,#e0a526 55%,#d9631e 78%,#b3261e 100%);
  --t:'Bricolage Grotesque',ui-sans-serif,system-ui,sans-serif; --c:'Public Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --m:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --r:14px; --l:1180px;
}
@media (prefers-color-scheme:dark){:root{
  --fond:#0e1014; --carte:#171a21; --encre:#ecebe6; --doux:#a7acb8; --trait:#2b303b; --zebre:#13161c;
  --nuit:#07080b; --nuit2:#1d212a; --rouge:#e5533a; --rouge-txt:#0e1014; --sarcelle:#5cc8c0; --lien:#5cc8c0;
}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fond);color:var(--encre);font:16px/1.65 var(--c);overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--lien);text-underline-offset:3px}
h1,h2,h3{font-family:var(--t);line-height:1.15;letter-spacing:-.01em}
h1{font-size:clamp(1.9rem,4.4vw,3rem);font-weight:800;margin:.2em 0 .35em}
h2{font-size:clamp(1.35rem,2.6vw,1.8rem);font-weight:800;margin:2.2em 0 .6em}
h3{font-size:1.15rem;font-weight:600;margin:1.6em 0 .5em}
.evitement{position:absolute;left:-999px}.evitement:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 12px;z-index:99}
.petit{font-size:.86rem;color:var(--doux)}
code{font-family:var(--m);font-size:.9em}

/* en-tête */
.ent{background:var(--nuit);color:#f4f3ef;position:relative}
.ent__l{max-width:var(--l);margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.thermo{height:5px;background:var(--thermo)}
.logo{display:inline-flex;align-items:center;gap:10px;color:#f4f3ef;text-decoration:none;font:800 1.3rem/1 var(--t)}
.logo b{color:var(--ambre);font-weight:800}
.logo__cadran{width:34px;height:34px;flex:0 0 34px}
.logo__cadran circle:first-child{fill:#1d212a;stroke:#3a404d;stroke-width:2}
.logo__arc{fill:none;stroke:#e0a526;stroke-width:3.2;stroke-linecap:round}
.logo__aiguille{stroke:#ff6a4d;stroke-width:3.2;stroke-linecap:round}
.logo__axe{fill:#f4f3ef}
.ent nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 6px}
.ent nav a{color:#d8dae0;text-decoration:none;font:600 .92rem/1 var(--c);padding:9px 11px;border-radius:999px;display:inline-block}
.ent nav a:hover,.ent nav a[aria-current]{background:#262b35;color:#fff}

/* héros de l'accueil */
.heros{background:var(--nuit);color:#ecebe6;padding:28px 16px 40px}
.heros__l{max-width:var(--l);margin:0 auto;display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:start}
.heros h1{color:#fff}
.sur{font:700 .78rem/1 var(--m);letter-spacing:.14em;text-transform:uppercase;color:var(--ambre);margin:8px 0 0}
.heros__chapo{color:#c9ccd4;font-size:1.08rem;max-width:36em}
.afficheurs{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.afficheurs li{background:#0a0c10;border:1px solid #2c313c;border-radius:10px;padding:12px 12px 10px;box-shadow:inset 0 0 18px rgba(255,181,71,.06)}
.afficheurs strong{display:block;font:700 1.7rem/1.1 var(--m);color:var(--ambre);text-shadow:0 0 12px rgba(255,181,71,.35)}
.afficheurs span{font-size:.8rem;color:#a7acb8}
.heros__meta,.bandeau__meta{display:flex;gap:6px 18px;flex-wrap:wrap;font-size:.86rem;color:#a7acb8}
.heros__meta a,.bandeau__meta a{color:#cfd2da}
.signature,.maj{margin:0}
.pupitre{background:#1b1f27;border:1px solid #2c313c;border-radius:18px;padding:18px;position:relative;overflow:hidden}
.pupitre::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--thermo)}
.pupitre__tete{display:flex;align-items:center;gap:10px}
.pupitre__tete h2{margin:.3em 0;color:#fff;font-size:1.35rem}
.pupitre__voyant{width:12px;height:12px;border-radius:50%;background:#ff6a4d;box-shadow:0 0 10px #ff6a4d;flex:0 0 12px}
.pupitre__txt{color:#c9ccd4;font-size:.95rem;margin:.2em 0 .8em}
.pupitre__pied{margin:.8em 0 0;font-size:.9rem}.pupitre__pied a{color:var(--ambre)}
.pupitre .outil{background:transparent;border:0;padding:0;margin:0;box-shadow:none}
.pupitre .outil::before{display:none}
.pupitre .outil label{color:#c9ccd4}
.pupitre .outil input,.pupitre .outil select{background:#0e1014;color:#ecebe6;border-color:#343a46}
.pupitre .res{background:#0e1014;border-color:#2c313c;color:#ecebe6}
.pupitre .res a:not(.cta){color:#5cc8c0}

/* cadrans vers les outils */
.cadrans{max-width:var(--l);margin:-22px auto 0;padding:0 16px;position:relative}
.cadrans ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.cadrans a{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;column-gap:12px;height:100%;background:var(--carte);border:1px solid var(--trait);border-radius:var(--r);padding:14px;text-decoration:none;color:var(--encre);box-shadow:0 6px 18px rgba(19,22,28,.08)}
.cadrans a:hover{border-color:var(--rouge)}
.cadrans__u{grid-row:1/4;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--nuit);color:var(--ambre);font:700 1rem/1 var(--m);border:3px solid #e0a526}
.cadrans__l{font:700 .7rem/1.4 var(--m);letter-spacing:.12em;text-transform:uppercase;color:var(--doux)}
.cadrans strong{font:800 1.05rem/1.2 var(--t)}
.cadrans__txt{font-size:.84rem;color:var(--doux);line-height:1.45;margin-top:4px}

/* bandeau des pages intérieures */
.bandeau{background:var(--nuit);color:#ecebe6;padding:22px 16px 30px}
.bandeau__l{max-width:var(--l);margin:0 auto}
.bandeau h1{color:#fff;max-width:22em}
.bandeau__chapo{color:#c9ccd4;font-size:1.06rem;max-width:42em;margin:.2em 0 .9em}
.fil{font-size:.84rem;color:#a7acb8}.fil a{color:#cfd2da}

/* contenu */
.cont{max-width:var(--l);margin:0 auto;padding:28px 16px 56px}
.art{max-width:820px;margin:0 auto}
.art>p,.art>ul,.art>ol{max-width:72ch}
.art h2{position:relative;padding-top:14px}
.art h2::before{content:"";position:absolute;left:0;top:0;width:56px;height:4px;border-radius:2px;background:var(--thermo)}
.aff{font-size:.86rem;color:var(--doux);background:var(--carte);border:1px solid var(--trait);border-left:4px solid #e0a526;border-radius:10px;padding:10px 14px;margin:0 0 22px}
.encadre{background:var(--carte);border:1px solid var(--trait);border-radius:var(--r);padding:14px 18px;margin:24px 0}
.encadre p{margin:.3em 0}
.encadre--elec{border-left:5px solid var(--rouge);position:relative;padding-left:52px}
.encadre--elec::before{content:"";position:absolute;left:16px;top:18px;width:22px;height:22px;background:var(--rouge);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2 4 14h6l-1 8 9-12h-6z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2 4 14h6l-1 8 9-12h-6z'/%3E%3C/svg%3E") center/contain no-repeat}
.cartes{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.cartes a{display:block;height:100%;background:var(--carte);border:1px solid var(--trait);border-radius:var(--r);padding:14px 16px;text-decoration:none;color:var(--encre)}
.cartes a:hover{border-color:var(--rouge)}
.cartes strong{display:block;font:800 1.02rem/1.25 var(--t);margin-bottom:4px}
.cartes span{font-size:.88rem;color:var(--doux)}
.chiffres{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.chiffres li{background:var(--nuit);border-radius:12px;padding:12px 14px;color:#a7acb8;font-size:.82rem}
.chiffres strong{display:block;font:700 1.35rem/1.15 var(--m);color:var(--ambre)}
.illu,.mois{max-width:100%}
.btn,.cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--rouge);color:var(--rouge-txt);font:700 .95rem/1.2 var(--c);text-decoration:none;padding:12px 18px;border-radius:999px;border:0;cursor:pointer;text-align:center}
.btn:hover,.cta:hover{filter:brightness(1.08)}
.cta::after{content:"›";font-size:1.15em;line-height:1}
.cta--petit{padding:8px 13px;font-size:.84rem}
.methode-lien{font-size:.84rem;margin:.4em 0 1.6em}.methode-lien a{color:var(--doux)}
.methode-lien a::before{content:"ⓘ ";}
.sommaire{background:var(--carte);border:1px solid var(--trait);border-radius:var(--r);padding:10px 16px;margin:18px 0}
.sommaire summary{cursor:pointer;font-weight:700}
.sommaire ol{margin:.5em 0 .3em;padding-left:1.3em}

/* outils */
.outil{background:var(--carte);border:1px solid var(--trait);border-radius:18px;padding:18px;margin:22px 0;position:relative;overflow:hidden;box-shadow:0 8px 24px rgba(19,22,28,.06)}
.outil::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--thermo)}
.outil .grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin-top:6px}
.outil label{display:block;font-size:.8rem;font-weight:600;color:var(--doux);margin-bottom:4px}
.outil input,.outil select{width:100%;min-width:0;font:500 .98rem/1.2 var(--m);color:var(--encre);background:var(--fond);border:1px solid var(--trait);border-radius:10px;padding:10px 11px}
.outil input:focus,.outil select:focus{outline:2px solid var(--sarcelle);outline-offset:1px}
.res{margin-top:16px;background:var(--zebre);border:1px solid var(--trait);border-radius:14px;padding:14px 16px;overflow-wrap:anywhere}
.res p{margin:.45em 0}
.res__tete{font-size:.9rem;color:var(--doux)}
.lectures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.gros{margin:0!important;background:var(--nuit);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.gros span{font-size:.74rem;color:#a7acb8;text-transform:uppercase;letter-spacing:.08em}
.gros strong{font:700 1.45rem/1.1 var(--m);color:var(--ambre);text-shadow:0 0 10px rgba(255,181,71,.3)}
.gros em{font:500 .76rem/1.2 var(--m);color:#8b909c;font-style:normal}
.res h3{font-size:1.02rem;margin:1.1em 0 .4em}
.res .liste{list-style:none;padding:0;margin:.4em 0}
.res .liste li{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:9px 0;border-top:1px solid var(--trait)}
.res .liste li>span{flex:1;font-size:.92rem}
.res__achat{margin-top:10px!important}
.alerte{border-left:4px solid #e0a526;padding:6px 10px;background:var(--carte);border-radius:8px;font-size:.92rem}
.alerte--fixe{border-left-color:var(--rouge)}

/* tableaux */
table{border-collapse:collapse;width:100%;font-size:.9rem;margin:14px 0 6px}
table.tab{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--trait);border-radius:12px;background:var(--carte)}
table.tab thead th{background:var(--nuit);color:#ecebe6;font:600 .78rem/1.3 var(--c);text-align:left;padding:10px 12px;letter-spacing:.02em;white-space:nowrap}
table.tab td{padding:9px 12px;border-top:1px solid var(--trait);vertical-align:top;min-width:96px}
table.tab td:first-child{min-width:190px}
table.tab tbody tr:nth-child(even){background:var(--zebre)}
table.tab td strong{font-family:var(--m);font-weight:700}
table.tab td:first-child strong{font-family:var(--t);font-weight:600}
table.tab s{color:var(--doux);font-family:var(--m);font-size:.85em}
@media (min-width:1100px){.art table.tab{width:calc(100% + 280px);margin-left:-140px;max-width:none}}
@media (max-width:600px){
  table.tab{border:0;background:transparent;overflow:visible}
  table.tab thead{display:none}
  table.tab tbody,table.tab tr,table.tab td{display:block;width:100%}
  table.tab tr{background:var(--carte)!important;border:1px solid var(--trait);border-left:4px solid var(--sarcelle);border-radius:12px;margin:0 0 10px;padding:6px 12px}
  table.tab td{border:0;padding:5px 0;min-width:0;display:grid;grid-template-columns:42% 1fr;gap:10px}
  table.tab td::before{content:attr(data-l);font-size:.74rem;font-weight:600;color:var(--doux);text-transform:uppercase;letter-spacing:.04em}
  table.tab td:first-child{display:block;min-width:0;border-bottom:1px solid var(--trait);padding-bottom:8px;margin-bottom:4px}
  table.tab td:first-child::before{display:none}
}

/* fiches produit */
.prod{background:var(--carte);border:1px solid var(--trait);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;margin:16px 0}
.prod--un{border:2px solid var(--rouge)}
.prod__tete{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:flex-start}
.prod__badge{margin:0;font:700 .8rem/1.3 var(--c);color:var(--encre);display:flex;gap:8px;align-items:center}
.prod__badge span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--nuit);color:var(--ambre);font:700 .82rem/1 var(--m);flex:0 0 26px}
.prod--un .prod__badge span{background:var(--rouge);color:var(--rouge-txt)}
.prod__pastilles{margin:0;display:flex;gap:6px;flex-wrap:wrap}
.pastille{font:700 .68rem/1 var(--m);letter-spacing:.06em;text-transform:uppercase;padding:5px 8px;border-radius:999px;border:1px solid var(--trait);color:var(--doux)}
.p-infrared{color:#b3261e;border-color:#e8b7ae}
.p-traditional{color:#8a5a00;border-color:#e6cf9b}
.p-120{background:var(--sarcelle);color:#fff;border-color:transparent}
.p-240{background:var(--nuit);color:var(--ambre);border-color:transparent}
@media (prefers-color-scheme:dark){.p-infrared{color:#ff8a75;border-color:#5a2a24}.p-traditional{color:#f0c66b;border-color:#4d3d1d}.p-120{color:#0e1014}}
.prod__nom{margin:0;font:800 1.15rem/1.2 var(--t)}
.prod__nom span{display:block;font:700 .72rem/1.3 var(--m);letter-spacing:.12em;text-transform:uppercase;color:var(--doux)}
.jauge{position:relative;height:26px;border-radius:8px;background:var(--zebre);border:1px solid var(--trait);overflow:hidden}
.jauge span{position:absolute;left:0;top:0;bottom:0;background:var(--thermo)}
.jauge em{position:absolute;right:8px;top:50%;transform:translateY(-50%);font:700 .8rem/1 var(--m);font-style:normal;color:var(--encre);background:var(--carte);padding:3px 6px;border-radius:6px}
.jauge--vide{background:repeating-linear-gradient(45deg,var(--zebre) 0 8px,transparent 8px 16px)}
.prod__pourquoi{margin:0;font-size:.92rem}
.prod__caracs{margin:0;display:grid;gap:0}
.prod__caracs div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px dashed var(--trait);font-size:.86rem}
.prod__caracs dt{color:var(--doux)}
.prod__caracs dd{margin:0;text-align:right;font-weight:600}
.prod__pm{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:.84rem}
.prod__pm ul{margin:0;padding:0;list-style:none}
.prod__pm li{padding-left:18px;position:relative;margin:3px 0}
.prod__plus li::before{content:"+";position:absolute;left:0;color:var(--sarcelle);font-weight:800}
.prod__moins li::before{content:"−";position:absolute;left:0;color:var(--rouge);font-weight:800}
.prod__achat{margin-top:auto;display:flex;flex-direction:column;gap:8px}
.prod__prix{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.prod__prix strong{font:700 1.45rem/1 var(--m)}
.prod__prix s{font-family:var(--m);color:var(--doux)}
.prod__prix span{width:100%;font-size:.76rem;color:var(--doux)}

/* sélection « Our picks in 30 seconds » */
.selection{background:var(--nuit);color:#ecebe6;border-radius:20px;padding:20px 18px 14px;margin:6px 0 30px;position:relative;overflow:hidden}
.selection::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--thermo)}
.selection__sur{margin:0;display:flex;align-items:center;gap:6px;font:700 .74rem/1 var(--m);letter-spacing:.14em;text-transform:uppercase;color:var(--ambre)}
.selection__sur svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2}
.selection__titre{color:#fff;margin:.35em 0 .2em;font-size:clamp(1.35rem,3vw,1.9rem)}
.selection h2::before{display:none}
.selection__intro{color:#c9ccd4;font-size:.94rem;margin:0 0 12px}
.selection__grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}
.selection .prod{margin:0;color:var(--encre)}
.selection__pied{font-size:.8rem;color:#a7acb8;margin:12px 0 0}.selection__pied a{color:#cfd2da}
@media (min-width:1100px){.art .selection{margin-left:-140px;margin-right:-140px}}

/* verdict, FAQ, suite */
.verdict{background:var(--carte);border:2px solid var(--rouge);border-radius:var(--r);padding:16px 18px;margin:28px 0}
.faq details{background:var(--carte);border:1px solid var(--trait);border-radius:12px;padding:10px 14px;margin:8px 0}
.faq summary{cursor:pointer;font-weight:700}
.faq details p{margin:.6em 0 .2em}
details{max-width:100%}
.suite .cartes{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}

/* barre collante mobile */
.collant{position:fixed;left:10px;right:10px;bottom:10px;z-index:50;display:flex;align-items:center;gap:10px;background:var(--nuit);color:#ecebe6;border-radius:16px;padding:9px 10px;box-shadow:0 10px 30px rgba(0,0,0,.35);transform:translateY(140%);transition:transform .25s}
.collant.vu{transform:none}
.collant__n{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--rouge);color:var(--rouge-txt);font:700 .85rem/1 var(--m);flex:0 0 28px}
.collant__txt{flex:1;min-width:0;display:flex;flex-direction:column;font-size:.78rem;color:#a7acb8}
.collant__txt strong{color:#fff;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cta--collant{padding:9px 13px;font-size:.84rem;white-space:nowrap}
.collant__x{background:transparent;border:0;color:#a7acb8;font-size:1.3rem;cursor:pointer;padding:2px 6px}
@media (min-width:900px){.collant{left:auto;right:18px;max-width:440px}}
body.a-collant .pied{padding-bottom:80px}
@media (prefers-reduced-motion:reduce){.collant{transition:none}}

/* pied */
.pied{background:var(--nuit);color:#a7acb8;margin-top:30px}
.pied__l{max-width:var(--l);margin:0 auto;padding:26px 16px 30px;display:grid;gap:12px}
.pied__marque p{max-width:52ch;font-size:.9rem;margin:.6em 0 0}
.pied a{color:#d8dae0}
.pied__nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.9rem}
.pied__legal{font-size:.86rem;margin:0}
.pied .petit{color:#7f8592}

/* responsive */
@media (max-width:980px){.heros__l{grid-template-columns:1fr}.cadrans ul{grid-template-columns:repeat(2,1fr)}.cadrans{margin-top:-16px}}
@media (max-width:600px){
  body{font-size:15.5px}
  .ent nav{width:100%}.ent nav ul{gap:4px}.ent nav a{padding:7px 9px;font-size:.84rem;background:#1d212a}
  .afficheurs strong{font-size:1.3rem}
  .cadrans ul{grid-template-columns:1fr}
  .outil .grille{grid-template-columns:1fr}
  .lectures{grid-template-columns:1fr}
  .prod__pm{grid-template-columns:1fr}
  .res .liste li{flex-direction:column;align-items:flex-start}
  .encadre--elec{padding-left:18px;padding-top:44px}
  .encadre--elec::before{top:14px}
}
