/* Responsive header and questionnaire: keep every control in normal flow. */
.topbar{height:auto;min-height:72px;overflow:visible;align-items:center;gap:16px;padding-block:12px}
.topbar .top-right{min-width:0;height:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}
.topbar .account-nav{height:auto;min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}
.topbar .account-nav:empty{display:none}
.topbar .language-control{flex:none;position:static;margin:0}
.topbar .language-control select{position:static;max-width:100%;min-height:44px}
.topbar .text-button{position:static;white-space:normal;line-height:1.3;min-height:44px;margin:0}
.page-footer{position:static;bottom:auto;inset:auto;z-index:auto;backdrop-filter:none;margin-top:20px}
.suggestions[hidden]{display:none!important}
@media(max-width:820px){
 .topbar{position:relative;top:auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));height:auto;min-height:0;padding:10px 14px;column-gap:6px;row-gap:5px;align-items:center}
 .topbar .brand{grid-column:1 / 9;grid-row:1;gap:8px;min-width:0;font-size:clamp(1rem,4.5vw,1.35rem);line-height:1.15;letter-spacing:-.035em}
 .topbar .brand-mark{flex:none;width:34px;height:38px;font-size:19px;border-radius:9px}
 .topbar .top-right{display:contents}
 .topbar .language-control{grid-column:9 / 13;grid-row:1;width:100%;min-width:0;justify-self:end}
 .topbar .language-control select{width:100%;min-width:0;max-width:100%;height:40px;min-height:40px;padding:6px 24px 6px 10px;font-size:16px}
 .topbar .top-right>.text-button{grid-column:1 / 3;grid-row:2;justify-self:start;font-size:.75rem;padding:6px 0;min-width:0}
 .topbar .account-nav{grid-column:3 / 13;grid-row:2;width:100%;gap:2px 8px;justify-content:flex-end}
 .topbar .account-nav .text-button{padding:6px 0;font-size:.75rem;min-width:0;flex:0 1 auto}
 .topbar .account-avatar{display:none}
 .topbar .local-label{grid-column:1 / -1;grid-row:3;font-size:.7rem}
 body:not(.test-hub) .sidebar{position:static;top:auto;height:auto;margin:0;padding:4px 8px;border-radius:0}
 body:not(.test-hub) .sidebar #steps{gap:2px;padding:0}
 body:not(.test-hub) .sidebar #steps .step,body:not(.test-hub) .sidebar #steps .step.active{min-height:40px;padding:3px;margin:0}
 body:not(.test-hub) .sidebar #steps .step-number{width:24px;height:24px;font-size:.73rem}
 body:not(.test-hub) .sidebar #steps .step-current-mobile{padding:2px 4px 4px;font-size:.75rem;line-height:1.2}
 body:not(.test-hub) main{padding:16px 12px 24px;min-width:0}
 body:not(.test-hub) .page-kicker{font-size:.65rem;margin-bottom:8px}
 body:not(.test-hub) .page-heading{gap:10px;margin-bottom:14px}
 body:not(.test-hub) .page-heading h1{font-size:1.55rem;line-height:1.15}
 body:not(.test-hub) .page-intro{font-size:.88rem;line-height:1.45}
 body:not(.test-hub) .intro-note{padding:10px 12px;margin:12px 0;font-size:.82rem;line-height:1.45}
 body:not(.test-hub) .toolbar{margin:10px 0;gap:8px}
 body:not(.test-hub) .questions{gap:12px}
 body:not(.test-hub) .question{padding:16px 14px;margin-bottom:12px;border-radius:16px}
 body:not(.test-hub) .question h2{font-size:1.04rem;line-height:1.4}
 body:not(.test-hub) .question input,body:not(.test-hub) .question select,body:not(.test-hub) .question textarea{font-size:16px}
 body:not(.test-hub) .page-footer{position:static;padding:14px 0;margin-top:16px;border-radius:0;box-shadow:none}
}

@media print{.topbar,.sidebar,.account-nav,.page-footer{display:none}}

/* Unanswered review stays with the question being reviewed. */
.unanswered-panel{background:#f4f7ef;border:1px solid #d7e1ce;border-left:3px solid #8b9c6c;border-radius:16px;padding:18px 20px;margin:18px 0;box-shadow:none}
.unanswered-panel h2{font-size:1.05rem;line-height:1.4;margin:0 0 8px;display:flex;align-items:center;gap:10px}
.unanswered-count{font-size:.8rem;font-weight:600;line-height:1.2;background:#e2ead8;color:#2a4637;padding:4px 8px;border-radius:20px}
.unanswered-panel p{font-size:.88rem;line-height:1.5;margin:6px 0 12px}
.unanswered-panel details>summary{font-size:.9rem;line-height:1.4;padding:10px 0;cursor:pointer;color:#244b3e}
.unanswered-panel .unanswered-list{list-style:none;margin:0;padding:0;border-top:1px solid #d7e1ce}
.unanswered-list li{margin:0;padding:0;border-bottom:1px solid #d7e1ce}
.unanswered-list .text-button{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:9px;width:100%;text-align:left;min-height:44px;padding:12px 0;font-size:.9rem;font-weight:500;line-height:1.5;white-space:normal;text-decoration:none}
.unanswered-number{font-variant-numeric:tabular-nums;opacity:.7}
.unanswered-panel .bulk-actions,.unanswered-panel .submission-actions{margin:14px 0 0;display:flex;gap:8px}
.unanswered-guide{width:100%;flex:0 0 100%;margin-top:14px;padding:12px 14px;background:#eaf0e2;border:1px solid #d3dfc7;border-radius:12px;color:#244b3e}
.unanswered-guide-label{display:block;font-size:.75rem;line-height:1.3;font-weight:600;margin-bottom:8px}
.unanswered-guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.unanswered-guide .button{font-size:.84rem;min-height:44px;padding:9px 12px;box-shadow:none;white-space:normal;text-align:left;line-height:1.4}
.unanswered-guide .text-button{font-size:.8rem;min-height:44px;padding:6px 0;line-height:1.4;white-space:normal}
#page [tabindex="-1"]{scroll-margin-top:20px}
#page [tabindex="-1"]:focus{outline:2px solid #76965e;outline-offset:5px}
@media(max-width:820px){.unanswered-panel{padding:14px;border-radius:13px}.unanswered-guide{padding:11px}.unanswered-guide-actions{gap:3px 10px}.unanswered-guide .button{flex:1 1 200px}.unanswered-guide .text-button{flex:1 1 130px;text-align:center}.unanswered-panel .bulk-actions>.button,.unanswered-panel .submission-actions>.button{width:100%;font-size:.88rem}}
@media print{.unanswered-guide,.unanswered-panel{display:none}}
