/* SPEC-0004 v1.2 — reading and navigation; no scoring changes. */
.analysis-dialog{max-width:1140px;width:calc(100% - 48px);height:min(900px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);overflow:hidden;border:1px solid #dce4f1;border-radius:20px}
.analysis-dialog[open]{display:flex;flex-direction:column}
.analysis-dialog>.dialog-heading{flex:0 0 auto;padding:24px 30px 20px;align-items:flex-start;gap:18px;background:#fff}
.analysis-dialog .dialog-heading h2{font-size:26px;line-height:1.3;letter-spacing:-.65px;margin:7px 0 6px;color:#20395f}
.analysis-dialog .dialog-heading .eyebrow{font-size:10px;letter-spacing:1.3px;color:#6678ac}
.review-dialog-subtitle{font-size:12px;line-height:1.7;color:#6a7d96;margin:0;overflow-wrap:anywhere}
.analysis-dialog .close-button{width:42px;height:42px;flex:0 0 42px;border-radius:12px;font-size:26px;color:#5b7091;background:#f0f4fb}
.analysis-dialog>.dialog-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:24px 30px 28px;background:#f7f9fd}
.analysis-dialog>.dialog-footer{flex:0 0 auto;padding:16px 30px;background:#fff;align-items:center;gap:12px}
.analysis-dialog>.dialog-footer .button{min-height:42px;font-size:13px;border-radius:10px}
.review-footer-note{font-size:11px;line-height:1.6;color:#71829a;margin-right:auto}
.review-view{min-width:0;color:#334b68}
.review-snapshot{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 22px}
.review-score,.review-heat{min-width:0;border:1px solid #dce4f5;border-radius:15px;padding:23px 24px;background:#fff}
.review-score{background:linear-gradient(120deg,#edf2ff,#fff);border-color:#d6dff8}
.review-label{display:block;color:#667a99;font-size:10px;letter-spacing:1px;font-weight:650;line-height:1.6}
.review-score-value{display:block;font-size:34px;letter-spacing:-1px;line-height:1.35;color:#3653b2;margin:10px 0 6px}
.review-score-detail{display:block;font-size:12px;line-height:1.7;color:#657a96;margin:0}
.review-heat>.temperature{font-size:14px;padding:7px 12px;border-radius:8px;margin:13px 0 10px}
.review-heat-evidence{border-top:1px solid #e9edf4;margin:12px 0 0;padding-top:12px}
.review-heat-evidence>summary{font-size:12px;line-height:1.6;color:#3c6296;cursor:pointer;min-height:40px;padding:10px 0 6px}
.review-heat-evidence>p{font-size:13px;line-height:1.85;color:#61738d;white-space:pre-line;overflow-wrap:anywhere;margin:10px 0 0}
.review-tabs{display:flex;gap:6px;border-bottom:1px solid #dbe3f1;margin-bottom:24px;padding:0 0 7px;min-width:0}
.review-tab{border:0;border-radius:9px;background:transparent;color:#6b7d98;font-size:13px;font-weight:600;min-height:43px;padding:10px 22px;cursor:pointer;line-height:1.5}
.review-tab[aria-selected=true]{color:#3858b4;background:#e8eeff}
.review-tab:hover{color:#3858b4;background:#eef2fb}
.review-tab:focus-visible,.review-view summary:focus-visible,.review-administration>summary:focus-visible{outline:3px solid #7896ed;outline-offset:3px;border-radius:7px}
.review-tabpanel{min-width:0}
.review-tabpanel:focus-visible{outline:2px solid #7896ed;outline-offset:5px;border-radius:10px}
.review-view .analysis-block{padding:24px;border-radius:14px;border-color:#e0e7f2}
.review-view .analysis-block h3,.review-section-title{font-size:16px;letter-spacing:-.15px;line-height:1.6;color:#2f496b;margin:0 0 12px}
.review-view .analysis-block>p,.review-view .analysis-block li{font-size:14px;line-height:1.9;color:#526882}
.review-view .analysis-block li{margin-bottom:10px}
.review-summary{margin:0 0 16px}
.review-next{margin:0 0 20px;background:linear-gradient(120deg,#f0f8f6,#fff)!important;border-color:#dcece6!important}
.review-next h3{color:#397666!important}
.review-disclosure{border:1px solid #e0e7f2;background:#fff;border-radius:12px;min-width:0;margin-top:16px}
.review-disclosure>summary{font-size:13px;font-weight:600;line-height:1.7;color:#506b90;padding:15px 18px;min-height:48px;cursor:pointer}
.review-disclosure>p,.review-disclosure>small{margin:0 18px 18px;white-space:pre-line;font-size:13px;line-height:1.85;color:#60748e;overflow-wrap:anywhere}
.review-disclosure>.analysis-grid{padding:0 18px 18px;gap:14px}
.review-view .evidence-item{font-size:13px;line-height:1.85;overflow-wrap:anywhere}
.review-view .evidence-item blockquote{font-size:12px;line-height:1.9;color:#5f7290;font-style:normal}
.review-view .analysis-qualification{margin:0 0 18px;gap:12px}
.review-view .analysis-qualification>div{background:#f4f7fc;border-radius:9px;padding:12px}
.review-view .analysis-qualification span{font-size:11px;color:#687c97}
.review-view .analysis-qualification strong{font-size:15px;color:#35567d}
.review-performance{padding:0;border:0;border-radius:0;background:transparent;margin-bottom:0}
.review-performance>h3{font-size:19px;color:#294467;margin:0 0 7px;letter-spacing:-.3px}
.review-view .view-meta{font-size:12px;line-height:1.8;color:#70819a}
.review-performance .criteria-grid{grid-template-columns:1fr;margin:20px 0;gap:13px}
.review-criterion{padding:22px 24px;background:#fff;border:1px solid #dfe6f2;border-radius:13px;min-width:0}
.review-criterion-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}
.review-criterion h4{display:flex;align-items:center;gap:11px;min-width:0;font-size:15px;font-weight:650;line-height:1.7;color:#2f4b70;margin:0}
.review-criterion-number{flex:0 0 28px;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#eef3fb;color:#788dab;font-size:11px;font-variant-numeric:tabular-nums;font-weight:550}
.review-rating{flex-shrink:0;border-radius:7px;padding:5px 9px;font-size:11px;line-height:1.7;font-weight:600;color:#63758d;background:#eef2f6}
.review-rating.rating-2{background:#e9f5ef;color:#35765c}.review-rating.rating-1{background:#fff2dc;color:#946b25}.review-rating.rating-0{background:#fcecf0;color:#a84962}
.review-justification{font-size:14px;line-height:1.9;color:#556d88;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.review-criterion-evidence{margin-top:14px;border-top:1px solid #edf0f6;padding-top:4px}
.review-criterion-evidence>summary{min-height:40px;padding:10px 0 6px;font-size:12px;font-weight:550;line-height:1.7;color:#4b6ca0;cursor:pointer}
.review-view .performance-evidence{font-size:13px;line-height:1.9;color:#5c7290;padding:14px 16px;border-left:3px solid #b9c9e9;border-radius:0 8px 8px 0;margin:12px 0;background:#f5f8fd;white-space:pre-line}
.review-view .criterion-improvement{font-size:13px;line-height:1.9;color:#407463;background:#eff7f3;padding:13px 15px;border-radius:8px;white-space:pre-line;overflow-wrap:anywhere}
.review-view .suggestion-label{font-size:10px;letter-spacing:.3px}
.review-performance .performance-guide{margin:20px 0 0;background:#fff}
.review-performance .performance-guide>summary{font-size:13px;padding:16px 18px;min-height:48px}
.review-performance .performance-guide-content p,.review-performance .guide-criteria li,.review-performance .guide-criteria strong,.review-performance .guide-criteria p{font-size:13px;line-height:1.85}
.review-performance .guide-scale dd{font-size:12px;line-height:1.85}
.review-view .coaching-panel{background:#fff;border-color:#dfe6f2;border-radius:14px;padding:25px;margin-bottom:0}
.review-view .coaching-panel>h3{font-size:23px;line-height:1.5;color:#294467;margin:8px 0 16px}
.review-view .state-message{font-size:14px;line-height:1.85;color:#5f7491}
.review-view .api-billing{font-size:12px;line-height:1.85;color:#74829a;max-width:700px;margin:15px 0 18px}
.review-view .button{min-height:42px;font-size:13px;padding:11px 16px;border-radius:9px;white-space:normal}
.review-view .coaching-group>h4{font-size:16px;line-height:1.6;color:#355274}
.review-view .coaching-card{border-color:#e0e7f0;border-radius:12px;padding:22px;background:#fbfcff}
.review-view .coaching-card>p{font-size:14px;line-height:1.9;color:#566f8a}
.review-view .coaching-purpose,.review-view .coaching-alternative{font-size:13px;line-height:1.85}
.review-view .coaching-criterion{font-size:11px;padding:5px 9px;line-height:1.7}
.review-view .practice-list strong{font-size:14px;line-height:1.8}
.review-view .practice-list>li{font-size:14px;padding:20px}
.review-view .coaching-cautions h4{font-size:13px}.review-view .coaching-cautions p{font-size:12px;line-height:1.85}
.review-transcript{font-size:14px;line-height:2;color:#4e6581;background:#fff;border:1px solid #dfe6f2;border-radius:13px;padding:24px;white-space:pre-wrap;overflow-wrap:anywhere;margin:15px 0 0}
.review-administration{border:1px solid #dfe6f1;background:#fff;border-radius:12px;margin-top:24px}
.review-administration>summary{font-size:12px;line-height:1.7;font-weight:550;color:#71829c;padding:15px 18px;min-height:46px;cursor:pointer}
.review-administration-body{padding:5px 20px 20px}
.review-filename{font-size:12px;line-height:1.9;color:#657c98;overflow-wrap:anywhere;margin:5px 0 14px}
.review-administration .analysis-meta{font-size:11px;gap:10px;margin-bottom:20px}
.review-administration .field label{font-size:12px;line-height:1.6}
.review-administration select{min-height:42px;font-size:13px}
.review-administration .button{font-size:12px;min-height:42px;border-radius:9px}
.review-administration .field-help{font-size:11px;line-height:1.85}
.review-administration .overview-exclusion{margin:0 0 18px}
.review-administration .overview-exclusion>summary{font-size:12px;min-height:40px;line-height:1.7;padding:10px 0 6px}
.review-administration .checkbox-label{font-size:12px;line-height:1.8;min-height:40px;align-items:center}
@media(max-width:760px){.analysis-dialog{width:calc(100% - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);border-radius:16px}.analysis-dialog>.dialog-heading{padding:19px 18px 17px}.analysis-dialog .dialog-heading h2{font-size:22px;letter-spacing:-.5px}.analysis-dialog .dialog-heading .eyebrow{font-size:9px}.review-dialog-subtitle{font-size:11px}.analysis-dialog>.dialog-body{padding:18px 16px 24px;scrollbar-gutter:auto}.analysis-dialog>.dialog-footer{padding:13px 18px}.review-footer-note{display:none}.analysis-dialog>.dialog-footer .button{flex:1;min-width:0}.review-snapshot{grid-template-columns:1fr;gap:11px;margin-bottom:18px}.review-score,.review-heat{padding:18px 20px}.review-score-value{font-size:30px}.review-heat>.temperature{margin:9px 0}.review-label{font-size:9px}.review-tabs{gap:3px;padding-bottom:6px;margin-bottom:20px}.review-tab{flex:1;min-width:0;font-size:11px;min-height:43px;padding:10px 3px}.review-view .analysis-block{padding:20px}.review-view .analysis-block h3{font-size:15px}.review-view .analysis-grid{grid-template-columns:1fr}.review-disclosure>.analysis-grid{padding:0 12px 12px}.review-disclosure>summary{font-size:12px;padding:14px 16px}.review-criterion{padding:19px 18px}.review-criterion-heading{flex-wrap:wrap;gap:9px}.review-criterion h4{font-size:14px}.review-rating{font-size:11px}.review-justification,.review-view .analysis-block>p,.review-view .analysis-block li{font-size:14px;line-height:1.85}.review-view .performance-evidence{font-size:13px;padding:12px 13px}.review-view .coaching-panel{padding:20px}.review-view .coaching-panel>h3{font-size:21px}.review-view .coaching-card{padding:18px}.review-view .practice-list{padding-left:18px}.review-view .practice-list>li{padding:16px}.review-transcript{padding:19px;font-size:14px}.review-administration-body{padding:3px 15px 18px}.review-administration .association-controls .button{width:100%}.review-performance .guide-criteria{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.analysis-dialog>.dialog-body{scroll-behavior:auto}}
