.school-signals-shell{max-width:1040px}
.school-signals-hero{padding:14px 0 42px}
.school-signals-hero h1{margin-bottom:18px}
.school-signals-hero .lead strong{color:var(--text)}
.school-principle{margin-top:28px;padding:18px 20px;border-left:3px solid var(--accent);border-radius:12px;background:var(--soft);color:#33413d;line-height:1.6}
.school-signals-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin:12px 0 24px}
.school-signals-controls>div:first-child{max-width:720px}
.school-signals-controls h2{font-size:clamp(1.65rem,3.2vw,2.35rem);margin-bottom:10px}
.school-signals-intro{margin:0;color:var(--muted);line-height:1.65}
.school-domain-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:420px}
.school-filter{border:1px solid var(--line);border-radius:999px;padding:.48rem .7rem;background:rgba(255,255,255,.72);color:var(--text);font:inherit;font-size:.82rem;cursor:pointer}
.school-filter.is-active{background:var(--accent);border-color:var(--accent);color:white}
.school-signals-list{display:grid;gap:18px}
.school-signal-card{padding:26px 28px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--shadow)}
.school-signal-domains{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.school-domain-tag{display:inline-block;border-radius:999px;padding:.25rem .55rem;background:var(--soft);color:var(--accent-dark);font-size:.76rem;font-weight:700}
.school-signal-card h2{font-size:1.35rem;margin-bottom:12px}
.school-signal-summary{margin:0;color:#3d4945;line-height:1.68}
.school-signal-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);font-size:.84rem}
.school-signal-source{color:var(--accent-dark);font-weight:650;text-decoration:none}
.school-signal-source:hover{text-decoration:underline}
.school-method-note{margin-top:30px;padding:24px 26px;border-radius:18px;background:rgba(255,255,255,.58);border:1px solid var(--line)}
.school-method-note p:last-child{margin-bottom:0;color:var(--muted);line-height:1.65}
.school-empty{padding:22px 0;color:var(--muted)}
@media(max-width:760px){
 .school-signals-controls{display:block}
 .school-domain-filters{justify-content:flex-start;max-width:none;margin-top:18px}
 .school-signal-card{padding:22px 20px}
}
