:root{--ink:#1d1d1f;--mut:#6e6e73;--card:#FFFFFF;--line:#061F4A;--blue:#00A3E0;--em:#061F4A;--em2:#0082B8;--lime:#00A3E0;--coral:#ED2939;--sun:#00A3E0;--sky:#ED2939;--mint:#ED2939;--pink:#5A7AA8;--violet:#5A7AA8;--r:22px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font:16px/1.45 -apple-system,BlinkMacSystemFont,"SF Pro Rounded","SF Pro Display","Segoe UI",system-ui,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
.layout{display:grid;grid-template-columns:250px 1fr;min-height:100vh}
aside{position:sticky;top:0;height:100vh;padding:22px 16px;background:linear-gradient(180deg,#FFFFFF,#FFFFFF 70%);border-right:1px solid #1F6BFF;display:flex;flex-direction:column;gap:6px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;letter-spacing:-.02em;margin:2px 8px 18px}.logo{width:34px;height:34px;border-radius:11px;background:conic-gradient(from 210deg,var(--coral),var(--sun),var(--mint),var(--sky),var(--coral));display:grid;place-items:center;color:#fff;font-size:18px;box-shadow:0 6px 14px #ED293944}
aside button.nav{all:unset;cursor:pointer;display:flex;gap:12px;align-items:center;padding:11px 14px;border-radius:14px;font-weight:600;color:#2b3a4a}aside button.nav:hover{background:#ffffffaa}aside button.nav.on{background:#fff;color:#061F4A;box-shadow:0 2px 10px #5aa9ff22}
aside .who{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px 8px;font-weight:600}.av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;font-size:14px;flex:none}
main{padding:34px 40px 70px;max-width:1240px;width:100%}h1{font-size:44px;line-height:1.05;letter-spacing:-.035em;margin:0 0 20px;font-weight:800}h2{font-size:26px;letter-spacing:-.025em;margin:44px 0 16px;font-weight:800}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--mut)}
.hero{position:relative;overflow:hidden;border-radius:26px;min-height:360px;padding:38px 42px;color:#fff;background:#061F4A}
.hero h2{font-size:42px;line-height:1.05;margin:12px 0 10px;max-width:560px;color:#fff}.hero p{max-width:470px;color:#FFC93C;margin:0 0 26px}.hero .eyebrow{color:#00A3E0}
.stats{display:flex;gap:34px;flex-wrap:wrap;position:relative;z-index:2}.stats b{display:block;font-size:40px;letter-spacing:-.03em;line-height:1}.stats span{font-size:13px;color:#b8dccd}
.gem{position:absolute;border-radius:28px;transform:rotate(var(--rot));box-shadow:8px 8px 0 #061F4A}
.g1{right:8%;top:14%;width:210px;height:210px;--rot:18deg;background:#061F4A}.g2{right:25%;bottom:-40px;width:150px;height:150px;--rot:-14deg;background:#061F4A}.g3{right:2%;bottom:10%;width:110px;height:110px;--rot:32deg;background:#061F4A}.g4{right:30%;top:8%;width:70px;height:70px;--rot:-24deg;background:#061F4A}
.grid2{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.card{background:var(--card);border-radius:var(--r);padding:24px 26px;position:relative}.card h3{margin:2px 0 14px;font-size:22px;letter-spacing:-.02em}
.bar{height:12px;border-radius:8px;background:#061F4A;overflow:hidden;margin:5px 0 12px}.bar i{display:block;height:100%;border-radius:8px}.row2{display:flex;justify-content:space-between;font-size:14px;color:var(--mut)}.row2 b{color:var(--ink)}
.bulles{display:flex;flex-wrap:wrap;gap:10px}.bulle{border-radius:40px;padding:9px 18px;font-weight:700;color:#fff;display:flex;gap:8px;align-items:baseline}.bulle small{font-weight:600;opacity:.85}
.bases{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.base{background:var(--card);border-radius:var(--r);padding:20px;display:flex;gap:14px;align-items:center}.ico{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:28px;flex:none}.base b{display:block;font-size:18px}.base span{display:block;color:var(--mut);font-size:13px}
.panel{background:#00A3E0;border-radius:var(--r);padding:20px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:16px}
label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#4b6a85;display:block;margin-bottom:6px}select,input[type=text],input[type=password]{width:100%;padding:12px 14px;border:0;border-radius:14px;font:inherit;background:#fff;box-shadow:0 1px 0 #0001 inset;outline:none}select:focus,input:focus{box-shadow:0 0 0 3px #ED293966}
.btn{background:#061F4A;color:#fff;border:0;border-radius:30px;padding:12px 22px;cursor:pointer;font:inherit;font-weight:700}.btn:hover{filter:brightness(1.06)}.btn.l{background:var(--lime);color:#17401f}.btns{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.res{display:grid;gap:10px}.line{display:grid;grid-template-columns:52px 1.3fr 1.2fr 1fr 1fr;gap:16px;align-items:center;background:var(--card);border-radius:18px;padding:14px 18px}.line:hover{background:#FFFFFF}.line b{display:block}.line small{color:var(--mut);display:block;font-size:13px}
.tag{display:inline-block;border-radius:20px;padding:2px 10px;font-size:12px;font-weight:700;margin:3px 4px 0 0;background:#fff;color:#3A4F72}.tag.w{background:#FFFFFF;color:#a35d00}.tag.ok{background:#FFC93C;color:#116b43}
a.lk{color:#061F4A;cursor:pointer;font-weight:700;text-decoration:none}a.lk:hover{text-decoration:underline}.note{background:#FFFFFF;border-radius:16px;padding:14px 18px;font-size:14px;color:#6b5513;margin:16px 0}
.login{max-width:420px;margin:9vh auto;text-align:center;padding:0 20px}.login .card{text-align:left;margin-top:22px}.err{color:#c0392b;margin-top:10px;font-weight:600}
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.kv .card{padding:16px 20px}.kv b{display:block;font-size:18px;word-break:break-word}
@media(max-width:860px){.layout{grid-template-columns:1fr}aside{position:fixed;bottom:0;top:auto;height:auto;width:100%;flex-direction:row;z-index:9;padding:8px;border-top:1px solid #1F6BFF;border-right:0}.brand,aside .who{display:none}aside button.nav{flex:1;justify-content:center;padding:10px 6px}main{padding:22px 16px 100px}h1{font-size:34px}.hero{padding:26px}.hero h2{font-size:32px}.g1{opacity:.5}.line{grid-template-columns:46px 1fr}.line>*:nth-child(n+3){grid-column:2}}
@media(prefers-reduced-motion:no-preference){.card,.base,.line{transition:transform .18s,background .18s}.base:hover,.card:hover{transform:translateY(-2px)}.bar i{transition:width .9s cubic-bezier(.2,.8,.2,1)}}

/* --- Ciblage & accessibilité --- */
:focus-visible{outline:3px solid #061F4A;outline-offset:3px;border-radius:10px}.skip{position:absolute;left:-999px;top:8px;background:#061F4A;color:#fff;padding:12px 18px;border-radius:12px;z-index:99;font-weight:700}.skip:focus{left:8px}
main:focus{outline:none}button,select,input,a{min-height:44px}a.lk{display:inline-flex;align-items:center}
aside nav{display:flex;flex-direction:column;gap:6px}.reglages{display:flex;gap:6px;margin:14px 8px 0}.mini{min-width:44px;border:0;border-radius:12px;background:#fff;color:#2b3a4a;font-weight:800;cursor:pointer;box-shadow:0 1px 4px #0002}.mini[aria-pressed=true]{background:#061F4A;color:#fff}
.cible-grid{display:grid;gap:28px;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:start}.etapes{display:grid;gap:18px}
.etape{display:flex;gap:18px;background:var(--card);border-radius:var(--r);padding:24px}.num{width:44px;height:44px;border-radius:50%;background:#061F4A;color:#00A3E0;display:grid;place-items:center;font-weight:800;font-size:20px;flex:none}.ebody{flex:1;min-width:0}.ebody h2{margin:2px 0 4px;font-size:22px}.aide{color:#515158;margin:0 0 14px;font-size:15px}
.tuiles{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.tuiles.s{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.tuile{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:64px;border-radius:18px;background:#fff;border:2px solid #061F4A;position:relative;transition:transform .15s,border-color .15s,background .15s}
.tuile:hover{transform:translateY(-2px);border-color:var(--c)}.tuile.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 11%,#fff)}.tuile:focus-visible{outline:3px solid #061F4A;outline-offset:3px}
.tico{font-size:26px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--c) 14%,#fff);flex:none}.ttxt{display:flex;flex-direction:column;min-width:0}.ttxt b{font-size:15px;line-height:1.2}.ttxt small{color:#515158;font-size:12px}
.coche{margin-left:auto;width:26px;height:26px;border-radius:50%;border:2px solid #cfcfd6;display:grid;place-items:center;font-weight:800;font-size:15px;flex:none}.tuile.on .coche{background:var(--c);border-color:var(--c);color:#fff}
.zone select{font-size:17px}.cible-live{position:sticky;top:20px;background:linear-gradient(160deg,#04153A,#061F4A 60%,#0082B8);color:#fff;border-radius:26px;padding:24px;height:auto}.cible-live .eyebrow{color:#00A3E0}.cible-live label{color:#00A3E0}.cible-live .aide{color:#FFC93C}
.rdw{max-width:230px;margin:6px auto 10px}.rd{width:100%;height:auto;display:block;animation:pulse 3s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.025)}}
.etages{list-style:none;margin:0;padding:0;display:grid;gap:8px}.etages li{display:flex;align-items:center;gap:10px;background:#ffffff14;border-radius:14px;padding:10px 14px}.etages i{width:14px;height:14px;border-radius:50%;flex:none}.etages span{flex:1;font-size:14px}.etages b{font-size:22px;letter-spacing:-.02em}
.btn.d{background:#ffffff1f;color:#fff}.cible-live .btn.d:hover{background:#ffffff33}.etape .btn.d,.base .btn.d{background:#061F4A;color:#1d1d1f}
body.contraste{--card:#fff;--mut:#000;background:#fff}body.contraste *{border-color:#000!important}body.contraste .card,body.contraste .base,body.contraste .line,body.contraste .etape{border:2px solid #000!important}body.contraste .tuile{border-color:#000!important}body.contraste .tuile.on{background:#000;color:#fff}body.contraste .tuile.on small{color:#fff}
@media(max-width:1000px){.cible-grid{grid-template-columns:1fr}.cible-live{position:static}}
@media(max-width:860px){.etape{flex-direction:column;gap:10px;padding:18px}.reglages{display:none}}
@media(prefers-reduced-motion:reduce){.rd{animation:none}*{transition:none!important}}

/* ===== Langage visuel : le CIBLAGE (anneaux, viseurs, flèche, marqueurs) ===== */
.logo{background:none!important;box-shadow:none!important;width:38px;height:38px;border-radius:0}.logo svg{width:100%;height:100%;display:block;filter:none}.logo.grand{width:76px;height:76px;margin:auto}
/* filigrane d'anneaux sur la page */
main{position:relative}main::before{content:"";position:absolute;right:-140px;top:-120px;width:620px;height:620px;pointer-events:none;z-index:-1;border-radius:50%;opacity:.55;
 background:radial-gradient(circle,#fff0 0 22%,#00A3E0 22% 24%,#fff0 24% 40%,#FFFFFF 40% 42%,#fff0 42% 58%,#FFFFFF 58% 60%,#fff0 60% 76%,#FFC93C 76% 78%,#fff0 78%)}
/* hero : cible géante */
.hero{background:#061F4A}
.gem{display:none}.anneaux{position:absolute;right:24px;top:50%;width:400px;max-width:55%;transform:translateY(-50%);z-index:1}.anneaux svg{width:100%;height:auto;display:block;filter:none}
.fleche{transform-origin:200px 200px;animation:visee 5s ease-in-out infinite}@keyframes visee{0%,100%{transform:rotate(0) translate(0,0)}45%{transform:rotate(-3deg) translate(-7px,5px)}}
.hero h2{position:relative;z-index:2}.hero p,.hero .stats{position:relative;z-index:2}
/* cartes à coins de viseur */
.viseur{--vc:#ED2939}.viseur::before,.viseur::after{content:"";position:absolute;width:20px;height:20px;border:3px solid var(--vc);opacity:.85;pointer-events:none}
.viseur::before{left:10px;top:10px;border-right:0;border-bottom:0;border-top-left-radius:9px}.viseur::after{right:10px;bottom:10px;border-left:0;border-top:0;border-bottom-right-radius:9px}
.base.viseur::before,.base.viseur::after{width:14px;height:14px;border-width:2.5px}.etape.viseur{--vc:#ED2939}.card.viseur:nth-child(2){--vc:#ED2939}
.cible-live{--vc:#00A3E0}
/* avatars = mini-cibles */
.av{box-shadow:inset 0 0 0 3px #ffffffcc, 0 0 0 3px currentColor;position:relative}.av{outline:2px solid #fff;outline-offset:-6px}
/* barres de couverture : balle au but */
.bar{overflow:visible;margin:8px 0 14px}.bar i.mk{position:relative}.bar i.mk::after{content:"";position:absolute;right:-8px;top:50%;width:22px;height:22px;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,#fff 0 18%,currentColor 18% 38%,#fff 38% 56%,currentColor 56% 100%);color:inherit;box-shadow:0 2px 6px #0003;background-color:#fff}
.bar i.mk{color:inherit}.bar i[style*="coral"]::after{background:radial-gradient(circle,#fff 0 20%,#ED2939 20% 40%,#fff 40% 58%,#ED2939 58%)}.bar i[style*="mint"]::after{background:radial-gradient(circle,#fff 0 20%,#1fb97a 20% 40%,#fff 40% 58%,#1fb97a 58%)}
/* bulles de métiers */
.bulle{position:relative;padding-left:14px}.bulle .pt{width:22px;height:22px;border-radius:50%;flex:none;align-self:center;background:radial-gradient(circle,#fff 0 22%,#ffffff00 22% 40%,#fff 40% 55%,#ffffff00 55%);border:2px solid #fff;opacity:.95}
/* coches = cible */
.coche{border-radius:50%;background:radial-gradient(circle,#fff 0 30%,#fff0 30%);font-size:0}.tuile.on .coche{background:radial-gradient(circle,#fff 0 18%,var(--c) 18% 40%,#fff 40% 58%,var(--c) 58%);border-color:var(--c)}
.tuile::after{content:"";position:absolute;right:-1px;top:-1px;width:14px;height:14px;border-top:3px solid var(--c);border-right:3px solid var(--c);border-top-right-radius:10px;opacity:0;transition:opacity .15s}.tuile:hover::after,.tuile.on::after{opacity:1}
.tico{border-radius:50%;box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--c) 35%,#fff), inset 0 0 0 6px #fff, inset 0 0 0 8px color-mix(in srgb, var(--c) 22%,#fff)}
/* radar : balayage */
.rdw{position:relative}.rdw::after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#7FE3EE00 0 70%,#7FE3EE66 95%,#7FE3EEcc 100%);animation:balai 4s linear infinite;mix-blend-mode:screen;pointer-events:none;-webkit-mask:radial-gradient(circle,#000 0 66%,#0000 67%);mask:radial-gradient(circle,#000 0 66%,#0000 67%)}@keyframes balai{to{transform:rotate(360deg)}}
.rd{animation:none}
/* petites cibles devant les titres de section */
.eyebrow::before{content:"";display:inline-block;width:13px;height:13px;margin-right:8px;vertical-align:-2px;border-radius:50%;background:radial-gradient(circle,#ED2939 0 22%,#fff0 22% 40%,#ED2939 40% 56%,#fff0 56%);box-shadow:0 0 0 2px #ED2939}
.hero .eyebrow::before,.cible-live .eyebrow::before{background:radial-gradient(circle,#00A3E0 0 22%,#fff0 22% 40%,#00A3E0 40% 56%,#fff0 56%);box-shadow:0 0 0 2px #7FE3EE44}
h2{position:relative}h2::after{content:"";display:block;height:3px;width:46px;margin-top:8px;border-radius:3px;background:linear-gradient(90deg,#ED2939 0 33%,#00A3E0 33% 66%,#ED2939 66%)}.hero h2::after,.cible-live h2::after,.ebody h2::after{display:none}
/* titres de pages */
h1{background:linear-gradient(90deg,#1d1d1f,#1d1d1f);-webkit-background-clip:text;background-clip:text}
.num{border-radius:50%;background:#061F4A;color:#00A3E0;box-shadow:0 0 0 3px #fff, 0 0 0 6px #061F4A, 0 0 0 9px #fff, 0 0 0 11px #061F4A;margin:4px}
.btn:not(.l):not(.d){box-shadow:0 6px 16px #061F4A}.btn.l{box-shadow:0 6px 16px #7FE3EE99}
body.contraste .viseur::before,body.contraste .viseur::after{border-color:#000}body.contraste main::before{display:none}
@media(max-width:860px){.anneaux{opacity:.35;right:-90px;max-width:none;width:340px}main::before{width:380px;height:380px;right:-120px}}
@media(prefers-reduced-motion:reduce){.fleche,.rdw::after{animation:none}}

/* ===== Passe d'harmonisation : une seule palette, un seul rayon, une seule ombre ===== */
:root{--r:24px;--ombre:0 10px 28px #061F4A;--coral:#ED2939;--sun:#00A3E0;--mint:#ED2939;--sky:#ED2939}
.card,.base,.etape,.line{box-shadow:5px 5px 0 #061F4A;border:1px solid #061F4A0d}.line{border-radius:20px}.tuile{border-radius:20px}
.tuile.on{box-shadow:0 8px 20px color-mix(in srgb, var(--c) 28%,transparent)}.tuile:active{animation:pop .28s}@keyframes pop{40%{transform:scale(.94)}70%{transform:scale(1.04)}}
.btn{border-radius:30px;background:#061F4A;box-shadow:0 8px 18px #061F4A}.btn.l{background:var(--lime);color:#061F4A}.btn:not(.l):not(.d):hover{background:#0082B8}.btn:active{transform:scale(.97)}
aside{background:#FFFFFF}aside button.nav.on{color:#061F4A;box-shadow:0 6px 16px #ED2939}
.base:hover,.card:hover{box-shadow:0 14px 34px #061F4A1f}
.hero{box-shadow:8px 8px 0 #061F4A}.tag{border:1px solid #061F4A}
@media(prefers-reduced-motion:reduce){.tuile:active{animation:none}}

.faits{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}.faits li{display:flex;align-items:center;gap:12px;font-size:15px}.faits i{width:14px;height:14px;border-radius:50%;flex:none;box-shadow:0 0 0 3px #fff, 0 0 0 5px currentColor;color:#061F4A}
.base span.date{margin-top:2px;font-weight:600;color:#3A4F72}

/* ================= PALETTE « POP » : gaie, vive, homogène ================= */
:root{--ink:#061F4A;--mut:#4A5875;--blue:#061F4A;--sun:#00A3E0;--coral:#ED2939;--pink:#5A7AA8;--mint:#ED2939;--sky:#ED2939;--lime:#FFC93C;--cream:#FFFFFF;--ombre:5px 5px 0 #061F4A}
body{background:var(--cream);color:var(--ink)}
aside{background:#FFC93C;border-right:0;box-shadow:none}
aside button.nav{color:#061F4A;font-weight:700}aside button.nav:hover{background:#ffffffcc}aside button.nav.on{background:#fff;color:var(--blue);box-shadow:0 6px 16px #061F4A}
.brand{color:#061F4A}.mini{background:#ffffffd9;color:#061F4A}.mini[aria-pressed=true]{background:var(--blue);color:#fff}
h1{color:#061F4A;-webkit-text-fill-color:#061F4A;background:none}h2{color:#061F4A}h2::after{background:linear-gradient(90deg,#ED2939 0 25%,#00A3E0 25% 50%,#ED2939 50% 75%,#ED2939 75%)}
.eyebrow{color:#4A5875}.eyebrow::before{background:radial-gradient(circle,#ED2939 0 22%,#fff0 22% 40%,#ED2939 40% 56%,#fff0 56%)}
/* héros : bleu électrique + confettis */
.hero{background:#061F4A;box-shadow:8px 8px 0 #061F4A}
.hero .eyebrow,.hero p{color:#00A3E0}.hero .eyebrow::before{background:radial-gradient(circle,#00A3E0 0 22%,#fff0 22% 40%,#00A3E0 40% 56%,#fff0 56%)}.stats span{color:#00A3E0}
/* cartes pastel multicolores */
.card,.base,.etape{background:#fff;border:0;box-shadow:5px 5px 0 #061F4A}
.grid2>.card:nth-child(1){background:#FFC93C}.grid2>.card:nth-child(2){background:#FFC93C}
.bases>.base:nth-child(4n+1){background:#00A3E0}.bases>.base:nth-child(4n+2){background:#FFC93C}.bases>.base:nth-child(4n+3){background:#FFC93C}.bases>.base:nth-child(4n+4){background:#00A3E0}
.etapes>.etape:nth-child(4n+1){background:#00A3E0}.etapes>.etape:nth-child(4n+2){background:#FFC93C}.etapes>.etape:nth-child(4n+3){background:#FFC93C}.etapes>.etape:nth-child(4n+4){background:#00A3E0}
.kv>.card:nth-child(4n+1){background:#00A3E0}.kv>.card:nth-child(4n+2){background:#FFC93C}.kv>.card:nth-child(4n+3){background:#FFC93C}.kv>.card:nth-child(4n+4){background:#00A3E0}
.line{background:#fff;box-shadow:5px 5px 0 #061F4A;border:0}.line:hover{background:#FFFFFF}
.ico{background:#ffffffb0!important;box-shadow:0 0 0 3px #fff}
.num{background:#061F4A;color:#00A3E0;box-shadow:0 0 0 3px #fff, 0 0 0 6px #ED2939, 0 0 0 9px #fff, 0 0 0 11px #00A3E0}
.viseur{--vc:#ED2939}.etape.viseur{--vc:#061F4A}.grid2>.card.viseur:nth-child(2){--vc:#ED2939}
/* boutons et choix */
.btn{background:var(--blue);color:#fff;box-shadow:0 8px 18px #061F4A}.btn:not(.l):not(.d):hover{background:#1f58e6}.btn.l{background:var(--sun);color:#061F4A;box-shadow:0 8px 18px #7FE3EE80}
.etape .btn.d,.base .btn.d{background:#fff;color:#061F4A;box-shadow:0 2px 8px #061F4A1a}
.tuile{background:#fff;border:3px solid #fff;box-shadow:0 4px 12px #061F4A}.tuile:hover{border-color:var(--c)}.tuile.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 22%,#fff);box-shadow:0 8px 20px color-mix(in srgb, var(--c) 40%,transparent)}
.tico{background:color-mix(in srgb,var(--c) 30%,#fff)}.ttxt b{color:#061F4A}.ttxt small{color:#4A5875}
/* bulles de métiers : pastel + point de cible */
.bulle{background:color-mix(in srgb,var(--c) 28%,#fff);color:#061F4A;font-weight:800;box-shadow:0 4px 12px color-mix(in srgb, var(--c) 30%,transparent)}.bulle small{color:#061F4A;opacity:.7}
.bulle .pt{border-color:var(--c);background:radial-gradient(circle,var(--c) 0 22%,#fff0 22% 40%,var(--c) 40% 56%,#fff0 56%)}
/* cible en direct */
.cible-live{background:linear-gradient(160deg,#061F4A,#0B3A7A 60%,#ED2939);color:#fff}.cible-live .eyebrow,.cible-live label{color:#00A3E0}.cible-live .aide{color:#00A3E0}.cible-live{--vc:#00A3E0}
.etages li{background:#ffffff26}.btn.d{background:#ffffff33;color:#fff}.cible-live .btn.l{color:#061F4A}
.tag{background:#fff;color:#061F4A;border:0;box-shadow:0 1px 4px #061F4A}.tag.ok{background:#CFF7E6;color:#0b6b4c}.tag.w{background:#FFE9B8;color:#7a4b00}
.note{background:#FFC93C;color:#5c4400}.panel{background:#00A3E0}
.base span.date{color:#061F4A}.bar{background:#061F4A}.bar i[style*="coral"]{background:#ED2939!important}.bar i[style*="mint"]{background:#ED2939!important}
body.contraste{background:#fff}

.hero .stats{max-width:60%;gap:22px 34px}.hero .stats b{font-size:38px}@media(max-width:860px){.hero .stats{max-width:100%}}

/* échelle des cibles : 8 marches colorées */
.echelle{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.marche{position:relative;background:color-mix(in srgb,var(--c) 18%,#fff);border-radius:24px;padding:18px 18px 16px;box-shadow:0 10px 26px #061F4A;border-bottom:6px solid var(--c)}
.marche .mico{font-size:30px}.marche .mnum{position:absolute;right:14px;top:12px;width:30px;height:30px;border-radius:50%;background:var(--c);color:#061F4A;font-weight:800;display:grid;place-items:center;box-shadow:0 0 0 3px #fff}.marche b{display:block;font-size:17px;margin-top:6px}.marche small{display:block;color:#4A5875;font-size:12.5px}
.marche .mn{font-size:32px;font-weight:800;letter-spacing:-.03em;margin:6px 0 2px}.marche .bar{margin:6px 0 8px}
/* ===== Charte BDDB2B : bleu nuit + turquoise du logo ===== */
:root{--ink:#061F4A;--blue:#061F4A;--cyan:#ED2939;--cyan-d:#0082B8;--navy:#061F4A;--cream:#FFFFFF;--ombre:5px 5px 0 #061F4A}
body{background:#FFFFFF;color:#061F4A}
a{color:#0082B8}
:focus-visible{outline:3px solid #ED2939;outline-offset:2px}
.brand{margin:0 4px 18px}
/* ===== Charte BDDB2B v3 : couleurs franches, sans pastel ni fondu ===== */
:root{--cyan:#ED2939;--cyan-v:#00A3E0;--jaune:#FFC93C;--bleu:#1F6BFF;--rose:#FF5C8A;--navy:#061F4A}
body{background:#fff}
.base,.card,.etape{box-shadow:none;border:3px solid #061F4A}
.base:nth-child(4n+1){background:#00A3E0!important}.base:nth-child(4n+2){background:#FFC93C!important}.base:nth-child(4n+3){background:#FF5C8A!important}.base:nth-child(4n){background:#5BB8FF!important}
.base,.base *{color:#061F4A}
.hero{background:#061F4A!important;color:#fff}.hero h2,.hero p{color:#fff}
aside{background:#fff;border-right:4px solid #ED2939}
aside button.nav[aria-current=page],aside button.nav.on{background:#061F4A;color:#fff}
.note{background:#FFC93C!important;color:#061F4A!important;border:3px solid #061F4A}
*{background-image:none}.viseur::before,.viseur::after{background-image:none}
/* ===== v4 : cible & efficacité — aplats francs, ombres nettes, aucun fondu/pastel ===== */
*{backdrop-filter:none!important;text-shadow:none!important}
.card,.base,.etape,.note,.hero{box-shadow:5px 5px 0 #061F4A}
button,.btn,.mini{box-shadow:3px 3px 0 #061F4A}
button:active,.btn:active{box-shadow:none;transform:translate(3px,3px)}
.g1,.g2,.g3{opacity:1!important}

/* ===== Menu hamburger (mobile et petites fenêtres) ===== */
.burger,.voile{display:none}
@media(max-width:860px){
 .burger{display:flex;align-items:center;justify-content:center;position:fixed;top:10px;left:10px;z-index:40;width:50px;height:50px;font-size:26px;font-weight:900;color:#061F4A;background:#FFC93C;border:3px solid #061F4A;border-radius:12px;box-shadow:3px 3px 0 #061F4A;cursor:pointer}
 aside{position:fixed!important;top:0!important;bottom:0!important;left:0!important;width:min(300px,86vw)!important;height:100vh!important;flex-direction:column!important;justify-content:flex-start!important;padding:76px 14px 20px!important;overflow-y:auto;background:#fff;border-right:4px solid #ED2939!important;border-top:0!important;transform:translateX(-105%);transition:transform .2s ease;z-index:35}
 body.menu-ouvert aside{transform:none}
 aside .brand,aside .who{display:flex!important}
 aside button.nav{flex:none!important;justify-content:flex-start!important;padding:12px 14px!important;width:100%}
 body.menu-ouvert .voile{display:block;position:fixed;inset:0;background:#061F4A99;z-index:30}
 main{padding-top:78px!important;padding-bottom:30px!important}
}
@media(prefers-reduced-motion:reduce){aside{transition:none}}

/* ===== Réactivité v2 : aucun débordement horizontal, grilles fluides, cibles tactiles ===== */
html,body{max-width:100%;overflow-x:hidden}
main,.layout{min-width:0}
img,svg,video,canvas{max-width:100%}
table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
input,select,textarea{max-width:100%;font-size:16px}
.bases,.grid2,.grid3,.tiles,.tuiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))!important}
@media(max-width:860px){
 .anneaux{display:none!important}
 main::before{display:none!important}
 .hero{padding:22px 18px!important;overflow:hidden}
 h1{font-size:clamp(28px,8vw,36px)!important;word-break:break-word}
 .hero h2{font-size:clamp(24px,7vw,32px)!important}
 button,.nav,.mini,a.mini,select,input[type=file]{min-height:44px}
 .line{grid-template-columns:1fr!important}
 [style*="min-width:340px"]{min-width:0!important}
}
@media(max-width:480px){
 main{padding-left:14px!important;padding-right:14px!important}
 .etape{padding:16px!important}
 .card{padding:16px!important}
}

/* ================= v5 « STORE » (18/10) : sobre, aéré, grandes typos ; sans dégradé, sans flou, sans pastel ================= */
:root{--r:28px;--fond:#F5F5F7;--ink:#1D1D1F;--mut:#6E6E73;--navy:#061F4A;--cy:#ED2939;--line2:#D2D2D7}
body{background:var(--fond);color:var(--ink)}
aside{background:#fff;border-right:1px solid var(--line2)}
aside button.nav{border-radius:12px;font-weight:600;color:var(--ink)}aside button.nav:hover{background:var(--fond)}
aside button.nav.on{background:var(--navy);color:#fff;box-shadow:none}
main{padding:44px 56px 96px;max-width:1280px}
h1{font-size:56px;letter-spacing:-.04em;font-weight:700;margin:0 0 28px}h2{font-size:32px;font-weight:700;letter-spacing:-.03em;margin:64px 0 20px}
.eyebrow{color:var(--cy);letter-spacing:.08em}
.card,.base,.etape,.line,.tuile,.hero{box-shadow:none!important;border:1px solid var(--line2);background:#fff;border-radius:var(--r)}
.card:hover,.base:hover{box-shadow:none!important;border-color:var(--navy)}
.hero{background:var(--navy);border:0;color:#fff}.hero p{color:#DDE6F2}
.btn{background:var(--navy);box-shadow:none;border-radius:980px;font-weight:600;padding:13px 24px}.btn.l{background:var(--cy);color:var(--navy)}
.btn:not(.l):not(.d):hover{background:#0A2F6B}
.note{box-shadow:none!important;border:1px solid var(--line2);background:#fff;color:var(--ink);border-radius:var(--r);border-left:6px solid var(--cy)}
.note.focus{background:#fff}
.tag{border:1px solid var(--line2);background:#fff;color:var(--ink)}
.cible-live{background:var(--navy)!important;background-image:none!important;border:0}
input,select,textarea{border-radius:14px;border:1px solid var(--line2)}
/* barre haute + onglets (mobile) : logo toujours visible, Cibler à portée de pouce */
.topbar,.tabbar{display:none}
@media(max-width:860px){
 .topbar{display:flex;align-items:center;justify-content:center;position:sticky;top:0;z-index:35;height:56px;background:#fff;border-bottom:1px solid var(--line2)}
 .topbar img{height:30px;width:auto}
 .burger{display:none!important}
 .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:45;background:#fff;border-top:1px solid var(--line2);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
 .tabbar button{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;font-weight:600;color:var(--mut);padding:6px 0;border-radius:12px}
 .tabbar button span{font-size:20px;line-height:1}.tabbar button.on{color:var(--navy);background:var(--fond)}
 main{padding:20px 16px 110px!important}h1{font-size:36px}h2{font-size:26px;margin:44px 0 16px}
 .hero{padding:26px 22px;min-height:0}
}

/* v5.1 — la cible : colonne dédiée, jamais sur le texte ; visible aussi sur mobile */
main::before{display:none!important}
.note,.note.focus{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line2)!important;border-left:6px solid var(--cy)!important;border-radius:var(--r)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;align-items:center;overflow:hidden}
.hero>.anneaux{position:static!important;transform:none!important;grid-column:2;grid-row:1/span 6;width:320px!important;max-width:100%!important;justify-self:center;opacity:1}
.hero>:not(.anneaux){grid-column:1;min-width:0}
.hero h2{max-width:none;font-size:clamp(30px,3.6vw,48px)}.hero p{max-width:none}
.hero .stats{max-width:none!important}
@media(max-width:860px){
 .hero{grid-template-columns:1fr;gap:18px}
 .hero>.anneaux{display:block!important;grid-column:1;grid-row:auto;order:-1;width:148px!important;justify-self:start;opacity:1}
 .hero h2{font-size:30px}
 .hero .stats{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.hero .stats b{font-size:30px}
}
.hero{row-gap:0;min-height:0;padding:44px 48px}.hero .eyebrow{margin-bottom:6px}.hero p{margin:0 0 30px}
@media(max-width:860px){.hero{row-gap:14px;padding:26px 22px}.hero .stats b{font-size:28px}}

/* ================= v6 « STORE » : épuré, filaire, monochrome — plus aucun effet dessin animé ================= */
*{box-shadow:none!important;text-shadow:none!important}
.ic{display:inline-flex;width:22px;height:22px;flex:none;color:currentColor}.ic svg{display:block}
aside button.nav{gap:14px;padding:12px 14px;font-weight:500;font-size:15px;letter-spacing:-.01em}
aside button.nav .ic{color:var(--mut)}aside button.nav.on .ic{color:#fff}
.mini{background:#fff!important;border:1px solid var(--line2)!important;border-radius:10px!important;color:var(--ink)!important;font-weight:600}
.tuile{border:1px solid var(--line2)!important;border-radius:16px!important;background:#fff!important;transition:border-color .15s,background .15s}
.tuile:hover{transform:none!important;border-color:var(--navy)!important}
.tuile.on{border-color:var(--navy)!important;background:#fff!important;outline:2px solid var(--navy);outline-offset:-2px}
.tuile::after{display:none}
.tico{filter:grayscale(1) contrast(.9);opacity:.8}
.coche{border:1.5px solid var(--line2)!important;background:#fff!important}.tuile.on .coche{background:var(--navy)!important;border-color:var(--navy)!important}
.etape{background:#fff!important;border:1px solid var(--line2)!important}.etape .num,.etape>.n{background:var(--navy)}
.card,.base,.line{border:1px solid var(--line2)!important}
.btn{border:0!important}.btn.d{background:#fff;color:var(--navy);border:1px solid var(--navy)!important}
.cible-live{border-radius:var(--r)}
@media(max-width:860px){
 .topbar{justify-content:space-between;padding:0 6px 0 16px}
 .burger{display:flex!important;position:static!important;width:44px;height:44px;margin:0;background:transparent!important;border:0!important;border-radius:12px;color:var(--navy);font-size:0}
 .burger .ic{width:26px;height:26px}.burger .ic svg{width:26px;height:26px}
 aside{left:auto!important;right:0!important;transform:translateX(100%)!important;border-right:0;border-left:1px solid var(--line2);padding:72px 12px 20px!important}
 body.menu-ouvert aside{transform:none!important}
 aside button.nav.on{background:var(--navy)}
 .tabbar button .ic{width:24px;height:24px}.tabbar button .ic svg{width:24px;height:24px}
 .tabbar button span.ic{font-size:0}
}

/* v6.1 — correctifs mise en page responsive */
.viseur::before,.viseur::after,main::after,body::before,body::after{display:none!important}
.eyebrow::before{background:var(--cy)!important;border-radius:50%;width:8px;height:8px;vertical-align:1px}
@media(max-width:860px){
 aside{border:0!important;border-left:1px solid var(--line2)!important;overflow-x:hidden!important;width:min(320px,88vw)!important}
 aside button.nav{width:100%!important;box-sizing:border-box}
 aside::before,aside::after{display:none!important}
 .hero>.anneaux{width:96px!important;justify-self:end;margin-bottom:-8px}
 .eyebrow{font-size:11px;letter-spacing:.06em}
 .etape{padding:20px 16px!important}.etape .rd,.etape>.num{margin-bottom:6px}
}

/* v6.2 — la cible : translucide et vivante (dérive lente, anneaux qui respirent, flèche qui vise) */
.hero>.anneaux{opacity:.38!important;transition:opacity .4s}
.hero:hover>.anneaux{opacity:.6!important}
.hero>.anneaux svg{animation:derive 9s ease-in-out infinite;transform-origin:50% 50%}
@keyframes derive{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(10px,-8px) rotate(3deg)}50%{transform:translate(-6px,10px) rotate(-2deg)}75%{transform:translate(-10px,-4px) rotate(2deg)}}
.hero>.anneaux svg circle{transform-origin:200px 200px;animation:respire 6s ease-in-out infinite}
.hero>.anneaux svg circle:nth-of-type(2){animation-delay:-1.5s}.hero>.anneaux svg circle:nth-of-type(3){animation-delay:-3s}.hero>.anneaux svg circle:nth-of-type(4){animation-delay:-4.5s}
@keyframes respire{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@media(max-width:860px){.hero>.anneaux{opacity:.5!important}}
@media(prefers-reduced-motion:reduce){.hero>.anneaux svg,.hero>.anneaux svg circle{animation:none!important}}
/* v6.3 — mouvement plus net : la cible dérive, ses anneaux pulsent, la flèche vise sans cesse */
.hero>.anneaux svg{animation:derive 6s ease-in-out infinite!important}
@keyframes derive{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(18px,-14px) rotate(6deg)}50%{transform:translate(-12px,16px) rotate(-5deg)}75%{transform:translate(-18px,-8px) rotate(4deg)}}
.hero>.anneaux svg circle{transform-box:fill-box!important;transform-origin:center!important;animation:respire 3.2s ease-in-out infinite!important}
@keyframes respire{0%,100%{transform:scale(1)}50%{transform:scale(1.09)}}
.hero>.anneaux .fleche{animation:visee 3.4s ease-in-out infinite!important}
@keyframes visee{0%,100%{transform:rotate(0) translate(0,0)}40%{transform:rotate(-7deg) translate(-16px,12px)}70%{transform:rotate(3deg) translate(6px,-4px)}}
@media(prefers-reduced-motion:reduce){.hero>.anneaux svg,.hero>.anneaux svg circle,.hero>.anneaux .fleche{animation:none!important}}

/* ================= v7 — couleurs franches et brillantes (finis les tons éteints) ================= */
:root{--vb:#0A66FF;--vc:#00A3E0;--vg:#12D45A;--vo:#FF9500;--vr:#FF2D55;--vp:#AF52DE;--vy:#FFD60A;--navy:#061F4A}
body{background:#F2F4F8}
.card,.base,.etape,.line{border:2px solid var(--vb)!important;background:#fff!important}
.grid2>.card:nth-child(4n+2),.base:nth-child(4n+2){border-color:var(--vo)!important}
.grid2>.card:nth-child(4n+3),.base:nth-child(4n+3){border-color:var(--vg)!important}
.grid2>.card:nth-child(4n+4),.base:nth-child(4n+4){border-color:var(--vp)!important}
.etape{border-color:var(--vc)!important}
.card h3,.etape h3{color:var(--navy)}
.eyebrow{color:var(--vb)!important}.eyebrow::before{background:var(--vr)!important}
/* hero : chiffres éclatants sur navy, le premier (priorité absolue) en grand */
.hero{background:var(--navy)}
.hero .stats b{color:#fff}
.hero .stats>div:nth-child(1) b{color:var(--vy);font-size:56px}.hero .stats>div:nth-child(1) span{color:var(--vy);font-weight:700}
.hero .stats>div:nth-child(2) b{color:var(--vc)}.hero .stats>div:nth-child(2) span{color:var(--vc)}
.hero .stats>div:nth-child(3) b{color:var(--vg)}.hero .stats>div:nth-child(3) span{color:var(--vg)}
.hero .stats>div:nth-child(4) b{color:#fff}.hero .stats>div:nth-child(4) span{color:#C9D6EA}
.hero .eyebrow{color:var(--vc)!important}.hero p{color:#fff}
.hero>.anneaux{opacity:.55!important}
/* pastilles, notes, boutons, tuiles */
.tag{background:var(--vb);color:#fff;border:0;font-weight:700}.tag.ok{background:var(--vg);color:#04210F}
.note,.note.focus{border:2px solid var(--vo)!important;border-left:8px solid var(--vo)!important}
.btn{background:var(--vb);color:#fff}.btn:not(.l):not(.d):hover{background:#004FCC}.btn.l{background:var(--vc);color:var(--navy)}
aside button.nav.on{background:var(--vb)}.tabbar button.on{color:var(--vb);background:#E6EEFF}
.tuile{border:2px solid var(--line2)!important}.tuile.on{background:var(--c,var(--vb))!important;color:#fff!important;outline:0;border-color:var(--c,var(--vb))!important}
.tuile.on *{color:#fff!important}.tico{filter:none!important;opacity:1}
.bar{background:#E3E8F0}.bar i.mk{border-radius:99px}
.cible-live{background:var(--navy)!important}.cible-live .btn{background:var(--vc);color:var(--navy)}

/* v7.1 — plus aucun ton éteint : icônes pleines, cadres vifs */
.etape,.etape.viseur{border:2px solid var(--vb)!important}
.tuile{border:2px solid #C9D3E6!important}.tuile:hover{border-color:var(--vb)!important}
.tico{background:var(--c,var(--vb))!important;box-shadow:none!important}
.tuile.on .tico{background:#fff!important}
.coche{border:2px solid #9AA9C4!important}
.cible-live .btn,.cible-live .btn.l{background:var(--vc)!important;color:var(--navy)!important;font-weight:700}
.cible-live .btn.d{background:#fff!important;color:var(--navy)!important}

/* v7.2 — vitrine : les plus gros volumes vérifiés en grand ; « emails rattachés à un contact » en dessous, plus petit mais bien visible */
.hero .stats>div:nth-child(1) b{color:var(--vy);font-size:56px}.hero .stats>div:nth-child(1) span{color:var(--vy);font-weight:700}
.hero .stats>div:nth-child(2) b{color:var(--vc);font-size:44px}.hero .stats>div:nth-child(2) span{color:var(--vc);font-weight:400}
.hero .stats>div:nth-child(3) b{color:var(--vg);font-size:44px}.hero .stats>div:nth-child(3) span{color:var(--vg);font-weight:400}
.hero .stats>div:nth-child(4){flex-basis:100%}
.hero .stats>div:nth-child(4) b{color:#fff;font-size:30px}.hero .stats>div:nth-child(4) span{color:#fff;font-weight:700;font-size:14px}
@media(max-width:860px){.hero .stats>div:nth-child(1) b{font-size:38px}.hero .stats>div:nth-child(2) b,.hero .stats>div:nth-child(3) b{font-size:30px}.hero .stats>div:nth-child(4) b{font-size:24px}}
.hero .stats small.gain{display:block;margin-top:2px;font-size:13px;font-weight:700;color:var(--vg)}
.hero .stats small.gain:empty{display:none}

/* v8 : bases livrées (accueil) */
#bases-livrees{margin:28px 0}
.bl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:14px}
.bl-card{background:#fff;border:1px solid #e2e6ef;border-radius:18px;padding:18px 18px 14px;display:flex;flex-direction:column;gap:4px}
.bl-t{font-weight:700;color:#061F4A;line-height:1.25}
.bl-s{font-size:.8rem;color:#5A7AA8}
.bl-n{font-size:2rem;font-weight:800;letter-spacing:-.03em;color:#061F4A;margin:6px 0 4px}
.bl-n small{font-size:.8rem;font-weight:600;color:#5A7AA8;letter-spacing:0}
.bl-l{display:flex;justify-content:space-between;gap:10px;font-size:.88rem;padding:3px 0;border-top:1px solid #eef1f7;color:#4A5875}
.bl-l b{color:#061F4A}

/* v9 : navigation par tâches, recherche globale, accueil, fluidité */
.nav-groupe{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.nav-titre{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--mut,#5A7AA8);padding:10px 14px 4px}
.rech-btn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;width:100%;margin:6px 0 14px;padding:10px 12px;border:1px solid var(--line2,#e2e6ef);border-radius:12px;background:var(--fond,#f2f4f9);color:var(--mut,#5A7AA8);font-size:14px}
.rech-btn:hover{border-color:#1F6BFF}.rech-btn .rech-txt{flex:1}.rech-btn kbd{font:600 11px/1 inherit;padding:3px 7px;border:1px solid var(--line2,#d5dae6);border-radius:6px;background:#fff;color:#4A5875}
.rech-ico{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--navy,#061F4A)}
.fondu{animation:fondu .22s ease both}@keyframes fondu{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.fondu{animation:none}}
.pal-fond{position:fixed;inset:0;z-index:100;background:rgba(6,31,74,.45);backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:flex-start;padding:10vh 14px 14px;animation:fondu .15s ease both}
.pal{width:min(640px,100%);max-height:78vh;display:flex;flex-direction:column;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(6,31,74,.35);overflow:hidden}
.pal-haut{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #eef1f7;color:#5A7AA8}
.pal-haut input{flex:1;min-width:0;border:0;outline:0;font-size:1.05rem;padding:8px 2px;background:transparent;color:#061F4A}
.pal-liste{overflow:auto;padding:6px}
.pal-it{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:12px;color:#061F4A}
.pal-it.on{background:#eef3ff}.pal-ico{display:flex;color:#5A7AA8}.pal-corps{flex:1;min-width:0;display:flex;flex-direction:column}
.pal-corps b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pal-corps small{color:#5A7AA8;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pal-vide{padding:22px;text-align:center;color:#5A7AA8}.pal-pied{padding:8px 14px;border-top:1px solid #eef1f7;font-size:12px;color:#5A7AA8}
body.pal-ouverte{overflow:hidden}
.accueil-tete{margin:0 0 26px}
.accueil-tete h1{margin:0 0 14px}
.accueil-champ{display:flex;align-items:center;gap:12px;padding:6px 18px;background:#fff;border:1px solid #cfd6e4;border-radius:16px;box-shadow:0 6px 24px rgba(6,31,74,.06);color:#5A7AA8}
.accueil-champ:focus-within{border-color:#1F6BFF;box-shadow:0 6px 24px rgba(31,107,255,.18)}
.accueil-champ input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:1.1rem;padding:14px 0;color:#061F4A}
.accueil-orgs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.chip{all:unset;cursor:pointer;box-sizing:border-box;padding:9px 16px;border-radius:999px;border:1px solid #d5dae6;background:#fff;color:#061F4A;font-weight:600;font-size:14px}
.chip:hover{border-color:#1F6BFF;color:#1F6BFF}
.accueil-taches{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.tache{all:unset;cursor:pointer;box-sizing:border-box;display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:16px;background:#fff;border:1px solid #e2e6ef;transition:transform .15s,box-shadow .15s}
.tache:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(6,31,74,.1)}
.tache-ico{color:#1F6BFF;margin-bottom:4px}.tache b{color:#061F4A}.tache small{color:#5A7AA8}
@media(max-width:860px){.topbar{padding:0 6px!important}.tabbar{padding-bottom:env(safe-area-inset-bottom)}main{padding-bottom:calc(86px + env(safe-area-inset-bottom))}}
@media(min-width:861px){.topbar,.rech-ico{display:none}}

.accueil-tete.apres-hero{margin:26px 0}.accueil-tete.apres-hero h1{font-size:1.6rem}

.onglets-aud{display:inline-flex;gap:4px;padding:4px;margin:0 0 18px;background:#e9edf5;border-radius:14px;flex-wrap:wrap}
.onglets-aud button{all:unset;cursor:pointer;box-sizing:border-box;display:flex;flex-direction:column;gap:1px;padding:10px 18px;border-radius:11px;color:#4A5875}
.onglets-aud button b{font-size:14px}.onglets-aud button small{font-size:12px;opacity:.8}
.onglets-aud button.on{background:#fff;color:#061F4A;box-shadow:0 2px 8px rgba(6,31,74,.12)}

.sous-titre-tuiles{margin:20px 0 8px;font-size:.95rem;font-weight:700;color:#061F4A}

.stats small.sous{display:block;font-size:.78rem;font-weight:600;color:#9fb4d6;margin-top:2px;letter-spacing:0}

.ch-bloc{background:#fff;border:1px solid #e2e6ef;border-radius:18px;padding:16px 18px;margin:10px 0 22px}
.ch-barre{display:grid;grid-template-columns:minmax(130px,260px) 1fr 90px;gap:12px;align-items:center;padding:6px 0;font-size:.92rem;color:#061F4A}
.ch-barre .bar{height:8px;background:#eef1f7;border-radius:6px;overflow:hidden}.ch-barre .mk{display:block;height:100%;border-radius:6px}.ch-barre b{text-align:right}
.ch-recherche{display:flex;gap:10px;margin:12px 0 18px;flex-wrap:wrap}.ch-recherche input,.ch-recherche select{padding:14px 16px;font-size:1rem;border:1px solid #cfd6e4;border-radius:12px;background:#fff;color:#061F4A}.ch-recherche input{flex:1;min-width:220px}
.ch-liste{display:flex;flex-direction:column;gap:8px}.ch-ligne{all:unset;cursor:pointer;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;padding:12px 16px;background:#fff;border:1px solid #e2e6ef;border-radius:14px;color:#061F4A;position:relative}
.ch-ligne:hover{border-color:#E30613}.ch-ligne small{color:#5A7AA8}.ch-ligne .tag{position:absolute;right:14px;top:14px}
@media(max-width:600px){.ch-barre{grid-template-columns:1fr 60px}.ch-barre .bar{grid-column:1/-1;order:3}}

.ch-barre .mk::before,.ch-barre .mk::after{content:none!important;display:none!important}

.be-liste{display:flex;flex-direction:column;gap:10px}.be-carte{background:#fff;border:1px solid #e2e6ef;border-radius:16px;overflow:hidden}.be-carte.ouverte{border-color:#1F6BFF}
.be-tete{all:unset;cursor:pointer;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;width:100%;padding:16px 18px}
.be-titre{display:flex;justify-content:space-between;gap:12px;color:#061F4A;font-size:1.02rem}.be-n{font-weight:800}
.be-tete .bar{height:6px;background:#eef1f7;border-radius:6px;overflow:hidden}.be-tete .mk{display:block;height:100%;border-radius:6px}.be-tete .mk::before,.be-tete .mk::after{content:none!important}
.be-puces{display:flex;gap:8px;flex-wrap:wrap}.be-puce{font-size:.82rem;color:#4A5875;background:#f2f4f9;border-radius:999px;padding:4px 10px}.be-puce b{color:#061F4A}
.be-det{padding:0 18px 18px}.be-tab{width:100%;border-collapse:collapse;font-size:.9rem;color:#061F4A}.be-tab th{text-align:left;font-size:.78rem;color:#5A7AA8;font-weight:700;padding:6px 8px;border-bottom:1px solid #eef1f7}.be-tab td{padding:8px;border-bottom:1px solid #f3f5fa}
@media(max-width:600px){.be-tab th:nth-child(2),.be-tab td:nth-child(2){display:none}}

.bl-clic{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:18px 18px 14px;border-radius:16px;text-align:left}.bl-clic:focus-visible{outline:3px solid #E30613;outline-offset:2px}
.anneaux svg{overflow:visible}

/* Thème suisse : rouge et blanc (bddb2b.ch uniquement) */
:root{--navy:#1d1d1f;--blue:#ED2939;--ink:#1d1d1f;--mut:#6b6b73;--fond:#fafafa;--line2:#ececf0}
body,.layout,main{background:#fff!important}
h1,h2,h3,.bl-t,.bl-n,.ch-ligne,.be-titre,.pal-it,.pal-corps b{color:#1d1d1f!important}
.eyebrow,.eyebrow *{color:#ED2939!important}
aside,.topbar,.tabbar{background:#fff!important;border-color:#ececf0!important}
aside button.nav.on,aside button.nav[aria-current=page]{background:#ED2939!important;color:#fff!important;box-shadow:none!important}
aside button.nav.on .ic,aside button.nav[aria-current=page] .ic{color:#fff!important}
.tabbar button.on{background:#fdecee!important;color:#ED2939!important}
.hero{background:linear-gradient(135deg,#ED2939 0%,#0082B8 100%)!important;color:#fff!important}
.hero h2,.hero p,.hero .eyebrow,.hero .eyebrow *{color:#fff!important}
.hero .stats b,.hero .stats > div b{color:#fff!important}
.hero .stats span,.hero .stats > div span{color:rgba(255,255,255,.92)!important}
.hero small,.hero small.sous,.stats small.sous{color:rgba(255,255,255,.82)!important}
.hero .anneaux svg,.hero .anneaux svg *{stroke:#fff!important;fill:none!important}
.hero .anneaux,.hero .cible{opacity:.9!important}
.hero .anneaux svg circle{opacity:1!important}
.btn,button.btn{background:#ED2939!important;color:#fff!important;border-color:#ED2939!important}
.btn:hover{background:#0082B8!important}
.chip{border-color:#e3e3e8!important;color:#1d1d1f!important;background:#fff!important}.chip:hover{border-color:#ED2939!important;color:#ED2939!important}
.accueil-champ:focus-within,.ch-recherche input:focus,.ch-recherche select:focus{border-color:#ED2939!important;box-shadow:0 6px 24px rgba(237,41,57,.14)!important}
.ch-ligne:hover,.bl-card:hover,.tache:hover{border-color:#ED2939!important}
.card,.bl-card,.ch-bloc,.ch-ligne,.tache,.be-carte{background:#fff!important;border:1px solid #ececf0!important}
.tag,.tag.ok{background:#fdecee!important;color:#0082B8!important;border:0!important}
a{color:#ED2939}
.note{background:#fff5f5!important;border-left:4px solid #ED2939!important;color:#1d1d1f!important}
.pal-it.on{background:#fdecee!important}
.rech-btn:hover{border-color:#ED2939!important}
.ch-barre .mk,.bar .mk{background:#ED2939!important}
.tache-ico,.ico svg{color:#ED2939!important}
.ch-bloc b,.bl-l b{color:#1d1d1f!important}
.accueil-tete h1,.accueil-tete.apres-hero h1{color:#1d1d1f!important}
.av,.who .av{background:#ED2939!important;color:#fff!important}
/* vignettes et encadrés : cadre blanc, filet rouge */
.bl-card,.tache,.be-carte,.ch-ligne{border:1px solid #f7cdd1!important;border-top:4px solid #ED2939!important;border-radius:14px!important;box-shadow:0 4px 14px rgba(237,41,57,.07)!important}
.bl-card:hover,.tache:hover,.be-carte:hover{box-shadow:0 8px 22px rgba(237,41,57,.16)!important}
.bl-n,.be-n{color:#ED2939!important}
.bl-l{border-top:1px solid #f9dfe1!important}
.bl-s,.bl-card small,.aide{color:#6b6b73!important}
.ch-bloc,.card,.card.viseur,.panel,.note{border:1.5px solid #f7cdd1!important;border-radius:16px!important;box-shadow:0 4px 14px rgba(237,41,57,.06)!important;background:#fff!important}
.note{border-left:5px solid #ED2939!important;background:#fff8f8!important}
.accueil-champ,.ch-recherche input,.ch-recherche select{border:1.5px solid #f7cdd1!important}
.be-puce{background:#fdecee!important;color:#6b1a22!important}.be-puce b{color:#0082B8!important}
.card .eyebrow,.card.viseur .eyebrow{color:#ED2939!important}
/* vignettes colorées en déclinaisons de rouge suisse, texte blanc */
.bl-card{border-radius:16px!important}
.bl-card .bl-t,.bl-card .bl-n,.bl-card .bl-n small,.bl-card .bl-s,.bl-card small,.bl-card .bl-l,.bl-card .bl-l span,.bl-card .bl-l b{color:#fff!important}
.bl-card .bl-l{border-top:1px solid rgba(255,255,255,.32)!important}
.bl-card .bl-s,.bl-card small{opacity:.85}
.tache{background:linear-gradient(135deg,#fff,#fff5f6)!important}
.tache:nth-child(2n){border-top-color:#00A3E0!important}.tache:nth-child(3n){border-top-color:#0082B8!important}
/* encadré de pied de page : rouge suisse (plus d'orange) */
.note,.note.focus,div.note,.layout .note{background:linear-gradient(135deg,#00A3E0,#0083B3)!important;color:#fff!important;border:0!important;border-left:0!important;box-shadow:0 8px 22px rgba(0,130,184,.22)!important}
.note *,.note b,.note a,.note.focus *{color:#fff!important}
.note a{text-decoration:underline}
.note .tag,.note .tag.ok{background:rgba(255,255,255,.18)!important;color:#fff!important}
.ch-barre,.ch-barre .ch-l{color:#1d1d1f!important}.ch-barre .bar,.be-tete .bar{background:#fbe3e5!important}
.ch-bloc .bl-l span{color:#4a4a52!important}
/* alternance par section : sections pleines (rouge) et sections à cadre rouge sur fond blanc */
.bl-grid.pleine .bl-card{background:linear-gradient(135deg,#ED2939,#D91F2E)!important;border:0!important;color:#fff!important;box-shadow:0 8px 22px rgba(0,130,184,.25)!important}
.bl-grid.pleine .bl-card:nth-child(6n+2){background:linear-gradient(135deg,#00A3E0,#0083B3)!important}
.bl-grid.pleine .bl-card:nth-child(6n+3){background:linear-gradient(135deg,#F2545F,#0089C2)!important}
.bl-grid.pleine .bl-card:nth-child(6n+4){background:linear-gradient(135deg,#FF5864,#E23342)!important}
.bl-grid.pleine .bl-card:nth-child(6n+5){background:linear-gradient(135deg,#0082B8,#006A94)!important}
.bl-grid.pleine .bl-card:nth-child(6n+6){background:linear-gradient(135deg,#00B3F0,#0095D0)!important}
.bl-grid.pleine .bl-card .bl-t,.bl-grid.pleine .bl-card .bl-n,.bl-grid.pleine .bl-card .bl-n small,.bl-grid.pleine .bl-card .bl-l,.bl-grid.pleine .bl-card .bl-l span,.bl-grid.pleine .bl-card .bl-l b,.bl-grid.pleine .bl-card .bl-s{color:#fff!important;opacity:1}
.bl-grid.pleine .bl-card .bl-l{border-top:1px solid rgba(255,255,255,.32)!important}
.bl-grid.cadre .bl-card{background:#fff!important;border:2px solid #ED2939!important;color:#1d1d1f!important;box-shadow:0 4px 14px rgba(237,41,57,.10)!important}
.bl-grid.cadre .bl-card:nth-child(3n+2){border-color:#00A3E0!important}.bl-grid.cadre .bl-card:nth-child(3n+3){border-color:#0082B8!important}
.bl-grid.cadre .bl-card .bl-t{color:#1d1d1f!important}
.bl-grid.cadre .bl-card .bl-n,.bl-grid.cadre .bl-card .bl-n small{color:#ED2939!important}
.bl-grid.cadre .bl-card:nth-child(3n+2) .bl-n{color:#00A3E0!important}.bl-grid.cadre .bl-card:nth-child(3n+3) .bl-n{color:#0082B8!important}
.bl-grid.cadre .bl-card .bl-l span,.bl-grid.cadre .bl-card .bl-s{color:#5a5a62!important}
.bl-grid.cadre .bl-card .bl-l b{color:#1d1d1f!important}
.bl-grid.cadre .bl-card .bl-l{border-top:1px solid #f6cfd3!important}
main h1,#contenu h1,.accueil-tete h1,main .page h1,.accueil-tete.apres-hero h1{color:#1d1d1f!important}
/* logo plus grand */
aside .brand img,.brand img{width:215px!important;max-width:100%!important;height:auto!important}
aside .brand{margin-bottom:8px}
.topbar img{height:46px!important;width:auto!important}
@media(max-width:860px){.topbar{height:64px!important}.topbar img{height:46px!important}}

.hero{background:linear-gradient(135deg,#ED2939 0%,#ED2939 50%,#00A3E0 100%)!important}
