.diag-section{padding:.5rem 1.25rem 2.5rem}.diag-flow,.diag-result{max-width:660px;margin:2rem auto 0}.diag-progress{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem}.diag-progress-track{flex:1 1;height:4px;background:var(--color-line-subtle);border-radius:999px;overflow:hidden}.diag-progress-fill{height:100%;background:var(--color-accent-ink);border-radius:999px;transition:width .35s cubic-bezier(.22,1,.36,1)}.diag-progress-label{font-family:var(--font-mono);font-size:var(--text-mono);color:var(--color-meta-text);letter-spacing:.04em}.diag-card{background:var(--color-paper-bg);border:1px solid var(--color-paper-rule);border-radius:3px;padding:2rem 1.9rem;box-shadow:0 1px 3px rgba(31,31,29,.04);animation:diag-reveal .42s cubic-bezier(.22,1,.36,1) both}.diag-card--center{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 1.9rem}.diag-q-label{font-family:var(--font-display);font-size:clamp(22px,3.2vw,30px);line-height:1.18;letter-spacing:-.02em;color:var(--color-canvas-text);margin:0 0 .4rem}.diag-q-helper{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:1.5;color:var(--color-meta-text);margin:0 0 1.4rem}.diag-options{display:flex;flex-direction:column;gap:.6rem}.diag-option{display:flex;align-items:flex-start;gap:.8rem;width:100%;text-align:left;background:var(--color-canvas-bg);border:1px solid var(--color-line);border-radius:3px;padding:.85rem 1rem;cursor:pointer;font-family:var(--font-body);transition:border-color .15s ease,background .15s ease,transform .08s ease}.diag-option:hover{border-color:var(--color-accent-ink)}.diag-option:active{transform:translateY(1px)}.diag-option.is-selected{border-color:var(--color-accent-ink);background:var(--color-paper-bg);box-shadow:inset 0 0 0 1px var(--color-accent-ink)}.diag-option-mark{flex:0 0 auto;width:18px;height:18px;margin-top:2px;border:1.5px solid var(--color-mute);border-radius:4px;position:relative;transition:border-color .15s ease,background .15s ease}.diag-option.is-selected .diag-option-mark{border-color:var(--color-accent-ink);background:var(--color-accent-highlight)}.diag-option.is-selected .diag-option-mark:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid var(--color-canvas-text);border-width:0 2px 2px 0;transform:rotate(45deg)}.diag-option-text{display:flex;flex-direction:column;gap:.1rem}.diag-option-label{font-size:var(--text-body);color:var(--color-body-text);font-weight:500}.diag-option-sub{font-size:var(--text-body-sm);color:var(--color-meta-text)}.diag-nav{display:flex;align-items:center;justify-content:space-between;margin-top:1.6rem}.diag-nav--center{justify-content:center}.diag-btn{display:inline-block;background:var(--color-accent-ink);color:#fff;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;border:1px solid var(--color-accent-ink);border-radius:3px;padding:.7rem 1.4rem;cursor:pointer;text-decoration:none;transition:opacity .15s ease,transform .08s ease}.diag-btn:hover{opacity:.9}.diag-btn:active{transform:translateY(1px)}.diag-btn:disabled{opacity:.4;cursor:not-allowed}.diag-btn-ghost{background:none;border:none;font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-meta-text);cursor:pointer;text-decoration:underline;text-underline-offset:.2em;padding:.4rem .2rem}.diag-btn-ghost:hover{color:var(--color-accent-ink)}.diag-reassure{font-size:var(--text-caption);color:var(--color-mute);text-align:center;margin:1.1rem auto 0;max-width:46ch;line-height:1.5}.diag-error,.diag-reassure{font-family:var(--font-body)}.diag-error{font-size:var(--text-body-sm);color:var(--color-state-error);margin:1rem 0 0}.diag-spinner{width:28px;height:28px;border:3px solid var(--color-line);border-top-color:var(--color-accent-ink);border-radius:50%;animation:diag-spin .8s linear infinite}.diag-loading-text{font-family:var(--font-body);color:var(--color-meta-text);margin:0}.diag-result-head{margin-bottom:1.6rem}.diag-eyebrow{font-family:var(--font-mono);font-size:var(--text-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-meta-text);margin:0 0 .6rem}.diag-result-title{font-family:var(--font-display);font-size:clamp(26px,4.5vw,40px);line-height:1.12;letter-spacing:-.025em;color:var(--color-canvas-text);margin:0 0 .7rem}.diag-mark{background:linear-gradient(180deg,transparent 62%,var(--color-accent-highlight) 62%);padding:0 .08em}.diag-result-lead{font-family:var(--font-body);font-size:var(--text-body-lg);line-height:1.55;color:var(--color-body-text);margin:0 0 .6rem}.diag-result-score{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-meta-text);margin:0}.diag-result-score strong{color:var(--color-canvas-text)}.diag-result-score em{font-style:normal;font-family:var(--font-hand);font-size:1.25em;color:var(--color-accent-ink)}.diag-doc-grid{list-style:none;margin:0 0 1.8rem;padding:0;display:grid;grid-gap:.7rem;gap:.7rem}.diag-doc-card{background:var(--color-paper-bg);border:1px solid var(--color-paper-rule);border-radius:3px;padding:1.1rem 1.2rem;animation:diag-reveal .45s cubic-bezier(.22,1,.36,1) both}.diag-doc-top{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;margin-bottom:.35rem}.diag-doc-title{font-family:var(--font-display);font-size:var(--text-h3);line-height:1.2;color:var(--color-canvas-text);margin:0}.diag-doc-reason{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:1.5;color:var(--color-body-text);margin:0 0 .55rem}.diag-doc-lock{font-family:var(--font-mono);font-size:var(--text-mono-sm);letter-spacing:.03em;color:var(--color-mute);margin:0}.diag-badge{flex:0 0 auto;font-family:var(--font-body);font-size:var(--text-caption);font-weight:600;border-radius:999px;padding:.18rem .6rem;white-space:nowrap}.diag-badge--available{background:rgba(31,58,104,.1);color:var(--color-accent-ink)}.diag-badge--missing_requirements{background:var(--color-line-subtle);color:var(--color-meta-text)}.diag-alerts{margin:0 0 1.8rem}.diag-alerts-title{font-family:var(--font-display);font-size:var(--text-h3);color:var(--color-canvas-text);margin:0 0 .7rem}.diag-alerts-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.diag-alert{font-family:var(--font-body);font-size:var(--text-body-sm);line-height:1.5;color:var(--color-body-text);background:var(--color-paper-bg);border-left:3px solid var(--color-mute);border-radius:2px;padding:.6rem .9rem}.diag-alert--risk-medium{border-left-color:var(--color-accent-ink)}.diag-alert--risk-blocking,.diag-alert--risk-high{border-left-color:var(--color-state-error)}.diag-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.2rem}.diag-restart{background:none;border:none;font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-meta-text);cursor:pointer;padding:.3rem 0}.diag-restart:hover{color:var(--color-accent-ink)}.diag-empty{font-family:var(--font-body);color:var(--color-meta-text);margin:0 0 1.6rem}@keyframes diag-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes diag-spin{to{transform:rotate(1turn)}}.diag-capture{background:var(--color-paper-bg);border:1px solid var(--color-paper-rule);border-left:3px solid var(--color-accent-highlight);border-radius:3px;padding:1.3rem 1.4rem;margin:0 0 1.1rem}.diag-capture-title{font-family:var(--font-display);font-size:var(--text-h3);color:var(--color-canvas-text);margin:0 0 .35rem}.diag-capture-lead{line-height:1.5;margin:0 0 .9rem}.diag-account-cta,.diag-capture-lead{font-family:var(--font-body);font-size:var(--text-body-sm);color:var(--color-meta-text)}.diag-account-cta{margin:0 0 1.2rem}.diag-account-link{color:var(--color-accent-ink);text-decoration:underline;text-underline-offset:.2em;font-weight:600}@media (prefers-reduced-motion:reduce){.diag-card,.diag-doc-card,.diag-progress-fill{animation:none;transition:none}.diag-spinner{animation-duration:1.8s}}