.diagnostic-main{width:min(800px,calc(100% - 64px));margin:0 auto;padding:65px 0 90px}.diagnostic-heading{text-align:center;margin-bottom:38px}.diagnostic-heading h1{font-size:44px;margin-bottom:17px}.diagnostic-heading>p{font-size:18px;line-height:1.6;margin:0}.diagnostic-selectors{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding-bottom:30px;border-bottom:1px solid var(--line)}.diagnostic-selectors label{font-size:16px;color:var(--ink)}.diagnostic-selectors select{font-size:16px;min-height:52px;padding:12px}.diagnostic-adaptation{font-size:13px;color:var(--muted);margin:15px 0 26px}.diagnostic-adaptation:empty{margin:0 0 30px}.diagnostic-stage{scroll-margin-top:24px}.diagnostic-progress-label{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin-bottom:12px}.diagnostic-progress-label span:first-child{font-weight:700;color:var(--blue)}progress{appearance:none;-webkit-appearance:none;display:block;width:100%;height:7px;border:0;border-radius:20px;overflow:hidden;background:var(--soft);color:var(--amber);margin-bottom:35px}progress::-webkit-progress-bar{background:var(--soft);border-radius:20px}progress::-webkit-progress-value{background:var(--amber);border-radius:20px}progress::-moz-progress-bar{background:var(--amber);border-radius:20px}.diagnostic-area{padding:0;margin:0 0 28px;border:0;min-width:0}.diagnostic-area+fieldset{border-top:1px solid var(--line);padding-top:27px}.diagnostic-area legend{font-size:24px;font-weight:700;color:var(--blue);padding:0;margin-bottom:20px;line-height:1.3}.diagnostic-area+fieldset legend{float:left;width:100%;margin-bottom:22px}.diagnostic-question{clear:both;margin-bottom:27px}.diagnostic-question:last-child{margin-bottom:0}.question-label{font-size:18px;line-height:1.6;margin-bottom:12px;color:var(--ink)}.diagnostic-options{display:flex;gap:14px}.diagnostic-choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:5px;padding:11px 19px;min-width:96px;min-height:48px;cursor:pointer;font-size:16px;transition:border-color .18s,background-color .18s}.diagnostic-choice:hover{border-color:var(--blue);background:var(--soft)}.diagnostic-choice:has(input:checked){border-color:var(--blue);background:var(--soft);color:var(--blue);font-weight:600}.diagnostic-choice input{width:18px;height:18px;min-height:0;margin:0;padding:0;accent-color:var(--blue)}.diagnostic-choice:focus-within{outline:2px solid var(--blue);outline-offset:3px}.diagnostic-actions{display:flex;justify-content:space-between;gap:18px;margin-top:37px}.diagnostic-actions .button{min-width:180px;justify-content:center;text-align:center}.diagnostic-secondary{min-width:140px;border:1px solid var(--blue);border-radius:5px;padding:14px 24px;min-height:54px;color:var(--blue);background:var(--white);font-weight:600;font-size:16px}.diagnostic-secondary:hover:not(:disabled){background:var(--soft)}.diagnostic-secondary:disabled{opacity:.4;cursor:not-allowed}.diagnostic-footnote{font-size:12px;color:var(--muted);text-align:center;margin:18px 0 0}.diagnostic-message{background:var(--soft);border-left:3px solid var(--amber);padding:20px;font-size:15px;margin-top:25px}.review-heading{font-size:30px;margin-bottom:15px}.review-intro{font-size:15px;color:var(--muted)}.review-area{padding:25px 0;border-bottom:1px solid var(--line)}.review-area h3{font-size:22px;margin-bottom:20px}.review-question{display:flex;justify-content:space-between;gap:25px;font-size:16px;margin-bottom:15px}.review-question p{margin:0}.review-answer{color:var(--blue);flex-shrink:0}.review-edit{border:0;background:transparent;color:var(--blue);padding:8px 0;text-decoration:underline;text-underline-offset:4px;font-size:14px}.navigation nav a[aria-current=page]{font-weight:800}.navigation nav a[aria-current=page]:after{transform:scaleX(1)}
@media(max-width:760px){.diagnostic-main{width:calc(100% - 40px);padding:38px 0 60px}.diagnostic-heading{text-align:left;margin-bottom:28px}.diagnostic-heading h1{font-size:32px}.diagnostic-heading>p{font-size:16px}.diagnostic-selectors{grid-template-columns:1fr;gap:20px;padding-bottom:25px}.diagnostic-selectors label{font-size:14px}.diagnostic-area legend{font-size:22px}.question-label{font-size:16px}.diagnostic-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:12px}.diagnostic-actions .button,.diagnostic-secondary{min-width:0;width:100%;padding:14px 10px;font-size:14px}.diagnostic-progress-label{font-size:12px}.diagnostic-choice{flex:1;justify-content:center}.review-question{font-size:15px;gap:15px}.review-heading{font-size:26px}}
@media(prefers-reduced-motion:reduce){.diagnostic-choice{transition:none}}

.diagnostic-selectors[hidden]{display:none}
.diagnostic-share{border:0;padding:30px 0 0;margin:25px 0 0;min-width:0}.diagnostic-share legend{font-size:26px;font-weight:700;color:var(--blue);line-height:1.3}.share-intro{font-size:16px;margin:16px 0 23px}.share-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.share-fields input{font-size:16px}.share-explanation{font-size:14px;line-height:1.7;margin:22px 0}.share-preview{border-top:1px solid var(--line);margin-bottom:22px}.share-preview summary{font-size:14px;padding-block:18px}.share-preview summary:after{top:12px}.share-message{font-size:14px;line-height:1.6;min-height:260px;white-space:pre-wrap;margin:0 0 20px}.copy-diagnostic{font-size:14px;min-height:46px;padding:11px 18px}.diagnostic-actions .button{max-width:100%}
@media(max-width:760px){.share-fields{grid-template-columns:1fr}.diagnostic-share legend{font-size:23px}.is-review .diagnostic-actions{grid-template-columns:1fr}.diagnostic-actions .button,.diagnostic-actions .diagnostic-secondary{width:100%}.is-review .diagnostic-actions .button{order:-1}.copy-diagnostic{width:100%}}

/* Responsive: readable selections, full-width actions and safe text wrapping. */
.diagnostic-selectors,.share-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.diagnostic-main,.diagnostic-stage,#diagnostic-form,#diagnostic-questions{min-width:0}
.diagnostic-selectors select{max-width:100%;text-overflow:ellipsis;padding-right:30px}
.selector-description{display:none}
.question-label,.review-question p,.review-intro,.share-explanation,.diagnostic-message{overflow-wrap:anywhere}
.review-question p{min-width:0}
.share-preview summary{padding-right:38px;line-height:1.6}
.share-preview summary:after{right:4px}
.review-edit{min-height:44px}
@media(max-width:760px){
 .diagnostic-selectors,.share-fields{grid-template-columns:minmax(0,1fr)}
 .selector-description{display:block;font-size:13px;color:var(--muted);line-height:1.6;margin:8px 0 0}
 .diagnostic-actions{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:28px}
 .diagnostic-actions .button{order:-1;min-height:52px;font-size:15px;padding:15px 18px}
 .diagnostic-actions .diagnostic-secondary{min-height:50px;font-size:15px}
 .diagnostic-progress-label{flex-wrap:wrap;gap:6px 16px;font-size:13px}
 .diagnostic-area legend{max-width:100%;overflow-wrap:anywhere}
 .review-question{gap:16px;align-items:flex-start}
 .review-answer{min-width:28px;text-align:right}
 .share-preview summary{min-height:52px}
 .share-message{width:100%;font-size:16px}
 .diagnostic-page .footer-inner{min-width:0}
}
@media(max-width:360px){
 .diagnostic-main{width:calc(100% - 32px)}
 .diagnostic-heading h1{font-size:30px;line-height:1.2}
 .diagnostic-choice{min-width:0;min-height:50px;padding:12px}
 .diagnostic-options{gap:12px}
 .review-area h3{font-size:21px;line-height:1.35}
}
