/* M02 2026-09-14 (messenger-max w5): значения сведены к фактическому финальному
   каскаду (tokens-v2 → app → max-ui/eco-skin-v2 → design-r55). Раньше здесь
   оставались проигрывающие дубли (10px/22px/0.14s/…), из-за которых файл
   врал как «источник». Менять значения только вместе со слоями-владельцами. */
:root {
  color-scheme: light;
  --nav-h: 58px;
  --nav-icon: 24px;
  --nav-label: 11px;
  --composer-h: 52px;
  --composer-pill-radius: 22px;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-top: env(safe-area-inset-top, 0px);
  --accent-soft: #eaf0ff;
  --accent-soft-strong: rgba(26, 86, 219, 0.2);
  --nav-blur: blur(16px) saturate(1.15);
  --motion-fast: 0.16s cubic-bezier(0.2, 0.7, 0.3, 1);
  --motion-base: 0.26s cubic-bezier(0.2, 0.7, 0.3, 1);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --motion-fast: 0.01ms;
    --motion-base: 0.01ms;
  }
}

/* Icon glyphs. WebKit: inline SVG sits on the text baseline; <button>
   appearance:button keeps UA padding (1px 6px) and can ignore flex/grid,
   so glyphs look crooked / shifted. Do not set display:block on .vy-avatar. */
svg.vy-ico {
  display: block;
  flex-shrink: 0;
  overflow: visible;
}
