.tutor-tabs{position:sticky;top:0;z-index:4;background:var(--surface,#fff);overflow-x:auto;white-space:nowrap}
.tutor-switch{display:flex;justify-content:flex-end}.tutor-switch label{min-width:min(100%,420px)}
.tutor-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.tutor-metrics .card{min-height:120px}
.attendance-contexts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;margin:1rem 0}
.attendance-context-card{display:flex;flex-direction:column;gap:.28rem;text-decoration:none;color:inherit;border:2px solid transparent}
.attendance-context-card>span{align-self:flex-start;padding:.2rem .55rem;border-radius:999px;background:#eaf3fb;color:#185a87;font-size:.76rem;font-weight:800;text-transform:uppercase}
.attendance-context-card.active{border-color:var(--blue,#1673b1);box-shadow:0 0 0 3px #1673b11c}
.attendance-context-card small{color:var(--muted,#607286)}
.correction-reason{display:block;margin:1rem 0;padding:1rem;border-left:4px solid #d19319;background:#fff8e9}
.live-search{min-width:min(100%,320px)}.tutor-roster{max-height:65vh;overflow:auto}.tutor-roster thead{position:sticky;top:0;z-index:2}
.tutor-matrix{max-height:70vh;overflow:auto}.tutor-matrix thead{position:sticky;top:0;z-index:3}.tutor-matrix th:first-child,.tutor-matrix td:first-child{position:sticky;left:0;z-index:2;background:#fff;min-width:190px}.tutor-matrix thead th:first-child{z-index:4;background:#eef4f8}
.skill-list{display:grid;gap:.75rem}.skill-row{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(260px,1.4fr);gap:.75rem;padding:.85rem;border:1px solid #dce5ec;border-radius:.8rem;background:#fbfdff}.skill-row label{margin:0}
.success-alert{border-color:#9fd5b4;background:#effbf3;color:#176438}
@media(max-width:900px){.tutor-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.tutor-tabs{margin-inline:-1rem;padding-inline:1rem}.skill-row{grid-template-columns:1fr}.attendance-contexts{grid-template-columns:1fr}}
@media(max-width:560px){.tutor-metrics{grid-template-columns:1fr 1fr}.tutor-metrics .card{min-height:96px;padding:.8rem}.attendance-table td{padding:.55rem .4rem}.attendance-table select,.attendance-table input{min-width:130px}.form-actions{position:sticky;bottom:0;z-index:3;padding:.75rem;background:#fffffff2;box-shadow:0 -6px 18px #14354d17}.form-actions button{flex:1}.skill-row{padding:.65rem}}
