.sch-wrap{padding:28px 0 58px;background:#f4f8fb;color:#163652}.sch-shell{width:min(calc(100% - 32px),1180px);margin-inline:auto}.sch-crumbs{display:flex;gap:9px;align-items:center;font-size:13px;color:#6d8092;margin-bottom:26px}.sch-crumbs a{color:#236da5;font-weight:700}.sch-head{max-width:800px;margin-bottom:22px}.sch-kicker{display:block;color:#237a62;font-size:12px;font-weight:900;letter-spacing:.08em;margin-bottom:7px}.sch-head h1,.sch-single-head h1{font-size:clamp(36px,5.5vw,62px);line-height:1.04;margin:0;color:#173b60}.sch-head p,.sch-lead{font-size:18px;color:#6d8092;line-height:1.55}.sch-filters{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:none}.sch-filters::-webkit-scrollbar{display:none}.sch-filters a{white-space:nowrap;border:1px solid #d8e3ec;background:#fff;border-radius:10px;padding:8px 12px;font-weight:700;color:#49677f}.sch-filters a.is-active{background:#eaf6f1;border-color:#cce6db;color:#23735e}.sch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sch-card{background:#fff;border:1px solid #dce6ee;border-radius:18px;padding:20px;min-width:0}.sch-card-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sch-status{display:inline-flex;align-items:center;min-height:26px;border-radius:8px;padding:3px 9px;font-size:12px;font-weight:900}.sch-status.is-active{background:#e8f6ef;color:#23745b}.sch-status.is-seasonal{background:#eef4ff;color:#31689e}.sch-status.is-clarify{background:#fff5df;color:#8a6413}.sch-status.is-upcoming{background:#fff4df;color:#8a6413}.sch-card h2{font-size:26px;line-height:1.15;margin:12px 0 8px;color:#173b60}.sch-card h2 a:hover{color:#1d73ae}.sch-muted{margin:0;color:#708191}.sch-today{display:grid;grid-template-columns:90px 1fr;gap:12px;margin-top:18px;padding:13px 14px;border-radius:12px;background:#f4f9fc}.sch-today b{color:#23745b}.sch-today span{white-space:normal}.sch-card-foot{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #eef2f5;margin-top:18px;padding-top:13px;color:#778896;font-size:13px}.sch-card-foot a,.sch-back,.sch-source a{color:#1e6fa8;font-weight:800}.sch-empty{background:#fff;border:1px dashed #cbd9e4;border-radius:16px;padding:28px}.sch-pagination{margin-top:20px}.sch-single{background:#fff;border:1px solid #dce6ee;border-radius:20px;padding:28px}.sch-single-head{margin-bottom:18px}.sch-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0 26px}.sch-info-grid>div{border:1px solid #e1e9ef;border-radius:12px;background:#f9fbfc;padding:12px;min-width:0}.sch-info-grid small,.sch-source small{display:block;color:#768998;font-size:10px;font-weight:900;letter-spacing:.06em;margin-bottom:4px}.sch-info-grid strong{display:block;overflow-wrap:anywhere}.sch-week{border-top:1px solid #e9eef2;padding-top:22px}.sch-week h2{font-size:26px;margin:0 0 14px;color:#173b60}.sch-week-list{border:1px solid #dfe8ef;border-radius:14px;overflow:hidden}.sch-day{display:grid;grid-template-columns:180px 1fr;gap:16px;padding:13px 15px;border-top:1px solid #edf1f4}.sch-day:first-child{border-top:0}.sch-day.is-today{background:#eef8f4}.sch-day-name{font-weight:850;color:#173b60}.sch-day-name span{display:inline-block;margin-left:7px;color:#23745b;font-size:11px}.sch-day-time{line-height:1.55}.sch-note{margin:20px 0;padding:15px 17px;border-radius:12px;background:#fff8e6;border:1px solid #efdfb5}.sch-note p{margin:.35rem 0 0}.sch-content{font-size:17px;line-height:1.7;margin-top:24px}.sch-content p{margin:0 0 1.1em}.sch-source{margin-top:24px;border-top:1px solid #e9eef2;padding-top:18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.sch-source small{margin:0}.sch-source strong{color:#173b60}.sch-back{display:inline-block;margin-top:28px}.sch-pagination .nav-links{display:flex;gap:8px}.sch-pagination .page-numbers{border:1px solid #dce6ee;background:#fff;padding:7px 10px;border-radius:8px}.sch-pagination .current{background:#eaf6f1;color:#23745b}.sch-season-message{display:grid;grid-template-columns:110px 1fr;gap:12px;margin-top:18px;padding:13px 14px;border-radius:12px;background:#f2f5f8;border:1px solid #dde5ec}.sch-season-message b{color:#56718a}.sch-season-message span{color:#5f7385;line-height:1.45}.sch-season-panel{margin:22px 0;padding:18px 20px;border-radius:14px;background:#f2f5f8;border:1px solid #dbe4eb}.sch-season-panel strong{display:block;color:#315b7d;font-size:18px}.sch-season-panel p{margin:.45rem 0 0;color:#5b7184;line-height:1.55}.sch-upcoming-message{display:grid;grid-template-columns:110px 1fr;gap:12px;margin-top:18px;padding:13px 14px;border-radius:12px;background:#fff8e8;border:1px solid #ead9a9}.sch-upcoming-message b{color:#82611a}.sch-upcoming-message span{color:#6f654b;line-height:1.45}.sch-upcoming-panel{margin:22px 0;padding:18px 20px;border-radius:14px;background:#fff8e8;border:1px solid #ead9a9}.sch-upcoming-panel strong{display:block;color:#7a5b19;font-size:18px}.sch-upcoming-panel p{margin:.45rem 0 0;color:#6f654b;line-height:1.55}@media(max-width:760px){.sch-grid{grid-template-columns:1fr}.sch-single{padding:20px}.sch-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sch-day{grid-template-columns:1fr;gap:5px}.sch-card h2{font-size:23px}}@media(max-width:460px){.sch-season-message{grid-template-columns:1fr;gap:5px}.sch-info-grid{grid-template-columns:1fr}.sch-card-foot{align-items:flex-start;flex-direction:column;gap:7px}.sch-today{grid-template-columns:74px 1fr}}


/* v0.1.5 — карточки времени для всех типов расписаний */
.sch-week-list{border:0;border-radius:0;overflow:visible;display:grid;gap:14px}
.sch-day{display:block;padding:16px;border:1px solid #dfe8ef!important;border-radius:16px;background:#fbfdff}
.sch-day:first-child{border-top:1px solid #dfe8ef}
.sch-day.is-today{background:#f3faf7;border-color:#cfe7dc!important}
.sch-day-name{font-size:15px;margin-bottom:12px;color:#2c765f}
.sch-day-name span{display:none}
.sch-day-time{line-height:1.35}
.sch-time-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}
.sch-time-card{min-height:72px;border:1px solid #d9e4eb;border-radius:13px;background:#fff;padding:10px 12px;display:flex;flex-direction:column;justify-content:center;gap:3px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.sch-time-label{font-size:11px;line-height:1.25;font-weight:800;color:#6b8192;text-transform:none}
.sch-time-value{font-size:19px;line-height:1.15;color:#173b60;font-weight:900;white-space:nowrap}
.sch-time-card.is-extra{background:#fbfaf4}
.sch-time-card.is-next{background:#eaf7f1;border-color:#67b596;box-shadow:0 0 0 2px rgba(59,142,109,.12)}
.sch-time-card.is-next .sch-time-label{color:#23745b}
.sch-time-card.is-next .sch-time-value{color:#17634d}
.sch-time-text{grid-column:1/-1;color:#5f7385;line-height:1.5;padding:2px 0}
.sch-day-plain{color:#4f6679;line-height:1.55}
.sch-next-hint{margin:14px 0 0;padding:11px 13px;border-radius:11px;background:#f3faf7;border:1px solid #d7ebe2;color:#386956;font-size:13px;display:flex;align-items:center;gap:8px}
.sch-next-hint[hidden]{display:none!important}
.sch-next-hint span{width:10px;height:10px;border-radius:999px;background:#67b596;box-shadow:0 0 0 3px rgba(103,181,150,.16);flex:0 0 auto}
@media(max-width:560px){.sch-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sch-time-card{min-height:68px;padding:9px 10px}.sch-time-value{font-size:18px}.sch-day{padding:13px}}

/* v0.1.6 — единый формат для секций, режима работы и сезонных объектов */
.sch-day-name{display:flex;align-items:center;gap:8px;min-height:22px}
.sch-day.is-today .sch-day-name::after{content:"Сегодня";display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:999px;background:#e3f3ec;color:#23745b;font-size:10px;font-weight:900;letter-spacing:.02em}
.sch-time-card:not(.is-next):hover{border-color:#c6d7e2}
.sch-time-card.is-extra{border-style:dashed}
@media(max-width:560px){.sch-day-name{font-size:14px}.sch-day.is-today .sch-day-name::after{font-size:9px}}
