.class-hub-page{display:grid;gap:18px}.class-hub-head{align-items:flex-start}.class-hub-head .link-btn{padding:0;margin:0 0 8px}.class-hub-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.class-hub-metric{background:var(--surface,#fff);border:1px solid var(--line,#e3e8ef);border-radius:16px;padding:16px;display:grid;gap:5px;min-width:0}.class-hub-metric small,.class-hub-metric span{color:var(--muted,#64748b)}.class-hub-metric strong{font-size:1.35rem}.class-hub-metric.ok{border-color:#b9e5ce}.class-hub-metric.warn{border-color:#efd7a4}.class-hub-alerts{border-color:#efd7a4}.class-hub-issue-list{display:grid;gap:10px}.class-hub-issue{width:100%;border:1px solid var(--line,#e3e8ef);background:var(--surface,#fff);border-radius:14px;padding:12px 14px;text-align:right;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:inherit}.class-hub-issue:hover{border-color:#b7c5d9}.class-hub-issue span{color:var(--muted,#64748b);font-size:.86rem}.class-hub-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:14px;align-items:start}.class-hub-curriculum{grid-row:span 2}.class-hub-card{min-width:0}.class-hub-card .responsive-table{overflow:auto}.class-hub-card table{min-width:720px}.class-hub-teacher{display:block;white-space:nowrap}.class-hub-roster{display:grid;gap:8px;max-height:360px;overflow:auto}.class-hub-roster>span{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line,#e3e8ef);border-radius:10px}.class-hub-roster small{color:var(--muted,#64748b)}.class-hub-schedule{display:grid;gap:8px;max-height:420px;overflow:auto}.class-hub-schedule>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border-bottom:1px solid var(--line,#e3e8ef)}.class-hub-schedule>div>span:first-child{display:grid}.class-hub-schedule small{color:var(--muted,#64748b)}@media(max-width:1050px){.class-hub-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.class-hub-grid{grid-template-columns:1fr}.class-hub-curriculum{grid-row:auto}}@media(max-width:640px){.class-hub-metrics{grid-template-columns:1fr}.class-hub-issue{align-items:flex-start;flex-direction:column}.class-hub-head .head-actions{width:100%}.class-hub-head .head-actions button{flex:1}.class-hub-card{padding:14px}.class-hub-schedule>div{align-items:flex-start;flex-direction:column}}
