/* Application Radar Pro (espace connecté) — l'esprit d'un instrument de précision : noir profond, lignes fines,
   grille rigoureuse, chiffres techniques (Geist Mono), titres élégants (Instrument Serif), libellés en petites capitales.
   Aucune lueur, aucun dégradé. Deux couleurs de signal (vert, rouge) et l'ambre pour « à vérifier » / « important ».
   Animations courtes (90 à 260 ms), désactivées si l'appareil demande moins de mouvement. */
@font-face { font-family: "Inter"; src: url("/fonts/InterVariable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/fonts/GeistMono-Regular.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/fonts/GeistMono-Medium.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Instrument Serif"; src: url("/fonts/instrument-serif-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-display: swap; }
:root {
  --bg:#050506; --bg2:#09090a; --panel:#0d0d0f; --hover:#141416; --line:#1b1b1e; --line2:#2a2a2e; --t:#f2f2f0; --m:#a3a3a8; --f:#74747b;
  --ok:#3ccf7a; --ko:#ff5a4e; --warn:#e8b04a; --sel:#151518; --kbd:#121214; color-scheme: dark;
  --mono:"Geist Mono",ui-monospace,Consolas,monospace; --sans:"Inter",system-ui,sans-serif; --serif:"Instrument Serif",Georgia,serif;
  --vite:90ms; --net:160ms; --courbe:cubic-bezier(.2,.8,.2,1);
}
:root[data-theme="clair"] {
  --bg:#f7f7f5; --bg2:#f0f0ed; --panel:#ffffff; --hover:#ececE8; --line:#e2e2de; --line2:#cfcfca; --t:#0c0c0d; --m:#55555c; --f:#7d7d84;
  --ok:#14864a; --ko:#d4332a; --warn:#a46a00; --sel:#e9e9e5; --kbd:#efefec; color-scheme: light;
}
* { box-sizing:border-box; margin:0; }
html, body { height:100%; }
body { background:var(--bg); color:var(--t); font:400 13px/1.45 var(--sans); -webkit-font-smoothing:antialiased; letter-spacing:-.004em; font-feature-settings:"cv11","tnum"; }
button { font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
a { color:inherit; }
:focus-visible { outline:1px solid var(--t); outline-offset:2px; border-radius:3px; }
[hidden] { display:none !important; }
.mono { font-family:var(--mono); }
.f { color:var(--f); }
.fine { margin-top:28px; color:var(--f); font-size:11.5px; max-width:72ch; }
.msg { color:var(--m); font-size:12.5px; } .msg:empty { display:none; } .msg.bad { color:var(--ko); }
kbd, .kbd { font:500 10px var(--mono); color:var(--m); background:var(--kbd); border:1px solid var(--line2); border-radius:3px; padding:0 5px; line-height:17px; letter-spacing:.02em; }
.btn { display:inline-flex; align-items:center; gap:6px; height:30px; padding:0 12px; border-radius:6px; border:1px solid var(--line2); background:transparent; color:var(--t); font:500 12.5px var(--sans); text-decoration:none; white-space:nowrap; transition:background var(--vite), border-color var(--vite); }
.btn:hover { background:var(--hover); border-color:var(--f); }
.btn.plein { background:var(--t); color:var(--bg); border-color:var(--t); }
.btn.plein:hover { background:var(--t); opacity:.88; }
.btn:active { transform:translateY(.5px); }
.btn:disabled { opacity:.5; cursor:progress; }
/* Petites capitales des libellés (esprit instrument) */
.lab, .stats small, .lt.h, .lt.g > span:first-child, .mini h3, .bas, .crumb { font:500 12px var(--sans); letter-spacing:0; }

.app { display:grid; grid-template-columns:220px 1fr; height:100vh; height:100dvh; }
/* Barre latérale */
.side { background:var(--bg); border-right:1px solid var(--line); display:flex; flex-direction:column; padding:12px 10px; gap:2px; min-height:0; }
.ws { display:flex; align-items:center; gap:10px; padding:6px 6px 18px; min-width:0; border-bottom:1px solid var(--line); margin-bottom:10px; }
.ws i { width:24px; height:24px; flex:none; border-radius:4px; border:1px solid var(--line2); color:var(--t); display:grid; place-items:center; font:600 10px var(--sans); font-style:normal; }
.ws b { display:block; font-weight:500; font-size:12.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; } .ws small { display:block; color:var(--f); font-size:11.5px; }
.ws > div { min-width:0; }
.nav { display:grid; gap:1px; }
.nav a { position:relative; display:flex; align-items:center; gap:10px; height:30px; padding:0 8px; border-radius:5px; color:var(--m); text-decoration:none; font-weight:450; transition:background var(--vite), color var(--vite); }
.nav a:hover:not(.off) { background:var(--hover); color:var(--t); }
.nav a svg, .tabbar svg, .search svg, .s svg, .pal-champ svg { width:15px; height:15px; stroke:currentColor; fill:none; stroke-width:1.5; flex:none; }
.nav a.on { color:var(--t); background:var(--sel); }
.nav a.on::before { content:""; position:absolute; left:-10px; top:8px; bottom:8px; width:2px; background:var(--t); }
.nav a.off { opacity:.45; cursor:default; }
.nav a .n { margin-left:auto; font-size:12px; color:var(--f); font-variant-numeric:tabular-nums; }
.nav a .n.ko { color:var(--ko); }
.side .bas { margin-top:auto; display:flex; align-items:center; justify-content:space-between; padding:12px 6px 2px; color:var(--f); border-top:1px solid var(--line); }
.side .bas a { text-decoration:none; } .side .bas a:hover, .theme:hover { color:var(--t); }
.theme { font:inherit; color:var(--f); }

/* Zone principale */
.main { display:flex; flex-direction:column; min-width:0; min-height:0; }
.top { display:flex; align-items:center; gap:12px; height:46px; padding:0 22px; border-bottom:1px solid var(--line); flex:none; }
.crumb { color:var(--f); } .crumb b { color:var(--t); font-weight:500; }
.search { margin-left:auto; display:flex; align-items:center; gap:8px; height:28px; width:260px; padding:0 6px 0 10px; border:1px solid var(--line); border-radius:6px; color:var(--f); text-align:left; font-size:12.5px; transition:border-color var(--vite), color var(--vite); }
.search:hover { border-color:var(--line2); color:var(--m); }
.search kbd { margin-left:auto; }
.m-top { display:none; }
.corps { flex:1; display:grid; grid-template-columns:1fr; min-height:0; }
.corps.avec-panneau { grid-template-columns:1fr 460px; }
.page { overflow:auto; padding:48px 56px 80px; min-width:0; }
.tete { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.tete h1 { font:600 28px/1.15 var(--sans); letter-spacing:-.02em; }
.tete p { color:var(--f); margin-top:8px; font-size:13px; }
.compteur { font:600 48px/1 var(--sans); letter-spacing:-.03em; white-space:nowrap; display:flex; align-items:baseline; font-variant-numeric:tabular-nums; }
.compteur small { color:var(--f); font-size:20px; font-weight:500; margin-left:4px; letter-spacing:0; }
#c-fait { display:inline-flex; overflow:hidden; }
#c-fait span { display:inline-block; }
#c-fait span.roule { animation:roule 380ms ease-out; }
@keyframes roule { from { transform:translateY(25%); opacity:0; } to { transform:none; opacity:1; } }
.carte { border:1px solid var(--line); border-radius:6px; background:var(--panel); padding:24px; }
.debut { display:grid; gap:22px; max-width:620px; }
.debut > p { color:var(--m); font-size:14px; line-height:1.65; }
.debut form { display:grid; gap:16px; }
.case-accord { display:flex; gap:10px; align-items:flex-start; cursor:pointer; color:var(--t); }
.case-accord input { width:15px; height:15px; margin-top:2px; accent-color:var(--t); flex:none; }
.ligne { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.ligne .f { font-size:12px; }

/* Lectures (chiffres clés) */
.stats { display:grid; grid-auto-flow:column; grid-auto-columns:1fr; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-bottom:22px; }
.stats div { display:flex; flex-direction:column; gap:10px; padding:16px 18px 16px 0; min-width:0; }
.stats div + div { padding-left:18px; border-left:1px solid var(--line); }
.stats small { color:var(--f); }
.stats b { font:600 26px/1 var(--sans); letter-spacing:-.02em; font-variant-numeric:tabular-nums; }
.stats .ok b { color:var(--ok); } .stats .ko b { color:var(--ko); } .stats .warn b { color:var(--warn); }
.barre { display:none; }   /* remplacée par l'échelle graduée */
.barre i { display:block; height:100%; width:0; background:var(--t); transition:width 260ms var(--courbe); }
/* Échelle graduée : un trait par produit */
.echelle { display:flex; gap:2px; height:14px; align-items:flex-end; margin-bottom:28px; }
.echelle i { flex:1; height:6px; border-radius:1px; background:var(--line2); transition:height 400ms ease, background 400ms ease; }
.echelle i.ok { background:var(--ok); height:10px; } .echelle i.probleme { background:var(--ko); height:14px; } .echelle i.a-verifier { background:var(--warn); height:10px; }
.echelle i.cours { background:var(--t); height:14px; }

/* Grille des produits */
.grille { display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.case { position:relative; display:block; background:var(--bg); text-align:left; padding:0; overflow:hidden; transition:background var(--vite); }
.case .ph { display:block; aspect-ratio:1; background:var(--hover); position:relative; overflow:hidden; }
.case .ph img { width:100%; height:100%; object-fit:cover; display:block; transition:filter 400ms ease, opacity 400ms ease; }
.case .nom { display:flex; align-items:center; gap:8px; padding:9px 10px 10px; font-size:11.5px; color:var(--m); white-space:nowrap; overflow:hidden; border-top:1px solid var(--line); }
.case .nom span { overflow:hidden; text-overflow:ellipsis; }
.case .nom i { width:6px; height:6px; border-radius:50%; background:var(--line2); flex:none; transition:background 400ms ease; }
.case.ok .nom i { background:var(--ok); }
.case.probleme .nom i { background:var(--ko); } .case.probleme .nom { color:var(--t); }
.case.a-verifier .nom i { background:var(--warn); }
.case.attente .ph img { filter:grayscale(1); opacity:.28; } .case.attente .nom { color:var(--f); }
.case.cours { background:var(--hover); } .case.cours .nom { color:var(--t); } .case.cours .nom i { background:var(--m); }
/* Marque posée quand le produit est vérifié */
.marque { position:absolute; top:8px; right:8px; z-index:2; width:20px; height:20px; display:grid; place-items:center; font:600 11px var(--sans); border-radius:50%; color:#fff; }
.marque.ok { background:var(--ok); } .marque.probleme { background:var(--ko); } .marque.a-verifier { background:var(--warn); }
.case.vient .marque { animation:pose 400ms ease-out; }
@keyframes pose { from { opacity:0; } to { opacity:1; } }
button.case:hover { background:var(--hover); } button.case:hover .ph img { opacity:.9; }

/* Liste dense */
.bloc { display:grid; grid-template-columns:1fr 240px; gap:28px; align-items:start; }
.liste { border-top:1px solid var(--line); }
.lt { display:grid; grid-template-columns:10px 30px minmax(130px, 1.2fr) minmax(150px, 1.6fr) minmax(110px, 1fr) 44px; align-items:center; gap:14px; min-height:44px; padding:0 8px 0 10px; border-bottom:1px solid var(--line); width:100%; text-align:left; position:relative; }
button.lt { cursor:pointer; transition:background var(--vite); } button.lt:hover { background:var(--hover); }
.lt.h { min-height:32px; color:var(--f); }
.lt.g { min-height:38px; padding-top:14px; color:var(--m); grid-template-columns:1fr auto; }
.lt.g span:last-child { font-size:12px; color:var(--f); }
.lt.sel { background:var(--sel); }
.lt.sel::before { content:""; position:absolute; left:0; top:0; bottom:0; width:2px; background:var(--t); }
.lt .vg { width:28px; height:28px; border-radius:3px; overflow:hidden; background:var(--hover); }
.lt .vg img { width:100%; height:100%; object-fit:cover; display:block; }
.lt .p { font-weight:500; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lt .pb { color:var(--m); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lt .u, .lt .d { font-size:12px; font-variant-numeric:tabular-nums; color:var(--f); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lt .d { text-align:right; }
.sev { width:8px; height:8px; border-radius:50%; background:var(--ko); }
.sev.important { background:var(--warn); }
.sev.a-verifier { background:transparent; border:1px solid var(--f); }
.vide-liste { padding:22px 10px; color:var(--m); }
.mini { border-top:1px solid var(--line); padding-top:14px; }
.mini h3 { color:var(--f); margin-bottom:14px; }
.mini .g { display:grid; grid-template-columns:repeat(auto-fill, minmax(18px, 1fr)); gap:3px; }
.mini .g button { aspect-ratio:1; background:var(--ok); transition:transform var(--vite); }
.mini .g button.probleme { background:var(--ko); } .mini .g button.a-verifier { background:var(--warn); } .mini .g button.attente { background:var(--line2); }
.mini .g button:hover { transform:scale(1.2); }
.mini p { margin-top:14px; color:var(--f); font-size:11.5px; }

/* Panneau de détail */
.panneau { border-left:1px solid var(--line); background:var(--bg2); overflow:auto; min-height:0; animation:entre 240ms ease-out; }
@keyframes entre { from { opacity:0; transform:translateX(8px); } to { opacity:1; transform:none; } }
.pn-top { display:flex; align-items:center; justify-content:space-between; height:46px; padding:0 20px; border-bottom:1px solid var(--line); color:var(--f); position:sticky; top:0; background:var(--bg2); z-index:1; }
.pn-top .x { display:flex; gap:6px; }
.pn-top .kbd { cursor:pointer; transition:color var(--vite), border-color var(--vite); } .pn-top .kbd:hover { color:var(--t); border-color:var(--f); }
.pn { padding:24px 20px 36px; display:grid; gap:26px; }

@keyframes monte { from { opacity:0; transform:translateY(4px); } }
.pn-prod { display:grid; grid-template-columns:64px 1fr; gap:14px; align-items:center; }
.pn-prod .vg { width:64px; height:64px; border-radius:4px; overflow:hidden; background:var(--hover); }
.pn-prod .vg img { width:100%; height:100%; object-fit:cover; display:block; }
.pn-prod b { font-size:15px; font-weight:600; } .pn-prod small { display:block; margin-top:4px; font-size:12px; color:var(--f); overflow-wrap:anywhere; }
.pn h2 { font:600 18px/1.35 var(--sans); letter-spacing:-.01em; }
.lab { color:var(--f); margin-bottom:10px; }
.etapes { display:grid; grid-template-columns:repeat(3, 1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.etapes div { padding:10px 12px 10px 0; font-size:12px; color:var(--f); }
.etapes div + div { padding-left:12px; border-left:1px solid var(--line); }
.etapes div b { display:block; font-weight:500; color:var(--t); margin-bottom:3px; } .etapes .on b { color:var(--ko); }
.etapes div small { font-size:12px; font-variant-numeric:tabular-nums; }
pre { font:400 11.5px/1.7 var(--mono); padding:12px 14px; border:1px solid var(--line); border-radius:4px; background:var(--bg); white-space:pre-wrap; overflow-wrap:anywhere; color:var(--m); }
pre .add { color:var(--ok); } pre .del { color:var(--ko); } pre .k { color:var(--f); }
.pn p.quoi { color:var(--m); line-height:1.65; font-size:13.5px; }
.actions { display:flex; gap:8px; flex-wrap:wrap; }
.accord { font-size:11px; color:var(--f); }
.autres { display:grid; border-top:1px solid var(--line); }
.autres .lab { margin:10px 0 6px; }
.autres button { display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--line); text-align:left; color:var(--m); transition:color var(--vite); }
.autres button:hover { color:var(--t); }

/* Recherche rapide */
.palette { position:fixed; inset:0; z-index:50; background:color-mix(in srgb, var(--bg) 70%, transparent); display:grid; justify-items:center; align-items:start; padding-top:14vh; animation:fond 120ms ease-out; }
@keyframes fond { from { opacity:0; } }
.pal { width:min(580px, calc(100% - 24px)); background:var(--panel); border:1px solid var(--line2); border-radius:8px; box-shadow:0 24px 64px rgba(0,0,0,.45); overflow:hidden; animation:pal 140ms var(--courbe); }
@keyframes pal { from { opacity:0; transform:translateY(-6px) scale(.985); } }
.pal-champ { display:flex; align-items:center; gap:10px; padding:0 14px; height:50px; border-bottom:1px solid var(--line); color:var(--f); }
.pal-champ input { flex:1; min-width:0; background:none; border:0; outline:none; color:var(--t); font:400 15px var(--sans); }
.pal-res { list-style:none; padding:6px; margin:0; max-height:340px; overflow:auto; }
.pal-res li { display:grid; grid-template-columns:28px 1fr auto; gap:12px; align-items:center; padding:7px 8px; border-radius:4px; cursor:pointer; }
.pal-res li[aria-selected="true"] { background:var(--sel); }
.pal-res li .vg { width:28px; height:28px; border-radius:3px; overflow:hidden; background:var(--hover); }
.pal-res li .vg img { width:100%; height:100%; object-fit:cover; display:block; }
.pal-res li b { font-weight:500; } .pal-res li small { color:var(--f); font-size:12px; }
.pal-res li .e { font-size:12px; }
.pal-res li .e.probleme { color:var(--ko); } .pal-res li .e.ok { color:var(--ok); } .pal-res li .e.a-verifier { color:var(--warn); } .pal-res li .e.attente { color:var(--f); }
.pal-res .rien { padding:16px 8px; color:var(--f); cursor:default; display:block; }
.pal-pied { display:flex; gap:16px; padding:8px 14px; border-top:1px solid var(--line); color:var(--f); font-size:11px; }

.tabbar { display:none; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation:none !important; transition:none !important; } }

/* Panneau ouvert sur ordinateur : liste resserrée */
.avec-panneau .bloc { grid-template-columns:1fr; } .avec-panneau .mini { display:none; }
.avec-panneau .lt { grid-template-columns:10px 30px minmax(120px, 1fr) minmax(140px, 1.4fr) 44px; } .avec-panneau .lt .u { display:none; }
.avec-panneau .lt.h span:nth-child(5) { display:none; }
.avec-panneau .lt.g { grid-template-columns:1fr auto; }

/* Téléphone */
@media (max-width:760px) {
  .app { grid-template-columns:1fr; height:auto; min-height:100dvh; }
  .side, .top { display:none; }
  .main { min-height:100dvh; }
  .m-top { display:flex; align-items:center; justify-content:space-between; gap:12px; height:50px; padding:0 16px; border-bottom:1px solid var(--line); position:sticky; top:0; background:var(--bg); z-index:5; }
  .m-top b { font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .m-top .s { width:32px; height:32px; display:grid; place-items:center; border:1px solid var(--line); border-radius:6px; color:var(--m); flex:none; }
  .corps, .corps.avec-panneau { display:block; }
  .page { padding:24px 16px 96px; overflow:visible; }
  .corps.avec-panneau .page { display:none; }
  .panneau { border-left:0; min-height:calc(100dvh - 50px); padding-bottom:70px; }
  .tete { flex-wrap:wrap; margin-bottom:22px; gap:14px; }
  .tete h1 { font-size:24px; }
  .tete .btn { height:28px; padding:0 10px; font-size:12px; }
  .compteur { font-size:40px; }
  .stats { grid-auto-flow:row; grid-template-columns:1fr 1fr; }
  .stats div { padding:12px 12px 12px 0; } .stats div + div { padding-left:0; border-left:0; }
  .stats div:nth-child(even) { padding-left:12px; border-left:1px solid var(--line); }
  .stats div:nth-child(n+3) { border-top:1px solid var(--line); }
  .stats b { font-size:24px; }
  .grille { grid-template-columns:repeat(3, 1fr); }
  .case .nom { font-size:10.5px; padding:7px 7px 8px; gap:6px; }
  .marque { width:18px; height:18px; top:6px; right:6px; font-size:10px; }
  .bloc { grid-template-columns:1fr; } .mini { display:none; }
  .lt, .avec-panneau .lt { grid-template-columns:8px 34px 1fr; padding:12px 4px 12px 8px; row-gap:3px; column-gap:12px; }
  .lt .vg { width:34px; height:34px; }
  .lt.h { display:none; }
  .lt.g, .avec-panneau .lt.g { grid-template-columns:1fr auto; }
  .lt .sev, .lt .vg { grid-row:span 2; }
  .lt .pb { grid-column:3; font-size:12px; } .lt .u, .lt .d { display:none; }
  .pn h2 { font-size:17px; }
  .tabbar { display:flex; position:fixed; left:0; right:0; bottom:0; justify-content:space-around; height:62px; padding-bottom:max(6px, env(safe-area-inset-bottom)); background:var(--bg); border-top:1px solid var(--line); z-index:10; }
  .tabbar a, .tabbar button { display:grid; justify-items:center; gap:4px; align-content:center; color:var(--f); font:500 10.5px var(--sans); text-decoration:none; }
  .tabbar a.on { color:var(--t); }
  .tabbar svg { width:18px; height:18px; }
  .palette { padding-top:8vh; }
}

/* Page publique d'aperçu (sans compte) : même design, sans barre latérale */
.sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.pub-top { display:flex; align-items:center; gap:20px; height:56px; padding:0 max(20px, calc((100% - 1040px) / 2)); border-bottom:1px solid var(--line); }
.pub-top a { color:var(--m); text-decoration:none; font-size:13px; transition:color var(--vite); } .pub-top a:hover { color:var(--t); }
.pub-top .pub-marque { display:flex; align-items:center; gap:8px; color:var(--t); font-weight:600; font-size:14px; }
.pub-top .sp { flex:1; }
.pub { width:min(1040px, calc(100% - 40px)); margin:0 auto; padding:72px 0 96px; }
.pub > h1 { font:600 34px/1.15 var(--sans); letter-spacing:-.025em; }
.pub-sous { margin-top:10px; color:var(--f); font-size:14px; }
.pub-champ { display:flex; gap:8px; max-width:560px; margin-top:28px; }
.pub-champ input { flex:1; min-width:0; height:42px; padding:0 14px; border-radius:8px; border:1px solid var(--line2); background:var(--panel); color:var(--t); font:400 14.5px var(--sans); outline:none; transition:border-color var(--vite); }
.pub-champ input:focus { border-color:var(--m); }
.pub-champ .btn { height:42px; padding:0 18px; font-size:13.5px; }
.pub-note { margin-top:12px; color:var(--f); font-size:12.5px; max-width:62ch; }
.pub .msg { margin-top:14px; }
#resultat { margin-top:64px; }
.tete h2 { font:600 22px/1.2 var(--sans); letter-spacing:-.02em; }
.pub .liste { margin-top:8px; }
.pub-cta { display:flex; align-items:center; justify-content:space-between; gap:28px; margin-top:44px; padding:26px 28px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
.pub-cta b { display:block; font-size:17px; font-weight:600; letter-spacing:-.01em; } .pub-cta span { display:block; margin-top:4px; color:var(--m); font-size:13.5px; max-width:60ch; }
.pub-cta .btn { height:42px; padding:0 18px; font-size:13.5px; }
.pub-pied { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:22px max(20px, calc((100% - 1040px) / 2)); border-top:1px solid var(--line); color:var(--f); font-size:12px; }
.pub-pied a { color:var(--f); } .pub-pied a:hover { color:var(--t); }
@media (max-width:700px) {
  .pub { padding:40px 0 72px; } .pub > h1 { font-size:26px; }
  .pub-champ { flex-direction:column; } .pub-champ input, .pub-champ .btn { height:46px; width:100%; justify-content:center; }
  #resultat { margin-top:44px; }
  .pub-cta { flex-direction:column; align-items:flex-start; padding:22px; } .pub-cta .btn { width:100%; justify-content:center; }
  .pub .lt { grid-template-columns:8px 34px 1fr; } .pub .lt.g { grid-template-columns:1fr auto; } .pub-champ input { flex:none; }
}
