.math-lab-controls{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}
.math-lab-controls label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:15px;font-weight:700;max-width:100%}
.math-lab-controls select{font:inherit;min-height:48px;padding:10px 14px;border:1px solid #ccd9c8;border-radius:12px;background:#fff;max-width:100%}
.math-lab-range{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:16px;font-weight:700;margin:18px 0}
.math-lab-range input{flex:1;min-width:160px;min-height:44px;accent-color:var(--subject)}
.math-lab-reading{text-align:center;font-size:21px;font-weight:800;line-height:1.8;color:#366b53;overflow-wrap:anywhere}
.equal-object-groups{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:20px 0;max-width:100%}
.equal-object-groups>div{border:2px solid #e5bf65;border-radius:16px;background:#fff5d5;padding:10px;max-width:100%;min-width:80px}
.equal-object-groups small{display:block;text-align:center;color:#856223;font-weight:700;margin-bottom:7px}
.equal-object-groups span{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;max-width:160px}
.equal-object-groups i{font-style:normal;font-size:25px;line-height:1.3}
.prewriting-prompts{border-radius:16px;background:#fff5df;padding:15px 19px;margin:18px 0}
.prewriting-prompts h3{margin:0 0 10px}.prewriting-prompts ol{margin:0;padding-left:22px;line-height:1.8}
.roleplay-card .writing-checklist{line-height:1.8}.roleplay-card .conversation{margin-top:20px}
.dictation-controls textarea{flex:1 1 100%;width:100%;min-width:0;resize:vertical;min-height:115px;border:1px solid #d9e3d0;border-radius:13px;padding:13px 15px;font:inherit;font-size:18px;line-height:1.65;background:#fff}
.math-lab-controls select:focus-visible,.dictation-controls textarea:focus-visible{outline:4px solid #2988d5;outline-offset:4px}
.observation-table{width:100%;margin:22px 0;overflow-x:auto}
.observation-table table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:15px}
.observation-table th,.observation-table td{border:1px solid #bacdb6;padding:12px;overflow-wrap:anywhere;vertical-align:top}
.observation-table th{background:#edf4e4;text-align:left}.observation-table td{height:72px;background:white}
.observation-sheet ol{padding-left:23px;line-height:1.9}
@media(max-width:700px){
 .math-lab-controls{gap:12px}.math-lab-controls label{font-size:14px;flex:1 1 145px}
 .math-lab-reading{font-size:18px}.equal-object-groups{gap:8px}.equal-object-groups>div{padding:8px}.equal-object-groups i{font-size:23px}
 .dictation-controls textarea{font-size:17px}.observation-table th,.observation-table td{padding:8px;font-size:13px}.observation-table td{height:85px}
}
@media print{
 body.printing-observation .printing-ancestor>*:not(.printing-ancestor):not(.printing-target){display:none!important}
 body.printing-observation>.printing-target{display:block!important}
 html.printing-ancestor,body.printing-observation,body.printing-observation .printing-ancestor{display:block!important;position:static!important;width:auto!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:white!important;transform:none!important}
 body.printing-observation .printing-target{display:block!important;position:static!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:white!important;color:#222!important;break-inside:auto}
 body.printing-observation .printing-target button,body.printing-observation .observation-print-status{display:none!important}
 body.printing-observation .printing-target h2{font-size:22pt}body.printing-observation .printing-target p,body.printing-observation .printing-target li{font-size:11pt;line-height:1.6}
 body.printing-observation .observation-table{overflow:visible}body.printing-observation .observation-table th,body.printing-observation .observation-table td{border-color:#777;font-size:11pt}body.printing-observation .observation-table tr{break-inside:avoid}body.printing-observation .observation-table td{height:95px}
}
