.student-access{background:#fff;border:1px solid #dce4dc;border-radius:20px;padding:24px;margin:20px 0 12px}.student-access h2{font-size:clamp(26px,4vw,38px);margin:8px 0 12px}.student-session{padding:14px 0;border-top:1px solid #e5ebe4}.student-session p{margin:5px 0}.student-session small{color:#688071}.student-access a{color:#4b245d;font-weight:700}.studio-main .student-access{padding:24px}
/* Consistent spacing and touch targets in the class lobby. */
.student-session small{display:block;line-height:1.5;margin-top:8px}
.student-session button{display:inline-flex;align-items:center;justify-content:center;margin:14px 0 0;padding:12px 22px;min-height:46px;border:1px solid #6d9578;border-radius:28px;background:#81a88e;color:#152b1d;font:700 14px 'DM Sans',sans-serif;cursor:pointer}
.student-session button:hover{background:#729c80}
.livekit-access>label[for=liveSessionId]{display:block;font-weight:600;margin:20px 0 8px}
.livekit-access>input#liveSessionId{display:block;width:100%;max-width:520px;box-sizing:border-box;margin:0 0 14px;min-height:48px}
.livekit-access>button#joinLive{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin:0 0 12px}
.livekit-access .recording-inline label{display:block;font-weight:700;margin:0 0 12px}
.livekit-access .recording-inline select{display:block;width:100%;max-width:520px;min-height:48px;box-sizing:border-box;margin:0 0 16px;padding:12px 36px 12px 14px;border:1px solid #b6c9b6;border-radius:12px;background:#fff;color:#304a3c;font:inherit;font-size:16px}
.livekit-access .recording-inline select:disabled{opacity:1;background:#f3f6ef;color:#617567}
.recording-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.livekit-access .recording-inline .recording-actions button,.livekit-access .recording-inline .recording-actions a{margin:0;min-height:46px;box-sizing:border-box}
.recording-inline>p{margin:14px 0 0;line-height:1.5}
.student-session button:focus-visible,.recording-actions button:focus-visible{outline:3px solid #9c78b0;outline-offset:3px}
@media(max-width:540px){.recording-actions>*{flex:1 1 160px;text-align:center}.student-session button{width:100%}}