.exam-main{max-width:1160px}.exam-intro{min-height:0;margin-bottom:22px;padding:28px 34px}.exam-intro h1{font-size:30px;margin-bottom:10px}.exam-intro h2{font-size:18px;font-weight:500;color:var(--muted)}.exam-intro>.button-row{margin-top:22px}.exam-intro .notice{margin:20px 0 0;font-size:14px}.exam-setup,.exam-history,.exam-preview,.exam-work,.exam-summary,.exam-print-options{min-height:0;margin-bottom:22px}.exam-setup-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:44px}.exam-settings-row{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:16px;margin-bottom:26px}.exam-field{display:block;font-size:14px;font-weight:600}.exam-field>select,.exam-field>input{display:block;width:100%;margin-top:8px}.exam-goal{display:flex;gap:12px;align-items:flex-start;min-height:60px;border:1px solid #d3d8e2;padding:15px 16px;border-radius:9px;margin:10px 0;cursor:pointer}.exam-goal:has(input:checked){background:#f8f4ff;border-color:#9574c9}.exam-goal input{width:19px;height:19px;margin:3px 0 0;accent-color:var(--purple);flex-shrink:0}.exam-goal span{font-size:15px}.exam-plan{background:#f7f4fc;border-radius:12px;padding:24px;align-self:start;border-top:3px solid var(--purple)}.exam-plan h2{margin-bottom:14px}.exam-plan p{font-size:14px}.exam-plan button{width:100%;margin-top:14px}.exam-details{border-top:1px solid #e0e3ec;padding:14px 0}.exam-details summary{font-weight:600;color:#593c83;min-height:42px;padding:8px 0}.exam-details>div,.exam-details>label{margin-top:12px}.exam-facts{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:18px 0}.exam-facts li{font-size:14px;padding:7px 13px;background:#f4f0fa;border-radius:6px;color:#513e72}.exam-history ul{padding:0;list-style:none;margin:0}.exam-history li{display:flex;justify-content:space-between;gap:24px;padding:15px 0;border-bottom:1px solid #e1e5ec;align-items:center}.exam-history li:last-child{border:0}.exam-history p{font-size:13px;margin:4px 0 0}.exam-context-nav{display:flex;gap:8px;overflow-x:auto;padding:0 2px 10px;margin:0 0 12px}.exam-context-nav button{flex-shrink:0;font-size:13px;max-width:220px;text-align:left;background:#fffffff5}.exam-context-nav button[aria-current=step]{background:var(--purple);border-color:var(--purple);color:white}.exam-context h2{font-size:23px;line-height:1.4;padding-bottom:15px;border-bottom:3px solid #e6ddf2;margin-bottom:24px}.exam-context>p{max-width:850px;font-size:16px;line-height:1.75;margin-bottom:18px}.exam-preview .exam-context{margin-top:28px}.exam-question{margin-top:30px;padding-top:24px;border-top:1px solid #e0e4eb}.exam-question-head{display:flex;gap:16px;align-items:baseline;justify-content:space-between;margin-bottom:12px}.exam-question-head h3{font-size:17px;margin:0;color:#513480}.exam-question-head>span{font-size:13px;color:#526071;white-space:nowrap}.exam-prompt{font-weight:600;line-height:1.7;margin-bottom:18px}.exam-answer-label{display:block;font-weight:500;font-size:14px;color:#526071;margin:14px 0 8px}.exam-main textarea{display:block;width:100%;resize:vertical;min-height:110px;max-height:700px;border:1px solid #aebac9;border-radius:8px;padding:14px;font:inherit;font-size:16px;line-height:1.65;background:#fcfdff;color:#1f2937}.exam-main textarea:focus{background:white}.exam-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;min-height:0;padding:18px 24px;margin-bottom:20px}.exam-save{font-size:12px;background:#fffffff5;border-radius:6px;padding:8px 14px;color:#526071;min-height:35px}.exam-solution h4{margin:0 0 10px;font-size:15px}.exam-own-answer{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.exam-solution{padding:22px;background:#f7f4fc;border:1px solid #e6ddf2;border-radius:8px}.exam-solution p{font-size:15px;line-height:1.75}.exam-rubric{width:100%;border-collapse:collapse;font-size:14px;margin:22px 0 10px}.exam-rubric caption{text-align:left;font-weight:600;margin-bottom:9px}.exam-rubric th{text-align:left;background:#eee7f6}.exam-rubric th,.exam-rubric td{padding:9px 11px;border:1px solid #dcd4e8;vertical-align:top}.exam-rubric th:last-child,.exam-rubric td:last-child{text-align:center;width:64px}.exam-notes{font-size:13px;padding-left:20px;margin:18px 0 0}.exam-notes li+li{margin-top:8px}.exam-score-label{display:flex;gap:18px;align-items:center;justify-content:space-between;font-size:14px;font-weight:600;padding:16px 0 0}.exam-score-label select{min-width:160px}.exam-summary h2{font-size:30px;color:#5c3e87}.exam-summary textarea{margin-bottom:12px}.exam-print-options{padding:18px 24px}.exam-preview ul{padding-left:22px}.exam-preview li+li{margin-top:10px}.exam-main .button-link{display:inline-flex;align-items:center;min-height:46px;padding:10px 16px;border:1px solid #cfc3e3;border-radius:8px;color:#5a398e;text-decoration:none;font-size:14px;font-weight:600;background:#f8f5fc}.exam-home-card{min-height:0;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:24px}.exam-home-card p{color:var(--muted);max-width:660px}.exam-home-card h2{font-size:23px;margin-bottom:9px}.exam-home-card a{white-space:nowrap}#print-area{display:none}#submit-dialog h2{text-align:left}#submit-dialog .button-row{margin-top:24px}
@media(max-width:850px){.exam-setup-grid{grid-template-columns:1fr;gap:24px}.exam-plan{padding:22px}.exam-plan button{width:auto}.exam-intro{padding:24px}.exam-intro h1{font-size:27px}.exam-context-nav button{max-width:185px}.exam-home-card{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:550px){.exam-intro,.exam-work,.exam-preview,.exam-summary,.exam-setup{padding:21px}.exam-settings-row{grid-template-columns:1fr;gap:15px}.exam-context h2{font-size:21px}.exam-context>p{font-size:15px}.exam-prompt{font-size:15px}.exam-score-label{display:block}.exam-score-label select{width:100%;margin-top:9px}.exam-solution{padding:15px}.exam-rubric{font-size:13px}.exam-rubric td,.exam-rubric th{padding:8px}.exam-history li{align-items:flex-start;gap:12px}.exam-history strong{font-size:15px}.exam-history button{flex-shrink:0}.exam-actions{padding:16px}.exam-actions button{flex:1}.exam-facts{gap:6px}.exam-facts li{font-size:12px;padding:6px 9px}.exam-context-nav{margin-left:-3px;margin-right:-3px}.exam-context-nav button{font-size:12px;max-width:180px}.exam-solution mjx-container{max-width:100%;overflow-x:auto;overflow-y:hidden}}
@page{size:A4;margin:17mm 17mm 18mm}
@media print{
  html,body{background:white!important;color:black;font-size:11pt;line-height:1.5}body>header,body>main,body>dialog,.skip-link{display:none!important}#print-area{display:block!important;width:auto;max-width:none;margin:0;padding:0;color:black}#print-area h1{font-size:22pt}#print-area h2{font-size:16pt;color:black}#print-area h3{font-size:12pt;color:black}#print-area p,#print-area li{font-size:11pt}#print-area .exam-print-header{position:static;display:block;box-shadow:none;border:0;background:white;padding:0;margin-bottom:8mm}#print-area .exam-print-header>p:first-child{font-size:10pt;color:#444}#print-area .exam-context{break-before:page}#print-area .exam-context h2{border-bottom:2px solid #aaa;break-after:avoid}#print-area .exam-context>p{line-height:1.5;margin-bottom:3mm}#print-area .exam-question{break-inside:avoid;margin-top:6mm;padding-top:5mm}#print-area .exam-question-head{margin-bottom:2mm}#print-area .exam-prompt{font-weight:normal;line-height:1.5}#print-area .exam-solution{padding:0;border:0;background:white}#print-area .exam-rubric{font-size:10pt;margin-top:5mm}#print-area .exam-rubric td,#print-area .exam-rubric th{padding:2mm;border-color:#bbb}#print-area .exam-solution p{font-size:11pt}#print-area .exam-notes{font-size:10pt}#print-area figure{break-inside:avoid;margin:5mm 0}#print-area .question-representation svg{max-height:84mm;max-width:140mm}#print-area .question-representation details{display:none}#print-area table{break-inside:avoid}#print-area .data-table{font-size:10pt}#print-area mjx-container{overflow:visible!important}#print-area .exam-question:has(.exam-solution){break-inside:avoid}#print-area .exam-solution h4,#print-area .exam-rubric caption{break-after:avoid}#print-area .exam-rubric tr{break-inside:avoid}
}

.exam-save:empty{display:none}
.exam-settings-row{grid-template-columns:minmax(0,1fr) 220px}
.exam-field>select{min-width:0}
.exam-time-alternatives{margin-bottom:18px}
.exam-time-alternatives button{display:block;width:100%;margin-top:8px}
@media(max-width:550px){.exam-settings-row{grid-template-columns:1fr}}

@page{@bottom-left{content:"JS-Educatie · Wiskundetrainer";font:9pt sans-serif;color:#555}@bottom-right{content:counter(page) " / " counter(pages);font:9pt sans-serif;color:#555}}
@media print{#print-area .exam-question{margin-top:4mm;padding-top:3mm}#print-area .question-representation svg{max-height:65mm;max-width:110mm}#print-area .exam-rubric{margin-top:3mm}#print-area .exam-solution p{line-height:1.45;margin:0 0 3mm}#print-area .exam-notes{margin-top:3mm}}

/* Search and selection stay compact as the exam catalogue grows. */
.exam-goal-picker{margin-bottom:24px}
.exam-selected{margin:16px 0 22px;padding:16px;background:#f8f5fc;border:1px solid #e5dcf0;border-radius:10px}
.exam-selected h3{font-size:14px;margin:0 0 12px}
.exam-chips{display:flex;flex-wrap:wrap;gap:8px;max-height:170px;overflow:auto}
.exam-chips p{font-size:14px;margin:0}
.exam-goal-chip{font-size:13px;min-height:38px;padding:8px 11px;border-color:#cdbbe6;color:#543682;white-space:normal;text-align:left}
.exam-goal-search{display:grid;grid-template-columns:minmax(0,1fr) 175px;gap:14px}
.exam-goal-search input[type=search]{appearance:none;min-width:0;min-height:46px;border:1px solid #cbd3df;border-radius:7px;padding:10px 12px;font:inherit;font-weight:400;background:white;color:inherit}
.exam-goal-count{font-size:13px;margin:13px 0 8px}
.exam-goal-results{list-style:none;margin:0;padding:0;max-height:340px;overflow:auto;border:1px solid #dce1eb;border-radius:9px}
.exam-goal-results:empty{display:none}
.exam-goal-results li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border-bottom:1px solid #e5e8ef}
.exam-goal-results li:last-child{border-bottom:0}
.exam-goal-results strong{font-size:14px;display:block}
.exam-goal-results span{font-size:12px;display:block;margin-top:4px}
.exam-goal-results button{font-size:13px;flex-shrink:0;padding:9px 11px;min-height:40px}
.exam-more-goals{font-size:13px;margin-top:10px}
.exam-review-actions{justify-content:space-between;align-items:center}
.exam-review-actions>p{margin:0;font-size:14px}
.exam-review-actions .button-row{margin:0}
.exam-score-overview{display:flex;align-items:center;gap:28px;margin-bottom:20px}
.exam-grade{background:#f1eafa;border:1px solid #e0d3ef;border-radius:12px;padding:17px 25px;min-width:118px;text-align:center;color:#5b3988}
.exam-grade-label{font-size:14px;font-weight:600;margin:0}
.exam-grade-value{font-size:48px;font-weight:750;line-height:1.2;margin:4px 0 0;font-variant-numeric:tabular-nums}
.exam-score-overview h2{font-size:25px;margin:0 0 8px}
.exam-score-overview p.muted{font-size:14px;margin:0}
.exam-summary>h2{font-size:20px;color:#253044;margin-top:28px;margin-bottom:12px}
.exam-summary>p{line-height:1.7}
.exam-study-list{list-style:none;counter-reset:study;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0;margin:18px 0 0}
.exam-study-list li{border:1px solid #e0e5ed;border-radius:10px;padding:20px;min-width:0}
.exam-study-list h3{font-size:17px;margin:0 0 12px}
.exam-study-list p{font-size:14px;line-height:1.7;margin:0 0 12px}
.exam-study-list .button-link{font-size:13px}
.exam-reflection{min-height:0;margin-bottom:22px}
.exam-reflection h2{font-size:21px;margin:0 0 14px}
.exam-reflection .muted{font-size:13px;margin:12px 0 0}
.exam-result-actions{min-height:0;display:flex;flex-wrap:wrap;gap:12px;padding:20px 24px;margin-bottom:20px}
.exam-result-actions+.exam-details{background:white;border-radius:10px;padding:12px 24px;margin-bottom:20px}
@media(max-width:650px){
 .exam-goal-search{grid-template-columns:1fr}
 .exam-goal-results li{gap:10px;padding:12px}
 .exam-goal-results strong{font-size:13px}
 .exam-goal-results button{font-size:12px}
 .exam-study-list{grid-template-columns:1fr}
 .exam-study-list li{padding:16px}
 .exam-score-overview{gap:18px;align-items:flex-start}
 .exam-grade{padding:15px;min-width:94px}
 .exam-grade-value{font-size:38px}
 .exam-score-overview h2{font-size:21px;line-height:1.4}
 .exam-reflection{padding:21px}
 .exam-review-actions{display:block}
 .exam-review-actions>p{margin-bottom:12px}
 .exam-review-actions .button-row{display:flex;width:100%;flex-wrap:wrap}
 .exam-review-actions button{flex:1}
 .exam-result-actions{padding:16px}
 .exam-result-actions button{width:100%}
}
@media print{
 #print-area[data-kind=report] h2{margin:5mm 0 3mm;font-size:15pt;break-after:avoid}
 #print-area[data-kind=report] h3{font-size:11pt;break-after:avoid}
 #print-area[data-kind=report] p{line-height:1.5}
 #print-area .exam-score-overview{gap:8mm;margin:7mm 0 4mm;break-inside:avoid}
 #print-area .exam-grade{padding:4mm 7mm;min-width:26mm;color:#222;background:white;border-color:#bbb}
 #print-area .exam-grade-label{font-size:10pt}
 #print-area .exam-grade-value{font-size:32pt;margin:0;line-height:1.2}
 #print-area .exam-study-list{display:block;margin:0;padding:0}
 #print-area .exam-study-list li{border:0;border-left:2px solid #bbb;border-radius:0;padding:1mm 0 1mm 4mm;margin:4mm 0;break-inside:avoid}
 #print-area .exam-study-list h3{margin:0 0 2mm}
 #print-area .exam-study-list p{font-size:10pt;margin:0 0 2mm}
 #print-area .exam-own-answer{overflow-wrap:anywhere;white-space:pre-wrap}
 #print-area .exam-printed-reflection{border-top:1px solid #ccc;margin-top:5mm;padding-top:2mm}
}

.exam-goal-search.single-filter{grid-template-columns:1fr}

@media print{#print-area .graph-print-values{display:block;font-size:9pt;line-height:1.4;margin:2mm 0}}
