.diag-wrap{width:100%}.diag-card{display:flex;flex-direction:column;gap:0}.diag-description{font-size:1rem;font-weight:var(--w-light, 300);color:var(--text-muted, #555);line-height:1.8;margin:0 0 2rem}.diag-loading,.diag-error{padding:2rem;color:var(--text-muted, #555);font-size:.95rem}.diag-error{color:#c0392b}.diag-block{padding:2rem 0;border-top:1px solid var(--border-light, #e8e5e0)}.diag-block-title{font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted, #888);margin:0 0 1.25rem}.diag-radio{display:flex;align-items:center;gap:.6rem;font-size:.95rem;font-weight:var(--w-light, 300);color:var(--text-dark, #1c1c1a);cursor:pointer;margin-bottom:.5rem}.diag-radio input{accent-color:var(--accent, #5c90c8)}.diag-label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:var(--text-muted, #888)}.diag-input{padding:.6rem .75rem;border:1px solid var(--border-light, #e8e5e0);font-size:.95rem;color:var(--text-dark, #1c1c1a);background:#fff;outline:none;transition:border-color .2s ease;width:100%;max-width:320px}.diag-input:focus{border-color:var(--accent, #5c90c8)}.diag-question{margin-bottom:1.75rem}.diag-question-text{font-size:1rem;font-weight:var(--w-light, 300);color:var(--text-dark, #1c1c1a);line-height:1.6;margin:0 0 1rem}.diag-required{color:var(--accent, #5c90c8)}.diag-option{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border:1px solid var(--border-light, #e8e5e0);cursor:pointer;font-size:.95rem;font-weight:var(--w-light, 300);color:var(--text-dark, #1c1c1a);margin-bottom:.5rem;transition:border-color .2s ease,background .2s ease}.diag-option input{accent-color:var(--accent, #5c90c8);margin-top:2px;flex-shrink:0}.diag-option:hover{border-color:var(--accent, #5c90c8);background:#5c90c808}.diag-option--selected{border-color:var(--accent, #5c90c8);background:#5c90c80f}.diag-actions{display:flex;gap:1rem;padding:2rem 0 1rem;border-top:1px solid var(--border-light, #e8e5e0);flex-wrap:wrap}.diag-btn{display:inline-flex;align-items:center;padding:.75rem 1.75rem;font-size:.875rem;font-weight:500;letter-spacing:.04em;cursor:pointer;text-decoration:none;border:none;transition:background .2s ease,border-color .2s ease}.diag-btn--primary{background:var(--accent, #5c90c8);color:#fff}.diag-btn--primary:hover{background:#4a7eb0}.diag-btn--primary:disabled{opacity:.6;cursor:not-allowed}.diag-btn--ghost{background:transparent;border:1px solid var(--border-light, #e8e5e0);color:var(--text-muted, #888)}.diag-btn--ghost:hover{border-color:var(--accent, #5c90c8);color:var(--accent, #5c90c8)}.diag-btn--outline{background:transparent;border:1px solid var(--accent, #5c90c8);color:var(--accent, #5c90c8)}.diag-btn--outline:hover{background:#5c90c814}.diag-notice{padding:.9rem 1.25rem;font-size:.9rem;margin:.5rem 0;border-left:3px solid}.diag-notice--error{background:#fef2f2;color:#c0392b;border-color:#c0392b}.diag-notice--success{background:#f0f9f4;color:#1a7a45;border-color:#1a7a45}.diag-notice--info{background:#f0f6ff;color:#1d4ed8;border-color:#1d4ed8}.diag-result{margin-top:2.5rem;padding:2.5rem;background:var(--dark, #0e0e0c)}.diag-result-title{font-family:var(--f-serif, Georgia, serif);font-size:1.35rem;font-weight:400;color:var(--text-light, #f0ede6);line-height:1.35;margin:0 0 1.25rem}.diag-result-message p{font-size:.98rem;font-weight:var(--w-light, 300);color:var(--text-light-muted, #c8c5bc);line-height:1.85;margin:0 0 .75rem}.diag-result-links{margin-top:1.75rem}.diag-result-links-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-light-muted, #c8c5bc);margin:0 0 .75rem}.diag-link{display:block;color:var(--accent, #5c90c8);font-size:.95rem;font-weight:var(--w-light, 300);text-decoration:none;margin-bottom:.5rem;transition:color .2s ease}.diag-link:hover{color:#83b1d9;text-decoration:underline}.diag-detail{margin-top:2rem;border-top:1px solid rgba(255,255,255,.08);padding-top:1rem}.diag-detail summary{font-size:.75rem;color:#ffffff4d;cursor:pointer;letter-spacing:.05em}.diag-detail pre{font-size:.78rem;color:#fff6;margin-top:.75rem;overflow:auto;line-height:1.6}
