.live-calendar{padding:24px;border:1px solid #354352;border-radius:8px;background:#101925;color:#f3f4ef}.schedule-controls{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.live-calendar button,.live-calendar select,.live-calendar input{font:inherit;min-height:44px;border:1px solid #526173;border-radius:5px;padding:9px 13px;background:#1b2c3d;color:#f3f4ef}.live-calendar button{cursor:pointer;font-weight:700}.live-calendar button:hover{border-color:var(--lime)}.live-calendar button:focus-visible,.live-calendar input:focus-visible,.live-calendar select:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.schedule-views{display:flex;gap:4px}.schedule-views button[aria-pressed="true"]{background:var(--lime);border-color:var(--lime);color:var(--deep)}.schedule-navigation{display:flex;gap:6px;align-items:end}.schedule-date-label,.schedule-location-label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#c8d1d8}.schedule-location-label{margin-left:auto}.schedule-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:28px 0 12px}.schedule-heading h2{font-size:clamp(22px,3vw,30px);margin:0;letter-spacing:-.5px}.schedule-status{font-size:13px;color:#b8c3cd;margin:12px 0 20px}.schedule-note{font-size:12px;color:#b8c3cd;margin:20px 0 0}.schedule-event{border:1px solid #354352;border-left:4px solid var(--lime);border-radius:5px;padding:16px;background:#172332}.schedule-event h3{font-size:17px;letter-spacing:0;line-height:1.4;margin:6px 0}.schedule-event p{margin:5px 0 0;font-size:13px;color:#c8d1d8}.schedule-event time{font-size:14px;font-weight:800;color:var(--lime)}.schedule-event .schedule-kind{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:#c8d1d8}.schedule-day-list{display:grid;gap:12px}.schedule-empty{padding:22px 16px;border:1px dashed #526173;border-radius:5px;font-size:14px;color:#c8d1d8}.schedule-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;align-items:start}.schedule-week-day{min-width:0;border:1px solid #354352;border-radius:5px;overflow:hidden}.schedule-week-day.is-today{border-color:var(--lime)}.schedule-week-day>h3{margin:0;padding:14px 10px;background:#1b2c3d;font-size:14px;line-height:1.6;letter-spacing:0}.schedule-week-day.is-today>h3{background:#263b25;color:var(--lime)}.schedule-week-day .schedule-day-list{padding:8px;gap:8px}.schedule-week .schedule-event{padding:10px 8px;border-left-width:3px}.schedule-week .schedule-event h3{font-size:13px;overflow-wrap:anywhere}.schedule-week .schedule-event time{font-size:12px}.schedule-week .schedule-event p{font-size:11px;overflow-wrap:anywhere}.schedule-week .schedule-empty{margin:8px;padding:12px 8px;font-size:12px}.calendar-page .calendar-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}@media(max-width:1100px){.schedule-week{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.live-calendar{padding:16px}.schedule-location-label{margin-left:0;width:100%}.schedule-week{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-heading{align-items:start}.schedule-navigation{flex-wrap:wrap}.schedule-date-label input{min-width:145px}}@media(max-width:430px){.schedule-week{grid-template-columns:minmax(0,1fr)}.schedule-controls{gap:10px}.schedule-heading h2{font-size:22px}}
.schedule-register{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:12px;padding:9px 14px;background:var(--lime);color:var(--deep);font-size:13px;font-weight:800;border-radius:4px;text-decoration:none}.schedule-register:hover{background:#8bd500}.schedule-register:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.schedule-week .schedule-register{padding:9px 8px;font-size:12px}


.calendar-instructors{display:grid;gap:10px;margin-top:13px}.calendar-instructor{display:flex;align-items:center;gap:10px}.calendar-instructor img{display:block;width:56px;height:64px;flex-shrink:0;object-fit:cover;object-position:50% 25%;border-radius:7px;border:1px solid #526173;background:#a6a6a6}.calendar-instructor span{font-size:12px;line-height:1.4;color:#c8d1d8}.schedule-week .calendar-instructor{flex-wrap:wrap;gap:7px}.schedule-week .calendar-instructor img{width:48px;height:56px}.schedule-week .calendar-instructor span{font-size:11px}

.schedule-week.training-days-only{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
