[hidden] { display:none !important; }
.student-nav { display:flex; gap:24px; align-items:center; padding:18px 0; flex-wrap:wrap; }
.student-nav a { font-weight:700; }
.student-nav button { margin-left:auto; background:none; border:0; text-decoration:underline; cursor:pointer; font:inherit; }
.student-login { max-width:580px; margin:0 auto 36px; }
.student-login form,.student-offer,.student-notes,#guest-form { display:grid; gap:14px; }
.student-login input,.student-offer select,#guest-form input[type=date],#guest-form textarea,#guest-form select { width:100%; padding:12px; font:inherit; color:var(--navy); background:white; border:1px solid var(--border); border-radius:8px; }
.student-offer { margin-top:20px; }
.student-checkbox { display:flex; align-items:flex-start; gap:12px; font-size:.95rem; }
.student-checkbox input { width:20px; height:20px; flex:none; margin-top:5px; }
.student-offer .button { width:100%; text-align:center; }
.student-offer button:disabled { opacity:.6; cursor:not-allowed; }
.student-price { font-size:1.5rem; font-weight:800; margin:0; }
.student-notes { margin-top:30px; }
#student-status { padding:12px 16px; border-left:4px solid var(--brand-orange); background:var(--cream-light); }
.lesson-layout { display:grid; grid-template-columns:minmax(200px,1fr) minmax(0,3fr); gap:30px; }
#lesson-view { margin-top:40px; scroll-margin-top:110px; }
#lesson-list { display:flex; flex-direction:column; gap:10px; }
#lesson-list button { text-align:left; border:1px solid var(--border); background:white; padding:12px; border-radius:8px; font:inherit; cursor:pointer; }
#lesson-list button[aria-current=true] { background:var(--navy); color:white; }
.lesson-player { aspect-ratio:16/9; background:var(--navy-deep); border-radius:12px; overflow:hidden; }
.lesson-player:empty { display:none; }
.lesson-player iframe { width:100%; height:100%; border:0; }
.guest-row { display:flex; align-items:center; gap:18px; justify-content:space-between; padding:18px 0; border-bottom:1px solid var(--border); overflow-wrap:anywhere; }
.guest-row button { flex:none; }
@media(max-width:720px){.lesson-layout{grid-template-columns:1fr}.student-nav{gap:16px}.guest-row{align-items:flex-start;flex-direction:column}}
