/* S18.SEC #8 — styles inline extraits (genere par tmp/codemod_inline_styles.js). NE PAS EDITER A LA MAIN. */
.akt-s0{vertical-align:-2px;margin-right:.3rem}
.akt-s1{display:flex; gap:1rem; flex-wrap:wrap; justify-content:center; margin-top:2.5rem;}
.akt-s2{background: var(--primary-blue); color: var(--dark-bg);}
.akt-s3{margin-top:0;}
.akt-s4{background:var(--pending);}
.akt-s5{background:var(--accepted);}
.akt-s6{background:var(--rejected);}
.akt-s7{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.akt-s8{display:none}
.akt-s9{margin:1.2rem 0 .5rem;font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.2px}
.akt-s10{margin:1.6rem 0 .5rem;font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.2px}
.akt-s11{margin:1rem 0 .5rem;font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.2px}
.akt-s12{margin:0 0 1rem;color:var(--text-soft);font-size:.85rem}
.akt-s13{display:grid;gap:.5rem;margin-top:.6rem}
.akt-s14{font-size:.75rem;color:var(--text-soft)}
.akt-s15{display:flex;gap:.5rem;margin-top:.4rem}
.akt-s16{margin:1.8rem 0 .5rem;font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.2px}
.akt-s17{max-width:520px}
.akt-s18{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.akt-s19{margin-top:.3rem;font-weight:600}
.akt-s20{display:flex;gap:.5rem}
.akt-s21{color:var(--text-dim);font-weight:400;font-size:.85rem}
.akt-s22{color:var(--bad)}
.akt-s23{color:var(--text-dim)}
.akt-s24{color:var(--text-dim);font-size:.72rem}
.akt-s25{width:auto;padding:.65rem 1.4rem}
.akt-s26{background:#7c3aed22;color:#a78bfa;border:1px solid #7c3aed55}
.akt-s27{background:#dc262622;color:#f87171;border:1px solid #dc262655}
.akt-s28{color:var(--text-soft);font-size:.9rem;text-align:left}
.akt-s29{color:var(--text-soft);font-size:.85rem;text-align:left;margin:.4rem 0 .4rem 1.2rem}
.akt-s30{color:var(--text-soft);font-size:.88rem}
.akt-s31{background:var(--panel-2);border:1px solid var(--border-soft);border-radius:8px;padding:.7rem .9rem;margin-bottom:.5rem;text-align:left;font-size:.85rem}
.akt-s32{color:var(--text-dim);font-size:.72rem;margin-bottom:.3rem}
.akt-s33{white-space:pre-wrap;color:var(--text)}
.akt-s34{margin-top:.4rem;font-size:.7rem}
.akt-s35{color:var(--text-dim);font-size:.85rem;text-align:center;padding:1rem}
.akt-s36{max-height:300px;overflow-y:auto;margin-bottom:1rem}
.akt-s37{margin:0;min-height:80px}
.akt-s38{text-align:left;font-size:.9rem}
.akt-s39{display:block;margin:.4rem 0 .2rem;color:var(--text-soft);font-size:.8rem}
.akt-s40{margin:0}
.akt-s41{display:block;margin:.6rem 0 .2rem;color:var(--text-soft);font-size:.8rem}
.akt-s42{text-align:left;color:var(--text-soft)}
.akt-s43{background:var(--panel-2);padding:1rem;border-radius:8px;text-align:left;font-family:monospace;color:var(--text);border:1px solid var(--border)}
.akt-s44{text-align:left;font-size:.78rem;color:var(--text-dim);margin-top:.7rem}
.akt-s45{background:var(--panel-2);padding:1rem;border-radius:8px;font-family:monospace;color:var(--text)}
.akt-s46{font-size:.78rem;color:var(--text-dim);margin-top:.7rem}
.akt-s47{color:var(--text-soft);font-size:.85rem;text-align:left;margin:.4rem 0 .8rem 1.2rem}
.akt-s48{display:block;margin:.6rem 0 .2rem;color:var(--text-soft);font-size:.8rem;text-align:left}
.akt-s49{color:var(--accent-2)}
.akt-s50{text-align:left;color:var(--text-soft);font-size:.88rem}
.akt-s51{margin:.3rem 0 .5rem 1.2rem}
.akt-s52{margin:1.6rem 0 .8rem;font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.2px}
.akt-s53{margin:1.8rem 0 .8rem;font-size:.85rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.2px}
.akt-s54{margin-top:.4rem;font-size:.8rem;color:var(--text-soft)}
.akt-s55{display:flex;justify-content:space-between}
.akt-s56{color:var(--text)}
.akt-s57{margin-top:.4rem}
.akt-s58{margin-top:1.2rem;font-size:.78rem;color:var(--text-dim)}
.akt-s59{color:var(--text-dim);font-size:.78rem;margin-top:.2rem}
.akt-s60{color:var(--text-dim);font-size:.78rem}
.akt-s61{background:transparent;border:none;color:#fff;cursor:pointer;font-size:.9em;padding:0;line-height:1}
.akt-s62{color:var(--text-dim);font-size:.85rem;text-align:center;padding:.6rem}
.akt-s63{margin-bottom:1rem;text-align:left}
.akt-s64{display:block;margin:.4rem 0 .2rem;font-size:.8rem;color:#666}
.akt-s65{display:block;margin:.4rem 0 .2rem;font-size:.78rem;color:var(--text-soft)}
.akt-s66{margin:0;text-transform:uppercase}
.akt-s67{display:block;margin:.6rem 0 .2rem;font-size:.78rem;color:var(--text-soft)}
.akt-s68{margin:0;flex:1}
.akt-s69{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.4rem}
.akt-s70{font-size:.8rem}
.akt-s71{font-size:.85rem;color:#e67e22}
.akt-s72{font-size:.9rem}
.akt-s73{width:200px;height:200px;margin:8px auto;display:block}
.akt-s74{font-size:.8rem;color:#888}
.akt-s75{font-size:.85rem;margin-top:10px}
.akt-s76{font-family:monospace;font-size:.8rem;background:#f5f5f7;color:#111;padding:8px;border-radius:6px;word-spacing:6px}
.akt-s77{font-size:.78rem;color:var(--text-soft)}
.akt-s78{font-size:.82rem}
.akt-s79{background:rgba(0,114,255,.12);color:var(--accent-2);padding:.2rem .6rem;border-radius:99px;font-size:.7rem}
.akt-s80{font-size:.78rem;color:var(--text-dim)}
.akt-s81{font-size:.75rem;color:var(--text-dim);font-family:ui-monospace,monospace}
.akt-s82{text-align:center;font-size:1.2rem;letter-spacing:.3rem;font-family:ui-monospace,monospace}
.akt-s83{color:var(--text-dim);font-size:.75rem;display:block;margin-top:.3rem}
.akt-s84{margin-top:1.1rem;text-align:center;font-size:.82rem}
.akt-s85{color:var(--accent-2);text-decoration:none}
.akt-s86{color:var(--text-dim);margin:0 .4rem}
.akt-s87{margin-top:1.1rem;text-align:center;font-size:.82rem;color:var(--text-dim)}
.akt-s88{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border-soft);text-align:center}
.akt-s89{font-size:.85rem}
.akt-s90{margin:0 0 1rem;color:var(--text-soft);font-size:.9rem}
.akt-s91{opacity:.6;cursor:not-allowed}
.akt-s92{margin:0 0 .8rem;color:var(--text-soft);font-size:.85rem}
.akt-s93{text-align:center;padding:1rem;background:#fff;border-radius:var(--radius-sm);margin-bottom:1rem}
.akt-s94{max-width:240px;width:100%;height:auto}
.akt-s95{margin-bottom:1rem}

/* ============================================================================
   Champ OTP 6 cases (2FA) — composant aktOtp, partage portail + admin.
   Themable : utilise --panel-2/--border/--text/--accent/--accent-2/--bad.
   ========================================================================== */
/* Selecteurs sur-specifies (.akt-otp input.akt-otp-cell = 0,2,1) pour battre
   les regles d'app type ".form-group input{width:100%}" (0,1,1) qui sinon
   etirent les cases sur toute la largeur. */
.akt-otp{display:flex;gap:.55rem;justify-content:center;flex-wrap:nowrap;margin:.2rem 0 .1rem}
.akt-otp input.akt-otp-cell{
  width:48px!important;height:58px;flex:0 0 48px;text-align:center;
  font-size:1.6rem;font-weight:600;line-height:1;padding:0;box-sizing:border-box;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  border:2px solid var(--border);background:var(--panel-2);color:var(--text);
  border-radius:12px;caret-color:var(--accent);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .08s ease;
  -moz-appearance:textfield;
}
.akt-otp input.akt-otp-cell::-webkit-outer-spin-button,.akt-otp input.akt-otp-cell::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.akt-otp input.akt-otp-cell:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent);transform:translateY(-1px)}
.akt-otp input.akt-otp-cell.filled{border-color:var(--accent-2)}
.akt-otp input.akt-otp-cell:disabled{opacity:.6;cursor:not-allowed}
.akt-otp.error input.akt-otp-cell{border-color:var(--bad);animation:akt-otp-shake .38s cubic-bezier(.36,.07,.19,.97)}
@keyframes akt-otp-shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}
input.akt-otp-recovery{width:100%;text-align:center;font-size:1.05rem;letter-spacing:.12rem;
  font-family:ui-monospace,monospace;padding:.7rem .8rem;border:2px solid var(--border);
  background:var(--panel-2);color:var(--text);border-radius:12px;box-sizing:border-box}
input.akt-otp-recovery:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}
.akt-otp-toggle{display:block;margin:.85rem auto 0;background:none;border:0;cursor:pointer;
  color:var(--accent-2);font-family:inherit;font-size:.82rem;text-decoration:underline;text-underline-offset:2px}
.akt-otp-toggle:hover{color:var(--accent)}
.akt-otp-hint{margin:.7rem 0 0;text-align:center;font-size:.78rem;color:var(--text-dim)}
@media (max-width:400px){.akt-otp{gap:.4rem}.akt-otp input.akt-otp-cell{width:40px!important;flex-basis:40px;height:50px;font-size:1.35rem}}
/* Dans une popup SweetAlert (admin) : pas de marge superflue */
.swal2-popup .akt-otp{margin-top:.4rem}
.akt-s96{cursor:pointer;color:var(--accent-2);font-size:.85rem}
.akt-s97{margin-top:.6rem;background:var(--panel-2);padding:.8rem;border-radius:var(--radius-sm);font-family:ui-monospace,monospace;font-size:.9rem;word-break:break-all;color:var(--accent-2)}
.akt-s98{text-align:center;font-size:1.4rem;letter-spacing:.4rem;font-family:ui-monospace,monospace}
.akt-s99{margin:0 0 .8rem;color:var(--text-soft);font-size:.9rem}
.akt-s100{background:var(--panel-2);border:1px solid var(--border);padding:1rem;border-radius:var(--radius-sm);font-family:ui-monospace,monospace;font-size:.95rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem;margin-bottom:1rem}
.akt-s101{width:100%;justify-content:center}
.akt-s102{width:auto;padding:.7rem 1.4rem}
.akt-s103{width:100%}
.akt-s104{color:var(--text-dim);font-size:1rem;font-weight:400}
.akt-s105{position:relative}
.akt-s106{color:var(--text-dim);margin-left:.3rem}
.akt-s107{overflow-x:auto;margin:1rem 0}
.akt-s108{width:100%;border-collapse:collapse;font-size:.82rem;color:var(--text-soft);text-align:left}
.akt-s109{border-bottom:2px solid var(--border)}
.akt-s110{font-size:.95rem}
.akt-s111{font-size:.8rem;color:var(--text-dim);margin-top:.15rem}
.akt-s112{font-size:.65rem;color:var(--accent-2);margin-top:.2rem;font-weight:600}
.akt-s113{color:var(--ok)}
.akt-s114{margin-top:1rem;font-size:.85rem;color:var(--text-soft);text-align:center}
.akt-s115{flex:1}
.akt-s116{width:280px;max-width:100%}
.akt-s117{max-width:320px;border-radius:8px}
.akt-s118{text-align:left;font-size:.9rem;color:#555}
.akt-s119{text-align:left;font-size:.85rem;color:#888}
.akt-s120{color:#aaa;font-size:.9rem;text-align:left}
.akt-s121{background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.3);border-radius:8px;padding:1rem;margin-top:1rem;text-align:left}
.akt-s122{font-weight:600;color:#00d4ff;font-size:1.4rem}
.akt-s123{font-size:.85rem;color:#aaa;margin-top:.3rem}
.akt-s124{opacity:.4;cursor:not-allowed}
.akt-s125{margin-bottom:.7rem}
.akt-s126{width:auto;padding:.7rem 1.3rem}
.akt-s127{padding:.4rem .6rem;background:var(--panel);border-radius:6px;text-align:center}
.akt-s128{color:var(--text-dim);font-size:.82rem}
.akt-s129{color:var(--bad);font-size:.82rem}
.akt-s130{color:var(--text-soft);font-size:.9rem;text-align:left;margin-bottom:.8rem}
.akt-s131{display:block;margin:.4rem 0 .2rem;color:var(--text-soft);font-size:.8rem;text-align:left}
.akt-s132{margin:0;text-align:center;letter-spacing:.3rem;font-family:ui-monospace,monospace}
.akt-s133{margin-top:.8rem}
.akt-s134{margin-top: 0.7rem;}
.akt-s135{margin-top:1rem;color:#888;font-size:0.9em}
.akt-s136{margin:4px 0}
.akt-s137{text-align:left;font-size:14px}
.akt-s138{padding-left:20px;line-height:1.6;margin:12px 0}
.akt-s139{background:#e8f5e9;padding:10px;border-radius:6px;border-left:3px solid #2ecc71;margin:12px 0}
.akt-s140{font-size:12px;color:#666}
.akt-s141{color:var(--accent);}
.akt-s142{margin-bottom:.8rem}
.akt-s143{margin-top:.8rem}
.akt-s144{margin-top:.8rem;font-size:.82rem;color:var(--text-dim)}

/* Arrivee depuis "Voir l'espace client" (#btn-demo-login) : scroll + pulse pour
   montrer ou cliquer pour le mode demo. Pur CSS (:target), pas de JS. */
#btn-demo-login { scroll-margin-top: 90px; }
#btn-demo-login:target {
  animation: demoHint 0.9s ease-out 3;
  border-color: var(--primary-blue, #0072ff) !important;
}
@keyframes demoHint {
  0%   { box-shadow: 0 0 0 0 rgba(0, 114, 255, 0.55); }
  100% { box-shadow: 0 0 0 16px rgba(0, 114, 255, 0); }
}
/* Retour showroom -> section "Voici des sites..." pas masquee par la nav fixe */
#showroom { scroll-margin-top: 84px; }

/* Device-trust (2026-07-01) : ligne appareil de confiance + case "se souvenir" */
.akt-device-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 0; border-bottom: 1px solid rgba(255,255,255,.08); }
.akt-device-row:last-child { border-bottom: 0; }
/* 2026-08-18 : la case passe AVANT le champ du code (la 6e touche valide la
   popup, donc dessous elle etait inatteignable) -> la marge passe en bas. */
.akt-remember-dev { display: flex; align-items: center; gap: 8px; margin: 4px 0 16px; font-size: 14px; justify-content: center; }
.akt-remember-dev input { width: auto; }

/* Decouplage 2026-07-01 : badges des 3 etats (contrat / setup) dans le tableau clients */
.akt-flow-badges { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.akt-flow-badges span { font-size: 11px; padding: 1px 6px; border-radius: 6px; white-space: nowrap; }
.akt-flow-badges .flow-ok { background: rgba(46,204,113,.15); color: #2ecc71; }
.akt-flow-badges .flow-no { background: rgba(230,126,34,.15); color: #e67e22; }

/* ===== Éditeur "Modifier mon site" (option autonomie_edition, 2026-07-10) ===== */
/* Scopé sous .cms + préfixé cms- : zéro collision. Aucun style= inline (CSP styleSrcAttr 'none'). */
/* Tokens = variables du portail -> marche en clair ET dans les 6 thèmes sombres. */
#cms-card { padding: 0; border: none; background: none; box-shadow: none; overflow: visible; }
.cms { background: var(--panel); border: 1px solid var(--border-soft); border-radius: var(--radius-lg); box-shadow: var(--shadow-soft); overflow: hidden; }
.cms-head { position: relative; padding: 22px 24px 20px; background: radial-gradient(120% 140% at 100% 0%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 60%), linear-gradient(180deg, color-mix(in srgb, var(--accent) 5%, transparent), transparent); border-bottom: 1px solid var(--border-soft); }
.cms-eyebrow { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--accent); margin: 0 0 8px; }
.cms-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--ok); box-shadow: 0 0 0 4px color-mix(in srgb, var(--ok) 22%, transparent); animation: cmsPulse 2.4s ease-in-out infinite; }
@keyframes cmsPulse { 0%,100% { opacity: 1; } 50% { opacity: .4; } }
.cms-title { margin: 0; font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: var(--text); }
.cms-sub { margin: 6px 0 0; font-size: 14px; color: var(--text-soft); max-width: 52ch; line-height: 1.5; }
.cms-body { padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.cms-panel { border: 1px solid var(--border-soft); border-radius: var(--radius-md); background: var(--panel); transition: border-color .2s, box-shadow .2s; overflow: hidden; }
.cms-panel[open] { border-color: color-mix(in srgb, var(--accent) 32%, var(--border)); box-shadow: var(--shadow-soft); }
.cms-sum { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 14px; padding: 15px 16px; user-select: none; }
.cms-sum::-webkit-details-marker { display: none; }
.cms-sum::marker { content: ""; }
.cms-sum:hover { background: color-mix(in srgb, var(--accent) 4%, transparent); }
.cms-ico { flex: 0 0 auto; width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center; font-size: 19px; background: color-mix(in srgb, var(--accent) 12%, transparent); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent); }
.cms-pt { flex: 1 1 auto; min-width: 0; }
.cms-pt b { display: block; font-size: 15.5px; font-weight: 700; letter-spacing: -.01em; color: var(--text); }
.cms-pt span { display: block; font-size: 12.5px; color: var(--text-dim); margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cms-chev { flex: 0 0 auto; color: var(--text-dim); font-size: 20px; transition: transform .25s ease; }
.cms-panel[open] .cms-chev { transform: rotate(90deg); color: var(--accent); }
.cms-pc { padding: 4px 16px 18px; border-top: 1px solid var(--border-soft); }
.cms input[type=text], .cms input[type=tel], .cms input[type=email], .cms input[type=url], .cms textarea { width: 100%; font-family: inherit; font-size: 14.5px; color: var(--text); background: var(--panel); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 10px 12px; transition: border-color .15s, box-shadow .15s; }
.cms textarea { resize: vertical; min-height: 78px; line-height: 1.5; }
.cms input::placeholder, .cms textarea::placeholder { color: color-mix(in srgb, var(--text-dim) 75%, transparent); }
.cms input:focus, .cms textarea:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent); }
.cms-fld { display: block; margin: 12px 0 0; }
.cms-lbl { display: block; font-size: 11.5px; font-weight: 600; letter-spacing: .03em; color: var(--text-dim); margin: 0 0 6px; text-transform: uppercase; }
.cms-hrs { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.cms-hrow { display: grid; grid-template-columns: 96px 1fr auto; align-items: center; gap: 10px; }
.cms-hday { font-size: 13.5px; font-weight: 600; color: var(--text-soft); }
.cms-hrow input { padding: 9px 12px; }
.cms-closed { border: 1px solid var(--border); background: var(--panel); color: var(--text-dim); font: inherit; font-size: 12px; padding: 8px 11px; border-radius: var(--radius-sm); cursor: pointer; white-space: nowrap; transition: .15s; }
.cms-closed:hover { border-color: var(--bad); color: var(--bad); }
.cms-sec { border: 1px solid var(--border-soft); border-radius: var(--radius-md); padding: 14px; margin-top: 12px; background: color-mix(in srgb, var(--accent) 3%, transparent); }
.cms input.cms-sectt { border: none; background: transparent; font-size: 15px; font-weight: 700; padding: 2px 0 10px; margin-bottom: 8px; border-bottom: 1px dashed var(--border); border-radius: 0; }
.cms input.cms-sectt:focus { box-shadow: none; border-bottom-color: var(--accent); }
.cms-r { display: grid; grid-template-columns: 1fr 96px 30px; gap: 8px; align-items: center; margin-top: 8px; }
.cms-rdesc { grid-column: 1 / 3; margin-top: -2px; }
.cms input.cms-desc { font-size: 13px; color: var(--text-soft); padding: 7px 11px; }
.cms-del { width: 30px; height: 30px; border-radius: 8px; border: 1px solid var(--border-soft); background: var(--panel); color: var(--text-dim); cursor: pointer; font-size: 14px; display: grid; place-items: center; transition: .15s; opacity: .5; }
.cms-r:hover .cms-del, .cms-actu:hover .cms-del { opacity: 1; }
.cms-del:hover { border-color: var(--bad); color: var(--bad); background: color-mix(in srgb, var(--bad) 8%, transparent); }
.cms-add { margin-top: 12px; display: inline-flex; align-items: center; gap: 7px; border: 1px dashed var(--border); background: transparent; color: var(--text-soft); font: inherit; font-size: 13.5px; font-weight: 600; padding: 9px 14px; border-radius: var(--radius-sm); cursor: pointer; transition: .15s; }
.cms-add:hover { border-color: var(--accent); color: var(--accent); background: color-mix(in srgb, var(--accent) 5%, transparent); }
.cms-ghost { border-style: solid; }
.cms-secfoot { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.cms-delsec { border: none; background: transparent; color: var(--text-dim); font: inherit; font-size: 12.5px; cursor: pointer; padding: 9px 4px; margin-top: 12px; }
.cms-delsec:hover { color: var(--bad); }
.cms-actu { border: 1px solid var(--border-soft); border-radius: var(--radius-md); padding: 13px; margin-top: 10px; }
.cms-atop { display: grid; grid-template-columns: 1fr 150px 30px; gap: 8px; align-items: center; }
.cms-actu textarea { margin-top: 8px; min-height: 60px; }
.cms-plat { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-top: 14px; padding: 14px; border-radius: var(--radius-md); background: color-mix(in srgb, var(--gold) 10%, transparent); border: 1px solid color-mix(in srgb, var(--gold) 30%, transparent); }
.cms-sw { position: relative; width: 44px; height: 26px; flex: 0 0 auto; cursor: pointer; }
.cms-sw input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.cms-sw i { position: absolute; inset: 0; border-radius: 99px; background: var(--border); transition: .2s; }
.cms-sw i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.25); transition: .2s; }
.cms-sw input:checked + i { background: var(--ok); }
.cms-sw input:checked + i::after { transform: translateX(18px); }
.cms-plat-in { flex: 1 1 200px; display: flex; gap: 8px; }
.cms-plat-in input:last-child { max-width: 100px; }
.cms-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 14px; }
.cms-full { grid-column: 1 / -1; }
.cms-inico { position: relative; }
.cms-inico span { position: absolute; left: 11px; top: 50%; transform: translateY(-50%); font-size: 15px; opacity: .7; pointer-events: none; }
.cms .cms-inico input { padding-left: 38px; }
.cms-foot { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 16px; }
.cms-save { border: none; background: linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 86%, #000)); color: var(--on-accent); font: inherit; font-size: 14px; font-weight: 700; padding: 11px 20px; border-radius: var(--radius-sm); cursor: pointer; box-shadow: 0 6px 16px color-mix(in srgb, var(--accent) 28%, transparent); transition: transform .12s, box-shadow .2s, background .3s; }
.cms-save:hover { transform: translateY(-1px); box-shadow: 0 10px 22px color-mix(in srgb, var(--accent) 34%, transparent); }
.cms-save:active { transform: translateY(0); }
.cms-save.cms-ok { background: var(--ok); box-shadow: 0 6px 16px color-mix(in srgb, var(--ok) 30%, transparent); }
.cms-cta { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 4px 14px 14px; padding: 16px 18px; border-radius: var(--radius-md); background: color-mix(in srgb, var(--accent) 5%, transparent); border: 1px solid var(--border-soft); }
.cms-cta p { margin: 0; font-size: 13.5px; color: var(--text-soft); line-height: 1.45; }
.cms-cta b { color: var(--text); }
.cms-ctabtn { border: 1px solid var(--accent); background: var(--panel); color: var(--accent); font: inherit; font-weight: 700; font-size: 13.5px; padding: 9px 16px; border-radius: var(--radius-sm); cursor: pointer; white-space: nowrap; transition: .15s; }
.cms-ctabtn:hover { background: var(--accent); color: var(--on-accent); }
@media (max-width: 560px) {
  .cms-hrow { grid-template-columns: 74px 1fr auto; }
  .cms-r { grid-template-columns: 1fr 76px 30px; }
  .cms-grid2 { grid-template-columns: 1fr; }
  .cms-atop { grid-template-columns: 1fr 104px 30px; }
}

/* Admin — modale « Site lié » : import fichier prospect.json + conteneur de l'éditeur partagé */
.akt-file-lbl { display: block; text-align: left; margin: 12px 0 4px; font-size: 13px; font-weight: 600; color: var(--text-soft, #64748b); }
.akt-file-in { display: block; width: 100%; box-sizing: border-box; padding: 9px 10px; font: inherit; font-size: 13px; border: 1px dashed var(--border-soft, #cbd5e1); border-radius: 10px; background: var(--panel, #fff); cursor: pointer; }
.akt-editor-popup { width: min(960px, 96vw) !important; }
.akt-admin-editor-wrap { text-align: left; max-height: 62vh; overflow-y: auto; overflow-x: hidden; padding-right: 4px; }
.akt-admin-editor-wrap .cms { margin: 0; }
/* Guide de prise en main a imprimer (2026-08-24) — modale de l'onglet Clients.
   Ces trois classes remplacent des attributs `style=`, interdits dans public/
   par l'audit CSP (tests/s18_sec_audit.test.js, #8 styleSrc). */
.akt-s145{display:flex;gap:.6rem;align-items:flex-start;text-align:left;margin-top:.8rem}
.akt-s146{margin-top:.25rem}
.akt-s147{margin-top:1rem}
/* Le texte d'explication sous une case a cocher : plus petit, plus pale, non
   gras. (`akt-s19` avait ete choisie a tort ici : elle met en GRAS.) */
.akt-s148{display:block;font-size:.8rem;font-weight:400;color:var(--text-dim);margin-top:.25rem}
