/* Three assessment destinations reuse the approved interior theme. */
/* SAT root catalogue only. Existing topic and attempt screens stay unchanged. */
.library-app .assessment-shell .sat-catalog .student-screen-head{min-height:244px;padding:36px;border:1px solid #dce7ef;border-radius:18px;background:#e7f2fc url('./media/sat-header.jpg') center/cover no-repeat;display:flex;align-items:center;margin-bottom:24px;}
.library-app .assessment-shell .sat-catalog .student-screen-head>div{max-width:55%;}
.library-app .assessment-shell .sat-catalog .student-screen-head h1{font:600 clamp(2rem,3.3vw,3.4rem)/1.12 'Source Serif 4',Georgia,serif;color:var(--brand-deep);letter-spacing:-.035em;margin-bottom:12px;}
.library-app .assessment-shell .sat-catalog .student-screen-head p{font:1.2rem/1.5 'Source Serif 4',Georgia,serif;color:var(--brand-deep);}
.library-app .assessment-shell .sat-catalog .sat-intro h2{font:600 2rem/1.2 'Source Serif 4',Georgia,serif;color:var(--brand-deep);margin:0 0 8px;}
.assessment-shell .sat-intro p{color:var(--ink-soft);margin:0 0 18px;}
.assessment-shell .sat-catalog .sat-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.assessment-shell .assessments.sat-catalog .sat-section-card{padding:12px;border:1px solid #dce5ef;border-radius:15px;min-width:0;display:flex;flex-direction:column;box-shadow:0 3px 12px #0b234605;}
.assessment-shell .sat-section-art{aspect-ratio:2.3;background:#e6eff7 url('./media/sat-sections.jpg') center var(--section-y)/100% 200% no-repeat;border-radius:9px;}
.assessment-shell .sat-section-copy{padding:14px 4px 0;position:relative;display:flex;flex-direction:column;flex:1;}
.library-app .assessment-shell .sat-catalog .sat-section-card h2{font:600 1.8rem/1.2 'Source Serif 4',Georgia,serif;color:var(--brand-deep);margin:0 0 8px;}
.assessment-shell .sat-section-copy p{margin:0 0 12px;color:var(--ink-soft);line-height:1.5;overflow-wrap:anywhere;}
.assessment-shell .sat-section-copy .sat-topic-summary{font-size:.9rem;}
.assessment-shell .sat-section-copy .sat-section-count{font-size:.8rem;}
.assessment-shell .sat-section-copy .button{margin-top:auto;text-align:left;padding:8px 36px 8px 0;background:transparent;border:0;color:var(--brand-deep);width:100%;min-height:44px;border-radius:6px;}
.assessment-shell .sat-section-arrow{position:absolute;right:4px;bottom:12px;pointer-events:none;color:var(--brand-deep);font-size:1.4rem;}
@media(max-width:600px){
 .assessment-shell .sat-catalog .sat-section-grid{grid-template-columns:minmax(0,1fr);}
 .library-app .assessment-shell .sat-catalog .student-screen-head{min-height:230px;padding:24px 20px;background-image:linear-gradient(90deg,#e7f2fcf5,#e7f2fcb8),url('./media/sat-header.jpg');background-position:70% center;}
 .library-app .assessment-shell .sat-catalog .student-screen-head>div{max-width:100%;}
 .library-app .assessment-shell .sat-catalog .student-screen-head h1{font-size:2.2rem;}
 .library-app .assessment-shell .sat-catalog .sat-section-card h2{font-size:1.6rem;}
}
/* IELTS root catalogue only; topic lists and exam-taking UI are unchanged. */
.library-app .assessment-shell .ielts-catalog .student-screen-head{min-height:244px;padding:36px;border:1px solid #dce7ef;border-radius:18px;background:#e7f2fc url('./media/ielts-header.jpg') center/cover no-repeat;display:flex;align-items:center;margin-bottom:24px;}
.library-app .assessment-shell .ielts-catalog .student-screen-head>div{max-width:55%;}
.library-app .assessment-shell .ielts-catalog .student-screen-head h1{font:600 clamp(2rem,3.3vw,3.4rem)/1.12 'Source Serif 4',Georgia,serif;color:var(--brand-deep);letter-spacing:-.035em;margin-bottom:12px;}
.library-app .assessment-shell .ielts-catalog .student-screen-head p{font:1.2rem/1.5 'Source Serif 4',Georgia,serif;color:var(--brand-deep);}
.library-app .assessment-shell .ielts-catalog .ielts-intro h2{font:600 2rem/1.2 'Source Serif 4',Georgia,serif;color:var(--brand-deep);margin:0 0 8px;}
.assessment-shell .ielts-intro p{color:var(--ink-soft);margin:0 0 18px;}
.assessment-shell .ielts-catalog .ielts-skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.assessment-shell .assessments.ielts-catalog .ielts-skill-card{padding:12px;border:1px solid #dce5ef;border-radius:15px;min-width:0;display:flex;flex-direction:column;box-shadow:0 3px 12px #0b234605;}
.assessment-shell .ielts-skill-art{aspect-ratio:3.6;background:#e6eff7 url('./media/ielts-skills.jpg') var(--skill-x) var(--skill-y)/200% 200% no-repeat;border-radius:9px;}
.assessment-shell .ielts-skill-copy{padding:12px 4px 0;position:relative;display:flex;flex-direction:column;flex:1;}
.library-app .assessment-shell .ielts-catalog .ielts-skill-card h2{font:600 1.6rem/1.2 'Source Serif 4',Georgia,serif;color:var(--brand-deep);margin:0 0 6px;}
.assessment-shell .ielts-skill-copy p{margin:0 0 8px;color:var(--ink-soft);line-height:1.5;}
.assessment-shell .ielts-skill-copy .ielts-skill-count{font-size:.8rem;}
.assessment-shell .ielts-skill-copy .button{margin-top:auto;text-align:left;padding:8px 36px 8px 0;background:transparent;border:0;color:var(--brand-deep);width:100%;min-height:44px;border-radius:6px;}
.assessment-shell .ielts-skill-arrow{position:absolute;right:4px;bottom:12px;pointer-events:none;color:var(--brand-deep);font-size:1.4rem;}
@media(max-width:600px){
 .assessment-shell .ielts-catalog .ielts-skill-grid{grid-template-columns:minmax(0,1fr);}
 .library-app .assessment-shell .ielts-catalog .student-screen-head{min-height:230px;padding:24px 20px;background-image:linear-gradient(90deg,#e7f2fcf5,#e7f2fcb8),url('./media/ielts-header.jpg');background-position:70% center;}
 .library-app .assessment-shell .ielts-catalog .student-screen-head>div{max-width:100%;}
 .library-app .assessment-shell .ielts-catalog .student-screen-head h1{font-size:2.2rem;}
 .assessment-shell .ielts-skill-art{aspect-ratio:2.7;}
}
.library-app .assessment-shell .student-screen-head{padding:20px 24px;}
.library-app .assessment-shell .student-screen-head h1{font-size:2rem;}
.assessment-shell .assessments .panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;}
.assessment-shell .assessments h2{font-size:1.4rem;margin:0 0 10px;}
.assessment-shell .assessments h3{font-size:1.15rem;line-height:1.6;margin:0 0 18px;overflow-wrap:anywhere;}
/* Preserve supplied Speaking cue lines and multi-part task instructions. */
.assessment-shell #exam-question-title,.assessment-shell .exam-result h3{white-space:pre-wrap;}
.assessment-shell .exam-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:white;}
.assessment-shell .exam-cards{display:grid;gap:16px;}
.assessment-shell .exam-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;}
.assessment-shell .exam-card p{margin:6px 0 12px;}
.assessment-shell .exam-card-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:390px;justify-content:flex-end;}
.assessment-shell .exam-card-actions select{max-width:170px;}
.assessment-shell .exam-card-actions [data-exam=start],.assessment-shell [data-exam=confirm]{background:var(--brand);color:white;}
.assessment-shell .exam-history{grid-column:1/-1;border-top:1px solid var(--line);padding-top:14px;font-size:.875rem;}
.assessment-shell summary{cursor:pointer;}
.assessment-shell .exam-toolbar,.assessment-shell .exam-sections,.assessment-shell .exam-bottom{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px;}
.assessment-shell .exam-sections .button[aria-pressed=true]{background:var(--brand);color:white;}
.assessment-shell .exam-title{margin:20px 0;}
.assessment-shell .exam-timer{margin-left:auto;color:var(--brand-deep);font-variant-numeric:tabular-nums;}
.assessment-shell #exam-save-state{font-size:.875rem;color:var(--ink-soft);}
.assessment-shell .exam-question-nav{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0;}
.assessment-shell .exam-number{border:1px solid var(--line-strong);border-radius:10px;background:white;color:var(--ink);min-width:42px;min-height:42px;font:inherit;cursor:pointer;}
.assessment-shell .exam-number.answered{background:var(--brand-soft);border-color:var(--brand);}
.assessment-shell .exam-number[aria-current=step]{background:var(--brand);color:white;box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--brand);}
.assessment-shell .exam-question-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;}
.assessment-shell .exam-question-layout.has-source{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.assessment-shell .exam-source{position:sticky;top:92px;}
.assessment-shell .exam-source .prose{margin:0;line-height:1.9;}
.assessment-shell .exam-answer{min-width:0;}
.assessment-shell .exam-answer fieldset{border:0;margin:0;padding:0;min-width:0;}
.assessment-shell .exam-answer legend{font-size:.875rem;margin-bottom:10px;}
.assessment-shell .exam-answer .option{border:1px solid var(--line);border-radius:12px;padding:12px;gap:12px;line-height:1.6;align-items:flex-start;cursor:pointer;}
.assessment-shell .exam-answer .option:has(input:checked){background:var(--brand-soft);border-color:var(--brand);}
.assessment-shell .exam-answer input:is([type=radio],[type=checkbox]){accent-color:var(--brand);margin-top:6px;flex:none;}
.assessment-shell .exam-answer .field{width:100%;}
.assessment-shell .exam-answer textarea{resize:vertical;line-height:1.7;}
.assessment-shell .exam-answer .exam-writing{min-height:260px;}
.assessment-shell .exam-bottom{margin-top:18px;}
.assessment-shell [data-exam=submit]{margin-left:auto;background:var(--brand);color:white;}
.assessment-shell #exam-confirm:empty{display:none;}
.assessment-shell .exam-confirm{background:var(--brand-soft)!important;margin:18px 0;}
.assessment-shell .exam-confirm .button{margin-right:10px;}
.assessment-shell .exam-notice{border:1px solid var(--line-strong);border-left:4px solid var(--brand);border-radius:12px;background:var(--brand-soft);padding:14px;line-height:1.6;}
.assessment-shell .exam-results-head{margin-bottom:20px;}
.assessment-shell .exam-score{font-size:1.5rem;color:var(--brand);}
.assessment-shell .exam-result{margin-bottom:16px;}
.assessment-shell .exam-result .badge{margin-bottom:12px;white-space:normal;}
.assessment-shell .prose{white-space:pre-wrap;overflow-wrap:anywhere;}
.assessment-shell audio{display:block;width:100%;margin:16px 0;}
.assessment-shell [hidden]{display:none!important;}
@media(max-width:1100px){
 .assessment-shell .exam-question-layout.has-source{grid-template-columns:minmax(0,1fr);}
 .assessment-shell .exam-source{position:static;}
 .assessment-shell .exam-card{grid-template-columns:minmax(0,1fr);}
 .assessment-shell .exam-card-actions{justify-content:flex-start;max-width:none;}
}
/* Eight real destinations: keep every existing student destination reachable. */
@media(max-width:980px){
 .library-app .student-shell .sidebar-nav .nav-group{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;}
 .library-app .student-shell .sidebar-nav .nav-group .nav-item{grid-column:auto;min-width:0;width:100%;min-height:44px;font-size:.75rem;white-space:normal;overflow-wrap:anywhere;padding:6px 4px;margin:0;}
 .library-app .student-shell{padding-bottom:calc(128px + env(safe-area-inset-bottom));}
 .assessment-shell .assessments :is(button,input,textarea,select,a){scroll-margin-block:110px 145px;}
}
@media(max-width:600px){
 .library-app .assessment-shell .student-screen-head{padding:18px;}
 .assessment-shell .exam-filters{grid-template-columns:minmax(0,1fr);}
 .assessment-shell .assessments .panel{padding:18px;}
 .assessment-shell .exam-timer{margin-left:0;flex-basis:100%;}
 .assessment-shell .exam-sections .button{flex:1 1 40%;}
 .assessment-shell .exam-bottom{gap:8px;}
 .assessment-shell [data-exam=submit]{flex-basis:100%;margin:6px 0 0;}
}
