/* Teachers is a native domain workspace. Its controls inherit the global tokens and remain usable at every screen preset. */
.teacher-page-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .48rem;padding:.5rem .64rem;border:1px solid var(--line);border-radius:.82rem;background:linear-gradient(118deg,var(--surface-1),var(--brand-softer) 54%,var(--secondary-soft));box-shadow:var(--shadow-xs),var(--shadow-inset)}
.teacher-page-head h1{margin:0;font-size:clamp(1.08rem,1.65vw,1.4rem);line-height:1;letter-spacing:-.045em}.teacher-page-head p:not(.eyebrow){margin:.14rem 0 0;color:var(--muted);font-size:.57rem;line-height:1.35}.teacher-page-head .page-actions{align-items:center}
.teacher-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.34rem;margin:0 0 .48rem;padding:.34rem;border:1px solid var(--line);border-radius:.86rem;background:var(--surface-2);box-shadow:var(--shadow-inset)}
.teacher-tabs button{min-width:0;display:grid;grid-template-columns:1.95rem minmax(0,1fr) auto;align-items:center;gap:.48rem;padding:.48rem .55rem;border:1px solid transparent;border-radius:.68rem;background:var(--control-ash);color:var(--muted);text-align:left;transition:transform var(--transition),background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}
.teacher-tabs button:hover{transform:translateY(-1px);border-color:var(--selection-line);background:var(--control-ash-hover);color:var(--text);box-shadow:var(--shadow-xs)}.teacher-tabs button.active{border-color:transparent;background:linear-gradient(135deg,var(--selection),var(--selection-strong));color:var(--selection-on);box-shadow:0 .3rem .8rem rgba(var(--selection-rgb),.2)}
.teacher-tabs i{width:1.95rem;height:1.95rem;display:grid;place-items:center;border-radius:.58rem;background:var(--surface-3);font-style:normal;font-size:.65rem;font-weight:950}.teacher-tabs button.active i{color:var(--selection-on);background:rgba(255,255,255,.2)}.teacher-tabs span{min-width:0;display:grid}.teacher-tabs strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;font-size:.62rem;line-height:1.2}.teacher-tabs small{margin-top:.08rem;color:var(--muted);font-size:.47rem}.teacher-tabs b{min-width:1.55rem;padding:.2rem .34rem;border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:.48rem;text-align:center}.teacher-tabs button.active b{background:rgba(255,255,255,.2);color:var(--selection-on)}
.teacher-loading{min-height:8rem;display:grid;place-items:center;color:var(--muted);font-size:.68rem;font-weight:800}
.teacher-summary-bar{display:flex;align-items:stretch;gap:.32rem;margin-bottom:.42rem;overflow:auto;scrollbar-width:thin}.teacher-summary-item{min-width:6.1rem;display:flex;align-items:center;gap:.42rem;padding:.38rem .48rem;border:1px solid var(--line);border-radius:.64rem;background:var(--surface-1);box-shadow:var(--shadow-xs)}.teacher-summary-item strong{color:var(--primary);font-size:.83rem;line-height:1}.teacher-summary-item small{color:var(--muted);font-size:.48rem;font-weight:820;white-space:nowrap}.teacher-summary-item.secondary strong{color:var(--secondary)}.teacher-summary-item.green strong{color:var(--green)}.teacher-summary-item.gold strong{color:var(--gold)}.teacher-summary-item.red strong{color:var(--red)}.teacher-summary-item.blue strong{color:var(--blue)}
.teacher-console,.teacher-times-console,.teacher-roster-console{padding:.62rem}.teacher-console-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-bottom:.5rem}.teacher-console-head h2{margin:0;color:var(--text-strong);font-size:.85rem;letter-spacing:-.025em}.teacher-console-head p{margin:.12rem 0 0;color:var(--muted);font-size:.53rem;line-height:1.36}
.teacher-quick{display:flex;align-items:center;gap:.18rem;flex-wrap:wrap;padding:.18rem;border:1px solid var(--line);border-radius:.62rem;background:var(--surface-3)}.teacher-quick button{border:1px solid transparent;border-radius:.48rem;padding:.35rem .5rem;background:var(--control-ash);color:var(--muted);font-size:.53rem;font-weight:900}.teacher-quick button:hover{color:var(--text);border-color:var(--selection-line);background:var(--control-ash-hover)}.teacher-quick button.active{border-color:transparent;background:var(--selection);color:var(--selection-on);box-shadow:var(--shadow-xs)}
.teacher-filters,.teacher-time-filters{display:flex;align-items:end;gap:.38rem;flex-wrap:wrap;margin-bottom:.48rem;padding:.42rem;border:1px solid var(--line);border-radius:.7rem;background:linear-gradient(120deg,var(--surface-2),var(--brand-softer))}.teacher-filters .student-search{flex:1 1 18rem}.teacher-filters .compact-filter,.teacher-time-filters .compact-filter{min-width:9rem}.compact-filter{display:grid;gap:.16rem}.compact-filter>span{color:var(--muted);font-size:.45rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.teacher-time-filters{display:grid;grid-template-columns:repeat(5,minmax(7.4rem,1fr)) auto}.teacher-time-filters .btn{align-self:end}
.teacher-table,.teacher-intake-table,.teacher-time-roster,.teacher-time-blocks{min-width:74rem}.teacher-table th,.teacher-table td,.teacher-intake-table th,.teacher-intake-table td,.teacher-time-roster th,.teacher-time-roster td,.teacher-time-blocks th,.teacher-time-blocks td{padding:.43rem .48rem;vertical-align:middle}.teacher-table tbody tr:hover,.teacher-intake-table tbody tr:hover,.teacher-time-roster tbody tr:hover,.teacher-time-blocks tbody tr:hover{background:var(--brand-softer)}
.teacher-person{min-width:9.4rem;display:flex;align-items:center;gap:.42rem;border:0;background:transparent;color:var(--text);text-align:left}.teacher-person:hover strong{color:var(--primary)}.teacher-person span:last-child{min-width:0;display:grid}.teacher-person strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem}.teacher-person small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:.08rem;color:var(--muted);font-size:.46rem}.teacher-avatar{width:1.9rem;height:1.9rem;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(var(--primary-rgb),.18);border-radius:.58rem;background:linear-gradient(135deg,var(--secondary-soft),var(--brand-soft));color:var(--primary);font-size:.55rem;font-weight:950}
.contact-link{color:var(--primary);font-size:.54rem;font-weight:750;text-decoration:none}.contact-link:hover{text-decoration:underline}.eligibility-cell{max-width:15rem;display:flex;align-items:center;gap:.2rem;flex-wrap:wrap;border:0;background:transparent;text-align:left}.eligibility-cell span,.assignment-chip,.load-chip,.fit-chips span{display:inline-flex;align-items:center;padding:.22rem .34rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:.46rem;font-weight:860;line-height:1.2}.eligibility-cell:hover span{border-color:rgba(var(--primary-rgb),.3);color:var(--primary)}.eligibility-cell em{color:var(--red);font-size:.47rem;font-style:normal;font-weight:800}.eligibility-cell b{padding:.16rem .29rem;border-radius:999px;background:var(--brand-soft);color:var(--primary);font-size:.45rem}.assignment-chip.group{background:var(--blue-soft);color:var(--blue)}.assignment-chip.individual{background:var(--secondary-soft);color:var(--secondary)}.assignment-chip.available{background:var(--green-soft);color:var(--green)}.assignment-chip.inactive{background:var(--surface-3);color:var(--muted)}.load-chip{white-space:nowrap;background:var(--brand-softer);color:var(--primary)}
.fit-chips{display:flex;gap:.2rem;flex-wrap:wrap}.fit-chips span:nth-child(2){background:var(--blue-soft);color:var(--blue)}.fit-chips span:nth-child(3){background:var(--secondary-soft);color:var(--secondary)}
.eligibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem}.eligibility-teacher{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.52rem;padding:.55rem;border:1px solid var(--line);border-radius:.72rem;background:linear-gradient(140deg,var(--surface-1),var(--surface-2));box-shadow:var(--shadow-xs)}.eligibility-teacher>div:nth-child(2){min-width:0}.eligibility-teacher strong,.eligibility-teacher small{display:block}.eligibility-teacher strong{font-size:.62rem}.eligibility-teacher small{margin-top:.1rem;color:var(--muted);font-size:.48rem}.eligibility-list{display:flex;gap:.2rem;flex-wrap:wrap;margin-top:.28rem}.eligibility-owner{display:grid;gap:.12rem}.eligibility-owner span{color:var(--muted);font-size:.46rem}.eligibility-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.eligibility-course{padding:.54rem;border:1px solid var(--line);border-radius:.68rem;background:var(--surface-2)}.eligibility-course header,.heads-summary header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.34rem}.eligibility-course header strong,.heads-summary header strong{font-size:.62rem}.eligibility-course header span,.heads-summary header span{padding:.18rem .32rem;border-radius:999px;background:var(--brand-soft);color:var(--primary);font-size:.45rem;font-weight:900}.eligibility-course>div,.heads-summary>div{display:flex;align-items:center;justify-content:space-between;gap:.45rem;padding:.3rem 0;border-top:1px dashed var(--line)}.eligibility-course>div b,.heads-summary>div b{font-size:.52rem}.eligibility-course>div small,.heads-summary>div small{color:var(--muted);font-size:.45rem}.eligibility-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.24rem}.eligibility-options label{display:flex;align-items:center;gap:.36rem;padding:.36rem .4rem;border:1px solid var(--line);border-radius:.54rem;background:var(--surface-1);color:var(--text);font-size:.52rem;font-weight:750}.eligibility-options label:has(input:checked){border-color:var(--selection);background:var(--selection-soft);color:var(--selection);box-shadow:0 0 0 2px var(--selection-softer)}.eligibility-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem}.heads-summary{padding:.54rem;border:1px solid rgba(var(--secondary-rgb),.24);border-radius:.68rem;background:var(--secondary-soft)}
.teacher-times-console{margin-bottom:.5rem}.teacher-times-console>.card-head,.teacher-roster-console>.card-head{margin-bottom:.45rem}.teacher-day-strip{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.24rem;margin-bottom:.44rem}.teacher-day-strip button{display:grid;gap:.08rem;padding:.38rem .25rem;border:1px solid var(--line);border-radius:.58rem;background:var(--surface-2);color:var(--muted);text-align:center}.teacher-day-strip button:hover{border-color:var(--selection-line);background:var(--control-ash-hover);color:var(--text)}.teacher-day-strip button.active{border-color:transparent;background:var(--selection);color:var(--selection-on);box-shadow:var(--shadow-xs)}.teacher-day-strip strong{font-size:.5rem}.teacher-day-strip span{font-size:.7rem;font-weight:950}.teacher-day-strip small{font-size:.42rem}
.available-slots-panel{padding:.56rem;border:1px solid rgba(var(--primary-rgb),.18);border-radius:.76rem;background:linear-gradient(130deg,var(--surface-2),var(--brand-softer))}.available-slots-panel>header{display:flex;align-items:center;justify-content:space-between;gap:.55rem;margin-bottom:.46rem}.available-slots-panel h3{margin:0;font-size:.68rem}.available-slots-panel p{margin:.1rem 0 0;color:var(--muted);font-size:.49rem}.available-slot-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.42rem}.available-slot-days>section{min-width:0;padding:.46rem;border:1px solid var(--line);border-radius:.66rem;background:linear-gradient(155deg,var(--surface-1),var(--surface-2));box-shadow:var(--shadow-xs)}.available-slot-days>section>header{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin:0 0 .36rem;padding:0 .08rem}.available-slot-days>section>header strong{font-size:.6rem;letter-spacing:-.01em}.available-slot-days>section>header span{padding:.16rem .32rem;border-radius:999px;background:var(--brand-soft);color:var(--primary);font-size:.43rem;font-weight:900;white-space:nowrap}.available-slot-days>section>div{display:grid;gap:.24rem}.available-slot{appearance:none;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(5.2rem,auto);gap:.5rem;align-items:center;padding:.42rem .46rem;border:1px solid var(--line);border-radius:.56rem;background:var(--surface-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}.available-slot:hover{transform:translateY(-1px);border-color:rgba(var(--primary-rgb),.36);background:var(--brand-softer)}.available-slot:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.available-slot>span:last-child{text-align:right}.available-slot strong,.available-slot b,.available-slot small{display:block}.available-slot strong{font-size:.54rem;color:var(--text)}.available-slot b{font-size:.5rem;color:var(--primary)}.available-slot small{margin-top:.08rem;color:var(--muted);font-size:.43rem;line-height:1.25}
.teacher-roster-console{overflow:hidden}.count-pill{display:inline-grid;place-items:center;min-width:1.5rem;padding:.2rem .3rem;border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:.47rem;font-weight:900}.teacher-time-roster td .count-pill.available{background:var(--green-soft);color:var(--green)}.teacher-time-roster td .count-pill.individual{background:var(--secondary-soft);color:var(--secondary)}.teacher-time-roster td .count-pill.group{background:var(--blue-soft);color:var(--blue)}.teacher-time-roster td .count-pill.inactive{background:var(--surface-3);color:var(--muted)}
.teacher-profile-head{display:flex;align-items:center;gap:.7rem;padding:.62rem;border:1px solid var(--line);border-radius:.76rem;background:linear-gradient(135deg,var(--brand-soft),var(--surface-1) 60%,var(--secondary-soft))}.teacher-profile-head .teacher-avatar{width:3rem;height:3rem;border-radius:.84rem;font-size:.8rem}.teacher-profile-head>div:nth-child(2){flex:1;min-width:0}.teacher-profile-head h2{margin:0;font-size:1rem;letter-spacing:-.035em}.teacher-profile-head p{margin:.12rem 0 0;color:var(--muted);font-size:.53rem}.teacher-load{display:flex;gap:.28rem;flex-wrap:wrap;justify-content:flex-end}.teacher-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.36rem;margin-top:.48rem}.teacher-stat-grid>div{padding:.42rem;border:1px solid var(--line);border-radius:.58rem;background:var(--surface-2)}.teacher-stat-grid strong,.teacher-stat-grid small{display:block}.teacher-stat-grid strong{font-size:.78rem;color:var(--primary)}.teacher-stat-grid small{margin-top:.08rem;color:var(--muted);font-size:.45rem}
.teacher-record-form .record-guide{background:linear-gradient(135deg,var(--brand-soft),var(--surface-1) 48%,var(--secondary-soft))}.teacher-record-form .record-section:nth-child(2) header>span{background:var(--blue-soft);color:var(--blue)}.teacher-record-form .record-section:nth-child(3) header>span{background:var(--green-soft);color:var(--green)}.teacher-record-form .record-section:nth-child(4) header>span{background:var(--secondary-soft);color:var(--secondary)}.teacher-record-form .record-section:nth-child(5) header>span{background:var(--gold-soft);color:var(--gold)}
.teacher-time-owner{display:flex;align-items:center;gap:.5rem;padding:.48rem;border:1px solid var(--line);border-radius:.65rem;background:linear-gradient(120deg,var(--brand-softer),var(--surface-1))}.teacher-time-owner>div{display:grid}.teacher-time-owner strong{font-size:.62rem}.teacher-time-owner small{margin-top:.08rem;color:var(--muted);font-size:.48rem}.teacher-time-modal-actions{display:flex;gap:.3rem;flex-wrap:wrap;margin:.42rem 0}.time-modal-filter{margin-bottom:.4rem}.time-bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:.55rem;margin-bottom:.4rem;padding:.42rem .5rem;border:1px solid var(--line);border-radius:.62rem;background:var(--surface-2)}.time-bulk-bar>div:first-child{display:grid}.time-bulk-bar strong{font-size:.56rem}.time-bulk-bar span{margin-top:.06rem;color:var(--muted);font-size:.44rem}.time-bulk-bar>div:last-child{display:flex;gap:.22rem;flex-wrap:wrap}.time-detail-head{display:flex;align-items:center;gap:.55rem;padding:.52rem;border:1px solid var(--line);border-radius:.66rem;background:var(--surface-2)}.time-detail-head h2{margin:0;font-size:.85rem}.time-detail-head p{margin:.1rem 0 0;color:var(--muted);font-size:.5rem}

@container workspace (max-width:72rem){.teacher-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-time-filters{grid-template-columns:repeat(3,minmax(8rem,1fr))}.available-slot-days{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container workspace (max-width:52rem){.teacher-day-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.teacher-title-line{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.teacher-title-line h1{margin:0}.teacher-scope-chip{display:inline-flex;align-items:center;min-height:1.35rem;padding:.2rem .42rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:.46rem;font-weight:900}.teacher-scope-chip.all{background:var(--green-soft);color:var(--green);border-color:color-mix(in srgb,var(--green) 24%,transparent)}.teacher-scope-chip.selected{background:var(--selection-soft);color:var(--selection);border-color:var(--selection-line)}.teacher-scope-chip.none{background:var(--red-soft);color:var(--red);border-color:color-mix(in srgb,var(--red) 24%,transparent)}.teacher-page-head,.teacher-console-head{align-items:flex-start;flex-direction:column}.teacher-page-head .page-actions,.teacher-console-head .teacher-quick{width:100%;justify-content:flex-start}.teacher-filters{align-items:stretch}.teacher-filters .student-search{flex-basis:100%}.teacher-time-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.eligibility-grid,.eligibility-course-grid,.eligibility-summary-grid{grid-template-columns:1fr}.available-slot-days{grid-template-columns:1fr}.teacher-profile-head{align-items:flex-start;flex-wrap:wrap}.teacher-load{width:100%;justify-content:flex-start}.time-bulk-bar{align-items:flex-start;flex-direction:column}}
@container workspace (max-width:34rem){.teacher-tabs{grid-template-columns:1fr}.teacher-tabs button{padding:.54rem .58rem}.teacher-summary-item{min-width:5.6rem}.teacher-time-filters{grid-template-columns:1fr}.teacher-day-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-stat-grid{grid-template-columns:1fr}.eligibility-options{grid-template-columns:1fr}.teacher-page-head .btn,.teacher-time-modal-actions .btn{flex:1 1 auto}}
