
  :root{
    --purple:#5D0FE8; --blue:#2F80ED;
    --grad:linear-gradient(120deg,#5D0FE8 0%,#2F80ED 100%);
    --bg:#FBFAFF; --surface:#FFFFFF; --surface-2:#F7F6FD;
    --ink:#15101F; --ink-2:#5C5670; --ink-3:#9A93AD;
    --line:rgba(21,16,31,.08); --line-2:rgba(21,16,31,.05);
    --green:#18A058; --green-tint:#E6F6ED;
    --amber:#C9820B; --amber-tint:#FBF1DC;
    --red:#D6453B; --red-tint:#FBE9E7;
    --display:'Space Grotesk',system-ui,sans-serif;
    --ui:'Plus Jakarta Sans',system-ui,sans-serif;
    --mono:'JetBrains Mono',ui-monospace,monospace;
    --ease:cubic-bezier(.32,.72,0,1);
    --sh-sm:0 2px 8px -4px rgba(21,16,31,.12);
    --sh:0 10px 40px -16px rgba(91,40,180,.22);
    --sh-lg:0 30px 80px -28px rgba(91,40,180,.36);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--ui);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}
  /* mesh blobs */
  body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
    background:
      radial-gradient(40vw 40vw at 12% 8%, rgba(93,15,232,.18), transparent 60%),
      radial-gradient(44vw 44vw at 90% 18%, rgba(47,128,237,.16), transparent 62%),
      radial-gradient(38vw 38vw at 78% 88%, rgba(93,15,232,.10), transparent 60%);
    filter:blur(6px)}
  a{color:inherit;text-decoration:none}
  button{font-family:inherit;cursor:pointer;border:none;background:none}
  :focus-visible{outline:2px solid var(--purple);outline-offset:3px;border-radius:6px}
  .wrap{max-width:1140px;margin:0 auto;padding:0 28px;position:relative;z-index:1}
  .mono{font-family:var(--mono);font-feature-settings:"tnum"}
  .grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

  /* NAV (barre pleine largeur, plus de capsule) */
  .nav{position:fixed;top:var(--banner-h,0px);left:0;right:0;z-index:50;
    background:rgba(255,255,255,.86);backdrop-filter:blur(20px) saturate(150%);
    border-bottom:1px solid var(--line)}
  .nav-in{display:flex;align-items:center;gap:28px;max-width:1240px;margin:0 auto;padding:13px 28px}
  .brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.03em;line-height:1}
  .brand-txt{display:flex;flex-direction:column;align-items:flex-start}
  .brand-tag{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--ink-3);margin-top:4px;white-space:nowrap}
  @media(min-width:880px) and (max-width:1120px){.brand-tag{display:none}}
  @media(max-width:560px){.brand-tag{display:none}}
  .brand-mark{width:26px;height:26px;display:grid;place-items:center;background:var(--grad);border-radius:8px;box-shadow:inset 0 1px 1px rgba(255,255,255,.35);overflow:hidden}
  .brand-mark svg{width:14px;height:14px;stroke:#fff;stroke-width:1.8;fill:none}
  .brand-logo{height:30px;width:auto;display:block;border-radius:6px}
  .hero-cta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px}
  .hero-cta .link2{font-size:14px;font-weight:600;color:var(--purple);display:inline-flex;align-items:center;gap:6px}
  .hero-cta .link2 svg{width:15px;height:15px;stroke:var(--purple);stroke-width:1.8;fill:none}
  .foot-contact{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
  .foot-contact a{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 15px;box-shadow:var(--sh-sm);transition:transform .3s var(--ease)}
  .foot-contact a:hover{transform:translateY(-2px)}
  .foot-contact svg{width:16px;height:16px;stroke:var(--purple);stroke-width:1.7;fill:none}
  .nav-links{display:flex;align-items:center;gap:26px;margin:0 auto}
  .nav-links a{position:relative;padding:7px 0;font-size:14.5px;font-weight:600;color:var(--ink-2);white-space:nowrap;transition:color .25s var(--ease)}
  .nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--purple);transition:right .3s var(--ease)}
  .nav-links a:hover{color:var(--ink)}
  .nav-links a:hover::after{right:0}
  .nav-login{padding:7px 2px;font-size:14.5px;font-weight:600;color:var(--ink);white-space:nowrap;transition:color .25s var(--ease)}
  .nav-login:hover{color:var(--purple)}
  .nav-avatar{width:38px;height:38px;border-radius:50%;border:none;padding:0;display:grid;place-items:center;background:var(--grad);color:#fff;flex:0 0 auto;box-shadow:var(--sh-sm);cursor:pointer;margin-left:4px;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
  .nav-avatar:hover{transform:translateY(-1px);box-shadow:var(--sh)}
  .nav-avatar svg{width:19px;height:19px;stroke:#fff;stroke-width:1.7;fill:none}
  .nav-avatar span{font-family:var(--display);font-weight:700;font-size:14px;color:#fff;line-height:1}
  .btn{display:inline-flex;align-items:center;gap:9px;border-radius:999px;font-weight:700;font-size:14px;
    padding:11px 8px 11px 20px;color:#fff;background:var(--grad);background-size:140% 140%;
    transition:transform .4s var(--ease),box-shadow .4s var(--ease),background-position .5s var(--ease)}
  .btn .ic{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.2);transition:transform .4s var(--ease)}
  .btn .ic svg{width:14px;height:14px;stroke:#fff;stroke-width:1.7;fill:none}
  .btn:hover{box-shadow:0 14px 34px -12px rgba(91,40,180,.6);background-position:100% 0}
  .btn:hover .ic{transform:translate(2px,-1px) scale(1.07)}
  .btn:active{transform:scale(.975)}
  .btn-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:11px 18px}
  .btn-ghost .ic{background:var(--line-2)} .btn-ghost .ic svg{stroke:var(--ink)}
  .nav-cta{border-radius:12px;white-space:nowrap;flex:0 0 auto}
  .nav-cta .ic{border-radius:9px}
  .nav-in .nav-login,.nav-in .brand{flex:0 0 auto}
  .burger{display:none;width:42px;height:42px;border-radius:12px;background:var(--grad);position:relative}
  .burger span{position:absolute;left:12px;right:12px;height:1.8px;background:#fff;border-radius:2px;transition:transform .45s var(--ease)}
  .burger span:nth-child(1){top:16px}.burger span:nth-child(2){top:24px}
  body.menu-open .burger span:nth-child(1){transform:translateY(4px) rotate(45deg)}
  body.menu-open .burger span:nth-child(2){transform:translateY(-4px) rotate(-45deg)}
  .overlay{position:fixed;inset:0;z-index:45;background:rgba(251,250,255,.86);backdrop-filter:blur(24px);
    display:flex;flex-direction:column;justify-content:center;gap:4px;padding:0 36px;opacity:0;visibility:hidden;transition:opacity .4s var(--ease),visibility .4s}
  body.menu-open .overlay{opacity:1;visibility:visible}
  .overlay a{font-family:var(--display);font-weight:600;font-size:clamp(22px,5.5vw,32px);letter-spacing:-.02em;
    transform:translateY(28px);opacity:0;transition:transform .6s var(--ease),opacity .6s var(--ease)}
  body.menu-open .overlay a{transform:none;opacity:1}
  body.menu-open .overlay a:nth-child(2){transition-delay:.07s}
  body.menu-open .overlay a:nth-child(3){transition-delay:.12s}

  /* HERO */
  .hero{padding:clamp(124px,17vh,186px) 0 30px}
  .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
  /* Kicker éditorial : trait dégradé + capitales espacées, au ras du titre */
  .eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2)}
  .eyebrow::before{content:"";width:26px;height:2px;border-radius:2px;background:var(--grad);flex:0 0 auto}
  .hero-eyebrow{line-height:1.7}
  h1{font-family:var(--display);font-weight:700;letter-spacing:-.03em;line-height:1.04;
    font-size:clamp(33px,4.6vw,54px);margin:22px 0 0}
  .lede{font-size:clamp(16px,2vw,19px);color:var(--ink-2);max-width:46ch;margin-top:24px;line-height:1.55}

  .search-shell{margin-top:34px;max-width:540px;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:var(--sh)}
  .search-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .field{display:flex;align-items:center;gap:9px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px 6px 4px 14px}
  .field svg{width:16px;height:16px;stroke:var(--ink-3);stroke-width:1.6;fill:none;flex-shrink:0}
  .field input{flex:1;border:none;outline:none;background:none;font-size:15px;font-family:var(--ui);color:var(--ink);padding:11px 0;min-width:0}
  .field input::placeholder{color:var(--ink-3)}
  .search-btn{width:100%;margin-top:10px;background:var(--grad);background-size:140% 140%;color:#fff;border-radius:13px;padding:14px;font-weight:700;font-size:15px;transition:background-position .5s var(--ease),transform .3s var(--ease)}
  .search-btn:hover{background-position:100% 0}.search-btn:active{transform:scale(.985)}
  .trust{display:flex;gap:8px;margin-top:16px;font-size:12.5px;color:var(--ink-3);max-width:48ch}
  .trust svg{width:15px;height:15px;stroke:var(--purple);stroke-width:1.6;fill:none;flex-shrink:0;margin-top:1px}

  /* hero stacked cards (cascade) */
  .stack{display:flex;flex-direction:column;gap:14px}
  .stack .scard{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px 20px;box-shadow:var(--sh-sm);
    opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
  .stack .scard.in{opacity:1;transform:none}
  .stack .scard:nth-child(2).in{transition-delay:.1s}
  .stack .scard:nth-child(3).in{transition-delay:.2s}
  .scard .sct{display:flex;justify-content:space-between;align-items:center}
  .scard .sct b{font-size:15px;font-weight:700;font-family:var(--display)} .scard .sct .mono{font-size:13px}
  .scard .sbar{height:6px;border-radius:999px;background:var(--line-2);margin-top:13px;overflow:hidden}
  .scard .sbar i{display:block;height:100%;border-radius:999px}
  .stack-tag{display:inline-block;align-self:flex-start;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px 12px;box-shadow:var(--sh-sm)}
  .stack-note{font-size:12px;color:var(--ink-3);text-align:center;margin-top:2px}
  /* Fenêtre app animée du hero : le produit se présente tout seul */
  .appwin{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh-lg);overflow:hidden;opacity:0;transform:translateY(38px);animation:awUp .9s var(--ease) .35s forwards}
  .aw-chrome{display:flex;align-items:center;gap:7px;height:38px;padding:0 14px;background:var(--surface-2);border-bottom:1px solid var(--line)}
  .awd{width:10px;height:10px;border-radius:999px}
  .awd:nth-child(1){background:#F16C60}.awd:nth-child(2){background:#F3BE4F}.awd:nth-child(3){background:#58C27D}
  .aw-url{margin-left:10px;flex:1;max-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:4px 12px;font-size:11px;color:var(--ink-3);font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .aw-body{display:flex;position:relative}
  .aw-side{width:128px;flex:0 0 128px;border-right:1px solid var(--line);padding:12px 8px;display:flex;flex-direction:column;gap:2px}
  .aw-side a{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:9px;font-size:11.5px;font-weight:600;color:var(--ink-2)}
  .aw-side a.on{background:rgba(93,15,232,.08);color:var(--purple)}
  .aw-side a svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.9;fill:none;flex:0 0 auto}
  .aw-main{flex:1;min-width:0;padding:14px 16px 16px}
  .aw-hi{display:block;font-family:var(--display);font-size:15px;margin-bottom:10px;opacity:0;animation:awFade .5s var(--ease) 1.05s forwards}
  .aw-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
  .aw-stat{border:1px solid var(--line);border-radius:12px;padding:9px 10px;opacity:0;transform:translateY(10px);animation:awFadeUp .5s var(--ease) forwards}
  .aw-stat:nth-child(1){animation-delay:1.3s}.aw-stat:nth-child(2){animation-delay:1.5s}.aw-stat:nth-child(3){animation-delay:1.7s}
  .aw-stat b{display:block;font-family:var(--display);font-size:20px;letter-spacing:-.01em}
  .aw-stat.ok b{color:var(--green)} .aw-stat.warn b{color:var(--amber)}
  .aw-stat span{font-size:9.5px;color:var(--ink-3);font-weight:600;line-height:1.25;display:block;margin-top:1px}
  .aw-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:9px 11px;margin-bottom:8px;opacity:0;transform:translateX(-14px);animation:awSlide .5s var(--ease) forwards}
  .aw-row.r1{animation-delay:2.1s}.aw-row.r2{animation-delay:2.35s}
  .aw-pill{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#fff;font-size:9.5px;font-weight:800;flex:0 0 auto}
  .aw-row>div{min-width:0}
  .aw-row>div b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .aw-row>div span{font-size:10.5px;color:var(--ink-3);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .aw-row em{font-style:normal;margin-left:auto;font-size:10.5px;font-weight:700;border-radius:999px;padding:3px 9px;flex:0 0 auto}
  .aw-row em.ok{background:var(--green-tint);color:var(--green)} .aw-row em.warn{background:var(--amber-tint);color:var(--amber)}
  .aw-toast{position:absolute;right:10px;bottom:10px;display:flex;gap:9px;align-items:center;background:var(--ink);color:#fff;border-radius:12px;padding:9px 12px;max-width:255px;box-shadow:var(--sh-lg);opacity:0;transform:translateY(12px);animation:awFadeUp .55s var(--ease) 3s forwards}
  .aw-tico{width:28px;height:28px;border-radius:8px;background:var(--grad);display:grid;place-items:center;flex:0 0 auto}
  .aw-tico svg{width:14px;height:14px;stroke:#fff;stroke-width:2;fill:none}
  .aw-toast b{display:block;font-size:11.5px}
  .aw-toast span{font-size:10.5px;color:rgba(255,255,255,.72);line-height:1.3;display:block}
  @keyframes awUp{to{opacity:1;transform:none}}
  @keyframes awFade{to{opacity:1}}
  @keyframes awFadeUp{to{opacity:1;transform:translateY(0)}}
  @keyframes awSlide{to{opacity:1;transform:translateX(0)}}
  .stack-head{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px 20px;box-shadow:var(--sh-sm)}
  .ring{position:relative;width:74px;height:74px;flex:0 0 74px}
  .ring svg{transform:rotate(-90deg);width:74px;height:74px}
  .ring circle{fill:none;stroke-width:8;stroke-linecap:round}
  .ring .ring-bg{stroke:var(--line-2)}
  .ring .ring-fg{stroke-dasharray:213.6;stroke-dashoffset:213.6;transition:stroke-dashoffset 1.4s var(--ease)}
  .ring.go .ring-fg{stroke-dashoffset:calc(213.6 - 213.6 * var(--v) / 100)}
  .ring-num{position:absolute;inset:0;display:grid;place-content:center;font-family:var(--display);font-weight:700;line-height:1}
  .ring-num b{font-size:21px;color:var(--ink)}
  .ring-num i{font-size:11px;color:var(--ink-3);font-style:normal;font-weight:600}
  .stack-head-txt{display:flex;flex-direction:column;gap:2px}
  .stack-head-txt b{font-family:var(--display);font-size:16px;color:var(--ink);letter-spacing:-.01em}
  .stack-head-txt span{font-size:13px;color:var(--ink-3)}
  .offer{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:clamp(30px,4.5vw,54px);box-shadow:var(--sh);display:grid;grid-template-columns:1.25fr .9fr;gap:34px;align-items:center;overflow:hidden}
  .offer::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;pointer-events:none;background:var(--grad)}
  .offer h2{font-family:var(--display);font-weight:700;letter-spacing:-.03em;font-size:clamp(28px,4vw,44px);margin-top:16px;line-height:1.04}
  .offer p{color:var(--ink-2);font-size:16px;margin-top:14px;line-height:1.6;max-width:48ch}
  .offer-cta{display:flex;flex-direction:column;gap:12px;align-items:stretch}
  .offer-cta .btn,.offer-cta .btn-ghost{justify-content:space-between;font-size:15px;padding:14px 10px 14px 22px}
  .offer-cta .link2{font-size:14px;font-weight:600;color:var(--purple);display:inline-flex;align-items:center;gap:6px;justify-content:center;margin-top:2px}
  .offer-cta .link2 svg{width:15px;height:15px;stroke:var(--purple);stroke-width:1.8;fill:none}
  @media(max-width:760px){.offer{grid-template-columns:1fr;gap:24px}}
  .studio{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:clamp(28px,4vw,48px);box-shadow:var(--sh);overflow:hidden}
  .studio::before{content:"";position:absolute;left:0;top:0;right:0;height:6px;pointer-events:none;background:var(--grad)}
  .studio-head{max-width:640px;margin:0 auto 24px;text-align:center}
  .studio-head h2{font-family:var(--display);font-weight:700;letter-spacing:-.03em;font-size:clamp(26px,3.6vw,40px);margin-top:14px;line-height:1.05}
  .studio-head p{color:var(--ink-2);font-size:16px;margin-top:14px;line-height:1.6}
  .studio-switch{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px}
  .sk-btn{font-family:inherit;font-size:14px;font-weight:600;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 16px;cursor:pointer;transition:color .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease)}
  .sk-btn:hover{border-color:var(--purple);color:var(--ink)}
  .sk-btn.on{background:var(--grad);color:#fff;border-color:transparent}
  .studio-frame{max-width:1000px;margin:0 auto;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:0 24px 60px -30px rgba(20,16,40,.4)}
  .studio-bar{display:flex;align-items:center;gap:7px;padding:11px 15px;background:var(--line-2);border-bottom:1px solid var(--line)}
  .studio-bar .sd{width:11px;height:11px;border-radius:50%;background:#cfc9dd}
  .studio-url{margin-left:14px;font-size:13px;color:var(--ink-3);background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 16px}
  .studio-frame iframe{display:block;width:100%;height:540px;border:0;background:#fff}
  .studio-cta{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:24px}
  @media(max-width:700px){.studio-frame iframe{height:430px}.studio-url{display:none}}

  /* DEUX PORTES */
  .doors{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  .door{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:clamp(26px,3vw,36px);box-shadow:var(--sh);overflow:hidden;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
  .door:hover{transform:translateY(-4px)}
  .door .dic{width:48px;height:48px;border-radius:14px;background:var(--surface-2);display:grid;place-items:center;margin-bottom:18px}
  .door.pro .dic{background:var(--grad)}
  .door .dic svg{width:24px;height:24px;stroke:var(--ink-2);stroke-width:1.7;fill:none}
  .door.pro .dic svg{stroke:#fff}
  .door h3{font-family:var(--display);font-size:21px;font-weight:700;letter-spacing:-.02em}
  .door p{color:var(--ink-2);font-size:14.5px;margin:8px 0 20px;line-height:1.55}
  .door .dgo{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:14px;text-decoration:none;color:var(--ink)}
  .door.pro .dgo{color:var(--purple)}
  .door .dgo .ar{width:28px;height:28px;border-radius:999px;background:var(--surface-2);display:grid;place-items:center;transition:transform .5s var(--ease)}
  .door.pro .dgo .ar{background:rgba(93,15,232,.1)}
  .door:hover .dgo .ar{transform:translate(2px,-1px)}
  .door .dgo .ar svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}
  .door .dsec{display:block;margin-top:14px;font-size:13px;color:var(--ink-3);text-decoration:underline;text-underline-offset:2px}
  .door .dsec:hover{color:var(--ink-2)}
  .find-pro{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:28px 30px;box-shadow:var(--sh-sm)}
  .find-txt{max-width:60ch}
  .find-txt h2{font-family:var(--display);font-size:clamp(20px,2.6vw,26px);font-weight:700;letter-spacing:-.02em;margin:8px 0 6px}
  .find-txt p{color:var(--ink-2);font-size:14.5px}
  .devis-card{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--sh)}
  .devis-pitch{padding:36px;background:linear-gradient(160deg,rgba(93,15,232,.05),rgba(47,128,237,.04))}
  .devis-pitch h2{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:clamp(22px,2.8vw,30px);margin:12px 0 10px;line-height:1.08}
  .devis-pitch p{color:var(--ink-2);font-size:15px}
  .devis-trust{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
  .devis-trust li{font-size:14px;color:var(--ink);padding-left:26px;position:relative}
  .devis-trust li::before{content:"";position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:50%;background:var(--grad)}
  .devis-trust li::after{content:"";position:absolute;left:5px;top:7px;width:6px;height:3px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
  .devis-box{padding:36px;display:flex;flex-direction:column;justify-content:center}
  .devis-box input,.devis-box textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 15px;font-family:var(--ui);font-size:15px;margin-bottom:12px;background:var(--bg);transition:border-color .2s var(--ease)}
  .devis-box input:focus,.devis-box textarea:focus{outline:none;border-color:var(--purple)}
  .devis-box textarea{min-height:80px;resize:vertical}
  .dv-row{display:flex;gap:12px}.dv-row input{flex:1}
  .hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
  .devis-send{width:100%;justify-content:center;font-size:16px;padding:15px}
  .dv-steps{display:flex;gap:7px;justify-content:center;margin-bottom:20px}
  .dv-dot{width:8px;height:8px;border-radius:999px;background:var(--line);transition:all .3s var(--ease)}
  .dv-dot.is-on{background:var(--purple);width:22px}
  .dv-step{animation:dvfade .3s var(--ease)}
  @keyframes dvfade{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
  .dv-lab{display:block;font-family:var(--display);font-weight:700;font-size:16px;color:var(--ink);margin-bottom:14px}
  .dv-mini{font-size:12.5px;color:var(--ink-3);margin:-4px 0 12px}
  .dv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:16px}
  .dv-grid>div{display:flex;flex-direction:column;min-width:0}
  .dv-mini-l{font-size:11.5px;font-weight:600;color:var(--ink-3);margin-bottom:4px}
  .devis-box .dv-grid select,.devis-box .dv-grid input{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;font-family:var(--ui);font-size:14px;background:var(--bg);margin:0;cursor:pointer}
  .devis-box .dv-grid input{cursor:text}
  @media(max-width:480px){.dv-grid{grid-template-columns:1fr}}
  .dv-nav{display:flex;gap:10px;align-items:center}
  .dv-nav .dv-back{background:none;border:none;color:var(--ink-2);font-family:var(--ui);font-weight:600;font-size:14px;cursor:pointer;padding:12px 10px;white-space:nowrap}
  .dv-nav .dv-back:hover{color:var(--ink)}
  .dv-nav .devis-send{flex:1}
  .devis-note{font-size:12px;color:var(--ink-3);text-align:center;margin-top:12px}
  .dd-check{width:54px;height:54px;border-radius:50%;background:var(--grad);display:grid;place-items:center;margin:0 auto}
  .dd-check svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:3}
  @media(max-width:760px){.devis-card{grid-template-columns:1fr}.devis-pitch{padding:28px}.devis-box{padding:28px}}
  .dgt{margin-top:16px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}
  .dgt-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 18px;cursor:pointer;font-weight:700;font-size:14.5px;color:var(--purple);background:rgba(93,15,232,.05)}
  .dgt-head svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;flex-shrink:0;transition:transform .3s var(--ease)}
  .dgt.open .dgt-head svg{transform:rotate(180deg)}
  .dgt-body{max-height:0;overflow:hidden;transition:max-height .45s var(--ease)}
  .dgt-inner{padding:18px}
  .dgt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
  .dgt-grid label{display:block;font-size:12.5px;font-weight:600;color:var(--ink-2);margin-bottom:6px}
  .dgt-grid select{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 13px;font-family:var(--ui);font-size:14px;background:var(--bg)}
  .dgt-go{margin-top:14px}
  .dgt-res{margin-top:16px}
  .dgt-d{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid var(--line)}
  .dgt-d:first-child{border-top:none}
  .dgt-d b{font-size:14.5px}.dgt-d .m{font-size:12.5px;color:var(--ink-3);margin-top:2px;max-width:42ch}
  .dgt-badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
  .dgt-badge.ob{color:var(--green);background:rgba(34,165,101,.12)}
  .dgt-badge.co{color:var(--amber);background:rgba(201,130,26,.13)}
  @media(max-width:640px){.find-pro{flex-direction:column;align-items:flex-start}}
  .cabm{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
  .cabm:first-child{border-top:none}
  .cabm-ring{width:46px;height:46px;border-radius:50%;flex:0 0 46px;display:grid;place-items:center;background:conic-gradient(var(--c,var(--purple)) calc(var(--p,0)*1%),var(--line) 0);position:relative}
  .cabm-ring::after{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--surface)}
  .cabm-ring span{position:relative;font-family:var(--mono);font-size:13px;font-weight:600}
  .cabm-id{flex:1;min-width:0}
  .cabm-id b{display:block;font-size:14.5px}
  .cabm-id span{display:block;font-size:12px;color:var(--ink-3)}
  .cabm-tag{font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:999px}
  .cabm-tag.wait{background:rgba(242,153,74,.14);color:#b06a16}
  .cabm-open,.cabm-x{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:7px 13px;font-family:var(--ui);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .25s var(--ease)}
  .cabm-av{width:42px;height:42px;border-radius:50%;flex:0 0 42px;display:grid;place-items:center;background:var(--grad);color:#fff;font-weight:700;font-size:15px;background-size:cover;background-position:center;overflow:hidden}
  .cabm-act{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
  .cabm-remind{border:0;background:var(--grad);color:#fff;border-radius:9px;padding:7px 13px;font-family:var(--ui);font-size:12.5px;font-weight:700;cursor:pointer;transition:transform .25s var(--ease),opacity .25s var(--ease)}
  .cabm-remind:hover{transform:translateY(-1px)}
  .cabm-remind:disabled{opacity:.6;cursor:default}
  .cabm-ech{display:block;font-size:11.5px;color:var(--ink-3);margin-top:1px}
  @media(max-width:600px){.cabm{flex-wrap:wrap}.cabm-act{width:100%;justify-content:flex-start;margin-left:54px}}
  /* --- Espace cabinet : échéancier, filtres, cartes domaines, tickets --- */
  /* Sélecteur d'agences (multi-agences) */
  .cab-export{margin-left:auto;display:inline-flex;align-items:center;gap:7px;background:#15803d0d;border:1px solid #15803d40;color:#15803d;border-radius:10px;padding:8px 14px;font-family:var(--ui);font-size:13px;font-weight:700;cursor:pointer;transition:background .2s var(--ease)}
  .cab-export:hover{background:#15803d1a}
  .cab-export svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
  .cab-agence-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 14px;padding-bottom:14px;border-bottom:1px dashed var(--line)}
  .cab-agence-bar .agl{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin-right:2px}
  .agc{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 13px;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;font-family:var(--ui);transition:border-color .2s var(--ease),background .2s var(--ease)}
  .agc:hover{border-color:var(--purple)}
  .agc.on{background:rgba(93,15,232,.06);border-color:var(--purple);color:var(--ink)}
  .agc .dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}
  .agc .cnt{font-size:11px;color:var(--ink-3);font-weight:700}
  .agc-manage{border-style:dashed;color:var(--purple)}
  .ech-agence{flex:0 0 auto;font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px;color:#fff;white-space:nowrap}
  .cabm-agence-sel{margin-top:5px;max-width:210px;border:1.5px solid var(--line);border-radius:999px;padding:4px 26px 4px 11px;font-family:var(--ui);font-size:11.5px;font-weight:600;color:var(--ink-2);background-color:var(--surface);cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235D0FE8' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;background-size:13px}
  .agm-row{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid var(--line-2)}
  .agm-row input[type=text]{flex:1;min-width:0;border:1px solid var(--line);border-radius:9px;padding:8px 11px;font-family:var(--ui);font-size:14px}
  .agm-row input[type=color]{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;padding:2px;cursor:pointer;flex:0 0 auto}
  .cab-activ{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:0 0 14px}
  .cab-activ-h{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:13.5px;margin-bottom:9px}
  .cab-activ-h b{font-size:14px}.cab-activ-h span{color:var(--ink-3);font-size:12.5px}
  .cab-activ-bar{height:8px;border-radius:4px;background:var(--line-2);overflow:hidden}
  .cab-activ-bar i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--purple),#2F80ED)}
  .cab-activ-act{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
  .cab-relance{border:1px solid var(--purple);background:rgba(93,15,232,.05);color:var(--purple);border-radius:10px;padding:8px 14px;font-family:var(--ui);font-size:12.5px;font-weight:700;cursor:pointer}
  .cab-relance:hover{background:rgba(93,15,232,.12)}
  .share-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line-2)}
  .share-row:last-child{border-bottom:none}
  .share-id{flex:0 0 auto;min-width:150px}.share-id b{display:block;font-size:13.5px}.share-id span{font-size:11.5px;color:var(--ink-3)}
  .share-url{flex:1;min-width:180px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-family:var(--mono);font-size:12px;color:var(--ink-2);background:var(--line-2)}
  .share-copy{border:1px solid var(--purple);background:rgba(93,15,232,.05);color:var(--purple);border-radius:8px;padding:7px 12px;font-family:var(--ui);font-size:12.5px;font-weight:700;cursor:pointer}
  .share-rev{border:1px solid var(--line);background:#fff;color:#DC2626;border-radius:8px;padding:7px 12px;font-family:var(--ui);font-size:12.5px;font-weight:600;cursor:pointer}
  .org-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:11px 0;border-bottom:1px solid var(--line-2)}
  .org-row:last-child{border-bottom:none}
  .org-id{flex:1;min-width:160px}.org-id b{display:block;font-size:14px}.org-id span{font-size:12px;color:var(--ink-3)}
  .org-badge{font-size:11.5px;font-weight:700;border-radius:999px;padding:4px 11px;background:var(--line-2);color:var(--ink-2)}
  .org-badge.owner{background:rgba(93,15,232,.1);color:var(--purple)}
  .org-wait{color:var(--amber,#D97706);font-weight:600;margin-left:6px}
  .org-rolesel{border:1px solid var(--line);border-radius:8px;padding:6px 9px;font-family:var(--ui);font-size:12.5px;background:#fff}
  .org-rev,.org-leave{border:1px solid var(--line);background:#fff;color:#DC2626;border-radius:8px;padding:6px 11px;font-family:var(--ui);font-size:12.5px;font-weight:600;cursor:pointer}
  .jr-row{display:flex;gap:11px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line-2)}
  .jr-row:last-child{border-bottom:none}
  .jr-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--purple);margin-top:6px}
  .jr-main{flex:1;min-width:0}
  .jr-act{font-size:13.5px}.jr-act span{color:var(--ink-2);font-weight:500}
  .jr-meta{font-size:11.5px;color:var(--ink-3);margin-top:1px}
  body.role-lecture #cabActivate,body.role-lecture .cab-write{display:none!important}
  body.role-lecture #espace::before{content:"Accès en lecture seule — vous consultez cet espace sans pouvoir le modifier.";display:block;background:rgba(93,15,232,.07);color:var(--purple);font-weight:600;font-size:13px;text-align:center;padding:9px 14px;border-radius:12px;margin:0 0 14px}
  .cab-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:2px 0 14px}
  .cab-tools .field{flex:1;min-width:220px}
  .chips{display:flex;gap:8px;flex-wrap:wrap}
  .chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;font-family:var(--ui);transition:border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}
  .chip:hover{border-color:var(--purple);color:var(--purple)}
  .chip.on{background:rgba(93,15,232,.08);border-color:var(--purple);color:var(--purple)}
  .ech-row{display:flex;align-items:center;gap:13px;padding:11px 4px;border-bottom:1px solid var(--line-2)}
  .ech-row:last-child{border-bottom:none}
  .ech-date{flex:0 0 auto;width:84px;text-align:center;border:1px solid var(--line);border-radius:11px;padding:6px 4px;background:var(--surface)}
  .ech-date b{display:block;font-size:14px;line-height:1.2}
  .ech-date span{font-size:11px;color:var(--ink-3);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
  .ech-main{flex:1;min-width:0}
  .ech-main b{display:block;font-size:14px}
  .ech-main span{font-size:12.5px;color:var(--ink-3)}
  .ech-dom{flex:0 0 auto;font-size:11.5px;font-weight:700;border-radius:999px;padding:4px 10px;background:var(--line-2);color:var(--ink-2)}
  .ech-j{flex:0 0 auto;font-size:12.5px;font-weight:700;border-radius:999px;padding:5px 11px;white-space:nowrap}
  .j-late{background:rgba(220,38,38,.1);color:var(--red)}
  .j-soon{background:rgba(217,119,6,.12);color:var(--amber)}
  .j-ok{background:rgba(22,163,74,.1);color:var(--green)}
  @media(max-width:560px){.ech-dom{display:none}}
  /* Cartes domaine (15/09/2026) : sur l'écran d'arrivée du cabinet, une carte = un
     domaine, chiffre en grand, état en couleur, cliquable = filtre des échéances. */
  .domc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:10px}
  .domc{position:relative;display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);border-radius:14px;padding:13px 14px 12px;background:var(--surface);cursor:pointer;text-align:left;font-family:var(--ui);color:var(--ink);transition:border-color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease);animation:domIn .45s var(--ease) backwards}
  @keyframes domIn{from{opacity:0;transform:translateY(10px)}}
  .domc:hover{border-color:var(--purple);box-shadow:var(--sh-sm);transform:translateY(-1px)}
  .domc.on{border-color:var(--purple);background:rgba(93,15,232,.06);box-shadow:0 0 0 2px rgba(93,15,232,.15)}
  .domc .d-top{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700}
  .domc .d-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}
  .domc .d-num{font-family:var(--display);font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1;margin-top:4px}
  .domc .d-num small{font-family:var(--ui);font-size:11.5px;font-weight:600;color:var(--ink-3);letter-spacing:0;margin-left:5px}
  .domc .d-st{font-size:12px;font-weight:700}
  .domc.st-ok .d-st{color:var(--green)} .domc.st-warn .d-st{color:var(--amber)} .domc.st-bad .d-st{color:var(--red)} .domc.st-none .d-st{color:var(--ink-3);font-weight:600}
  .domc.st-none{background:var(--surface-2);border-style:dashed} .domc.st-none .d-num{color:var(--ink-3)}
  @media(min-width:900px){#espace.with-side .domc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
  .domc .d-n{font-size:11.5px;color:var(--ink-3)}
  /* Bandeau de verdict : l'état de l'équipe en une phrase, puis la prochaine échéance */
  .cab-verdict{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px 16px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:16px 18px;background:var(--surface);margin:2px 0 4px}
  .cab-verdict .cv-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;background:var(--green)}
  .cab-verdict .cv-ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
  .cab-verdict.v-warn .cv-ic{background:var(--amber)} .cab-verdict.v-bad .cv-ic{background:var(--red)}
  .cab-verdict.v-warn{border-color:rgba(217,119,6,.35);background:rgba(217,119,6,.04)} .cab-verdict.v-bad{border-color:rgba(220,38,38,.35);background:rgba(220,38,38,.04)}
  .cab-verdict .cv-main{min-width:0}
  .cab-verdict .cv-main b{display:block;font-family:var(--display);font-size:19px;font-weight:800;letter-spacing:-.02em;line-height:1.15}
  .cab-verdict .cv-main span{display:block;font-size:13px;color:var(--ink-2);margin-top:4px}
  .cab-verdict .cv-att{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:700;color:var(--purple);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
  .cab-verdict .cv-next{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;padding-left:16px;border-left:1px solid var(--line)}
  .cab-verdict .cv-next small{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}
  .cab-verdict .cv-next b{font-family:var(--display);font-size:17px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
  .cab-verdict .cv-next span{font-size:12.5px;color:var(--ink-2)}
  .cab-verdict .cv-next .ech-j{margin-top:3px}
  .cab-sec{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:20px 0 0;padding-top:16px;border-top:1px solid var(--line-2)}
  .cab-sec b{font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:-.01em}
  .cab-sec span{font-size:12.5px;color:var(--ink-3)}
  .cab-note{font-size:12.5px;color:var(--ink-3);margin:10px 0 0}
  .ech-filters{display:flex;flex-wrap:wrap;gap:10px 22px;margin:12px 0 8px}
  .ech-fgroup{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .ech-fl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);flex:0 0 auto}
  .chip .chip-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px}
  .chip .chip-n{margin-left:6px;font-family:var(--mono);font-size:11px;opacity:.7}
  .cab-exports{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid var(--line-2)}
  .cab-exports-l{font-size:12.5px;font-weight:700;color:var(--ink-2);margin-right:4px}
  .cab-exports .cab-export{margin-left:0}
  #cabPrevPanel.cab-vide .cab-sec,#cabPrevPanel.cab-vide .domc-grid,#cabPrevPanel.cab-vide .cab-note,#cabPrevPanel.cab-vide .ech-filters,#cabPrevPanel.cab-vide #echList,#cabPrevPanel.cab-vide .cab-exports{display:none}
  @media(max-width:640px){
    .cab-verdict{grid-template-columns:auto minmax(0,1fr)}
    .cab-verdict .cv-next{grid-column:1/-1;border-left:none;border-top:1px solid var(--line);padding:12px 0 0;text-align:left;align-items:flex-start}
    .domc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  .cabm-lvl{font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px;letter-spacing:.02em;white-space:nowrap}
  .lvl-1{background:#f1eefb;color:var(--purple)}
  .lvl-2{background:rgba(22,163,74,.1);color:var(--green)}
  .cab-onb{text-align:center;padding:34px 20px;border:1.5px dashed rgba(93,15,232,.35);border-radius:16px;background:rgba(93,15,232,.03)}
  .cab-onb h4{font-size:19px;margin-bottom:8px}
  .cab-onb p{font-size:14px;color:var(--ink-2);max-width:460px;margin:0 auto 16px}
  .casr{display:flex;align-items:center;gap:12px;padding:11px 6px;border-bottom:1px solid var(--line-2);cursor:pointer;border-radius:10px}
  .casr:hover{background:rgba(93,15,232,.03)}
  .casr input[type=checkbox]{width:17px;height:17px;accent-color:var(--purple);flex:0 0 auto}
  .casr .c-id{flex:1;min-width:0}
  .casr .c-id b{display:block;font-size:14px}
  .casr .c-id span{font-size:12.5px;color:var(--ink-3)}
  .tick-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line-2);cursor:pointer}
  .tick-row:last-child{border-bottom:none}
  .tick-row .t-id{flex:1;min-width:0}
  .tick-row .t-id b{display:block;font-size:14px}
  .tick-row .t-id span{font-size:12.5px;color:var(--ink-3)}
  .tick-row:hover .t-id b{color:var(--purple)}
  .tick-st{font-size:11.5px;font-weight:700;border-radius:999px;padding:4px 10px;white-space:nowrap}
  .st-nouveau{background:rgba(93,15,232,.09);color:var(--purple)}
  .st-en_cours{background:rgba(217,119,6,.12);color:var(--amber)}
  .st-resolu{background:rgba(22,163,74,.1);color:var(--green)}
  .tick-msg{border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:10px;font-size:14px;white-space:pre-wrap}
  .tick-msg.mine{background:rgba(93,15,232,.05);border-color:rgba(93,15,232,.2)}
  .tick-msg .who{font-size:11.5px;color:var(--ink-3);font-weight:700;display:block;margin-bottom:4px}
  .wiz-cgv{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:var(--ink-2);margin-top:12px;cursor:pointer}
  .wiz-cgv input{width:16px;height:16px;accent-color:var(--purple);margin-top:1px;flex:0 0 auto}
  .wiz-cgv a{color:var(--purple);font-weight:600}
  .cabm-open{color:var(--purple)}
  .cabm-open:hover{background:rgba(93,15,232,.08)}
  .cabm-x{color:var(--ink-3)}
  .cabm-x:hover{color:var(--red);border-color:var(--red)}
  .manage-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:var(--grad);color:#fff;border-radius:16px;padding:14px 20px;margin-bottom:18px;font-size:14.5px}
  .manage-banner b{font-weight:700}
  .manage-banner button{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:9px;padding:8px 14px;font-family:var(--ui);font-size:13px;font-weight:600;cursor:pointer}
  .manage-banner button:hover{background:rgba(255,255,255,.26)}
  .cab-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:6px 0 18px}
  .fin-wrap{display:grid;gap:18px}
  .fin-split{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
  @media(max-width:900px){.fin-split{grid-template-columns:1fr}}
  .fin-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
  .fin-card h4{font-family:var(--display);font-size:15px;font-weight:700;margin:0 0 12px}
  .fin-leg{display:flex;flex-direction:column;gap:8px}
  .fin-leg .lg{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
  .fin-leg .lg i{width:10px;height:10px;border-radius:3px;flex:0 0 auto}
  .fin-leg .lg b{margin-left:auto;font-family:var(--mono);font-size:13px;color:var(--ink);font-weight:600}
  .fin-bar{height:8px;border-radius:99px;background:#EFECF7;overflow:hidden;margin-top:6px}
  .fin-bar i{display:block;height:100%;border-radius:99px;background:var(--grad)}
  .fin-row{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:13.5px}
  .fin-row:last-child{border:0}
  .fin-row .meta{font-size:12px;color:var(--ink-3)}
  .fin-row b.amt{font-family:var(--mono);font-weight:600;white-space:nowrap}
  .fin-tarif{display:grid;grid-template-columns:1fr 100px auto;gap:8px;align-items:center;margin-bottom:8px}
  .fin-tarif input{border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:13.5px;width:100%}
  .fin-tarif button{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-weight:600;font-size:12.5px;cursor:pointer}
  .fin-tarif button:hover{border-color:var(--purple);color:var(--purple)}
  .ob-montant-l{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--ink-2)}
  .ob-montant{border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-family:inherit;font-size:13.5px;width:110px}
  .ckpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:15px 16px}
  .ckpi-v{font-family:var(--display);font-weight:700;font-size:24px;letter-spacing:-.02em;line-height:1}
  .ckpi-k{font-size:11.5px;color:var(--ink-3);margin-top:5px}
  .ckpi.feat{background:var(--grad);color:#fff;border:none}
  .ckpi.feat .ckpi-k{color:rgba(255,255,255,.85)}
  .abo-opts{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
  .abo-btn{display:flex;flex-direction:column;gap:2px;align-items:center;border:1px solid var(--purple);background:var(--surface);border-radius:14px;padding:14px 26px;cursor:pointer;font-family:var(--ui);transition:all .25s var(--ease)}
  .abo-btn b{font-family:var(--display);font-size:22px;font-weight:700;color:var(--ink)}
  .abo-btn span{font-size:12px;color:var(--ink-3)}
  .abo-btn:hover{background:var(--grad);border-color:transparent}
  .abo-btn:hover b,.abo-btn:hover span{color:#fff}
  .cab-band{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;background:var(--grad);color:#fff;border-radius:26px;padding:40px 42px;box-shadow:var(--sh)}
  .cab-band-txt{max-width:62ch}
  .cab-band-txt h2{font-family:var(--display);font-weight:700;letter-spacing:-.03em;font-size:clamp(26px,3.4vw,38px);margin:10px 0 12px;line-height:1.05}
  .cab-band-txt p{color:rgba(255,255,255,.88);font-size:15.5px;line-height:1.6}
  .btn-light{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--ink);text-decoration:none;font-family:var(--ui);font-weight:600;font-size:15px;padding:14px 24px;border-radius:14px;white-space:nowrap;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
  .btn-light:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(0,0,0,.4)}
  .btn-light .ic{display:inline-flex}.btn-light .ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
  @media(max-width:680px){.cab-band{padding:30px 26px}}
  .hab-card{border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:12px;background:var(--surface)}
  .hab-card-h{display:flex;flex-direction:column;margin-bottom:12px}
  .hab-card-h b{font-family:var(--display);font-size:15.5px}
  .hab-card-h span{font-size:12.5px;color:var(--ink-3)}
  .hab-info{display:flex;flex-direction:column;gap:3px;font-size:13.5px;color:var(--ink-2);margin-bottom:12px}
  .hab-info b{color:var(--ink);font-weight:600}
  .hab-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
  .hab-acts button,.hab-addbtn{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:7px 13px;font-family:var(--ui);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .25s var(--ease)}
  .hab-addbtn{color:var(--purple);border-color:var(--purple)}
  .hab-addbtn:hover{background:rgba(93,15,232,.08)}
  .hab-edit{color:var(--ink-2)}.hab-edit:hover{color:var(--ink)}
  .hab-del{color:var(--ink-3)}.hab-del:hover{color:var(--red);border-color:var(--red)}
  .hab-file{font-size:12.5px;font-weight:600;color:var(--purple);text-decoration:underline;margin-right:4px}
  .hab-ode{background:var(--grad)!important;color:#fff!important;border:none!important}
  .hab-form{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .hab-form label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:600;color:var(--ink-2)}
  .hab-form input[type=date]{border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-family:var(--ui);font-size:14px}
  .hab-form .hf-filelbl{grid-column:1/-1}
  .hab-form .hf-btns{grid-column:1/-1;display:flex;gap:10px}
  .hf-save{background:var(--grad);color:#fff;border:none;border-radius:10px;padding:10px 18px;font-family:var(--ui);font-weight:600;font-size:13.5px;cursor:pointer}
  .hf-cancel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 16px;font-family:var(--ui);font-weight:600;font-size:13.5px;cursor:pointer;color:var(--ink-2)}
  @media(max-width:560px){.hab-form{grid-template-columns:1fr}}
  .chk-cta{display:none;align-items:center;gap:12px;flex-wrap:wrap;padding:0 16px 14px 46px;margin-top:-2px}
  .chk-item:not(.open) .chk-cta{display:flex}
  .chk-cta span{font-size:12.5px;color:var(--ink-2)}
  .chk-cta a,.chk-cta .ode-cta{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--purple);background:rgba(93,15,232,.07);border:1px solid rgba(93,15,232,.2);border-radius:999px;padding:6px 13px;text-decoration:none;cursor:pointer;font-family:inherit;transition:all .4s var(--ease)}
  .chk-cta a:hover,.chk-cta .ode-cta:hover{background:rgba(93,15,232,.12)}
  .chk-cta a svg,.chk-cta .ode-cta svg{width:13px;height:13px;stroke:currentColor;stroke-width:2;fill:none}
  .modal-ov{position:fixed;inset:0;z-index:90;background:rgba(21,16,31,.55);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}
  .modal{position:relative;background:var(--surface);border-radius:24px;box-shadow:var(--sh);width:100%;max-width:520px;padding:30px;max-height:92vh;overflow-y:auto;animation:popin .5s var(--ease)}
  @keyframes popin{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
  .modal-x{position:absolute;top:16px;right:18px;background:none;border:none;font-size:26px;line-height:1;color:var(--ink-3);cursor:pointer}
  .modal-t{font-family:var(--display);font-size:23px;font-weight:700;letter-spacing:-.02em;margin:12px 0 0}
  .ode-pos{font-size:13.5px;color:var(--ink-2);line-height:1.55;margin:10px 0 16px}
  .ode-prices{display:flex;flex-direction:column;background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:2px 16px;margin-bottom:18px}
  .ode-prices div{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line-2)}
  .ode-prices div:first-child{border-top:none}
  .ode-prices b{font-family:var(--display);font-size:16px;color:var(--purple);margin-left:auto;white-space:nowrap;flex:0 0 auto}
  .ode-prices span{font-size:13px;color:var(--ink-2);line-height:1.45}
  .ode-el{font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--green);background:var(--green-tint);padding:4px 9px;border-radius:999px;flex:0 0 auto}
  .ode-el.p{color:var(--amber);background:var(--amber-tint)}
  .ode-rythme{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
  .ode-rythme span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:6px 12px}
  .ode-rythme svg{width:13px;height:13px;stroke:var(--purple);stroke-width:2;fill:none}
  .ode-info{width:18px;height:18px;border-radius:999px;border:1.5px solid var(--purple);color:var(--purple);background:none;font-size:11px;font-weight:800;font-family:var(--ui);cursor:pointer;line-height:1;vertical-align:middle;margin-left:5px;padding:0}
  .ode-info-pop{font-size:12.5px;color:var(--ink-2);background:var(--brand-tint);border:1px solid rgba(93,15,232,.18);border-radius:12px;padding:10px 12px;margin:8px 0 2px;line-height:1.5}
  .ode-ss4{margin:12px 0 2px}
  .ode-ss4-h{display:flex;align-items:center;justify-content:space-between;font-family:var(--display);font-weight:700;font-size:13px;margin-bottom:6px}
  .ode-ss4-h span{font-family:var(--ui);font-weight:600;font-size:11px;color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:3px 9px}
  .ode-idf-toggle{display:block;width:100%;margin:12px 0 4px;background:none;border:1px dashed rgba(93,15,232,.32);color:var(--purple);border-radius:10px;padding:9px;font-family:var(--ui);font-weight:600;font-size:12.5px;cursor:pointer}
  .enjeu{max-width:760px;margin:0 auto;text-align:center}
  .enjeu-big{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:clamp(22px,3.4vw,34px);line-height:1.22;color:var(--ink)}
  .enjeu-sub{margin-top:14px;color:var(--ink-2);font-size:15px;line-height:1.6}
  .ode-l{display:block;font-size:12px;font-weight:600;color:var(--ink-3);margin-bottom:12px}
  .ode-checks{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;margin:8px 0 4px}
  .ode-checks label{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer;padding:7px 10px;border:1px solid var(--line);border-radius:10px;transition:border-color .2s var(--ease),background .2s var(--ease)}
  .ode-checks label:hover{border-color:var(--purple)}
  .ode-checks input{width:16px;height:16px;accent-color:var(--purple);flex:0 0 auto}
  .ode-checks label:has(input:checked){border-color:var(--purple);background:rgba(93,15,232,.06)}
  @media(max-width:560px){.ode-checks{grid-template-columns:1fr}}
  .ode-l input,.ode-l textarea{display:block;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-family:var(--ui);font-size:14px;color:var(--ink);background:var(--surface)}
  .ode-row{display:flex;gap:12px}.ode-row .ode-l{flex:1}
  .ode-send{margin-top:6px;width:100%;justify-content:center}
  .ode-done{text-align:center;padding:14px 0}
  .ode-check{width:54px;height:54px;border-radius:999px;background:var(--grad);display:grid;place-items:center;margin:0 auto 14px}
  .ode-check svg{width:26px;height:26px;stroke:#fff;stroke-width:3;fill:none}
  .ode-done p{color:var(--ink-2);font-size:14px;margin:8px 0 20px}
  .btn-light2{background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:11px 22px;font-family:var(--ui);font-weight:600;font-size:14px;cursor:pointer;color:var(--ink)}
  @media(max-width:760px){.doors{grid-template-columns:1fr}}

  /* ANNUAIRE : carte de France + chiffres */
  .annu-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:24px;margin-top:46px;align-items:stretch}
  .annu-map{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:clamp(18px,3vw,32px);box-shadow:var(--sh);overflow:hidden}
  .annu-map::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 50% at 28% 18%,rgba(93,15,232,.07),transparent 70%),radial-gradient(50% 45% at 82% 82%,rgba(47,128,237,.06),transparent 70%)}
  .annu-map svg{width:100%;max-width:430px;height:auto;display:block;position:relative;margin:0 auto}
  /* Teaser des classements : rangées floutées + accès premium gratuit */
  .annu-tease{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px;min-height:208px}
  .tz{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px 18px;box-shadow:var(--sh-sm)}
  .tz h3{font-family:var(--display);font-size:14px;margin-bottom:8px}
  .tz-rows{filter:blur(4px);pointer-events:none;user-select:none;opacity:.8}
  .tz-row{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:13px;border-top:1px solid var(--line-2)}
  .tz-row:first-child{border-top:none}
  .tz-row .medal{flex:0 0 auto;font-size:14px}
  .tz-row b{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .tz-row i{font-style:normal;font-family:var(--mono);font-size:11.5px;color:var(--purple)}
  .tz-cta{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;padding:16px;background:linear-gradient(180deg,rgba(251,250,255,.12),rgba(251,250,255,.88) 62%,rgba(251,250,255,.96));border-radius:20px}
  .tz-lock{width:38px;height:38px;border-radius:12px;background:var(--grad);display:grid;place-items:center}
  .tz-lock svg{width:18px;height:18px;stroke:#fff;stroke-width:2;fill:none}
  .tz-cta b{font-family:var(--display);font-size:17px}
  .tz-cta .txt{font-size:13px;color:var(--ink-2);max-width:46ch}
  .tz-cta .btn{margin-top:4px}
  @media(max-width:760px){.annu-tease{grid-template-columns:1fr 1fr}.tz:nth-child(3){display:none}}
  @media(max-width:520px){.annu-tease{grid-template-columns:1fr}.tz:nth-child(2){display:none}}
  .fr-dep{fill:url(#frFill);stroke:#fff;stroke-width:1.2;stroke-linejoin:round;transition:fill .2s var(--ease)}
  a:hover>.fr-dep{fill:#DCCBFA}
  .fr-spot .fr-dot{fill:url(#frDotGrad);stroke:#fff;stroke-width:2.6;transition:opacity .3s var(--ease)}
  .fr-spot .fr-halo{fill:rgba(93,15,232,.13);animation:frpulse 3s var(--ease) infinite}
  .fr-spot:hover .fr-dot{opacity:.75}
  @keyframes frpulse{0%,100%{opacity:.45}50%{opacity:1}}
  .fr-lbl{font-family:var(--display);font-size:23px;font-weight:600;fill:var(--ink-2);pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round}
  .annu-side{display:flex;flex-direction:column;gap:14px}
  .annu-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .annu-stat{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px 22px 17px;box-shadow:var(--sh-sm)}
  .annu-stat b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(26px,3vw,36px);letter-spacing:-.03em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .annu-stat span{font-size:13px;color:var(--ink-2);font-weight:600}
  .annu-cta{margin-top:auto}
  .annu-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
  @media(max-width:900px){.annu-grid{grid-template-columns:1fr}}
  @media(max-width:520px){.annu-stats{grid-template-columns:1fr 1fr;gap:10px}.annu-stat{padding:15px 16px 13px}}

  /* MARQUEE */
  .marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);overflow:hidden;margin-top:50px;padding:14px 0}
  .marquee .track{display:flex;gap:46px;white-space:nowrap;width:max-content;animation:scroll 26s linear infinite}
  .marquee span{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:center;gap:46px}
  .marquee span::after{content:"";width:6px;height:6px;border-radius:999px;background:var(--grad)}
  @keyframes scroll{to{transform:translateX(-50%)}}

  /* RESULTS */
  .results{padding:54px 0 30px;display:none}
  .results.show{display:block}
  .res-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px;padding:22px 26px;border-radius:22px;
    background:linear-gradient(120deg,rgba(93,15,232,.07),rgba(47,128,237,.07));border:1px solid rgba(93,15,232,.22);box-shadow:var(--sh-sm)}
  .res-cta-ic{width:46px;height:46px;border-radius:14px;background:var(--grad);display:grid;place-items:center;flex:0 0 auto}
  .res-cta-ic svg{width:22px;height:22px;stroke:#fff;stroke-width:1.8;fill:none}
  .res-cta-txt{flex:1;min-width:240px}
  .res-cta-txt b{font-family:var(--display);font-size:16.5px;display:block;margin-bottom:3px}
  .res-cta-txt span{font-size:14px;color:var(--ink-2);line-height:1.55}
  .res-cta .btn{flex:0 0 auto}
  .results-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:26px}
  .results-head h2{font-family:var(--display);font-weight:700;font-size:clamp(26px,4vw,40px);letter-spacing:-.03em}
  .results-head .sub{font-size:14px;color:var(--ink-2);margin-top:6px}
  .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}

  /* status card (signature) */
  .card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:var(--sh-sm);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
  .card:hover{transform:translateY(-4px);box-shadow:var(--sh)}
  .card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
  .domaine{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em}
  .certif{font-size:12.5px;color:var(--ink-3);margin-top:3px}
  .cert-since{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-2);margin-top:14px}
  .cert-since b{font-weight:600;color:var(--ink)}
  .cert-since .cy{font-size:11.5px;font-weight:600;color:var(--purple);background:rgba(93,15,232,.09);padding:4px 10px;border-radius:999px;white-space:nowrap}
  .pill{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:999px;white-space:nowrap}
  .pill.ok{background:var(--green-tint);color:var(--green)} .pill.soon{background:var(--amber-tint);color:var(--amber)} .pill.exp{background:var(--red-tint);color:var(--red)}
  .gauge{margin:18px 0 4px;height:6px;border-radius:999px;background:var(--line-2);overflow:hidden}
  .gauge i{display:block;height:100%;border-radius:999px;transition:width 1s var(--ease)}
  .meta{display:flex;align-items:flex-end;justify-content:space-between;margin-top:14px}
  .meta .date{font-size:12.5px;color:var(--ink-2)} .meta .date b{display:block;font-family:var(--mono);font-size:14px;color:var(--ink);font-weight:500;margin-top:2px}
  .meta .days{text-align:right} .meta .days .n{font-family:var(--mono);font-size:27px;font-weight:500;letter-spacing:-.02em;line-height:1} .meta .days .l{font-size:11px;color:var(--ink-3);margin-top:3px}
  .card-actions{display:flex;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line-2)}
  .mini{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:12px;padding:11px;font-size:13px;font-weight:700;transition:transform .3s var(--ease),background .3s var(--ease)}
  .mini svg{width:15px;height:15px;stroke-width:1.6;fill:none}
  .mini.primary{background:var(--grad);background-size:140% 140%;color:#fff}.mini.primary svg{stroke:#fff}.mini.primary:hover{background-position:100% 0}
  .mini.sec{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}.mini.sec svg{stroke:var(--ink)}.mini.sec:hover{background:#fff}.mini:active{transform:scale(.97)}

  /* SECTIONS */
  section.block{padding:clamp(70px,10vh,112px) 0}
  .sec-head{max-width:60ch}
  .sec-head h2{font-family:var(--display);font-weight:700;letter-spacing:-.04em;line-height:1.02;font-size:clamp(32px,5.5vw,60px);margin-top:18px}
  .sec-head p{color:var(--ink-2);font-size:17px;margin-top:18px;line-height:1.6}
  .features{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:48px}
  .feat{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--sh-sm)}
  .feat-wide{grid-column:1/-1;display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:linear-gradient(120deg,rgba(93,15,232,.06),rgba(47,128,237,.05)),var(--surface);border-color:rgba(93,15,232,.22)}
  .feat-wide .fic{margin-bottom:0;flex:0 0 auto}
  .feat-wide .fw-txt{flex:1;min-width:260px}
  .feat-wide .fw-pill{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--purple);background:rgba(93,15,232,.1);border-radius:999px;padding:4px 11px;margin-bottom:8px}
  .feat-wide .btn{flex:0 0 auto}
  .feat .fic{width:46px;height:46px;border-radius:14px;background:var(--grad);display:grid;place-items:center;margin-bottom:18px;box-shadow:inset 0 1px 1px rgba(255,255,255,.3)}
  .feat .fic svg{width:21px;height:21px;stroke:#fff;stroke-width:1.5;fill:none}
  .feat h3{font-family:var(--display);font-size:19px;font-weight:700;letter-spacing:-.02em}
  .feat p{font-size:14px;color:var(--ink-2);margin-top:9px;line-height:1.55}

  /* CONVERSION */
  .convert{background:var(--ink);color:#fff;border-radius:32px;padding:clamp(38px,5vw,68px);position:relative;overflow:hidden;box-shadow:var(--sh-lg)}
  .convert::before{content:"";position:absolute;top:-50%;right:-12%;width:55%;height:180%;pointer-events:none;background:radial-gradient(circle,rgba(93,15,232,.6),transparent 60%)}
  .convert::after{content:"";position:absolute;bottom:-40%;left:-8%;width:45%;height:140%;pointer-events:none;background:radial-gradient(circle,rgba(47,128,237,.5),transparent 62%)}
  .convert>*{position:relative;z-index:1}
  .convert .eyebrow{color:rgba(255,255,255,.82)}
  .convert h2{font-family:var(--display);font-weight:700;letter-spacing:-.04em;font-size:clamp(30px,4.6vw,52px);margin-top:20px;line-height:1.02;max-width:18ch}
  .convert p{color:rgba(255,255,255,.72);max-width:46ch;margin-top:16px;font-size:16px;line-height:1.6}
  .convert-grid{display:grid;grid-template-columns:1fr;gap:30px}
  @media(min-width:900px){.convert-grid{grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}}
  .convert-aside{border-top:1px solid rgba(255,255,255,.12);padding-top:24px}
  @media(min-width:900px){.convert-aside{border-top:none;border-left:1px solid rgba(255,255,255,.12);padding:6px 0 6px 44px}}
  .convert-aside h3{font-family:var(--display);font-weight:700;font-size:19px;color:#fff;margin-bottom:16px;letter-spacing:-.01em}
  .conv-benefits{list-style:none;display:flex;flex-direction:column;gap:14px;margin:0;padding:0}
  .conv-benefits li{display:flex;gap:12px;align-items:flex-start;color:rgba(255,255,255,.82);font-size:14.5px;line-height:1.5}
  .conv-benefits li b{color:#fff;font-weight:700}
  .conv-benefits .cb-ic{flex:none;width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.12);display:grid;place-items:center;margin-top:1px}
  .conv-benefits .cb-ic svg{width:13px;height:13px;stroke:#fff;stroke-width:2.4;fill:none}
  .ml-form{display:flex;gap:8px;margin-top:30px;max-width:500px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:7px;flex-wrap:wrap}
  .ml-form input{flex:1;min-width:180px;border:none;outline:none;background:none;color:#fff;font-family:var(--ui);font-size:15px;padding:13px 16px}
  .ml-form input::placeholder{color:rgba(255,255,255,.45)}
  .ml-form button{background:#fff;color:var(--ink);border-radius:11px;padding:13px 22px;font-weight:700;font-size:15px;transition:transform .4s var(--ease)}
  .ml-form button:active{transform:scale(.97)}
  .signup-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px;max-width:560px}
  .signup-form input,.signup-form select{border:1px solid rgba(255,255,255,.16);outline:none;background:rgba(255,255,255,.07);color:#fff;font-family:var(--ui);font-size:15px;padding:13px 15px;border-radius:12px}
  .signup-form input::placeholder{color:rgba(255,255,255,.45)}
  .signup-form select{color:#fff}
  .signup-form select option{color:#15101f;background:#fff}
  .signup-form select option[value=""]{color:#857e92}
  .signup-form input:focus,.signup-form select:focus{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.1)}
  .signup-form .su-wide{grid-column:1 / -1}
  .signup-form button{background:#fff;color:var(--ink);border-radius:12px;padding:14px 22px;font-weight:700;font-size:15px;transition:transform .4s var(--ease)}
  .signup-form button:active{transform:scale(.99)}
  .su-switch{display:flex;gap:6px;margin-top:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:5px;max-width:560px}
  .su-tab{flex:1;border:0;background:transparent;color:rgba(255,255,255,.7);font-family:var(--ui);font-weight:600;font-size:14px;padding:11px 10px;border-radius:10px;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease)}
  .su-tab.on{background:#fff;color:var(--ink)}
  .signup-form{margin-top:16px}
  @media(max-width:560px){.signup-form{grid-template-columns:1fr}}
  .launch-banner{position:fixed;top:0;left:0;right:0;z-index:60;background:var(--ink);color:#fff;font-size:12.5px;font-weight:600;text-align:center;padding:9px 18px;line-height:1.45}
  .launch-banner b{color:#fff;font-weight:800}
  .launch-banner .lb-n{background:var(--grad);padding:1px 9px;border-radius:999px;font-family:var(--mono);font-weight:600}
  .launch-banner.paid{background:var(--grad)}
  .launch-banner a{color:#fff;text-decoration:underline;text-underline-offset:2px}
  .wa-float{position:fixed;right:18px;bottom:18px;z-index:70;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.22);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
  .wa-float:hover{transform:scale(1.07);box-shadow:0 14px 32px rgba(0,0,0,.28)}
  .wa-float svg{width:30px;height:30px;fill:#fff}
  .wa-float::after{content:"Une question ?";position:absolute;right:70px;white-space:nowrap;background:var(--ink);color:#fff;font-size:13px;font-weight:600;padding:7px 12px;border-radius:10px;opacity:0;transform:translateX(6px);transition:opacity .25s var(--ease),transform .25s var(--ease);pointer-events:none}
  .wa-float:hover::after{opacity:1;transform:translateX(0)}
  @media(max-width:600px){.wa-float{right:14px;bottom:14px;width:54px;height:54px}.wa-float::after{display:none}}
  /* .help-float retiré le 06/08/2026 : fusionné dans le widget assistance */
  .help-modal{position:fixed;inset:0;z-index:95;background:rgba(20,12,35,.45);backdrop-filter:blur(3px);display:none;align-items:flex-end;justify-content:flex-end;padding:20px}
  .help-modal.show{display:flex}
  .help-card{background:#fff;border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.3);width:min(380px,100%);padding:22px;max-height:90vh;overflow:auto;animation:helpIn .3s var(--ease)}
  @keyframes helpIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
  .help-card h3{margin:0 0 4px;font-family:var(--display);font-size:19px;letter-spacing:-.02em}
  .help-card .sub{margin:0 0 14px;color:var(--ink-2);font-size:13.5px;line-height:1.5}
  .help-card input,.help-card textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:11px 13px;font-family:inherit;font-size:14px;margin-bottom:9px;box-sizing:border-box;color:var(--ink)}
  .help-card textarea{min-height:92px;resize:vertical}
  .help-row{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:4px}
  .help-send{background:var(--grad);color:#fff;border:0;border-radius:11px;padding:11px 22px;font-weight:700;cursor:pointer;font-family:inherit}
  .help-x{background:none;border:0;color:var(--ink-2);cursor:pointer;font-size:14px;font-family:inherit;padding:8px}
  @media(max-width:600px){.help-modal{align-items:center;justify-content:center}}
  .about{max-width:740px;margin:0 auto;text-align:center}
  .about h2{font-family:var(--display);font-weight:700;letter-spacing:-.03em;font-size:clamp(26px,3.6vw,40px);margin-top:14px}
  .about p{font-size:17px;color:var(--ink-2);line-height:1.75;margin-top:18px}
  .about .about-em{font-family:var(--display);font-weight:600;color:var(--ink);font-size:clamp(18px,2.4vw,21px);margin-top:26px;display:block}
  .audit-url{font-size:14px;color:var(--ink-2);margin-bottom:14px}
  .audit-loading{text-align:center;padding:30px 0}
  .audit-spin{width:42px;height:42px;border-radius:999px;border:3px solid var(--line);border-top-color:var(--purple);margin:0 auto 16px;animation:aspin .8s linear infinite}
  @keyframes aspin{to{transform:rotate(360deg)}}
  .audit-loading p{font-size:14px;color:var(--ink-2);font-family:var(--mono)}
  .audit-list{display:flex;flex-direction:column;gap:10px;margin:6px 0 4px}
  .audit-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;border:1px solid var(--line)}
  .audit-item.ok{background:rgba(34,197,94,.06);border-color:rgba(34,197,94,.2)}
  .audit-item.ko{background:rgba(239,68,68,.05);border-color:rgba(239,68,68,.18)}
  .audit-item .ai-ic{flex-shrink:0;width:22px;height:22px;border-radius:999px;display:grid;place-items:center}
  .audit-item.ok .ai-ic{background:var(--green)} .audit-item.ko .ai-ic{background:var(--red)}
  .audit-item .ai-ic svg{width:13px;height:13px;stroke:#fff;stroke-width:3;fill:none}
  .ai-main b{font-size:14px;font-weight:600;display:block} .ai-main span{font-size:12.5px;color:var(--ink-2);display:block;margin-top:2px;line-height:1.5}
  .audit-score{display:flex;align-items:center;gap:18px;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:16px}
  .as-ring{--p:0;--c:var(--purple);position:relative;width:72px;height:72px;border-radius:999px;flex-shrink:0;display:grid;place-items:center;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--line) 0)}
  .as-ring::before{content:"";position:absolute;width:56px;height:56px;border-radius:999px;background:var(--surface-2)}
  .as-ring span{position:relative;font-family:var(--mono);font-size:18px;font-weight:600}
  .as-txt b{font-family:var(--display);font-size:15px;font-weight:700} .as-txt span{display:block;font-size:12.5px;color:var(--ink-2);margin-top:3px;line-height:1.5}
  .audit-cta{margin-top:18px;background:var(--ink);color:#fff;border-radius:16px;padding:20px}
  .audit-cta p{font-size:14.5px;line-height:1.5;margin-bottom:14px}
  .audit-cta-btns{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
  .audit-cta .btn{background:#fff;color:var(--ink)}
  .audit-cta .link2{color:#fff}
  .audit-nosite p{font-size:14px;color:var(--ink-2);margin-bottom:8px}
  .foot-legal{display:inline-flex;flex-wrap:wrap;gap:10px 16px;margin-left:18px}
  .foot-legal a{font-size:12.5px;color:var(--ink-3)}
  /* Mobile : les 6 liens légaux tenaient sur une seule ligne et élargissaient toute la page */
  @media(max-width:640px){.foot-legal{margin-left:0;margin-top:10px}.foot .credit{display:block}}
  .cookie-bar{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);z-index:70;max-width:min(680px,92vw);display:flex;align-items:center;gap:14px;background:var(--ink);color:#fff;border-radius:14px;padding:12px 16px;box-shadow:0 12px 40px rgba(0,0,0,.25);font-size:12.5px;line-height:1.45}
  .cookie-bar a{color:#fff;text-decoration:underline}
  .cookie-bar button{flex-shrink:0;background:#fff;color:var(--ink);border-radius:9px;padding:8px 16px;font-weight:700;font-size:12.5px}
  @media(max-width:520px){.cookie-bar{flex-direction:column;align-items:stretch;text-align:center;gap:10px}}
  .ml-note{font-size:12px;color:rgba(255,255,255,.5);margin-top:12px}

  /* ESPACE VIEW */
  #espace{display:none;padding:clamp(112px,16vh,150px) 0 80px}
  #espace.show{display:block}
  .esp-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
  .esp-id{display:flex;align-items:center;gap:14px}
  .avatar{width:52px;height:52px;border-radius:16px;background:var(--grad);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:20px;box-shadow:inset 0 1px 1px rgba(255,255,255,.3)}
  .esp-id h2{font-family:var(--display);font-weight:700;font-size:27px;letter-spacing:-.03em}
  .esp-id .em{font-size:13px;color:var(--ink-3);font-family:var(--mono)}
  .panel{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:var(--sh-sm);margin-top:30px}
  /* Rappel réglementaire discret (replié par défaut) */
  .reg-note{margin:12px 0 4px;border:1px dashed var(--line);border-radius:14px;padding:0 16px;background:var(--surface-2)}
  .reg-note summary{display:flex;align-items:center;gap:9px;padding:11px 0;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;list-style:none}
  .reg-note summary::-webkit-details-marker{display:none}
  .reg-note summary svg{width:15px;height:15px;stroke:var(--purple);stroke-width:1.8;fill:none;flex:0 0 auto}
  .reg-note[open] summary{border-bottom:1px dashed var(--line)}
  .reg-note ul{margin:12px 0 10px;padding-left:18px;display:flex;flex-direction:column;gap:7px}
  .reg-note li{font-size:13px;color:var(--ink-2);line-height:1.55}
  .reg-note li b{color:var(--ink)}
  .reg-note>p{font-size:12px;color:var(--ink-3);line-height:1.55;padding-bottom:12px;margin:0}
  .panel-h{display:flex;align-items:center;gap:10px;margin-bottom:6px}
  .panel-h h3{font-family:var(--display);font-size:18px;font-weight:700;letter-spacing:-.02em}
  .panel-h .count{font-family:var(--mono);font-size:12px;color:var(--purple);background:var(--surface-2);padding:2px 9px;border-radius:999px}
  .panel-h .hint{font-size:12.5px;color:var(--ink-3);margin-left:auto}
  /* 15/09/2026 : sous 600 px le titre se cassait en deux (« À / prévoir ») pour laisser
     la place à l'indication ; elle passe dessous, le titre reste entier. */
  @media(max-width:600px){.panel-h{flex-wrap:wrap}.panel-h .hint{flex-basis:100%;margin-left:0}}
  .row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line-2)}
  .row:last-child{border-bottom:none}
  .row .tag{width:9px;height:9px;border-radius:999px;flex-shrink:0}
  .row .rt{flex:1;min-width:0}.row .rt b{font-size:14.5px;font-weight:600}.row .rt span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px}
  .row .rv{font-family:var(--mono);font-size:13px;color:var(--ink-2);text-align:right;white-space:nowrap}
  .empty{text-align:center;padding:30px 16px;color:var(--ink-3);font-size:13.5px}
  .fc-attach{color:var(--purple)}
  .fc-form{display:grid;grid-template-columns:1fr 1.5fr .9fr .55fr .6fr auto;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line-2)}
  .fc-form input,.fc-form select{border:1px solid var(--line);background:var(--surface-2);border-radius:11px;padding:11px 13px;font-family:var(--ui);font-size:13.5px;outline:none;min-width:0;color:var(--ink)}
  .fc-form input:focus,.fc-form select:focus{border-color:var(--purple)}
  .fc-form #fcTitle{grid-column:1/4}
  .fc-form .file{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);grid-column:4/-1;cursor:pointer}
  /* Cartes de suivi des formations (code couleur par domaine) */
  .fc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
  .fcc{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--fcc,#5D0FE8);border-radius:14px;padding:14px 16px}
  .fcc-dom{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--fcc,#5D0FE8);display:block;margin-bottom:4px}
  .fcc b{display:block;font-family:var(--display);font-size:14px;letter-spacing:-.01em}
  .fcc-meta{font-size:12.5px;color:var(--ink-2);margin-top:6px;line-height:1.55}
  .fcc-meta a{color:var(--purple);font-weight:600}
  .fcc-ech{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;color:var(--green);background:var(--green-tint);border-radius:999px;padding:3px 10px;margin-top:9px}
  .fc-form .add{background:var(--grad);color:#fff;border-radius:11px;padding:11px 18px;font-weight:700;font-size:13.5px;transition:transform .3s var(--ease)}
  .fc-form .add:active{transform:scale(.96)}
  .tl{position:relative;padding-left:24px}
  .tl::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1.5px;background:var(--line)}
  .tl-item{position:relative;padding:10px 0}
  .tl-item::before{content:"";position:absolute;left:-23px;top:14px;width:11px;height:11px;border-radius:999px;background:var(--surface);border:2px solid var(--purple)}
  .tl-item.amber::before{border-color:var(--amber)}.tl-item.red::before{border-color:var(--red)}
  .tl-item b{font-size:13.5px;font-weight:600}.tl-item span{font-size:12.5px;color:var(--ink-3);display:block;margin-top:2px}
  .tl-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
  .tl-pill{font-family:var(--ui);font-size:11px;font-weight:700;white-space:nowrap}
  .next-step{margin-top:14px;font-size:12px;color:var(--ink-2);display:flex;align-items:center;gap:7px;flex-wrap:wrap;line-height:1.5}
  .next-step .ns-tag{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);background:var(--surface-2);border:1px solid var(--line);padding:3px 8px;border-radius:999px}
  .disclaimer{font-size:12px;color:var(--ink-3);line-height:1.5;margin:8px 0 18px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px}
  details.cert-group{border:1px solid var(--line);border-radius:16px;margin-top:12px;overflow:hidden;background:var(--surface-2)}
  details.cert-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.01em}
  details.cert-group summary::-webkit-details-marker{display:none}
  .cg-prog{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;color:var(--ink-2);font-weight:400}
  .cg-bar{width:70px;height:5px;border-radius:999px;background:var(--line);overflow:hidden}
  .cg-bar i{display:block;height:100%;border-radius:999px;background:var(--grad);transition:width .5s var(--ease)}
  .checklist{padding:2px 10px 12px}
  .chk-row{width:100%;display:flex;align-items:center;gap:13px;padding:12px 8px;border-radius:11px;text-align:left;background:none;border:none;border-top:1px solid var(--line-2);transition:background .25s var(--ease)}
  .chk-row:first-child{border-top:none}
  .chk-row:hover{background:var(--surface)}
  .chk-box{width:24px;height:24px;border-radius:8px;border:1.6px solid var(--line);background:var(--surface);display:grid;place-items:center;flex-shrink:0;transition:background .25s var(--ease),border-color .25s var(--ease)}
  .chk-box svg{width:14px;height:14px;stroke:#fff;stroke-width:2.4;fill:none;opacity:0;transition:opacity .2s var(--ease)}
  .chk-row.done .chk-box{background:var(--grad);border-color:transparent}
  .chk-row.done .chk-box svg{opacity:1}
  .chk-main{flex:1;min-width:0}
  .chk-main b{font-size:14px;font-weight:600;display:block}
  .chk-row.done .chk-main b{color:var(--ink-2)}
  .chk-main span{font-size:12px;color:var(--ink-3);display:block;margin-top:2px}
  .chk-status{font-size:11.5px;font-weight:700;color:var(--ink-3);white-space:nowrap}
  .chk-row.done .chk-status{color:var(--green)}
  .chk-row.late .chk-status{color:var(--red)}
  .chk-item{border-top:1px solid var(--line-2)}
  .chk-item:first-child{border-top:none}
  .chk-item .chk-row{border-top:none}
  .chk-detail{display:none;padding:2px 10px 16px 46px}
  .chk-item.open .chk-detail{display:block}
  .ob-detail-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
  .ob-date-l{font-size:12px;color:var(--ink-3);display:inline-flex;align-items:center;gap:8px;font-weight:600}
  .ob-date{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-family:var(--ui);font-size:13px;color:var(--ink)}
  .ob-up{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:12.5px;font-weight:700;color:var(--purple);background:rgba(93,15,232,.08);border:1px solid rgba(93,15,232,.2);border-radius:8px;padding:8px 13px}
  .ob-file-link{font-size:12.5px;color:var(--green);font-weight:700;text-decoration:underline}
  .ob-replace{font-size:12px;color:var(--ink-3);background:none;border:none;text-decoration:underline;cursor:pointer;margin-left:10px;font-family:inherit}
  #oblPanel{background:var(--surface-2)}
  .oblc{background:#fff;border:1px solid var(--line);border-radius:16px;margin-top:12px;overflow:hidden;box-shadow:0 1px 2px rgba(21,16,31,.04),0 8px 22px -10px rgba(21,16,31,.20);transition:border-color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
  .oblc:hover{border-color:rgba(93,15,232,.30);transform:translateY(-2px);box-shadow:var(--sh)}
  .oblc-row{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;background:none;border:none;border-top:none;text-align:left;cursor:pointer;font-family:inherit}
  .oblc-ic{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center}
  .oblc-ic svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .oblc-ic.s-late{background:rgba(214,69,59,.10)}.oblc-ic.s-late svg{stroke:var(--red)}
  .oblc-ic.s-soon{background:rgba(201,130,11,.12)}.oblc-ic.s-soon svg{stroke:var(--amber)}
  .oblc-ic.s-upc{background:var(--surface-2)}.oblc-ic.s-upc svg{stroke:var(--ink-2)}
  .oblc-ic.s-ok{background:rgba(24,160,88,.12)}.oblc-ic.s-ok svg{stroke:var(--green)}
  .oblc-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
  .oblc-main b{font-size:15px;font-weight:700;color:var(--ink);letter-spacing:-.01em}
  .oblc-main span{font-size:12.5px;color:var(--ink-3)}
  .oblc-row.done .oblc-main b{color:var(--ink-2);text-decoration:line-through}
  .oblc-pill{flex:0 0 auto;font-size:12px;font-weight:700;padding:5px 12px;border-radius:999px;white-space:nowrap}
  .oblc-pill.s-late{background:rgba(214,69,59,.12);color:var(--red)}
  .oblc-pill.s-soon{background:rgba(201,130,11,.14);color:var(--amber)}
  .oblc-pill.s-upc{background:var(--surface-2);color:var(--ink-2)}
  .oblc-pill.s-ok{background:rgba(24,160,88,.14);color:var(--green)}
  .oblc-act{flex:0 0 auto;font-size:13px;font-weight:700;color:var(--purple);border:1.5px solid rgba(93,15,232,.25);border-radius:10px;padding:8px 14px;white-space:nowrap;transition:all .25s var(--ease)}
  .oblc-row:hover .oblc-act{background:rgba(93,15,232,.07)}
  .oblc-row.done .oblc-act{color:var(--ink-3);border-color:var(--line);font-weight:600}
  .oblc .chk-detail{display:none;padding:0 16px 14px 72px}
  .oblc.open .chk-detail{display:block}
  .oblc .chk-cta{padding:2px 16px 14px 72px}
  @media(max-width:600px){.oblc-row{flex-wrap:wrap;gap:10px}.oblc-main{flex-basis:60%}.oblc-act{order:5;margin-left:56px}.oblc .chk-detail,.oblc .chk-cta{padding-left:16px}}
  .people-list{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}
  .person-row{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--sh-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
  .person-row:hover{transform:translateY(-2px);box-shadow:var(--sh)}
  .person-row .pr-main b{font-size:15px;font-weight:700}
  .person-row .pr-main span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px}
  .person-row .pr-go{font-size:13px;font-weight:700;color:var(--purple);white-space:nowrap;display:flex;align-items:center;gap:6px}
  .people-hint{font-size:13px;color:var(--ink-2);margin-bottom:14px}
  .rm-toggle{width:100%;margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:11px;font-size:13.5px;font-weight:700;color:var(--ink);transition:background .3s var(--ease)}
  .rm-toggle:hover{background:#fff}
  .rm-toggle svg{width:16px;height:16px;stroke:var(--ink-2);stroke-width:2;fill:none;transition:transform .4s var(--ease)}
  .card.rm-open .rm-toggle svg{transform:rotate(180deg)}
  .roadmap{max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
  .rm-list{padding-top:14px}
  .rm-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line-2)}
  .rm-item:first-child{border-top:none}
  .rm-item.past{opacity:.5}
  .rm-dot{width:9px;height:9px;border-radius:999px;flex-shrink:0;background:var(--ink-3)}
  .rm-dot.t-fc{background:var(--purple)} .rm-dot.t-doc{background:var(--blue)}
  .rm-dot.t-situ,.rm-dot.t-ouvrage{background:var(--amber)} .rm-dot.t-renew{background:var(--ink)}
  .rm-main{flex:1;min-width:0}.rm-main b{font-size:13.5px;font-weight:600;display:block}.rm-main span{font-size:11.5px;color:var(--ink-3)}
  .rm-when{font-family:var(--mono);font-size:12.5px;color:var(--ink-2);white-space:nowrap}
  .rm-lock{margin-top:14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--brand-tint);border:1px solid rgba(93,15,232,.18);border-radius:14px;padding:14px 16px}
  .rm-lock>svg{width:22px;height:22px;stroke:var(--purple);stroke-width:1.6;fill:none;flex-shrink:0}
  .rm-lock>div{flex:1;min-width:160px}.rm-lock b{font-size:13.5px;display:block}.rm-lock span{font-size:12px;color:var(--ink-2);display:block;margin-top:2px}
  .rm-cta{background:var(--grad);color:#fff;font-weight:700;font-size:13px;border-radius:10px;padding:10px 16px;white-space:nowrap}
  .score{display:flex;align-items:center;gap:18px;background:var(--surface-2);border:1px solid var(--line);border-radius:18px;padding:18px 20px;margin-bottom:18px}
  .score-ring{--p:0;position:relative;width:74px;height:74px;border-radius:999px;flex-shrink:0;display:grid;place-items:center;
    background:conic-gradient(var(--purple) calc(var(--p)*1%), var(--line) 0)}
  .score-ring::before{content:"";position:absolute;width:58px;height:58px;border-radius:999px;background:var(--surface-2)}
  .score-ring span{position:relative;font-family:var(--mono);font-size:17px;font-weight:500;color:var(--ink)}
  .score-txt b{font-family:var(--display);font-size:16px;font-weight:700}.score-txt span{display:block;font-size:13px;color:var(--ink-2);margin-top:4px;line-height:1.5}
  /* Dashboard waouh */
  .dash{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:22px;margin-bottom:6px}
  .dash-gauge{--p:0;--c:var(--green);position:relative;width:132px;height:132px;border-radius:999px;display:grid;place-items:center;flex-shrink:0;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--line) 0);transition:background .9s var(--ease)}
  .dash-gauge::before{content:"";position:absolute;inset:13px;border-radius:999px;background:var(--surface-2)}
  .dash-gauge .dg-v{position:relative;font-family:var(--display);font-weight:700;font-size:33px;line-height:1}
  .dash-gauge .dg-l{position:relative;font-size:11.5px;color:var(--ink-3);margin-top:3px}
  .dash-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:12px}
  .dk{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 15px}
  .dk-v{font-family:var(--display);font-weight:700;font-size:22px;line-height:1;letter-spacing:-.02em}
  .dk-k{font-size:11.5px;color:var(--ink-3);margin-top:5px}
  .dash-sec h4{font-family:var(--display);font-size:14px;font-weight:700;margin:20px 0 12px}
  .frise{margin:0 0 16px}
  .frise-top{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink-2);margin-bottom:7px}
  .frise-top b{color:var(--ink)}
  .frise-bar{position:relative;height:10px;border-radius:999px;background:var(--line)}
  .frise-fill{position:absolute;left:0;top:0;height:100%;border-radius:999px;background:var(--grad);transition:width 1s var(--ease)}
  .frise-tick{position:absolute;top:-3px;width:4px;height:16px;border-radius:2px;transform:translateX(-2px)}
  .frise-now{position:absolute;top:-7px;width:2px;height:24px;background:var(--ink);transform:translateX(-1px)}
  .frise-now::after{content:"";position:absolute;top:-4px;left:-3px;width:8px;height:8px;border-radius:999px;background:var(--ink)}
  .esp-nav{position:sticky;top:calc(var(--banner-h,0px) + 84px);z-index:40;display:flex;align-items:center;gap:12px;padding:10px 14px;margin:0 0 22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-sm)}
  .esp-nav-l{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);flex:0 0 auto}
  .esp-nav select{flex:1;min-width:0;font-family:var(--ui);font-size:15px;font-weight:600;color:var(--ink);background-color:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 40px 11px 14px;cursor:pointer;outline:none;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235D0FE8' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}
  .esp-nav select:focus{border-color:var(--purple)}
  @media(max-width:600px){.esp-nav{position:static;top:auto}}
  /* Mode onglets : une seule section visible à la fois (fini les panneaux empilés) */
  #espace.esp-tabbed .panel.esp-main:not(.tab-on):not(#pushPanel){display:none!important}
  #espace.esp-tabbed .panel.esp-main.tab-on{animation:tabIn .45s var(--ease) both}
  @keyframes tabIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
  /* Guide : accordéons « ce que ça gère / comment on fait » */
  .acc{border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:10px;overflow:hidden;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
  .acc[open]{border-color:rgba(93,15,232,.3);box-shadow:var(--sh-sm)}
  .acc>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:14px 16px;font-weight:700;font-size:15px;color:var(--ink)}
  .acc>summary::-webkit-details-marker{display:none}
  .acc>summary:hover{background:rgba(93,15,232,.04)}
  .acc-ic{flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:rgba(93,15,232,.09);display:grid;place-items:center}
  .acc-ic svg{width:17px;height:17px;fill:none;stroke:var(--purple);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .acc-t{flex:1;min-width:0}
  .acc-t small{display:block;font-weight:500;font-size:12.5px;color:var(--ink-3);margin-top:2px}
  .acc-ch{flex:0 0 auto;width:18px;height:18px;color:var(--ink-3);transition:transform .25s var(--ease)}
  .acc[open] .acc-ch{transform:rotate(180deg);color:var(--purple)}
  .acc-b{padding:0 16px 16px 60px;font-size:14px;color:var(--ink-2);animation:tabIn .3s var(--ease) both}
  @media(max-width:600px){.acc-b{padding-left:16px}}
  .acc-b b{color:var(--ink)}
  .acc-b ol{margin:8px 0 0;padding-left:18px}
  .acc-b ol li{margin-bottom:6px}
  .acc-b .acc-go{margin-top:12px;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--purple);cursor:pointer;background:none;border:0;padding:0;font-family:var(--ui)}
  .acc-b .acc-go:hover{text-decoration:underline}
  .svc{margin-top:24px;border-radius:18px;padding:22px 24px;background:linear-gradient(135deg,#5D0FE8,#8B3BFF);color:#fff}
  .svc h4{font-family:var(--display);font-size:21px;font-weight:800;margin:0 0 6px;letter-spacing:-.02em}
  .svc p{font-size:14px;opacity:.92;margin:0 0 14px;max-width:62ch}
  .svc-prix{display:inline-flex;align-items:baseline;gap:6px;background:rgba(255,255,255,.16);border-radius:999px;padding:5px 14px;font-weight:800;font-size:15px;margin-bottom:12px}
  .svc-form{background:var(--surface);border-radius:14px;padding:16px;color:var(--ink)}
  .svc-form label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}
  .svc-drop{border:1.5px dashed rgba(93,15,232,.35);border-radius:12px;padding:16px;text-align:center;cursor:pointer;font-size:13.5px;color:var(--ink-2);background:rgba(93,15,232,.03)}
  .svc-drop:hover{background:rgba(93,15,232,.07)}
  .svc-form textarea{width:100%;min-height:70px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-family:var(--ui);font-size:14px;resize:vertical;margin-top:10px}
  .svc-list{margin-top:12px;font-size:13px}
  .svc-list div{display:flex;gap:8px;align-items:center;padding:7px 0;border-top:1px solid var(--line)}
  /* Frise du cycle de certification (7 ans) */
  .cyc{border:1px solid var(--line);border-radius:14px;padding:14px 16px 12px;background:var(--surface);margin-bottom:12px}
  .cyc-h{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:13.5px;margin-bottom:14px}
  .cyc-h b{font-size:14px}
  .cyc-h span{font-size:12px;color:var(--ink-3)}
  .cyc-bar{position:relative;height:8px;border-radius:4px;background:var(--line-2);margin:0 6px}
  .cyc-fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:linear-gradient(90deg,rgba(93,15,232,.18),rgba(93,15,232,.38))}
  .cyc-now{position:absolute;top:-5px;width:2.5px;height:18px;border-radius:2px;background:var(--purple)}
  .cyc-now::after{content:"aujourd'hui";position:absolute;top:-16px;left:50%;transform:translateX(-50%);font-size:9.5px;font-weight:700;color:var(--purple);white-space:nowrap}
  .cyc-dot{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;border:2.5px solid var(--surface);transform:translate(-6px,-50%);box-shadow:0 0 0 1px var(--line);cursor:pointer}
  .cyc-dot::before{content:"";position:absolute;top:50%;left:50%;width:30px;height:30px;transform:translate(-50%,-50%)}
  .cyc-dot:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
  .cyc-scale{display:flex;justify-content:space-between;font-size:10.5px;color:var(--ink-3);margin:10px 2px 0}
  .cyc-leg{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3);margin-top:10px}
  .cyc-leg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px;font-style:normal}
  .cyc-tip{position:fixed;z-index:80;background:var(--ink);color:#fff;font-family:var(--ui);font-size:12.5px;line-height:1.4;font-weight:600;padding:8px 11px;border-radius:10px;max-width:230px;box-shadow:0 10px 28px rgba(0,0,0,.22);pointer-events:none}
  .esp-main{scroll-margin-top:calc(var(--banner-h,0px) + 152px)}
  /* Sidebar de l'espace (desktop) : le menu déroulant reste le fallback mobile */
  .esp-side{display:none;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:var(--sh-sm)}
  .esp-side a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:11px;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease)}
  .esp-side a:hover{background:var(--line-2);color:var(--ink)}
  .esp-side a.on{background:rgba(93,15,232,.08);color:var(--purple)}
  .esp-side a svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.8;fill:none;flex:0 0 auto}
  @media(min-width:900px){
    #espace.with-side .wrap{display:grid;grid-template-columns:200px minmax(0,1fr);gap:0 20px;align-items:start}
    #espace.with-side .wrap>*{grid-column:2;min-width:0}
    #espace.with-side .wrap .esp-head{grid-column:1/-1}
    #espace.with-side .esp-nav{display:none}
    #espace.with-side .esp-side{display:block;grid-column:1;grid-row:2/span 60;position:sticky;top:calc(var(--banner-h,0px) + 96px)}
  }
  .tl{position:relative;margin:14px 0 6px}
  .tl-axis{position:relative;height:8px;border-radius:999px;background:var(--line)}
  .tl-dot{position:absolute;top:-4px;width:16px;height:16px;border-radius:999px;border:3px solid var(--surface-2);transform:translateX(-8px)}
  .tl-scale{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-3);margin-top:9px}
  .tl-empty{font-size:13.5px;color:var(--ink-2)}
  .tl-list{margin-top:14px;display:flex;flex-direction:column;gap:9px}
  .tl-row{display:flex;align-items:center;gap:10px;font-size:13.5px}
  .tl-row .d{width:9px;height:9px;border-radius:999px;flex:0 0 9px}
  .tl-row b{font-weight:600}
  .tl-row .w{margin-left:auto;font-weight:700;font-family:var(--mono);font-size:12.5px;white-space:nowrap}
  .dash-bars{display:flex;flex-direction:column;gap:11px}
  .dbar{display:grid;grid-template-columns:104px 1fr 30px;align-items:center;gap:10px;font-size:13px}
  .dbar-track{height:10px;border-radius:999px;background:var(--line);position:relative;overflow:hidden}
  .dbar-fill{position:absolute;left:0;top:0;height:100%;border-radius:999px;transition:width 1s var(--ease)}
  @media(max-width:620px){.dash{grid-template-columns:1fr;justify-items:center;text-align:center}.dash-kpis{width:100%}}

  footer{border-top:1px solid var(--line);padding:42px 0 56px;margin-top:30px}
  .foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
  .foot .brand{margin-right:0}
  .foot p{font-size:12.5px;color:var(--ink-3);max-width:46ch;line-height:1.5;margin-top:12px}
  .foot .credit{font-size:12px;color:var(--ink-3)}.foot .credit a{color:var(--ink-2);font-weight:600}

  /* Assistant de mise à jour rétroactive du suivi */
  .obw-steps{display:flex;gap:8px;margin:16px 0 14px}
  .obw-steps span{font-size:12px;font-weight:700;color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:6px 13px}
  .obw-steps span.on{color:var(--purple);background:rgba(93,15,232,.08);border-color:rgba(93,15,232,.25)}
  #obwBody{max-height:46vh;overflow-y:auto;padding-right:6px}
  .obw-grp{display:flex;align-items:center;gap:9px;font-family:var(--display);font-size:14px;font-weight:700;margin:16px 0 8px}
  .obw-grp:first-child{margin-top:2px}
  .obw-grp .gd{width:10px;height:10px;border-radius:3px;flex:0 0 auto}
  .obw-grp em{font-style:normal;font-family:var(--ui);font-size:11.5px;font-weight:600;color:var(--ink-3);background:var(--surface-2);border-radius:999px;padding:3px 9px}
  .obw-row{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--line);border-radius:13px;padding:11px 13px;margin-bottom:8px;cursor:pointer;transition:border-color .2s var(--ease),background .2s var(--ease)}
  .obw-row:hover{border-color:var(--purple)}
  .obw-row.sel{border-color:var(--purple);background:rgba(93,15,232,.05)}
  .obw-row input[type=checkbox]{width:17px;height:17px;accent-color:var(--purple);margin-top:2px;flex:0 0 auto}
  .obw-lbl{flex:1;min-width:0}
  .obw-lbl b{display:block;font-size:13.5px}
  .obw-lbl i{font-style:normal;font-size:12px;color:var(--ink-3)}
  .obw-extra{display:none;gap:8px;align-items:center;flex-wrap:wrap;margin-top:9px}
  .obw-row.sel .obw-extra{display:flex}
  .obw-extra input[type=date]{border:1px solid var(--line);border-radius:9px;padding:7px 10px;font-family:var(--ui);font-size:13px;background:var(--surface)}
  .obw-f{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--purple);border:1px dashed rgba(93,15,232,.4);border-radius:9px;padding:7px 11px;cursor:pointer}
  .obw-fn{font-size:11.5px;color:var(--ink-3);max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .obw-empty{font-size:13.5px;color:var(--ink-2);background:var(--surface-2);border-radius:12px;padding:14px 16px}
  .obw-nav{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:16px}
  /* Invitation "Ajouter à l'écran d'accueil" (mobile) */
  .a2hs{position:fixed;left:12px;right:12px;bottom:12px;z-index:85;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--sh-lg);padding:14px 14px 12px;display:none}
  .a2hs.show{display:block;animation:a2hsIn .6s var(--ease)}
  @keyframes a2hsIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
  @media(min-width:701px){.a2hs{display:none!important}}
  .a2hs-x{position:absolute;top:8px;right:12px;font-size:24px;line-height:1;color:var(--ink-3);background:none;border:none;padding:4px}
  .a2hs-demo{width:216px;margin:0 auto 4px;position:relative}
  .a2hs-bar{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:6px 10px}
  .a2hs-url{flex:1;font-size:11px;color:var(--ink-3);font-family:var(--mono)}
  .a2hs-ic{width:16px;height:16px;flex:0 0 auto;color:var(--ink-2)}
  .a2hs-ic svg{width:16px;height:16px;stroke:currentColor;stroke-width:2;fill:none;display:block}
  .a2hs-menu{margin:6px 0 0 auto;width:190px;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--sh);overflow:hidden;transform-origin:top right;animation:a2hsDrop 4s var(--ease) infinite}
  @keyframes a2hsDrop{0%{opacity:0;transform:translateY(-10px) scale(.95)}14%,82%{opacity:1;transform:none}94%,100%{opacity:0;transform:translateY(-10px) scale(.95)}}
  .a2hs-mi{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:600;color:var(--ink-2);border-top:1px solid var(--line-2)}
  .a2hs-mi:first-child{border-top:none}
  .a2hs-mi.hot{color:var(--purple);background:rgba(93,15,232,.07);animation:a2hsPulse 4s var(--ease) infinite}
  .a2hs-mi.hot svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;flex:0 0 auto}
  @keyframes a2hsPulse{0%,30%,90%,100%{box-shadow:inset 0 0 0 0 rgba(93,15,232,0)}45%,70%{box-shadow:inset 0 0 0 2px rgba(93,15,232,.45)}}
  .a2hs-txt{text-align:center;margin:8px 4px 10px}
  .a2hs-txt b{display:block;font-family:var(--display);font-size:15px;letter-spacing:-.01em;margin-bottom:3px}
  .a2hs-txt span{font-size:12.5px;color:var(--ink-2);line-height:1.5}
  .a2hs-txt .shr{display:inline-block;vertical-align:-3px;width:15px;height:15px}
  .a2hs-txt .shr svg{width:15px;height:15px;stroke:var(--purple);stroke-width:2;fill:none}
  .a2hs-btns{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
  .a2hs-go{background:var(--grad);color:#fff;border:none;border-radius:12px;padding:12px 20px;font-family:var(--ui);font-weight:700;font-size:14px}
  .a2hs-later{background:var(--surface);border:1px solid var(--line);color:var(--ink-2);border-radius:12px;padding:12px 18px;font-family:var(--ui);font-weight:600;font-size:14px}
  .toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);z-index:80;background:var(--ink);color:#fff;padding:14px 20px;border-radius:14px;font-size:14px;font-weight:600;box-shadow:var(--sh-lg);display:flex;align-items:center;gap:10px;opacity:0;visibility:hidden;transition:opacity .4s var(--ease),transform .4s var(--ease),visibility .4s;max-width:90vw}
  .toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
  .toast svg{width:18px;height:18px;stroke:#5ee0a0;stroke-width:2;fill:none;flex-shrink:0}

  .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
  .reveal.in{opacity:1;transform:none}

  @media(max-width:1150px){.nav-tagline{display:none}}
  @media(max-width:900px){
    .hero-grid{grid-template-columns:1fr} .stack{display:none}
    .nav-links,.nav .btn,.nav-login{display:none} .burger{display:block}
    .features{grid-template-columns:1fr}
    .fc-form{grid-template-columns:1fr 1fr}.fc-form .file,.fc-form .add,.fc-form #fcTitle{grid-column:1/-1}
  }
  @media(max-width:520px){.wrap{padding:0 20px}.search-fields{grid-template-columns:1fr}.fc-form{grid-template-columns:1fr}}
  @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,.scard,.appwin,.aw-hi,.aw-stat,.aw-row,.aw-toast{opacity:1!important;transform:none!important}.marquee .track{animation:none!important}}
  /* MA VILLE (marché local de l'inscrit) */
  .vk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:14px 0 18px}
  .vk{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:16px 18px 13px}
  .vk b{display:block;font-family:var(--display);font-weight:700;font-size:27px;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .vk span{font-size:12.5px;color:var(--ink-2);font-weight:600;line-height:1.4;display:block;margin-top:2px}
  .vk-doms{display:flex;flex-direction:column;gap:9px;margin:4px 0 18px}
  .vk-dom{display:flex;align-items:center;gap:12px;font-size:13px}
  .vk-dom b{flex:0 0 150px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .vk-dom .bar{flex:1;height:7px;border-radius:999px;background:var(--line-2);overflow:hidden}
  .vk-dom .bar i{display:block;height:100%;border-radius:999px}
  .vk-dom span{flex:0 0 44px;text-align:right;font-family:var(--mono);font-size:12px;color:var(--ink-2)}
  .vk-cta{display:flex;gap:10px;flex-wrap:wrap}

  /* ---- Ma veille (phase 46) ---- */
  .sub-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0 0}
.sub-card{border:1.5px solid var(--line);border-radius:14px;padding:18px 18px 20px;background:#fff;display:flex;flex-direction:column}
.sub-card.best{border-color:var(--purple);box-shadow:0 10px 34px -18px rgba(93,15,232,.4)}
.sub-t{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);margin:0 0 6px}
.sub-p{font-size:28px;font-weight:700;letter-spacing:-.02em;margin:0 0 12px}
.sub-p span{font-size:13px;font-weight:600;color:var(--ink-3);margin-left:5px}
.sub-l{list-style:none;margin:0 0 16px;padding:0;flex:1}
.sub-l li{position:relative;padding:4px 0 4px 20px;font-size:13.5px;color:var(--ink-2);line-height:1.45}
.sub-l li::before{content:"✓";position:absolute;left:0;color:var(--purple);font-weight:700}
.sub-go{margin-top:auto;background:linear-gradient(120deg,#5D0FE8,#2F80ED);color:#fff;border:0;border-radius:11px;padding:13px 18px;font-weight:700;font-size:14.5px;cursor:pointer;font-family:inherit}
.sub-go[disabled]{opacity:.55;cursor:default}
@media(max-width:640px){.sub-duo{grid-template-columns:1fr}}
.vq-list{margin:14px 0 0;border-top:1px solid var(--line)}
.vq-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 2px;border-bottom:1px solid var(--line)}
.vq-who{min-width:0}
.vq-who b{display:block;font-size:14.5px;line-height:1.35}
.vq-who span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px}
.vq-who .vq-none{font-style:italic}
.vq-st{flex:0 0 auto;text-align:right}
.vq-ok{font-size:12.5px;font-weight:700;color:#18A058;background:#E6F6ED;padding:4px 11px;border-radius:999px;white-space:nowrap}
.vq-ko{font-size:12.5px;font-weight:700;color:#B3362C;background:#FBE9E7;padding:4px 11px;border-radius:999px;white-space:nowrap}
.vq-invite{margin-top:16px;padding:15px 17px;border-radius:12px;background:var(--surface-2,#F7F6FD);border:1px solid var(--line)}
.vq-invite b{font-size:14.5px}
.vq-invite p{font-size:13px;color:var(--ink-2);margin:6px 0 0}
.vq-invite .vq-names{color:var(--ink-3);font-size:12.5px}
@media(max-width:600px){.vq-row{flex-direction:column;align-items:flex-start;gap:6px}.vq-st{text-align:left}}
.vl-hero{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:var(--surface-2,#F7F6FD);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:16px}
  .vl-hero>div{flex:1 1 260px;min-width:0}
  .vl-hero b{display:block;font-family:var(--display);font-size:16px;line-height:1.35}
  .vl-hero span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:3px}
  .vl-hero.vl-late{background:#FBF1DC;border-color:rgba(201,130,11,.28)}
  .vl-hero .vl-ok{font-size:13px;font-weight:700;color:#18A058;background:#E6F6ED;border-radius:999px;padding:8px 14px}
  .vl-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px}
  .vl-chips-t{font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin-right:2px;flex:0 0 auto}
  .vl-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:999px;padding:6px 12px;font:600 13px/1 var(--ui);cursor:pointer;font-family:inherit}
  .vl-chip.mine{border-color:rgba(93,15,232,.35);color:var(--ink)}
  .vl-chip.on{background:var(--purple);border-color:var(--purple);color:#fff}
  .vl-chip.empty{opacity:.45}
  .vl-chip i{font-style:normal;background:#D6453B;color:#fff;border-radius:999px;min-width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;padding:0 4px}
  .vl-chip.on i{background:#fff;color:var(--purple)}
  .vl-chip u{text-decoration:none;color:#18A058}
  .vl-clear{margin:2px 0 12px;font-size:13px}
  .vl-clear a{color:var(--purple);cursor:pointer;font-weight:600}
  .vl-row{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}
  .vl-row.done{opacity:.55}
  .vl-row.mine .vl-main>a{font-weight:700}
  .vl-check{flex:0 0 auto;width:24px;height:24px;border-radius:8px;border:1.5px solid var(--line);background:#fff;cursor:pointer;color:#fff;font-size:14px;line-height:1;font-family:inherit}
  .vl-check.on{background:#18A058;border-color:#18A058}
  .vl-check[disabled]{cursor:not-allowed;opacity:.45}
  .vl-main{min-width:0;flex:1 1 auto}
  .vl-main>a{color:var(--ink);font-size:14.5px;line-height:1.45;display:block}
  .vl-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:6px}
  .vl-badge{font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px}
  .vl-dom{font-size:11.5px;color:var(--ink-2);background:var(--surface-2,#F7F6FD);border-radius:999px;padding:3px 9px}
  .vl-when{font-size:11.5px;color:var(--ink-3)}
  .vl-mine{font-size:11px;font-weight:700;color:var(--purple);background:rgba(93,15,232,.10);border-radius:999px;padding:3px 9px}
  .vl-action{margin-top:8px;font-size:13px;line-height:1.55;color:var(--ink-2);background:var(--surface-2,#F7F6FD);border-left:2px solid var(--purple);border-radius:0 10px 10px 0;padding:9px 12px}
  .vl-action b{color:var(--purple);font-weight:700}
  .vl-locked{margin-top:8px;font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:5px}
  .vl-locked a{color:var(--purple);font-weight:600}
  .vl-eds{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
  .vl-eds b{display:block;font-family:var(--display);font-size:14px;margin-bottom:8px}
  .vl-eds a{display:block;font-size:13.5px;color:var(--purple);padding:4px 0}
  .vl-eds a span{color:var(--ink-3);font-weight:500}
  .vl-att{margin-top:16px}
  @media(max-width:600px){
    .vl-hero{padding:14px}
    .vl-hero .btn,.vl-hero>a.btn{width:100%;justify-content:center}
    .vl-chips-t{flex-basis:100%;margin-bottom:2px}
  }
  @media(max-width:560px){.vk-dom b{flex-basis:104px}}

  /* Cartes par certification (code couleur par domaine) */
  .cc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:16px;margin-bottom:26px}
  .cc{position:relative;background:#fff;border:1px solid var(--line,#ece8f2);border-radius:16px;padding:16px 16px 14px;border-top:4px solid var(--cc,#5D0FE8);box-shadow:0 6px 18px rgba(20,16,40,.05)}
  .cc-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
  .cc-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--cc,#5D0FE8) 14%,#fff);color:var(--cc,#5D0FE8);flex-shrink:0}
  .cc-ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}
  .cc-ttl b{display:block;font-size:15.5px;line-height:1.2;color:var(--ink,#15101f)}
  .cc-ttl span{display:block;font-size:12.5px;color:var(--ink-3,#8b8598);margin-top:2px}
  .cc-badges{margin-bottom:9px}
  .cc-badge{display:inline-block;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px}
  .cc-valid{font-size:13.5px;font-weight:600;margin-bottom:4px}
  .cc-next{font-size:13px;margin-bottom:11px;line-height:1.35}
  .cc-bar{height:7px;border-radius:999px;background:#eee7f5;overflow:hidden;margin-bottom:9px}
  .cc-bar i{display:block;height:100%;border-radius:999px;background:var(--cc,#5D0FE8);transition:width .5s}
  .cc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--ink-3,#8b8598)}
  .cc-go{color:var(--cc,#5D0FE8);font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap}
  button.oblc-act{cursor:pointer;font-family:inherit;background:#fff}
  .oblc-act.confirm{background:var(--purple,#5D0FE8)!important;color:#fff!important;border-color:transparent!important}
  .oblc-row.done .oblc-main b{color:var(--ink-3,#8b8598)}
  .oblc-row{cursor:pointer}
  /* Accordeons par domaine dans "Ce que j'ai a faire" */
  .dom-acc{border:1px solid var(--line,#ece8f2);border-radius:16px;margin-bottom:14px;overflow:hidden;border-left:4px solid var(--cc,#5D0FE8);background:#fff}
  .dom-head{width:100%;display:flex;align-items:center;gap:13px;padding:15px 16px;background:none;border:none;cursor:pointer;font-family:inherit;text-align:left}
  .dom-head:hover{background:var(--surface,#faf8ff)}
  .dom-ic{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--cc,#5D0FE8) 14%,#fff);color:var(--cc,#5D0FE8);flex-shrink:0}
  .dom-ic svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}
  .dom-ttl{flex:1;min-width:0}
  .dom-ttl b{display:block;font-size:16px;color:var(--ink,#15101f)}
  .dom-ttl span{display:block;font-size:12.5px;color:var(--ink-3,#8b8598);margin-top:2px}
  .dom-pill{font-size:12.5px;font-weight:700;white-space:nowrap}
  .dom-chev{flex-shrink:0;color:var(--ink-3,#8b8598);transition:transform .25s}
  .dom-chev svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;display:block}
  .dom-acc.open .dom-chev{transform:rotate(180deg)}
  .dom-body{display:none;padding:0 14px 12px}
  .dom-acc.open .dom-body{display:block}
  .dom-sec{margin-top:10px}
  .dom-sec h5{margin:6px 4px 2px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3,#8b8598)}
  .dom-empty{font-size:13px;color:var(--ink-3,#8b8598);padding:8px 4px}
  /* Wizard de creation de compte (3 etapes) */
  .wiz{background:#fff;border:1px solid var(--line,#ece8f2);border-radius:28px;padding:clamp(26px,4vw,44px);box-shadow:0 30px 80px -44px rgba(91,40,180,.4);max-width:680px;margin:0 auto}
  .wiz-badge{display:inline-flex;align-items:center;gap:12px;font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2,#4a4358);margin-bottom:14px;line-height:1.7}
  .wiz-badge::before{content:"";width:22px;height:2px;border-radius:2px;background:linear-gradient(120deg,#5D0FE8,#2F80ED);flex:0 0 auto}
  .wiz h2{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:clamp(22px,3vw,30px);color:var(--ink,#15101f);margin:0 0 4px}
  .wiz-prog{display:flex;align-items:center;gap:8px;margin:20px 0 26px}
  .wp{display:flex;align-items:center;gap:8px;color:var(--ink-3,#857e92);font-size:12.5px;font-weight:600}
  .wp b{width:26px;height:26px;border-radius:50%;background:#efeaf6;color:var(--ink-3,#857e92);display:grid;place-items:center;font-size:12.5px;transition:all .3s}
  .wp.on b{background:linear-gradient(120deg,#5D0FE8,#2F80ED);color:#fff}
  .wp i{font-style:normal}.wp.cur i{color:var(--ink,#15101f)}
  .wp-line{flex:1;height:2px;background:var(--line,#ece8f2);border-radius:2px;min-width:14px}
  .wiz-step{display:none}
  .wiz-step.on{display:block;animation:wizIn .35s var(--ease,ease)}
  @keyframes wizIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  .wiz-choice{display:grid;gap:14px}
  @media(min-width:600px){.wiz-choice{grid-template-columns:1fr 1fr}}
  .wc{text-align:left;background:#fff;border:1.5px solid var(--line,#ece8f2);border-radius:18px;padding:20px;cursor:pointer;font-family:inherit;transition:border-color .25s,transform .25s,box-shadow .25s}
  .wc:hover{border-color:var(--purple,#5D0FE8);transform:translateY(-2px);box-shadow:0 12px 30px -18px rgba(91,40,180,.5)}
  .wc.sel{border-color:var(--purple,#5D0FE8);box-shadow:0 0 0 3px rgba(93,15,232,.12)}
  .wc-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(93,15,232,.1);color:var(--purple,#5D0FE8);margin-bottom:12px}
  .wc-ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}
  .wc{position:relative}
  .wc>b{display:block;font-family:var(--display);font-size:16px;margin-bottom:6px;color:var(--ink,#15101f);padding-right:96px}
  .wc>span{display:block;font-size:13px;color:var(--ink-2,#4a4358);line-height:1.5}
  .wc-tag{position:absolute;top:16px;right:16px;font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:4px 10px;border-radius:999px;white-space:nowrap}
  .wc-tag.free{background:rgba(22,163,74,.12);color:#16A34A}
  .wc-tag.trial{background:rgba(93,15,232,.1);color:var(--purple,#5D0FE8)}
  .wc-invite{grid-column:1/-1;display:flex;align-items:center;gap:14px;padding:14px 18px}
  .wc-invite .wc-ic{width:38px;height:38px;margin:0;flex:0 0 auto;background:var(--surface-2,#f7f6fd);color:var(--ink-2,#4a4358)}
  .wc-inv-txt{display:block;min-width:0}
  .wc-inv-txt b{display:block;font-family:var(--display);font-size:15px;color:var(--ink,#15101f);padding:0;margin-bottom:2px}
  .wc-inv-txt span{display:block;font-size:12.5px;color:var(--ink-2,#4a4358);line-height:1.45}
  .wiz-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  @media(max-width:520px){.wiz-fields{grid-template-columns:1fr}}
  .wiz-fields input,.wiz-fields select{border:1px solid var(--line,#ece8f2);background:#faf8fd;color:var(--ink,#15101f);font-family:var(--ui);font-size:15px;padding:13px 15px;border-radius:12px;outline:none;width:100%}
  .wiz-fields input:focus,.wiz-fields select:focus{border-color:var(--purple,#5D0FE8);background:#fff}
  .wiz-fields .w-wide{grid-column:1 / -1}
  .wiz-final{font-size:13.5px;color:var(--ink-2,#4a4358);margin-top:2px}
  .wiz-nav{display:flex;align-items:center;gap:12px;margin-top:24px}
  .wiz-nav-r{display:flex;gap:10px;margin-left:auto}
  .wiz-back{background:transparent;border:1px solid var(--line,#ece8f2);color:var(--ink-2,#4a4358);border-radius:12px;padding:12px 20px;font-family:inherit;font-weight:600;font-size:14.5px;cursor:pointer}
  .wiz-next,.wiz-go{background:linear-gradient(120deg,#5D0FE8,#2F80ED);color:#fff;border:none;border-radius:12px;padding:13px 26px;font-family:inherit;font-weight:700;font-size:15px;cursor:pointer;transition:transform .25s}
  .wiz-next:hover,.wiz-go:hover{transform:translateY(-2px)}
  .wiz .ml-note{font-size:12.5px;color:var(--ink-3,#857e92);margin-top:14px;text-align:center}
  /* Bloc conversion WebProMax (site / audit SEO) */
  .wpx{background:linear-gradient(120deg,#5D0FE8,#2F80ED);color:#fff;border-radius:22px;padding:24px 26px;margin-bottom:22px;display:flex;gap:24px;align-items:center;flex-wrap:wrap;box-shadow:0 22px 50px -26px rgba(91,40,180,.65)}
  .wpx-txt{flex:1;min-width:250px}
  .wpx-ey{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:rgba(255,255,255,.16);padding:5px 11px;border-radius:999px;margin-bottom:10px}
  .wpx h3{font-size:clamp(18px,2.3vw,23px);margin:0 0 8px;color:#fff;font-family:var(--display,inherit);letter-spacing:-.01em}
  .wpx p{font-size:14.5px;color:rgba(255,255,255,.92);margin:0 0 16px;line-height:1.5}
  .wpx-cta{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
  .wpx-btn{display:inline-block;background:#fff;color:#15101f;font-weight:700;font-size:14.5px;padding:12px 22px;border-radius:12px;text-decoration:none;cursor:pointer;transition:transform .2s}
  .wpx-btn:hover{transform:translateY(-1px)}
  .wpx-btn2{display:inline-block;background:rgba(255,255,255,.14);color:#fff;font-weight:600;font-size:14px;padding:12px 18px;border-radius:12px;text-decoration:none;border:1px solid rgba(255,255,255,.28);cursor:pointer}
  .wpx-visual{flex:0 0 auto;width:200px;display:grid;place-items:center}
  .wpx-visual svg{width:100%;height:auto;filter:drop-shadow(0 12px 26px rgba(0,0,0,.22))}
  .wpx-scorebox{background:#fff;border-radius:16px;padding:16px 20px;text-align:center;min-width:118px}
  .wpx-scorebox b{display:block;font-size:38px;font-weight:800;line-height:1}
  .wpx-scorebox span{font-size:11.5px;color:#857e92;font-weight:600}
  .wpx-spin{width:34px;height:34px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:wpxsp .9s linear infinite}
  @keyframes wpxsp{to{transform:rotate(360deg)}}
  @media(max-width:640px){.wpx-visual{width:100%;max-width:230px;margin:0 auto}}
  /* Vitrine WebProMax dans l'espace cabinet : "on construit des outils puissants" */
  .wpxc{position:relative;overflow:hidden;border-radius:26px;padding:30px 30px 26px;margin:4px 0 24px;color:#fff;
    background:radial-gradient(120% 140% at 100% 0%,#7B2CF0 0%,#5D0FE8 42%,#3A0B9E 100%)}
  .wpxc::after{content:"";position:absolute;inset:0;background:
    radial-gradient(60% 80% at 12% 118%,rgba(47,128,237,.55),transparent 60%);pointer-events:none}
  .wpxc>*{position:relative;z-index:1}
  .wpxc-proof{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;
    background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);padding:6px 13px 6px 8px;border-radius:999px;margin-bottom:16px}
  .wpxc-proof img{width:20px;height:20px;border-radius:6px;background:#fff;padding:2px}
  .wpxc-proof b{font-weight:800}
  .wpxc h3{font-family:var(--display,inherit);font-size:clamp(21px,3vw,30px);line-height:1.08;letter-spacing:-.02em;margin:0 0 10px;max-width:16ch}
  .wpxc-sub{font-size:15px;line-height:1.55;color:rgba(255,255,255,.9);max-width:60ch;margin:0 0 22px}
  .wpxc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}
  .wpxc-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:16px 15px;
    opacity:0;transform:translateY(14px);animation:wpxcUp .55s cubic-bezier(.22,.61,.36,1) forwards}
  .wpxc-card:nth-child(1){animation-delay:.05s}.wpxc-card:nth-child(2){animation-delay:.14s}
  .wpxc-card:nth-child(3){animation-delay:.23s}.wpxc-card:nth-child(4){animation-delay:.32s}
  @keyframes wpxcUp{to{opacity:1;transform:none}}
  .wpxc-card svg{width:26px;height:26px;stroke:#fff;fill:none;stroke-width:1.7;margin-bottom:9px;opacity:.95}
  .wpxc-card b{display:block;font-size:14.5px;font-weight:700;margin-bottom:3px}
  .wpxc-card span{font-size:12.5px;line-height:1.45;color:rgba(255,255,255,.82)}
  .wpxc-cta{display:flex;gap:11px;flex-wrap:wrap;align-items:center}
  .wpxc-btn{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#2A0A8F;font-weight:800;font-size:14.5px;
    padding:13px 22px;border-radius:13px;text-decoration:none;transition:transform .18s,box-shadow .18s;box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}
  .wpxc-btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px -12px rgba(0,0,0,.55)}
  .wpxc-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9}
  .wpxc-btn2{display:inline-flex;align-items:center;gap:7px;color:#fff;font-weight:600;font-size:14px;text-decoration:none;
    padding:13px 16px;border-radius:13px;border:1px solid rgba(255,255,255,.3)}
  .wpxc-btn2:hover{background:rgba(255,255,255,.1)}
  @media(max-width:820px){.wpxc-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:460px){.wpxc{padding:24px 20px}.wpxc-grid{grid-template-columns:1fr}}
  /* Bandeau capacités WebProMax sous le titre du studio (accueil) */
  .studio-caps{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 2px;justify-content:center}
  .studio-caps span{font-size:13px;font-weight:600;color:#3A0B9E;background:rgba(93,15,232,.08);
    border:1px solid rgba(93,15,232,.18);padding:7px 14px;border-radius:999px}
  @media(max-width:520px){.studio-caps span{font-size:12px;padding:6px 11px}}
  /* Popup « ce qu'il a à faire » (clic sur un diagnostiqueur) */
  .cabm-name{cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:text-decoration-color .15s}
  .cabm-name:hover{text-decoration-color:var(--purple)}
  .qk-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:6px 0 16px}
  .qk-kpi{background:var(--line-2,#f4f1fb);border-radius:12px;padding:11px 6px;text-align:center}
  .qk-kpi b{display:block;font-size:22px;font-family:var(--display,inherit);line-height:1}
  .qk-kpi span{font-size:11px;color:var(--ink-3,#857e92)}
  .qk-list{max-height:44vh;overflow:auto;margin:0 -4px}
  .qk-item{display:flex;gap:11px;align-items:center;padding:11px 4px;border-bottom:1px solid var(--line-2,#f0ecf7)}
  .qk-item:last-child{border-bottom:none}
  .qk-dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;margin-top:2px}
  .qk-main{flex:1;min-width:0}
  .qk-lbl b{font-size:13.5px;font-weight:600}.qk-lbl span{font-size:12px;color:var(--purple);font-weight:600}
  .qk-meta{font-size:12px;color:var(--ink-3,#857e92)}
  .qk-right{display:flex;align-items:center;gap:7px;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}
  .qk-badge{font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap}
  .qk-ics,.qk-plan{border:1px solid var(--line,#ece8f2);background:#fff;color:var(--purple);border-radius:8px;padding:5px 10px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:var(--ui,inherit)}
  .qk-plan{background:rgba(93,15,232,.06)}
  .qk-planner{margin-top:16px;padding-top:16px;border-top:1px solid var(--line,#ece8f2)}
  .qk-planner h4{font-family:var(--display,inherit);font-size:15px;margin:0 0 10px}
  .qk-prow{display:flex;gap:8px;margin-bottom:8px}
  .qk-planner input,.qk-planner textarea{width:100%;border:1px solid var(--line,#ece8f2);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}
  .qk-send{margin-top:4px}
  .qk-foot{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}
  @media(max-width:480px){.qk-kpis{grid-template-columns:repeat(2,1fr)}.qk-prow{flex-wrap:wrap}}
