/* iAnalyse — styles du questionnaire. Tout est isolé sous .ian. */
.ian{
    --ian-bg:#0A0A0C;--ian-card:#15151A;--ian-card-2:#1c1c22;--ian-line:rgba(255,255,255,.1);
    --ian-tx:#F4F4F5;--ian-mut:#A1A1AA;--ian-low:#f0584f;--ian-mid:#f0b13a;--ian-high:#34d399;
    --ian-accent:#E5231B;--ian-on-accent:#fff;--ian-radius:8px;--ian-radius-lg:12px;--ian-field-tx:#ffffff;
    font-family:inherit;color:var(--ian-tx);line-height:1.6;font-size:17px;
    max-width:720px;margin:0 auto;padding:16px;box-sizing:border-box;-webkit-text-size-adjust:100%;
}
.ian.ian-light{
    --ian-bg:#ffffff;--ian-card:#ffffff;--ian-card-2:#f4f4f6;--ian-line:rgba(0,0,0,.12);
    --ian-tx:#16161a;--ian-field-tx:#16161a;--ian-mut:#60606a;--ian-low:#d93025;--ian-mid:#b9770e;--ian-high:#12804a;
}
.ian *,.ian *::before,.ian *::after{box-sizing:border-box}
.ian-card{background:var(--ian-card);border:1px solid var(--ian-line);border-radius:var(--ian-radius-lg);padding:32px;position:relative}
.ian.ian-dark .ian-card{box-shadow:0 10px 40px rgba(0,0,0,.35)}
.ian.ian-light .ian-card{box-shadow:0 8px 30px rgba(0,0,0,.08)}
.ian h2,.ian h3,.ian legend{color:var(--ian-tx);font-family:inherit;margin:0}
.ian-title{font-size:1.75rem;line-height:1.25;font-weight:700;margin:0 0 12px}
.ian-sub{font-size:1.15rem;font-weight:700;margin:32px 0 14px}
.ian-text p{margin:0 0 12px;color:var(--ian-mut)}
.ian-error{margin:14px 0 0;padding:10px 14px;border-radius:var(--ian-radius);background:rgba(229,35,27,.12);color:var(--ian-low);font-size:.95rem}
.ian-error[hidden]{display:none}
.ian-loading{margin:0;color:var(--ian-mut)}
.ian-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ian :focus-visible{outline:3px solid var(--ian-accent);outline-offset:2px}
.ian [tabindex="-1"]:focus{outline:none}

/* boutons */
.ian-btn{appearance:none;border:1px solid var(--ian-line);background:transparent;color:var(--ian-tx);font:inherit;font-weight:600;
    padding:14px 24px;border-radius:var(--ian-radius);cursor:pointer;transition:transform .15s,opacity .15s,background .15s;text-decoration:none;display:inline-block;text-align:center}
.ian-btn:hover:not(:disabled){transform:translateY(-1px)}
.ian-btn:disabled{opacity:.45;cursor:not-allowed}
.ian-primary{background:var(--ian-accent);border-color:var(--ian-accent);color:var(--ian-on-accent)}
.ian-ghost{color:var(--ian-mut)}
.ian-ghost:hover:not(:disabled){background:var(--ian-card-2)}
.ian-cta{display:block;margin:24px 0 12px}

/* entête de question */
.ian-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.ian-chip{background:rgba(229,35,27,.14);color:var(--ian-accent);font-weight:600;font-size:.82rem;padding:4px 12px;border-radius:99px}
.ian.ian-light .ian-chip{background:rgba(0,0,0,.06);color:var(--ian-tx)}
.ian-count{color:var(--ian-mut);font-size:.9rem}
.ian-progress{height:6px;background:var(--ian-card-2);border-radius:99px;overflow:hidden;margin-bottom:26px}
.ian-progress-fill{display:block;height:100%;background:var(--ian-accent);border-radius:99px;transition:width .4s ease}
.ian-fieldset{border:0;padding:0;margin:0;min-width:0}
.ian-question{font-size:1.4rem;line-height:1.35;font-weight:700;padding:0;margin-bottom:8px}
.ian-hint{margin:0 0 16px;color:var(--ian-mut);font-size:.9rem}
.ian-fieldset .ian-opt:first-of-type{margin-top:18px}

/* options (radio / cases) */
.ian-opt,.ian-check{display:flex;align-items:flex-start;gap:14px;cursor:pointer;position:relative}
.ian-opt{padding:16px 18px;border:1px solid var(--ian-line);border-radius:var(--ian-radius);margin-bottom:10px;background:var(--ian-card-2);transition:border-color .15s,background .15s}
.ian-opt:hover{border-color:var(--ian-accent)}
.ian-opt:has(input:checked){border-color:var(--ian-accent);background:rgba(229,35,27,.08)}
.ian-opt input,.ian-check input{position:absolute;opacity:0;width:1px;height:1px}
.ian-mark{flex:0 0 22px;width:22px;height:22px;border:2px solid var(--ian-mut);margin-top:2px;position:relative;transition:all .15s;background:transparent}
.ian-mark.is-dot{border-radius:50%}
.ian-mark.is-box{border-radius:4px}
input:checked + .ian-mark{border-color:var(--ian-accent);background:var(--ian-accent)}
input:checked + .ian-mark.is-dot::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--ian-on-accent)}
input:checked + .ian-mark.is-box::after{content:"";position:absolute;left:5px;top:1px;width:6px;height:12px;border:solid var(--ian-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}
input:focus-visible + .ian-mark{outline:3px solid var(--ian-accent);outline-offset:2px}
.ian-opt-text{flex:1}
.ian-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.ian-nav .ian-primary{margin-left:auto}

/* question à graduation (nombre) */
.ian-scale{display:flex;align-items:center;gap:12px;margin-top:18px;max-width:320px}
.ian .ian-number{max-width:160px !important;text-align:center;font-size:1.3rem !important;font-weight:700 !important}
.ian-unit{color:var(--ian-mut);font-weight:600}

/* formulaire de déblocage */
.ian-decoy{display:flex;align-items:center;gap:24px;margin-bottom:26px;filter:blur(7px);opacity:.8;user-select:none;pointer-events:none}
.ian-decoy-list{flex:1;display:grid;gap:12px}
.ian-form{margin-top:22px;display:grid;gap:16px}
.ian-field{display:grid;gap:6px}
.ian-label{font-weight:600;font-size:.95rem}
/* !important : les thèmes WordPress / Elementor imposent souvent leurs propres champs (texte sombre, angles droits). */
.ian .ian-input,.ian input.ian-input[type]{width:100% !important;max-width:100% !important;font:inherit !important;color:var(--ian-field-tx) !important;-webkit-text-fill-color:var(--ian-field-tx) !important;caret-color:var(--ian-field-tx);
    background:var(--ian-card-2) !important;border:1px solid var(--ian-line) !important;border-radius:var(--ian-radius) !important;padding:14px 16px !important;box-shadow:none;height:auto !important;line-height:1.4 !important;-webkit-appearance:none;appearance:none}
.ian .ian-input::placeholder{color:var(--ian-mut) !important;-webkit-text-fill-color:var(--ian-mut) !important;opacity:.7}
.ian .ian-input:-webkit-autofill,.ian .ian-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ian-field-tx) !important;-webkit-box-shadow:0 0 0 1000px var(--ian-card-2) inset !important;caret-color:var(--ian-field-tx)}
.ian .ian-input:focus{outline:none;border-color:var(--ian-accent) !important;box-shadow:0 0 0 3px rgba(229,35,27,.25)}
.ian-trap{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.ian-check{font-size:.9rem;color:var(--ian-mut)}
.ian-check a{color:var(--ian-accent)}

/* résultats */
.ian-score{display:flex;align-items:center;gap:28px;margin:20px 0 12px}
.ian-score-meta{flex:1}
.ian-ring{position:relative;width:160px;height:160px;flex:0 0 160px}
.ian-ring svg{display:block;width:100%;height:100%}
.ian-ring-bg{fill:none;stroke:var(--ian-card-2);stroke-width:14}
.ian-ring-arc{fill:none;stroke:var(--ian-accent);stroke-width:14;stroke-linecap:round;transition:stroke-dashoffset 1.1s cubic-bezier(.2,.8,.2,1)}
.ian-ring-value{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.4rem;font-weight:800}
.ian-level{font-size:1.2rem;font-weight:700;margin:0 0 8px}
.ian-low{color:var(--ian-low)}.ian-mid{color:var(--ian-mid)}.ian-high{color:var(--ian-high)}
.ian-ring-arc.ian-low{stroke:var(--ian-low)}.ian-ring-arc.ian-mid{stroke:var(--ian-mid)}.ian-ring-arc.ian-high{stroke:var(--ian-high)}
.ian-theme{padding:16px 0;border-bottom:1px solid var(--ian-line)}
.ian-theme:last-of-type{border-bottom:0}
.ian-theme-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}
.ian-theme-name{font-weight:700}
.ian-theme-pct{font-weight:800}
.ian-bar{height:10px;background:var(--ian-card-2);border-radius:99px;overflow:hidden}
.ian-bar-fill{display:block;height:100%;background:var(--ian-accent);border-radius:99px;transition:width 1s cubic-bezier(.2,.8,.2,1)}
.ian-bar-fill.ian-low{background:var(--ian-low)}.ian-bar-fill.ian-mid{background:var(--ian-mid)}.ian-bar-fill.ian-high{background:var(--ian-high)}
.ian-theme-level{font-weight:600;font-size:.95rem;margin:10px 0 4px}
.ian-advice{margin:0;padding-left:20px;color:var(--ian-mut)}
.ian-advice li{margin-bottom:8px}
.ian-advice strong{color:var(--ian-tx)}
.ian-note{margin:26px 0 0;padding:12px 16px;border-radius:var(--ian-radius);font-size:.92rem}
.ian-note.is-ok{background:rgba(52,211,153,.12);color:var(--ian-high)}
.ian-note.is-warn{background:rgba(240,177,58,.14);color:var(--ian-mid)}

@media (max-width:600px){
    .ian{padding:10px;font-size:16px}
    .ian-card{padding:22px 18px;border-radius:var(--ian-radius-lg)}
    .ian-title{font-size:1.45rem}
    .ian-question{font-size:1.2rem}
    .ian-score,.ian-decoy{flex-direction:column;align-items:stretch;text-align:center}
    .ian-ring{margin:0 auto}
    .ian-decoy-list{width:100%}
    .ian-nav{flex-direction:column-reverse}
    .ian-nav .ian-btn{width:100%;margin-left:0}
}
@media (prefers-reduced-motion:reduce){
    .ian *{transition:none !important}
}
