@keyframes nest-spin{to{transform:rotate(360deg)}}.nest-spinner{animation:nest-spin .8s linear infinite}@media (prefers-reduced-motion: reduce){.nest-spinner{animation:none;opacity:.55}}.w-3{width:calc(var(--spacing) * 3)}.w-36{width:calc(var(--spacing) * 36)}.h-3{height:calc(var(--spacing) * 3)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.bottom-0{bottom:0}.end-0{inset-inline-end:0}.opacity-50{opacity:.5}.rounded-sm{border-radius:.25rem}.border-indigo-500{border-color:var(--color-indigo-500)}.text-\[10px\]{font-size:10px}@media (width >= 40rem){.sm\:block{display:block}}@media (hover:hover){.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.dark .dark\:hover\:bg-slate-700:hover{background-color:var(--color-slate-700)}.hover\:text-amber-700:hover{color:var(--color-amber-700)}.dark .dark\:hover\:text-amber-300:hover{color:var(--color-amber-300)}}

/* L3.1 Teacher information architecture */
#nest-teacher-modes [role="tab"] { min-width: 0; }
#nest-teacher-modes [role="tabpanel"][hidden] { display: none !important; }
@media (max-width: 420px) {
  #nest-teacher-modes [role="tab"] { padding-inline: .45rem; font-size: .68rem; }
  #nest-teacher-modes [role="tab"] i { margin-inline-end: .2rem; }
}

/* L3.2 Quick Classroom presentation hardening */
#nest-classroom-panel {
  overflow: hidden;
}
#nest-classroom-panel .nest-quick-join-card {
  overflow: hidden;
}
#nest-classroom-panel .nest-quick-qr-frame {
  width: min(100%, 340px);
  padding: clamp(.55rem, 1.8vw, .85rem);
  box-sizing: border-box;
}
#nest-classroom-panel .nest-quick-qr-svg {
  width: 100%;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
#nest-classroom-panel .nest-quick-qr-svg svg {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: 1 / 1;
  shape-rendering: crispEdges;
}
#nest-classroom-panel details summary {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
}
@media (max-width: 480px) {
  #nest-classroom-panel .nest-quick-qr-frame {
    width: min(100%, 250px);
    padding: .55rem;
  }
  #nest-classroom-panel .nest-quick-join-card {
    padding: 1rem;
  }
  #nest-classroom-panel .nest-quick-session > .flex.items-start.justify-between {
    align-items: flex-start;
  }
}
@media (min-width: 768px) {
  #nest-classroom-panel .nest-quick-qr-frame {
    width: min(100%, 330px);
  }
}
