/* RC229 -- grade-aware, source-honest practice catalog. Scoped to prevent theme bleed. */
.sk229-school{--sk229-line:rgba(130,145,167,.22);--sk229-soft:rgba(112,132,159,.07);--sk229-text:inherit;min-width:0}
.sk229-school .sk229-head{align-items:center}
.sk229-school .sk229-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 16px}
.sk229-school .sk229-metrics>div{display:flex;flex-direction:column;gap:4px;padding:15px 16px;border:1px solid var(--sk229-line);border-radius:14px;background:var(--sk229-soft);min-width:0}
.sk229-school .sk229-metrics strong{font-size:clamp(17px,2vw,23px);font-variant-numeric:tabular-nums;line-height:1.25}
.sk229-school .sk229-metrics span,.sk229-school .sk229-subject small,.sk229-school .sk229-topic small{opacity:.76;font-size:12px}
.sk229-school .sk229-notice{padding:11px 14px;border:1px solid var(--sk229-line);border-radius:12px;line-height:1.55}
.sk229-school .sk229-subjects{display:grid;gap:12px;margin-top:16px}
.sk229-school .sk229-subject{border:1px solid var(--sk229-line);border-radius:15px;min-width:0;overflow:hidden;background:var(--sk229-soft)}
.sk229-school .sk229-subject>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:16px;min-width:0}
.sk229-school .sk229-subject>summary::marker{color:currentColor}
.sk229-school .sk229-subject>summary span:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.sk229-school .sk229-subject>summary strong{overflow-wrap:anywhere}
.sk229-school .sk229-subject-count{font-weight:650;font-size:13px;white-space:nowrap}
.sk229-school .sk229-topics{display:grid;gap:0;border-top:1px solid var(--sk229-line)}
.sk229-school .sk229-topic{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}
.sk229-school .sk229-topic+.sk229-topic{border-top:1px solid var(--sk229-line)}
.sk229-school .sk229-topic>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.sk229-school .sk229-topic strong{font-size:14px;overflow-wrap:anywhere}
.sk229-school .sk229-topic.is-missing{opacity:.74}
.sk229-school .sk229-topic .sk-btn{white-space:nowrap;flex:none;text-align:center}
.sk229-school .sk229-pending{font-size:12px;font-weight:600;white-space:nowrap}
.sk229-standalone{max-width:1050px;margin:0 auto;padding:14px 0}
.sk229-standalone .sk229-topic-head{margin:12px 0}
.sk229-standalone .sk229-check{padding:22px}
.sk229-standalone .sk79-check fieldset{border:1px solid var(--sk229-line);border-radius:14px;padding:15px;margin:14px 0;min-width:0}
.sk229-standalone .sk79-check legend{font-weight:650;line-height:1.5;padding:0 5px}
.sk229-standalone .sk79-check fieldset label{display:flex;align-items:flex-start;gap:11px;margin:10px 0;cursor:pointer;line-height:1.55}
.sk229-standalone .sk79-check fieldset input{flex:none;margin-top:.35em}
.sk229-standalone .sk79-check .sk78-inline-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
@media(max-width:640px){.sk229-school .sk229-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sk229-school .sk229-metrics>div{padding:12px}.sk229-school .sk229-topic{align-items:stretch;flex-direction:column;gap:9px}.sk229-school .sk229-topic .sk-btn{align-self:flex-start}.sk229-school .sk229-subject-count{white-space:normal;text-align:right}.sk229-standalone .sk229-check{padding:14px}}
.sk229-school :is(a,summary,button,input):focus-visible{outline:3px solid var(--sk-accent,#4f91ff);outline-offset:3px}
html[data-theme=dark] .sk229-school,body.sk-dark .sk229-school,body[data-theme=dark] .sk229-school{--sk229-line:rgba(169,191,224,.27);--sk229-soft:rgba(117,148,191,.10)}
html[data-theme=dim] .sk229-school,body.sk-dim .sk229-school,body[data-theme=dim] .sk229-school{--sk229-line:rgba(174,187,205,.30);--sk229-soft:rgba(133,149,178,.11)}
@media(prefers-reduced-motion:reduce){.sk229-school :is(a,summary,button){transition:none}}
.sk229-school .sk230-source-note,.sk229-standalone .sk230-disclosure{padding:12px 15px;line-height:1.65;border:1px solid var(--sk229-line);background:var(--sk229-soft);border-radius:12px;color:inherit}
.sk229-school .sk229-topic.is-short{border-left:3px solid var(--sk-accent,#7186b3)}
