/* The profile dialog lives outside .portal, so it needs the same theme variables. */
.edit-dialog.teacher-view-dialog{width:min(560px,calc(100vw - 26px));max-height:min(90vh,800px);overflow:auto;padding:20px;background:var(--pn-card,#fff)!important;color:var(--pn-text,#213450)!important;border:1px solid var(--pn-line,#dce5ef)!important;border-radius:18px!important;box-shadow:0 24px 65px #0005!important}
.teacher-view-dialog .dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px;border-color:var(--pn-line)!important}
.teacher-view-dialog .dialog-heading h2{color:var(--pn-text)!important;font-size:1.35rem!important;line-height:1.2;margin:2px 0 0!important}
.teacher-view-dialog .dialog-heading .eyebrow{color:var(--pn-accent)!important}
.teacher-view-dialog .dialog-heading [data-close]{flex:none;display:grid;place-items:center;width:40px;height:40px;background:var(--pn-soft)!important;color:var(--pn-text)!important;border:1px solid var(--pn-line)!important;border-radius:10px}
.teacher-view-dialog .teacher-profile-hero{background:var(--pn-soft)!important;border-color:var(--pn-line)!important;color:var(--pn-text)!important}
.teacher-view-dialog .teacher-profile-hero strong,.teacher-view-dialog .teacher-profile-grid strong{color:var(--pn-text)!important}
.teacher-view-dialog .teacher-profile-hero small,.teacher-view-dialog .teacher-profile-grid span{color:var(--pn-muted)!important}
.teacher-view-dialog .teacher-profile-grid>div{background:var(--pn-card)!important;border-color:var(--pn-line)!important;color:var(--pn-text)!important}
.teacher-view-dialog .teacher-avatar{background:var(--pn-accent)!important;color:#fff!important}
.teacher-view-dialog .dialog-actions{display:flex;justify-content:flex-end;margin-top:16px}
.teacher-view-dialog .dialog-actions button{background:var(--pn-accent)!important;color:#fff!important;border-color:var(--pn-accent)!important}
@media(max-width:600px){.edit-dialog.teacher-view-dialog{padding:16px}.teacher-view-dialog .teacher-profile-grid{grid-template-columns:1fr}}

.edr-lesson-timer{display:flex;flex-direction:column;gap:4px;padding:16px 18px;margin:0 0 12px;border:1px solid var(--pn-line);border-left:5px solid var(--pn-accent);border-radius:var(--pn-radius);background:var(--pn-card);color:var(--pn-text)}
.edr-lesson-timer span{font-size:.8rem;font-weight:700;color:var(--pn-muted)}
.edr-lesson-timer strong{font-size:clamp(1.35rem,4vw,2rem);line-height:1.2;font-variant-numeric:tabular-nums}
.edr-lesson-timer small{font-size:.8rem;color:var(--pn-muted)}
.edr-lesson-timer.finished{border-left-color:#71818a}
.edr-recovery{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px;color:var(--pn-text);background:var(--pn-card);border:1px solid var(--pn-line);border-radius:var(--pn-radius)}
.edr-recovery h2{margin:0;font-size:1.2rem}.edr-recovery p{max-width:440px;margin:0;color:var(--pn-muted);line-height:1.5}
.edr-recovery-spinner{width:38px;height:38px;border:4px solid var(--pn-line);border-top-color:var(--pn-accent);border-radius:50%;animation:edr-recovery-spin .8s linear infinite}
@keyframes edr-recovery-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.edr-recovery-spinner{animation:none}}
.mobile-course-open{font-size:.75rem!important;font-weight:800;color:#fff!important;background:var(--pn-accent);border:0;border-radius:9px;padding:8px 10px;align-self:center;white-space:nowrap}
.mobile-course-card{grid-template-columns:54px minmax(0,1fr) auto!important}
@media(max-width:600px){.pn-session-hero{grid-template-columns:1fr!important}.pn-session-hero h1{overflow-wrap:anywhere}.pn-session-status{justify-self:start}}
