/* Classroom extensions use the existing slate, copper and field-paper identity. */
body[data-page="classroom"]{font-size:1rem;line-height:1.6}
body[data-page="classroom"] p,body[data-page="classroom"] li{font-size:1rem}
body[data-page="classroom"] .activity-body p,body[data-page="classroom"] .kit-copy p{font-size:1rem}
body[data-page="classroom"] .activity-badge,body[data-page="classroom"] .mini-meta span,body[data-page="classroom"] .lesson-kicker,body[data-page="classroom"] .trail-step small{font-size:.875rem}
.cl-main a:not(.rl-button):not(.cl-chip){text-underline-offset:3px}
.cl-breadcrumb{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px;font-size:.95rem}.cl-breadcrumb a{color:#884621;font-weight:700}
.cl-facts{display:flex;gap:12px;flex-wrap:wrap;padding:0;margin:22px 0 0;list-style:none}.cl-facts li{padding:6px 12px;border:1px solid #a8bbb2;border-radius:6px;font-size:.9rem!important;background:#f8faf6}
.cl-lesson-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px;margin-bottom:24px;align-items:start}.cl-lesson-grid .rl-panel{margin:0}
.cl-callout{padding:24px;background:#e8eee9;border-left:4px solid #a9572a;border-radius:0 12px 12px 0;margin:0 0 26px}.cl-callout h2{font-size:1.5rem;margin:0 0 12px}.cl-callout p:last-child{margin-bottom:0}.cl-callout a{color:#80421f;font-weight:700}
.cl-table-wrap{overflow-x:auto;max-width:100%;margin-bottom:18px}.cl-table{width:100%;border-collapse:collapse;text-align:left;font-size:1rem}.cl-table caption{text-align:left;font-size:.9rem;color:#52686b;margin-bottom:12px}.cl-table th,.cl-table td{padding:13px 14px;border:1px solid #c5d2cd;vertical-align:top}.cl-table thead{background:#18343a;color:white}.cl-table tbody th{font-weight:700;min-width:110px}.cl-table tbody tr:nth-child(even){background:#f3f6f1}
.cl-panel-heading{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:start}.cl-panel-heading h2{margin-top:0}.cl-progress{font-weight:800;color:#315d59;background:#edf3ed;border-radius:8px;padding:10px 14px}
.cl-case-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 24px}.cl-chip{display:inline-flex;align-items:center;justify-content:center;border:1px solid #97ada5;border-radius:8px;padding:10px 14px;color:#18343a;background:white;font:inherit;font-weight:700;cursor:pointer;min-height:46px;text-decoration:none}.cl-chip[aria-pressed="true"],.cl-chip[aria-current="page"]{background:#18343a;color:white;border-color:#18343a}
#caseCard{border-top:1px solid #c5d2cd;padding-top:18px;min-height:145px}#caseCard h3{font-family:Georgia,serif;font-size:1.7rem;margin:0 0 8px}
.cl-question{border:0;border-top:1px solid #c5d2cd;padding:20px 0 0;margin:14px 0}.cl-question legend{font-size:1.1rem;font-weight:800;padding:0 8px 0 0}.cl-choices{display:flex;gap:10px;flex-wrap:wrap}.cl-choice{font:inherit;text-align:left;border:1px solid #8fa69e;padding:12px 16px;border-radius:8px;background:white;min-height:46px;cursor:pointer;color:#18343a}.cl-choice[aria-pressed="true"]{background:#e8eee9;border:2px solid #18343a;padding:11px 15px}.cl-feedback{background:#fff3e5;border-left:4px solid #a9572a;padding:14px;margin-top:18px!important;min-height:70px}.cl-feedback.correct{background:#e6f0e9;border-color:#315d59}
.cl-sources{border-top:1px solid #b8c9c1;padding-top:26px;margin-top:26px}.cl-sources h2{font-size:1.4rem}.cl-sources a{color:#854321;font-weight:700}.cl-sources p{max-width:none}
.cl-next{display:flex;gap:16px;flex-wrap:wrap;padding:22px 0 40px;border-top:1px solid #c5d2cd}.cl-next a{font-weight:700;color:#854321}
.cl-worksheet-heading{display:flex;align-items:center;gap:18px;border-bottom:2px solid #18343a;padding-bottom:16px;margin-bottom:24px}.cl-worksheet-heading img{width:95px;max-height:75px;object-fit:contain}.cl-worksheet-heading strong{font-size:1.1rem;letter-spacing:.07em}.cl-worksheet-heading p{margin:4px 0 0;font-size:.9rem!important}
.cl-progress-box{padding:18px 24px;margin-bottom:24px;background:#18343a;color:white;border-radius:12px}.cl-progress-box p{margin:0 0 8px}.cl-progress-box .rl-mini{color:#d6e5df}.cl-progress-box progress{accent-color:#d39959;width:100%;height:16px;margin:6px 0 10px}
.cl-check{display:flex;align-items:flex-start;gap:10px;font-size:1rem;cursor:pointer;line-height:1.55;margin:16px 0}.cl-check input{flex:none;width:20px;height:20px;margin-top:3px;accent-color:#315d59}
.cl-quest-card h2{font-size:1.75rem}.cl-quest-card .rl-field textarea{min-height:100px}
.cl-badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cl-earned-badge{border:1px solid #b7c7c0;padding:20px;border-radius:12px;background:#f8faf6}.cl-earned-badge span{font-size:.875rem;color:#52686b;letter-spacing:.06em;font-weight:800}.cl-earned-badge strong{display:block;font-size:1.15rem;margin:8px 0}.cl-earned-badge p{font-size:.95rem!important;margin:0}.cl-earned-badge.earned{border:2px solid #315d59;background:#e9f2eb}.cl-earned-badge.earned strong{color:#245348}.cl-badge-checks{display:flex;gap:8px 24px;flex-wrap:wrap}
#storyOutput h3{font-size:1.1rem;margin:20px 0 6px}#storyOutput p{white-space:pre-wrap;overflow-wrap:anywhere}.cl-print-value{display:none}
.cl-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.cl-plan-steps{padding-left:22px}.cl-plan-steps li{margin:12px 0}.cl-plan-steps strong{display:block;color:#854321}.cl-plan summary{cursor:pointer;font-weight:800;min-height:46px;padding:12px 0}.cl-plan details p{margin-top:14px}.cl-handwriting{line-height:2}
.cl-writing-space{min-height:80px}.cl-writing-lines{min-height:70px;background:repeating-linear-gradient(white,white 31px,#b8c9c1 32px,white 33px);margin-bottom:18px}
.classroom-teaching-note a{color:#efb483;font-weight:700}
.cl-grade-section{padding:52px 0;background:#e8eee9}.cl-grade-section h2{font-family:Georgia,serif;font-size:2.4rem;line-height:1.2;margin:0 0 15px}.cl-grade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0}.cl-grade-card{display:block;background:#fff;border:1px solid #b6c8bf;border-radius:14px;padding:24px;text-decoration:none;color:#18343a;box-shadow:0 6px 20px #18343a08}.cl-grade-card strong{font-family:Georgia,serif;display:block;font-size:1.9rem;margin-bottom:8px}.cl-grade-card span{font-size:.95rem}.cl-grade-card:hover{border-color:#a9572a;box-shadow:0 10px 26px #18343a15}
.cl-lesson-list{counter-reset:lessons;display:grid;gap:20px}.cl-lesson-link{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:26px;background:white;border:1px solid #b7c7c0;border-radius:14px;text-decoration:none;color:#18343a}.cl-lesson-link:before{counter-increment:lessons;content:counter(lessons,decimal-leading-zero);font-family:Georgia,serif;font-size:2.4rem;color:#a9572a}.cl-lesson-link h2{font-size:1.7rem;margin:0 0 8px}.cl-lesson-link p{margin:0 0 10px}.cl-lesson-link small{font-size:.9rem;color:#52686b}
.cl-vocab{display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none}.cl-vocab li{padding:8px 12px;background:#e8eee9;border-radius:6px}.cl-step-list{padding-left:26px}.cl-step-list li{margin:20px 0}.cl-step-list strong{display:block;font-size:1.1rem;margin-bottom:6px}.cl-worksheet .rl-field{margin-bottom:24px}.cl-worksheet .rl-field textarea{min-height:90px}.cl-teacher summary{font-weight:800;cursor:pointer;min-height:46px;padding:12px 0}.cl-teacher h3{font-size:1.2rem;margin:20px 0 8px}.cl-teacher li{margin:12px 0}.cl-lesson-data{padding:18px;border-left:4px solid #315d59;background:#f0f5ef;margin:20px 0}.cl-lesson-data p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:850px){.cl-lesson-grid,.cl-plan-grid{grid-template-columns:1fr}.cl-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cl-badge-grid{grid-template-columns:1fr}.cl-lesson-link{grid-template-columns:35px 1fr;gap:12px;padding:20px}.cl-lesson-link:before{font-size:1.8rem}.cl-grade-card{padding:18px}.cl-grade-card strong{font-size:1.55rem}.cl-table th,.cl-table td{padding:10px}.cl-pagehead h1{overflow-wrap:anywhere}}
@media print{
 @page{size:auto;margin:16mm}
 html,body,main{background:white!important;color:black!important}body{padding-bottom:0!important;font-size:11pt!important;line-height:1.45!important}
 body[data-page="classroom"] p,body[data-page="classroom"] li{font-size:11pt!important}
 .no-print,.cl-breadcrumb,.cl-next,.cl-sources,.cl-facts,.skip-link,.rl-actions,.cl-feedback,.rl-topo-question button{display:none!important}
 .rl-section,.rl-wrap{width:100%!important;padding:0!important}.rl-pagehead{padding:8px 0 18px!important;background:white!important}.rl-pagehead h1{font-size:25pt!important}.rl-pagehead p{font-size:11pt!important}
 .cl-lesson-grid,.cl-plan-grid,.cl-badge-grid,.rl-grid{display:block}.rl-panel,.cl-callout{background:white!important;box-shadow:none!important;border:0!important;border-radius:0;padding:8px 0!important;margin:0 0 15px}
 h2,h3,legend{break-after:avoid}.cl-table tr,.cl-earned-badge,.cl-step-list li{break-inside:avoid}.cl-table thead{display:table-header-group;color:black;background:#eee!important}.cl-table th,.cl-table td{padding:7px;font-size:10pt}.cl-table-wrap{overflow:visible}.cl-writing-space{min-height:52px}.cl-writing-lines{min-height:45px;border-bottom:1px solid #999;background:none}
 .cl-print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;min-height:28px;border-bottom:1px solid #aaa;padding:4px 0 10px;margin-bottom:12px}.cl-print-value.blank{min-height:65px}
 main textarea,main input:not([type="checkbox"]):not([type="radio"]),main select{display:none!important}.cl-check input{appearance:auto;width:15px;height:15px}.cl-earned-badge{padding:10px!important;border:1px solid #aaa!important;margin:10px 0}
 .cl-worksheet-heading img{width:70px}.cl-worksheet-heading strong{font-size:12pt}.cl-worksheet-heading p{font-size:10pt!important}.cl-worksheet-heading{margin-bottom:12px}
 body[data-print-section] .cl-print-ancestor > :not(.cl-print-ancestor):not(.cl-print-target){display:none!important}
 body[data-print-section] .cl-print-target{display:block!important}body[data-print-section] .cl-print-target[hidden]{display:none!important}
 details[open] summary{font-weight:800}a{color:black!important;text-decoration:none!important}
 .cl-teacher:not([open]){display:none!important}
}
