.account-link{display:inline-flex;align-items:center;justify-content:center;font:14px/19.5px var(--sans);color:var(--gold);background:none;border:0;padding:12px 0;white-space:nowrap;min-height:44px}.account-link:hover{color:#ffdc94}.auth-section{padding:65px 20px 80px}.auth-panel{max-width:510px;margin:auto;padding:36px;background:#fff;border-top:2px solid #b99048}.auth-panel>h2{font-size:31px;margin-bottom:25px}.auth-panel .field{margin-bottom:20px}.auth-panel input{font-size:16px}.auth-panel .button{width:100%;margin-top:10px}.auth-panel .field-hint{font-size:12px;line-height:1.6}.auth-panel .form-status{font-size:13px}.auth-help{font-size:13px;color:var(--muted);margin-top:24px}.auth-help a{text-decoration:underline;text-underline-offset:3px}.schedule-empty{padding:15px 0 40px;max-width:650px}.schedule-empty p{color:var(--muted);margin-top:25px}.member-schedule{overflow-x:auto}.member-schedule table{border-collapse:collapse;width:100%;min-width:600px;text-align:left;font-size:14px}.member-schedule caption{text-align:left;font:30px var(--serif);margin-bottom:25px}.member-schedule th,.member-schedule td{padding:20px 15px;border-bottom:1px solid var(--line)}.member-schedule thead th{font-weight:600;background:#eee9df}.member-schedule tbody th{font-weight:500}.member-schedule td{font-variant-numeric:tabular-nums}
@media(min-width:951px) and (max-width:1150px){.menu-toggle{display:flex;align-items:center;gap:14px;background:none;border:1px solid #ffffff45;color:var(--paper);padding:10px 14px;border-radius:2px;font-size:13px;min-height:44px}.menu-lines{width:17px;height:10px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px 36px;background:var(--deep);border-bottom:1px solid #8d784e;box-shadow:0 12px 20px #15273933}nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}nav>a:not(.button){font-size:15px;padding:12px 0}}
@media(max-width:1150px){nav .account-link{justify-content:start;text-align:left}}
@media(max-width:650px){.auth-section{padding:40px 20px 50px}.auth-panel{padding:26px 20px}.auth-panel>h2{font-size:28px}}

.schedule-filters{display:flex;flex-wrap:wrap;gap:1rem;align-items:end;margin:1.5rem 0}.schedule-filters label{display:grid;gap:.4rem;min-width:180px}.schedule-filters select{padding:.8rem;border:1px solid #abb4bc;background:#fff;color:#23394f;font:inherit;border-radius:4px}.schedule-filters a:not(.button){padding:.8rem 0}

.schedule-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #cbd8e1;background:#fff;margin-top:28px;align-items:stretch}
.schedule-day{min-width:0;border-right:1px solid #cbd8e1}
.schedule-day:last-child{border-right:0}
.schedule-day>h3{margin:0;padding:16px 8px;background:var(--deep,#23394f);color:#fff;text-align:center;font:600 14px/18.2px var(--sans);overflow-wrap:anywhere}
.schedule-day>h3 time{display:block;font-size:13px;line-height:16.8px;font-weight:400;color:#e5ecf1;margin-top:5px;font-variant-numeric:tabular-nums}
.schedule-day-lessons{display:grid;align-content:start;gap:10px;padding:10px 7px}
.schedule-lesson{padding:12px 9px;border:1px solid #d9e1e7;border-top:3px solid #b99048;background:#fff;min-width:0;overflow-wrap:anywhere}
.schedule-lesson-group{background:#e5f2ff;border-color:#bbd7ed;border-top-color:#3979a6}
.schedule-lesson-cancelled{background:#f5f3f0;border-color:#d9d3cc}
.schedule-lesson p{margin:0 0 7px;font:14px/18.85px var(--sans)}
.schedule-lesson .schedule-lesson-time{font-size:15px;line-height:20.3px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums;color:#23394f;letter-spacing:-.3px}
.schedule-lesson .schedule-lesson-recipient{font-weight:650}
.schedule-lesson .schedule-lesson-direction{font-weight:600}
.schedule-lesson .schedule-lesson-type,.schedule-lesson .schedule-lesson-teacher,.schedule-lesson .schedule-lesson-room{font-size:13px;line-height:17.4px;color:#526372}
.schedule-lesson .status-badge{display:inline-block;max-width:100%;white-space:normal;font-size:11px;line-height:1.4;margin-top:3px}
.schedule-day-empty{margin:14px 0;padding:0 5px;color:#667582;text-align:center;font:14px/19.5px var(--sans)}
@media(min-width:761px) and (max-width:1100px){.schedule-week{grid-template-columns:repeat(7,minmax(145px,1fr));overflow-x:auto}.schedule-day>h3{font-size:14px}}
@media(max-width:760px){.schedule-week{grid-template-columns:minmax(0,1fr);border:0;gap:20px;background:transparent}.schedule-day{border:1px solid #cbd8e1;background:#fff}.schedule-day:last-child{border-right:1px solid #cbd8e1}.schedule-day>h3{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;text-align:left;font-size:16px}.schedule-day>h3 time{margin:0;font-size:14px}.schedule-day-lessons{padding:12px;gap:12px}.schedule-lesson{padding:15px}.schedule-lesson p{font-size:15px;line-height:20.3px}.schedule-lesson .schedule-lesson-time{font-size:18px;line-height:24.65px}.schedule-lesson .schedule-lesson-type,.schedule-lesson .schedule-lesson-teacher,.schedule-lesson .schedule-lesson-room{font-size:14px;line-height:18.85px}.schedule-filters label{min-width:0;flex:1 1 180px}.schedule-filters input,.schedule-filters select{max-width:100%;min-width:0}}
