/* Public schedule V3 вЂ” PPT palette */
:root{--sched-ink:#17151f;--sched-dark:#07162f;--sched-bg:#eef3f8;--sched-paper:#ffffff;--sched-line:#ded3c4;--sched-orange:#e57000;--sched-gold:#f39a32;--sched-blue:#58c4e4;--sched-green:#08b984;--sched-muted:#6d6258}
.public-schedule-body{background:linear-gradient(180deg,#eef3f8 0,#f7f9fc 260px,#eef3f8 100%);color:var(--sched-ink)}
.public-schedule-page{width:100%;max-width:none;margin:0;padding:0 0 56px}
.public-schedule-page>*:not(.public-schedule-hero){margin-left:clamp(18px,4vw,68px);margin-right:clamp(18px,4vw,68px)}
.public-schedule-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:38px clamp(18px,4vw,68px);background:linear-gradient(118deg,#07162f 0%,#0c2340 48%,#12385a 100%);color:#fff}
.public-schedule-hero:after{content:"";position:absolute;right:-120px;top:-150px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(244,182,64,.45),rgba(216,91,0,.12) 55%,transparent 70%)}
.public-schedule-hero__text,.public-schedule-hero__actions{position:relative;z-index:1}
.public-schedule-kicker{margin:0 0 10px;color:#ffb45c;font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.public-schedule-hero h1{margin:0;font-size:clamp(36px,5vw,66px);line-height:.98;letter-spacing:-.045em;color:#fff}
.public-schedule-hero p{max-width:760px;margin:14px 0 0;color:#d9e3ef;font-size:18px;line-height:1.5}
.public-schedule-hero__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.public-schedule-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid rgba(255,255,255,.34);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-weight:850;text-decoration:none}
.public-schedule-button--main{border-color:var(--sched-gold);background:var(--sched-gold);color:#07162f}

.public-schedule-level-filter{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;margin-bottom:12px;padding:8px;border:1px solid #d7e0ea;border-radius:16px;background:rgba(255,253,249,.88);box-shadow:0 10px 24px rgba(45,39,34,.06)}
.level-filter{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 15px;border:1px solid transparent;border-radius:11px;background:#edf2f7;color:#20334b;font-weight:850;text-decoration:none;box-shadow:none}
.level-filter.is-active{background:var(--sched-dark);border-color:var(--sched-dark);color:#fff}
.level-filter--all{background:#edf2f7}.level-filter--practitioner{background:#fff0c7}.level-filter--constructor{background:#dff4fb}.level-filter--leader{background:#dff5eb}
.level-filter--practitioner.is-active{background:#c97c12;border-color:#c97c12}.level-filter--constructor.is-active{background:#287f9d;border-color:#287f9d}.level-filter--leader.is-active{background:#14775b;border-color:#14775b}
.public-schedule-dates{display:flex;gap:8px;overflow-x:auto;margin-top:14px;padding:0 0 12px;scrollbar-width:thin}
.public-schedule-date{flex:0 0 auto;min-width:76px;padding:10px 13px;border:1px solid #d4dee9;border-radius:12px;background:#ffffff;color:#20334b;text-align:center;text-decoration:none}
.public-schedule-date{position:relative}.public-schedule-date span,.public-schedule-date small{display:block}.public-schedule-date span{font-weight:900}.public-schedule-date small{margin-top:2px;color:#66788d;font-size:12px}.public-schedule-date>b{display:flex;width:max-content;align-items:center;justify-content:center;min-width:19px;height:19px;margin:5px auto 0;padding:0 5px;border-radius:999px;background:#12385a;color:#fff;font-size:10px;line-height:1}.public-schedule-date.is-active>b{background:#fff;color:var(--sched-orange)}
.public-schedule-date.is-active{border-color:var(--sched-orange);background:var(--sched-orange);color:#fff}.public-schedule-date.is-active small{color:#ffe0c9}
.public-schedule-empty{margin-top:16px;padding:20px 24px;border:1px solid #d5dfe9;border-left:5px solid var(--sched-orange);border-radius:14px;background:#ffffff;box-shadow:0 9px 24px rgba(45,39,34,.05)}
.public-schedule-sections{display:grid;gap:22px;margin-top:22px}.public-schedule-section{overflow:hidden;border:1px solid #d7e0ea;border-radius:18px;background:var(--sched-paper);box-shadow:0 12px 28px rgba(45,39,34,.07)}
.public-schedule-section__head{display:flex;align-items:center;gap:14px;padding:15px 20px;background:linear-gradient(90deg,#07162f,#102b49);color:#fff;border-bottom:3px solid var(--sched-orange)}
.public-schedule-section__label{margin:0;padding:5px 9px;border-radius:999px;background:var(--sched-orange);color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.public-schedule-section__head h2{margin:0;color:#fff;font-size:22px;line-height:1.1}.public-schedule-section__head p:last-child{margin:0 0 0 auto;color:#dbcdbf;font-size:13px}

.public-schedule-card-grid{display:grid}.public-schedule-card{border-bottom:1px solid #dbe3ee;background:#fff}.public-schedule-card:last-child{border-bottom:0}.public-schedule-card:nth-child(even){background:#f8fbff}.public-schedule-card:hover{background:#f5f9ff}
.public-schedule-card__body{display:grid;grid-template-columns:120px minmax(360px,2.5fr) minmax(190px,1.1fr) minmax(170px,1fr) minmax(170px,.9fr) 170px;grid-template-rows:auto auto;gap:10px 18px;align-items:start;padding:18px 22px}
.public-schedule-card__time{grid-column:1;grid-row:1;display:grid;gap:4px;padding-top:2px}.public-schedule-card__time strong{font-size:17px;color:#07162f}.public-schedule-card__time span{font-size:12px;color:#708097}
.public-schedule-card__body>h3{grid-column:2;grid-row:1;margin:0;padding-top:1px;font-size:18px;line-height:1.28;color:#07162f}
.public-schedule-card__teacher{grid-column:3;grid-row:1;display:flex;align-items:center;gap:9px;min-width:0}.public-schedule-card__teacher-avatar{display:grid;place-items:center;width:36px;height:36px;overflow:hidden;border:2px solid #d8e1ec;border-radius:50%;background:#edf3f8;color:#07162f;font-weight:900}.public-schedule-card__teacher-avatar img{width:100%;height:100%;object-fit:cover}.public-schedule-card__teacher-text{display:grid;gap:1px;min-width:0}.public-schedule-card__teacher-text small{color:#728198;font-size:11px}.public-schedule-card__teacher-text strong{color:#07162f;font-size:13px;line-height:1.25}
.public-schedule-card__levels{grid-column:4;grid-row:1;display:flex;flex-wrap:wrap;gap:6px;align-content:start}.public-schedule-card__level{margin:0;padding:5px 9px;border-radius:999px;background:#edf2f7;color:#21344e;font-size:11px;font-weight:900}.public-schedule-card__level--practitioner{background:#fff1c9;color:#78500d}.public-schedule-card__level--constructor{background:#dff4fb;color:#155b75}.public-schedule-card__level--leader{background:#def5e9;color:#17654f}
.public-schedule-card__iup{grid-column:5;grid-row:1;margin:0;width:max-content;max-width:100%;padding:7px 11px;border-radius:999px;background:#eaf0f6;color:#12304f;font-size:12px;font-weight:900;line-height:1.15;text-align:center}.public-schedule-card__places{grid-column:5;grid-row:1;align-self:end;margin-top:44px;color:#718098;font-size:12px;text-align:center}
.public-schedule-card__footer{display:contents}.public-schedule-card__footer form,.public-schedule-card__footer>.public-schedule-card__link{grid-column:6;grid-row:1;align-self:start;justify-self:stretch}.public-schedule-card__link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid #e57000;border-radius:10px;background:#fff;color:#d86500;font:inherit;font-size:13px;font-weight:900;text-decoration:none;cursor:pointer}.public-schedule-card__footer form .public-schedule-card__link{width:100%}.public-schedule-card__link:hover{background:#fff7ef}.public-schedule-card__footer span.public-schedule-card__link{border-color:#cfd8e3;background:#eef3f8;color:#65758b}
.public-schedule-card__details{grid-column:1/-1;grid-row:2;margin:0;min-width:0}.public-schedule-card__details summary{margin-left:calc(105px + 16px)}.public-schedule-card__details summary{display:inline-flex;align-items:center;gap:7px;cursor:pointer;list-style:none;color:#315d8b;font-size:12px;font-weight:800}.public-schedule-card__details summary::-webkit-details-marker{display:none}.public-schedule-card__details summary:before{content:'+';display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e8f0f8;color:#0a3765;font-size:14px}.public-schedule-card__details[open] summary:before{content:'–'}.public-schedule-card__preview{display:inline}.public-schedule-card__description-rich{width:100%;max-width:none;margin-top:12px;padding:18px 20px;border:1px solid #d8e3ef;border-radius:12px;background:#f4f8fc;color:#44546a;font-size:15px;line-height:1.6}.public-schedule-card__description-rich>*{max-width:1050px}.public-schedule-card__description-rich p:first-child{margin-top:0}.public-schedule-card__description-rich p:last-child{margin-bottom:0}
@media(max-width:1180px){.public-schedule-card__body{grid-template-columns:105px minmax(280px,2fr) minmax(170px,1fr) minmax(135px,.9fr) minmax(140px,.8fr);grid-template-areas:"time title teacher levels action" "time description teacher iup action" "time description teacher places action"}.public-schedule-card__footer form,.public-schedule-card__footer>.public-schedule-card__link{grid-area:action}}
@media(max-width:900px){.public-schedule-hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:28px}.public-schedule-hero__actions{justify-content:flex-start}.public-schedule-section__head p:last-child{display:none}.public-schedule-card__body{grid-template-columns:92px minmax(0,1fr) 150px;gap:8px 14px}.public-schedule-card__time{grid-column:1;grid-row:1}.public-schedule-card__body>h3{grid-column:2;grid-row:1}.public-schedule-card__details{grid-column:1/-1;grid-row:2}.public-schedule-card__details summary{margin-left:106px}.public-schedule-card__teacher{grid-column:2;grid-row:3}.public-schedule-card__levels{grid-column:2;grid-row:4}.public-schedule-card__iup{grid-column:2;grid-row:5;justify-self:start;text-align:left}.public-schedule-card__places{grid-column:2;grid-row:6;text-align:left;margin-top:0}.public-schedule-card__footer form,.public-schedule-card__footer>.public-schedule-card__link{grid-column:3;grid-row:1/7;align-self:start}}
@media(max-width:650px){.public-schedule-page>*:not(.public-schedule-hero){margin-left:12px;margin-right:12px}.public-schedule-hero{padding:24px 16px}.public-schedule-hero h1{font-size:38px}.public-schedule-hero p{font-size:15px}.public-schedule-level-filter{overflow-x:auto;flex-wrap:nowrap;padding:6px}.level-filter{flex:0 0 auto;white-space:nowrap}.public-schedule-section{border-radius:14px}.public-schedule-section__head{padding:13px 14px}.public-schedule-section__head h2{font-size:18px}.public-schedule-card__body{grid-template-columns:78px minmax(0,1fr);padding:14px 12px;gap:8px 12px}.public-schedule-card__time{grid-column:1;grid-row:1}.public-schedule-card__body>h3{grid-column:2;grid-row:1}.public-schedule-card__details{grid-column:1/-1;grid-row:2}.public-schedule-card__details summary{margin-left:90px}.public-schedule-card__teacher{grid-column:2;grid-row:3}.public-schedule-card__levels{grid-column:2;grid-row:4}.public-schedule-card__iup{grid-column:2;grid-row:5;justify-self:start;text-align:left}.public-schedule-card__places{grid-column:2;grid-row:6;text-align:left;margin-top:0}.public-schedule-card__footer form,.public-schedule-card__footer>.public-schedule-card__link{grid-column:2;grid-row:7;justify-self:start}.public-schedule-card__link{min-height:34px}.public-schedule-card__teacher-avatar{display:none}.public-schedule-card__time strong{font-size:14px;white-space:normal}}

.public-schedule-card{cursor:pointer}.public-schedule-card a,.public-schedule-card button,.public-schedule-card input,.public-schedule-card summary,.public-schedule-card__description-rich{cursor:auto}.public-schedule-card__details summary{cursor:pointer}

.public-schedule-month{margin-top:22px;border:1px solid #d7e0ea;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 12px 28px rgba(45,39,34,.07)}.public-schedule-month__weekdays,.public-schedule-month__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.public-schedule-month__weekdays{background:#07162f;color:#fff}.public-schedule-month__weekdays span{padding:10px;text-align:center;font-size:12px;font-weight:900}.public-schedule-month__day{min-height:128px;padding:10px;border-right:1px solid #e1e7ee;border-bottom:1px solid #e1e7ee;background:#fff}.public-schedule-month__day:nth-child(7n){border-right:0}.public-schedule-month__day.is-empty{background:#f4f7fa}.public-schedule-month__day.is-today{box-shadow:inset 0 0 0 2px var(--sched-orange)}.public-schedule-month__day>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.public-schedule-month__day>header strong{font-size:16px}.public-schedule-month__day>header span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e8f0f8;color:#12385a;font-size:11px;font-weight:900}.public-schedule-month__day>div{display:grid;gap:5px}.public-schedule-month__day a{padding:5px 6px;border-radius:7px;background:#f0f5f9;color:#173a5c;text-decoration:none;font-size:11px;font-weight:800;line-height:1.25}.public-schedule-month__day a:hover{background:#e3edf5}@media(max-width:760px){.public-schedule-month{overflow-x:auto}.public-schedule-month__weekdays,.public-schedule-month__grid{min-width:760px}}
