/* Student navigation only. Preserve existing routes, density and responsive grid. */
.library-app .student-shell .sidebar { background: #fcfaf3; }
.library-app .student-shell .sidebar-brand { color: #183b77; gap: 12px; }
.library-app .student-shell .sidebar-brand .brand-mark { width: 36px; height: 36px; flex-basis: 36px; border: 0; border-radius: 0; color: #183b77; }
.library-app .student-shell .sidebar-brand .brand-mark::before { content: none; }
.student-brand-emblem { width: 36px; height: 36px; }
.library-app .student-shell .sidebar-brand strong { letter-spacing: .025em; }
.library-app .student-shell .sidebar-brand small { font-family: "IBM Plex Sans", sans-serif; font-size: .6875rem; letter-spacing: .015em; text-transform: none; }
.library-app .student-shell .sidebar-nav .nav-item { color: #334863; gap: 10px; }
.student-nav-icon { width: 19px; height: 19px; flex: 0 0 19px; color: #183b77; }
.library-app .student-shell .sidebar-nav .nav-item:hover { background: #eaeef4; }
.library-app .student-shell .sidebar-nav .nav-item.active { background: #183b77; border-color: #183b77; color: #fff; box-shadow: none; }
.library-app .student-shell .sidebar-nav .nav-item.active .student-nav-icon { color: #fff; }
.library-app .student-shell .student-nav-section + .student-nav-section { margin-top: 10px; }
.library-app .student-shell .student-nav-label { margin: 0 12px 4px; color: #657185; font: 600 .6875rem/1.4 "IBM Plex Sans", sans-serif; letter-spacing: .045em; }
.library-app .student-shell .student-nav-section[data-student-section="learning"] .student-nav-label { color: #183b77; }
.library-app .student-shell .student-nav-section[data-student-section="counseling"] .student-nav-label { color: #556173; }
.library-app .welcome .login-audience { display:grid; gap:8px; margin:0 0 8px; padding:12px; border:1px solid var(--line,#d9d9df); border-radius:10px; }
.library-app .welcome .login-audience label { display:flex; align-items:center; gap:9px; min-height:40px; padding:7px 9px; border:1px solid var(--line,#d9d9df); border-radius:7px; cursor:pointer; }
.library-app .welcome .login-audience input { accent-color:#183b77; }
.library-app .welcome .login-audience label:has(input:checked) { border-color:#183b77; background:#edf1f7; color:#102a56; }
.library-app .student-shell .sidebar-foot { background: transparent; border: 0; border-top: 1px solid #dedfdc; border-radius: 0; }
@media (max-width: 980px) {
  .library-app .student-shell .sidebar-nav .nav-item { gap: 2px; }
  .student-nav-icon { width: 15px; height: 15px; flex-basis: 15px; }
  .library-app .student-shell .sidebar-nav { align-items:center; }
  .library-app .student-shell .student-nav-section { display:contents; }
  .library-app .student-shell .student-nav-label { display:flex; align-items:center; flex:none; margin:0 4px; padding:0 5px; color:#183b77; font-size:.625rem; white-space:nowrap; }
  .library-app .student-shell .sidebar-nav .nav-group,
  .library-app .student-shell .sidebar-nav:has([data-view=posts]) .nav-group,
  .library-app .student-shell .sidebar-nav:has([data-view=work]) .nav-group,
  .library-app .student-shell .sidebar-nav:has([data-view=daily]) .nav-group,
  .library-app .student-shell .sidebar-nav:has([data-view=homework]) .nav-group { display:flex; grid-template-columns:none; width:max-content; flex:0 0 auto; margin:0 0 0 3px; gap:3px; }
  .library-app .student-shell .sidebar-nav .nav-group .nav-item { width:auto; min-width:68px; flex:0 0 68px; padding:6px 4px; font-size:.65625rem; }
  .library-app .student-shell .student-nav-section + .student-nav-section { margin-top:0; }
}
