/* Consistent feedback without layout shifts or continuous decorative motion. */
:root {--mira-motion-ease:cubic-bezier(.22,1,.36,1);--mira-motion-accent:#8b66ed;--mira-motion-ring:#b79aef}
.telegram-page {--mira-motion-accent:#6ec6f4;--mira-motion-ring:#6ec6f4}
:is(button:not(.mira-story-hit):not(.mira-story-segment):not(.h-dh-arc-hit):not(.h-dh-stop):not(.mira-language-option),.button,.cmp-button,.ios-btn,.ios-badge,.mobile-mira-cta,.mira-cta,.telegram-plans-cta-v2,.mira-mobile-menu-cta,.mira-story-arrow,.brand-channel-card,.mobile-mira-card) {
  transition:scale .16s var(--mira-motion-ease),translate .24s var(--mira-motion-ease),transform .24s var(--mira-motion-ease),background-color .2s,color .2s,border-color .2s,box-shadow .26s,filter .2s!important;
  -webkit-tap-highlight-color:transparent;
}
:is(.mira-page-nav,.mira-product-switch,.mira-mobile-menu-nav,.footer-links,.cmp-header,.cmp-footer,.footer-comparisons-links) a,summary {transition:color .2s,background-color .2s,box-shadow .22s,translate .2s var(--mira-motion-ease),scale .16s var(--mira-motion-ease)}
@media (hover:hover) and (pointer:fine) {
  :is(button:not(.mira-story-hit):not(.mira-story-segment):not(.h-dh-arc-hit):not(.h-dh-stop):not(.mira-language-option),.button,.cmp-button,.ios-btn,.ios-badge,.mobile-mira-cta,.mira-cta,.telegram-plans-cta-v2,.mira-mobile-menu-cta):not(:disabled):hover {translate:0 -1px;scale:1.012}
  :is(.brand-channel-card,.mobile-mira-card):hover {translate:0 -3px}
  :is(.mira-page-nav,.mira-product-switch,.mira-mobile-menu-nav,.footer-links,.cmp-header,.cmp-footer,.footer-comparisons-links) a:hover {translate:0 -1px}
  .mira-story-hit:hover .mira-story-arrow {scale:1.06}
  .mira-story-segment:hover .mira-story-rail {background:rgba(121,81,237,.27)}
  .h-dh-stop:hover .h-dh-dot {filter:brightness(1.12)}
  summary:hover {background-color:color-mix(in srgb,var(--mira-motion-accent) 7%,transparent)}
}
:is(button:not(.mira-story-hit):not(.mira-story-segment):not(.h-dh-arc-hit):not(.h-dh-stop):not(.mira-language-option),.button,.cmp-button,.ios-btn,.ios-badge,.mobile-mira-cta,.mira-cta,.telegram-plans-cta-v2,.mira-mobile-menu-cta):not(:disabled):active {scale:.97;translate:0 1px}
.brand-channel-card:active {scale:.994;translate:0 0}
:is(.mira-page-nav,.mira-product-switch,.mira-mobile-menu-nav,.cmp-header,.cmp-footer,.footer-comparisons-links) a:active,summary:active {scale:.985;translate:0 1px}
.mira-story-hit:active .mira-story-arrow {transform:none;scale:.94}
:where(button,a,summary,[role="option"]):focus-visible {outline:3px solid var(--mira-motion-ring);outline-offset:3px}
:is(.mira-language-option,.ios-lang-list li):focus-visible {outline:none}
@media (prefers-reduced-motion:reduce) {
  :is(button,.button,.cmp-button,.ios-btn,.ios-badge,.mobile-mira-cta,.mira-cta,.telegram-plans-cta-v2,.mira-mobile-menu-cta,.mira-story-arrow,.brand-channel-card,.mobile-mira-card,summary),:is(.mira-page-nav,.mira-product-switch,.mira-mobile-menu-nav,.footer-links,.cmp-header,.cmp-footer,.footer-comparisons-links) a {
    transition:none!important;scale:1!important;translate:none!important;
  }
}

/* A calm crossfade for links, back/forward navigation and language changes. */
@view-transition {navigation:auto;}
::view-transition-group(root) {animation-duration:280ms;animation-timing-function:cubic-bezier(.22,1,.36,1);}
::view-transition-old(root) {animation:mira-view-out 180ms cubic-bezier(.4,0,1,1) both;}
::view-transition-new(root) {animation:mira-view-in 280ms cubic-bezier(.22,1,.36,1) both;}
@keyframes mira-view-out {to {opacity:0;}}
@keyframes mira-view-in {from {opacity:0;transform:translateY(5px);} to {opacity:1;transform:none;}}
.mira-page-enter {view-transition-name:none;}
.mira-page-enter body {opacity:0;}
.mira-page-leaving {view-transition-name:none;}
@media (prefers-reduced-motion:reduce) {
  @view-transition {navigation:none;}
  ::view-transition-group(root),::view-transition-old(root),::view-transition-new(root) {animation:none!important;}
  .mira-page-enter body {opacity:1;}
}

html {scroll-behavior:smooth;}
.cmp-button:active {transform:none;}
@media (prefers-reduced-motion:reduce) {html {scroll-behavior:auto;}}
