/* V22 free readiness diagnostic */
.diagnostic{position:relative;overflow:hidden}
.diagnostic:before{content:"";position:absolute;inset:-20% auto auto -8%;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(108,80,238,.12),transparent 68%);pointer-events:none}
.diagnostic-shell{position:relative;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}
.diagnostic-copy{position:sticky;top:108px;padding-top:14px}
.diagnostic-copy h2{max-width:620px;margin:10px 0 18px;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.98;letter-spacing:-.055em}
.diagnostic-copy>p{max-width:600px;color:var(--muted);font-size:15px;line-height:1.8}
.diagnostic-trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.diagnostic-trust span{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#5d6471;font-size:9px;font-weight:750}
.diagnostic-card{padding:28px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-soft)}
.diagnostic-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.diagnostic-top h3{margin:5px 0 0;font:800 clamp(1.45rem,2vw,2rem)/1.08 var(--display);letter-spacing:-.035em}
.diagnostic-progress{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#f2efff;color:#5d43d6;font-size:9px;font-weight:850}
.diagnostic-role-label{display:block;margin-bottom:7px;color:#707889;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.diagnostic-role{width:100%;min-height:48px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:#fafafd;color:#20242d;font:750 12px var(--body)}
.diagnostic-questions{display:grid;gap:12px;margin:18px 0}
.diagnostic-questions fieldset{margin:0;padding:16px;border:1px solid #e7e8ee;border-radius:16px;background:#fbfbfd}
.diagnostic-questions legend{width:100%;padding:0 0 11px;color:#252a34;font:750 12px/1.55 var(--body)}
.diagnostic-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.diagnostic-options label{position:relative;cursor:pointer}
.diagnostic-options input{position:absolute;opacity:0;pointer-events:none}
.diagnostic-options span{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px;border:1px solid #dedfe6;border-radius:10px;background:#fff;color:#697181;font-size:10px;font-weight:750;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}
.diagnostic-options input:checked+span{border-color:#8e74ff;background:#eee9ff;color:#4e38b0;box-shadow:0 6px 16px rgba(88,58,207,.09)}
.diagnostic-options input:focus-visible+span{outline:3px solid rgba(111,82,246,.2);outline-offset:2px}
.diagnostic-submit{width:100%;min-height:50px;margin-top:4px}
.diagnostic-error{min-height:18px;margin:9px 0 0;color:#9b4f35;font-size:10px}
.diagnostic-result{display:grid;grid-template-columns:auto 1fr;gap:22px;margin-top:20px;padding:20px;border:1px solid #dcd5ff;border-radius:18px;background:linear-gradient(135deg,#f6f3ff,#fbfbff)}
.diagnostic-result[hidden]{display:none}
.diagnostic-score{display:flex;align-items:flex-end;justify-content:center;min-width:118px;height:118px;padding:16px;border-radius:50%;background:#171927;color:#fff;box-shadow:0 16px 36px rgba(29,26,66,.18)}
.diagnostic-score span{font:800 40px/1 var(--display);letter-spacing:-.05em}
.diagnostic-score small{margin:0 0 5px 3px;color:#b9bdd0;font-size:10px}
.diagnostic-result-copy h3{margin:5px 0 9px;font:800 1.35rem/1.2 var(--display);letter-spacing:-.03em}
.diagnostic-result-copy>p{margin:0;color:#656d7d;font-size:11px;line-height:1.65}
.diagnostic-focus{display:grid;gap:4px;margin:14px 0;padding:12px 14px;border-left:3px solid #7352f6;background:#fff}
.diagnostic-focus small{color:#838b9b;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.diagnostic-focus strong{color:#343947;font-size:10px;line-height:1.5}
.diagnostic-result-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.diagnostic-result-actions .btn{min-height:42px;padding:10px 14px}
.diagnostic-copy-result{border:0;background:transparent;cursor:pointer;font:750 10px var(--body)}
.diagnostic-disclaimer{display:block;margin-top:12px;color:#8b92a0;font-size:8px;line-height:1.55}
@media(max-width:900px){.diagnostic-shell{grid-template-columns:1fr;gap:24px}.diagnostic-copy{position:static}.diagnostic-copy h2{max-width:760px}.diagnostic-card{padding:24px}}
@media(max-width:560px){.diagnostic-card{padding:18px}.diagnostic-top{display:grid}.diagnostic-options{grid-template-columns:1fr}.diagnostic-result{grid-template-columns:1fr}.diagnostic-score{width:106px;height:106px;min-width:106px}.diagnostic-result-actions{align-items:stretch}.diagnostic-result-actions .btn{width:100%}.diagnostic-copy-result{text-align:left;padding:8px 0}}
