/* G7 Diagnostic IA — styles front (portés de la maquette tmp-diag, préfixe g7d-) */

.g7diag-wrap{
  --g7d-bg:#0f1115; --g7d-card:#181b22; --g7d-line:#2a2f3a; --g7d-txt:#e8eaed;
  --g7d-muted:#9aa0ac; --g7d-accent:#4f7cff; --g7d-accent2:#7c5cff; --g7d-ok:#33c27f;
  width:100%; max-width:680px; margin:0 auto;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color:var(--g7d-txt);
}
.g7diag-wrap *{box-sizing:border-box}

/* page rapport standalone : fond sombre plein écran */
body.g7diag-report-body{
  background:#0f1115; margin:0; min-height:100vh;
  display:flex; align-items:flex-start; justify-content:center; padding:32px 24px;
}

.g7d-badge{
  display:inline-block; font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--g7d-muted); border:1px solid var(--g7d-line); border-radius:999px; padding:4px 12px; margin-bottom:14px;
}
.g7d-title{font-size:22px; line-height:1.3; margin:0 0 6px; color:var(--g7d-txt)}
.g7d-sub{color:var(--g7d-muted); font-size:14px; margin:0 0 22px}
.g7d-progress{height:6px; background:var(--g7d-line); border-radius:999px; overflow:hidden; margin-bottom:8px}
.g7d-bar{height:100%; width:0; background:linear-gradient(90deg,var(--g7d-accent),var(--g7d-accent2)); transition:width .25s ease}
.g7d-meta{display:flex; justify-content:space-between; font-size:12px; color:var(--g7d-muted); margin-bottom:22px}
.g7d-card{background:var(--g7d-card); border:1px solid var(--g7d-line); border-radius:16px; padding:26px 24px}

.g7d-block-tag{font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--g7d-accent); margin-bottom:10px}
.g7d-q{font-size:19px; line-height:1.4; margin-bottom:20px; font-weight:600}
.g7d-q-hint{font-size:13px; color:var(--g7d-muted); margin-bottom:18px; margin-top:-10px; font-style:italic}
.g7d-opts{display:flex; flex-direction:column; gap:10px}
.g7d-opt{
  text-align:left; background:#1f232c; border:1px solid var(--g7d-line); color:var(--g7d-txt);
  padding:14px 16px; border-radius:12px; font-size:15px; cursor:pointer; transition:.15s; line-height:1.35;
}
.g7d-opt:hover{border-color:var(--g7d-accent); background:#232834}
.g7d-opt.sel{border-color:var(--g7d-accent); background:#26304a}
.g7d-nav{display:flex; justify-content:space-between; align-items:center; margin-top:22px}
.g7d-btn{
  background:var(--g7d-accent); color:#fff; border:none; padding:12px 22px; border-radius:10px;
  font-size:15px; font-weight:600; cursor:pointer; transition:.15s; text-decoration:none; display:inline-block;
}
.g7d-btn:disabled{opacity:.4; cursor:not-allowed}
.g7d-btn.ghost{background:transparent; color:var(--g7d-muted); border:1px solid var(--g7d-line)}
.g7d-btn.ghost:hover{color:var(--g7d-txt)}
.g7d-btn.cta-main{background:linear-gradient(90deg,var(--g7d-accent),var(--g7d-accent2)); font-size:16px; padding:14px 28px}

/* bascule */
.g7d-bascule{background:#13161d; border:1px solid var(--g7d-accent); border-radius:16px; padding:22px 24px; margin-bottom:20px}
.g7d-bascule .icon{font-size:28px; margin-bottom:10px}
.g7d-bascule h3{font-size:16px; font-weight:700; margin-bottom:8px; color:var(--g7d-txt)}
.g7d-bascule p{font-size:14px; color:var(--g7d-muted); line-height:1.5}

/* calcul / mouline */
.g7d-calc{text-align:center; padding:40px 24px}
.g7d-spinner{width:46px; height:46px; border:4px solid var(--g7d-line); border-top-color:var(--g7d-accent);
  border-radius:50%; margin:0 auto 22px; animation:g7dspin 1s linear infinite}
@keyframes g7dspin{to{transform:rotate(360deg)}}
.g7d-calc h2{font-size:20px; margin-bottom:8px}
.g7d-calc p{color:var(--g7d-muted); font-size:14px}
.g7d-calc-steps{list-style:none; padding:0; margin:18px auto 0; max-width:320px; text-align:left}
.g7d-calc-steps li{font-size:14px; color:var(--g7d-muted); padding:8px 0 8px 26px; position:relative; opacity:.4; transition:.3s}
.g7d-calc-steps li::before{content:"○"; position:absolute; left:0; color:var(--g7d-muted)}
.g7d-calc-steps li.active{opacity:1; color:var(--g7d-txt)}
.g7d-calc-steps li.active::before{content:"◐"; color:var(--g7d-accent)}
.g7d-calc-steps li.done{opacity:.8; color:var(--g7d-ok)}
.g7d-calc-steps li.done::before{content:"✓"; color:var(--g7d-ok)}

/* formulaire lead */
.g7d-lead-form{padding:10px 0}
.g7d-lead-form h2{font-size:22px; margin-bottom:8px}
.g7d-lead-form .g7d-sub{margin-bottom:24px}
.g7d-field{margin-bottom:16px}
.g7d-field label{display:block; font-size:13px; color:var(--g7d-muted); margin-bottom:6px}
.g7d-field input{width:100%; background:#1f232c; border:1px solid var(--g7d-line); color:var(--g7d-txt);
  padding:12px 14px; border-radius:10px; font-size:15px; outline:none; transition:.15s}
.g7d-field input:focus{border-color:var(--g7d-accent)}
.g7d-field input.error{border-color:#ff5c5c}
.g7d-field .err-msg{font-size:12px; color:#ff5c5c; margin-top:4px; display:none}
.g7d-field input.error ~ .err-msg{display:block}
.g7d-field-row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.g7d-consent{display:flex; align-items:flex-start; gap:10px; font-size:13px; color:var(--g7d-muted); line-height:1.5; margin:4px 0 4px}
.g7d-consent input{margin-top:3px; flex:0 0 auto}
.g7d-consent.error{color:#ff8a8a}
.g7d-hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
@media(max-width:480px){.g7d-field-row{grid-template-columns:1fr}}

/* confirmation */
.g7d-confirm{text-align:center; padding:24px 10px}
.g7d-confirm .confirm-icon{font-size:42px; margin-bottom:8px}
.g7d-confirm h2{font-size:24px; margin-bottom:10px}
.g7d-confirm .confirm-lead{font-size:16px; color:var(--g7d-txt); margin-bottom:10px; line-height:1.5}
.g7d-confirm .confirm-sub{font-size:14px; color:var(--g7d-muted); line-height:1.6; max-width:440px; margin:0 auto}

/* résultat / rapport */
.g7d-res{padding:6px 0}
.g7d-res h2{font-size:22px; margin-bottom:6px}
.g7d-score-global{text-align:center; margin:20px 0}
.g7d-score-global .big{font-size:48px; font-weight:800; color:var(--g7d-accent); line-height:1}
.g7d-score-global .lbl{font-size:13px; color:var(--g7d-muted); margin-top:4px}
.g7d-radar-wrap{display:flex; justify-content:center; margin:20px 0 8px}
.g7d-radar-legend{display:grid; grid-template-columns:1fr 1fr; gap:8px 18px; max-width:420px; margin:0 auto 18px}
.g7d-radar-legend .item{display:flex; justify-content:space-between; font-size:13px; color:var(--g7d-muted)}
.g7d-radar-legend .item b{color:var(--g7d-txt)}
.g7d-verdict{background:#19251f; border:1px solid #234634; border-radius:12px; padding:16px; margin-top:6px}
.g7d-verdict .lvl{color:var(--g7d-ok); font-weight:700; font-size:16px; margin-bottom:6px}
.g7d-verdict p{color:var(--g7d-muted); font-size:14px; line-height:1.5}
.g7d-declic-section{margin-top:22px}
.g7d-declic-header{font-size:15px; font-weight:700; color:var(--g7d-txt); margin-bottom:6px}
.g7d-declic-intro{font-size:13px; color:var(--g7d-muted); margin-bottom:14px; line-height:1.5}
.g7d-declic-item{background:#1a1810; border:1px solid #3a3010; border-radius:12px; padding:14px 16px; margin-bottom:10px}
.g7d-declic-item .dtag{font-size:11px; color:#ffcf6b; letter-spacing:.05em; text-transform:uppercase; margin-bottom:6px}
.g7d-declic-item p{font-size:14px; color:#e0d4a0; line-height:1.5}
.g7d-declic-expert{background:#1a1f1a; border:1px solid #234634; border-radius:12px; padding:16px; color:var(--g7d-ok); font-size:14px; line-height:1.5}
.g7d-cta-block{margin-top:22px; text-align:center}
.g7d-cta-block p{font-size:13px; color:var(--g7d-muted); margin-top:10px; line-height:1.5}
.g7d-note{font-size:12px; color:var(--g7d-muted); margin-top:18px; text-align:center; line-height:1.5; padding:12px; background:rgba(255,255,255,.03); border-radius:8px}

/* section conversion (Audit / Formation) en bas du rapport */
.g7d-convert{margin-top:28px; padding-top:24px; border-top:1px solid var(--g7d-line)}
.g7d-convert-title{font-size:19px; font-weight:700; color:var(--g7d-txt); text-align:center; margin-bottom:6px}
.g7d-convert-sub{font-size:14px; color:var(--g7d-muted); text-align:center; line-height:1.5; max-width:520px; margin:0 auto 20px}
.g7d-convert-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.g7d-convert-card{display:flex; flex-direction:column; background:#1f232c; border:1px solid var(--g7d-line); border-radius:14px; padding:20px}
.g7d-convert-card-title{font-size:16px; font-weight:700; color:var(--g7d-txt); line-height:1.35; margin-bottom:10px}
.g7d-convert-card-text{font-size:14px; color:var(--g7d-muted); line-height:1.55; margin-bottom:18px; flex:1 1 auto}
.g7d-convert-card .g7d-btn{align-self:flex-start; width:100%; text-align:center}
@media(max-width:560px){.g7d-convert-grid{grid-template-columns:1fr}}

/* section blog (3 derniers articles) en bas du rapport */
.g7d-blog{margin-top:28px; padding-top:24px; border-top:1px solid var(--g7d-line)}
.g7d-blog-title{font-size:19px; font-weight:700; color:var(--g7d-txt); text-align:center; margin-bottom:18px}
.g7d-blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.g7d-blog-card{display:flex; flex-direction:column; background:#1f232c; border:1px solid var(--g7d-line); border-radius:14px; overflow:hidden; text-decoration:none; transition:.15s}
.g7d-blog-card:hover{border-color:var(--g7d-accent)}
.g7d-blog-imgwrap{aspect-ratio:16/9; overflow:hidden; background:#13161d}
.g7d-blog-imgwrap .g7d-blog-thumb,.g7d-blog-imgwrap img{width:100%; height:100%; object-fit:cover; display:block}
.g7d-blog-body{padding:14px 16px; display:flex; flex-direction:column; flex:1 1 auto}
.g7d-blog-card-title{font-size:15px; font-weight:700; color:var(--g7d-txt); line-height:1.35; margin-bottom:8px}
.g7d-blog-excerpt{font-size:13px; color:var(--g7d-muted); line-height:1.5; margin-bottom:12px; flex:1 1 auto}
.g7d-blog-date{font-size:12px; color:var(--g7d-muted); text-transform:uppercase; letter-spacing:.04em}
.g7d-blog-all{text-align:center; margin-top:18px}
@media(max-width:680px){.g7d-blog-grid{grid-template-columns:1fr}}
@media(max-width:520px){.g7d-radar-legend{grid-template-columns:1fr}}
