.overview{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:760px;margin:28px 0}.overview>div{border-top:2px solid #b49a73;padding:12px 0}.overview strong{display:block;font:700 29px Georgia,serif;color:#654b3b}.overview span{font-size:13px;color:#68635b}.period-nav{display:flex;flex-wrap:wrap;gap:8px;margin:27px 0}.period-nav button{padding:9px 13px;min-height:42px;border-radius:7px;background:#fff;color:#654b3b;border:1px solid #b9ad9b}.period-nav button[aria-pressed=true]{background:#654b3b;color:#fff}.grade-tools{display:flex;gap:20px;align-items:center;justify-content:space-between}.grade-tools .field{flex:1;max-width:530px}.download{text-decoration:none;font-size:14px}.period-heading{display:flex;justify-content:space-between;align-items:baseline;gap:15px;border-top:1px solid #ddd4c8;padding-top:22px;margin-top:15px}.period-heading h2{font-size:28px}.period-heading p{font-size:14px;color:#68635b}.current-label{font:650 12px system-ui,sans-serif;display:inline-block;padding:5px 8px;margin-left:10px;background:#eee5d5;border-radius:6px;color:#654b3b;vertical-align:middle}.component-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:6px 0 30px}.component{background:#fff;border:1px solid #ddd4c8;border-radius:10px;padding:19px;display:flex;flex-direction:column;scroll-margin-top:20px}.component h3{font:700 20px/1.3 Georgia,serif;margin:8px 0 10px}.component-meta{font-size:12px;display:flex;justify-content:space-between;gap:16px;color:#654b3b}.component p{font-size:13px;color:#68635b;margin:0 0 12px}.component .material-link{font-size:14px;font-weight:650;margin-top:auto}.planned{font-size:13px;color:#68635b;margin-top:auto}.optional-panel,.source-panel{margin-top:24px}.source-panel p,.source-panel li,.optional-panel p{font-size:14px}.source-panel summary{cursor:pointer;color:#654b3b;font-weight:650}.source-panel details{border-top:1px solid #ddd4c8;padding-top:14px}.optional-list{columns:2;column-gap:32px;padding-left:20px;font-size:14px}.optional-list li{break-inside:avoid;margin:7px 0}.component:target{outline:3px solid #b49a73;outline-offset:2px}
@media(max-width:650px){.component-grid{grid-template-columns:1fr}.overview{gap:10px}.overview strong{font-size:24px}.overview span{font-size:11px}.grade-tools{align-items:stretch;flex-direction:column;gap:0}.download{text-align:center;margin-bottom:12px}.period-heading{align-items:start;flex-direction:column;gap:0}.period-heading p{margin-top:0}.optional-list{columns:1}.period-nav{gap:6px}.period-nav button{padding:8px 11px}.current-label{margin-left:6px}}
@media print{.period-nav,.grade-tools{display:none}.component-grid{grid-template-columns:1fr 1fr}.component{break-inside:avoid}.overview{margin:10px 0}.source-panel details{display:none}}
