/* Шторка «было / стало» — общий компонент платформы (ТЗ kiri-home-scenes, решение владельца 3).
   Контракт: <figure class="cur" data-curtain> со слоями .cur-l.cur-b («было») и .cur-l.cur-a («стало»), метками .cur-tag.b/.a,
   <input class="cur-range" type="range">, ручкой .cur-hd > .knob и <figcaption class="sr">. Инициализирует curtain.js.
   Компонент самодостаточен: от страницы нужен только шрифт; все цвета — через --cur-* с запасными значениями, чтобы
   тёмная тема (#1119) переопределила их одним блоком. Размер содержимого слоёв — em от ширины шторки (--cur-fs, по умолчанию 2.75cqw). */
.cur{--cut:50%;position:relative;container-type:inline-size;aspect-ratio:4/3;max-width:100%;border-radius:12px;overflow:hidden;
  background:var(--cur-tray,#dfe5e1);touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize;isolation:isolate;
  box-shadow:0 1px 0 rgba(0,0,0,.04),0 28px 56px -32px var(--cur-shade,rgba(16,40,30,.16))}
.cur-l{position:absolute;inset:0;font-size:var(--cur-fs,2.75cqw);line-height:1.5;overflow:hidden}
.cur-a{clip-path:inset(0 0 0 var(--cut))}
.cur-hd{position:absolute;inset:0;z-index:3;pointer-events:none;transform:translateX(var(--cut))}
.cur-hd::before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:var(--cur-accent,#0b6e4f);box-shadow:0 0 0 1px rgba(255,255,255,.35)}
.cur .knob{position:absolute;top:50%;left:-21px;width:42px;height:42px;margin-top:-21px;border-radius:50%;background:var(--cur-accent,#0b6e4f);
  color:var(--cur-on-accent,#fff);display:grid;place-items:center;box-shadow:0 6px 18px -6px rgba(11,110,79,.7)}
.cur .knob svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cur-tag{position:absolute;top:12px;z-index:2;font:600 12px/1 var(--cur-font,Onest,system-ui,-apple-system,"Segoe UI",sans-serif);padding:6px 10px;
  border-radius:999px;background:rgba(24,35,31,.78);color:#fff;pointer-events:none}
.cur-tag.b{left:12px}
.cur-tag.a{right:12px;background:var(--cur-accent,#0b6e4f)}
.cur-range{position:absolute;left:0;bottom:0;width:100%;height:2px;margin:0;opacity:0;pointer-events:none}
.cur-range:focus-visible ~ .cur-hd .knob{outline:3px solid var(--cur-focus,#0b6e4f);outline-offset:3px}
.cur.sweep .cur-a{transition:clip-path .95s cubic-bezier(.6,0,.2,1)}
.cur.sweep .cur-hd{transition:transform .95s cubic-bezier(.6,0,.2,1)}
@media (max-width:600px){
  .cur-tag{top:8px;padding:5px 8px}
  .cur-tag.b{left:8px}.cur-tag.a{right:8px}
  .cur .knob{width:36px;height:36px;left:-18px;margin-top:-18px}
}
@media (prefers-reduced-motion:reduce){
  .cur.sweep .cur-a,.cur.sweep .cur-hd{transition:none}
}
