.student-header { border-bottom:1px solid var(--line); }
.student-badge { background:var(--sage-light); color:var(--teal); font-size:13px; font-weight:700; border-radius:999px; padding:7px 14px; }
.student-access-note { color:#426066; font-size:14px; margin:18px 0; }
.student-footer { padding:30px 0; border-top:1px solid var(--line); color:var(--muted); font-size:14px; }
.student-pdf-card { background:var(--sage-light); }
.student-share-dialog { width:min(560px,calc(100% - 32px)); max-height:90dvh; padding:28px; color:var(--ink); background:var(--ivory); border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow); overflow:auto; }
.student-share-dialog::backdrop { background:rgba(16,51,60,.6); }
.student-share-heading { display:flex; gap:16px; align-items:center; justify-content:space-between; }
.student-share-heading h2 { margin:0; }
.student-share-qr { display:block; width:220px; max-width:100%; height:auto; margin:22px auto; padding:10px; background:#fff; }
.student-share-dialog label { display:block; font-size:14px; font-weight:700; margin-bottom:6px; }
.student-share-dialog input { display:block; width:100%; min-width:0; padding:12px; border:1px solid #9eb6aa; border-radius:10px; background:white; margin-bottom:16px; font-size:14px; }
.student-lesson .content-columns > div { min-width:0; }
.student-lesson .source-links a { overflow-wrap:anywhere; }
@media(max-width:600px) {
  .student-header .nav-shell { min-height:74px; gap:10px; }
  .student-header .brand-name { font-size:21px; }
  .student-header .brand-mark { width:38px; height:38px; }
  .student-badge { font-size:11px; padding:6px 9px; }
  .student-lesson .h1 { font-size:clamp(32px,8vw,44px); }
  .student-lesson .reading-panel h2 { font-size:29px!important; }
  .student-lesson .btn-row { gap:9px; }
  .student-lesson .pill { white-space:normal; }
  .student-share-dialog { padding:20px; }
}
@media print {
  .student-lesson .student-header,.student-lesson .student-actions,.student-lesson .lesson-steps,
  .student-lesson .sidebar,.student-lesson .student-footer,.student-lesson button,
  .student-lesson audio,.student-lesson .audio-panel { display:none!important; }
  .student-lesson .container { width:100%; }
  .student-lesson .content-columns { display:block; }
  .student-lesson .page-hero,.student-lesson .section { padding:12px 0; }
  .student-lesson .activity-card,.student-lesson .reading-panel { box-shadow:none; border:0; padding:10px 0; }
  .student-lesson h2,.student-lesson h3 { break-after:avoid; }
  .student-lesson .vocab-item { display:block!important; border:0; padding:0; }
  .student-lesson .vocab-detail,.student-lesson .dictionary-link,.student-lesson .quiz-feedback { display:none; }
}
