/* Демо и экран телефона для iframe лендинга. Общий schedule.css не трогаем: всё отличие здесь. */
:root {
  --g1: light-dark(#1d6fe8, #5aa2ff); --g2: light-dark(#7b3fe0, #a98bff); --g3: light-dark(#e0409a, #ff7ab8);
  --pad-x: clamp(1rem, 4vw, 2.5rem);
}
html { scroll-behavior: auto; }
body { min-block-size: 0; }
.container { padding-block: 0 var(--space-4); }
.mk-1 { stop-color: var(--g1); } .mk-2 { stop-color: var(--g2); } .mk-3 { stop-color: var(--g3); }

/* Шапка со знаком: липкая, полупрозрачная; в рамке телефона сверху место под вырез (режим сообщает лендинг) */
.app-top { position: sticky; inset-block-start: 0; z-index: 30; display: flex; align-items: center; gap: var(--space-2); margin-block-end: var(--space-4); padding: .7rem max(var(--pad-x), calc((100% - 1100px) / 2 + var(--pad-x))) .6rem; background: color-mix(in srgb, var(--bg) 84%, transparent); border-block-end: 1px solid var(--border); }
@supports (backdrop-filter: blur(1px)) { .app-top { background: color-mix(in srgb, var(--bg) 72%, transparent); backdrop-filter: blur(12px) saturate(1.4); } }
html[data-mode="phone"] .app-top { padding-block-start: 2.7rem; }
.app-top svg { inline-size: 1.7rem; block-size: 1.7rem; flex: none; }
.app-top .word { font-weight: 800; letter-spacing: -.04em; font-size: 1.25rem; line-height: 1; color: var(--text); }

/* Панель дней в демо не липкая: шапка уже закреплена, двух полос на малой высоте слишком много */
.demo-page .sch-daybar { position: static; box-shadow: none; clip-path: none; padding-block: 0; margin-block-end: var(--space-3); background: none; }

/* Подсказка на переключателе вида: два кольца, один раз (без анимации её нет) */
.sch-seg a { position: relative; }
@media (prefers-reduced-motion: no-preference) {
  .sch-seg a.hint::after { content: ""; position: absolute; inset: -3px; border: 2px solid var(--accent); border-radius: inherit; pointer-events: none; opacity: 0; animation: ring 1.5s ease-out .3s 2; }
}
@keyframes ring { 0% { opacity: .95; transform: scale(1); } 100% { opacity: 0; transform: scale(1.22); } }

/* Экран телефона на первом экране лендинга: знак статичный, отступ под вырез всегда, без управления */
.app-top.is-static { position: static; inset-block-start: auto; margin-block-end: var(--space-3); padding: 2.4rem var(--space-3) 0; background: none; border-block-end: 0; backdrop-filter: none; }
body:has(.is-static) { overflow: hidden; }
body:has(.is-static) .container { padding: 0 var(--space-3) var(--space-3); max-inline-size: none; }
.is-hero .sch-controls, .is-hero .sch-legend, .is-hero .sch-fake { display: none; }
