/* Extension of the approved palette, scoped to opted-in product surfaces only. */
body.tmo-cherry { --tmo-cherry-aqua-ink:#175c54; --tmo-cherry-aqua-tint:#e8f6f3; --tmo-cherry-pink-ink:#9e286b; --tmo-cherry-pink-tint:#fff0f8; }
body.tmo-cherry .tmo-cherry-icon { display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; flex-shrink:0; vertical-align:middle; }
body.tmo-cherry .tmo-cherry-icon svg { width:100%; height:100%; }
body.tmo-cherry .tmo-cherry-icon--tile { width:40px; height:40px; padding:10px; border-radius:12px; background:var(--tmo-c-brand-tint,#f0edff); color:var(--tmo-c-brand,#6c51bf); box-shadow:inset 0 1px #fff; }
body.tmo-cherry #content :where(a,button,input,textarea,select,summary):focus-visible { outline:3px solid var(--tmo-c-brand,#6c51bf); outline-offset:3px; }
body.tmo-cherry.tmo-ui-dark #content :where(a,button,input,textarea,select,summary):focus-visible { outline-color:var(--tmo-c-brand-light,#b4a7f8); }
/* C02: reclaim wrapper padding, not touch-target area, on narrow headers. */
@media(max-width:600px) {
  body.tmo-cherry .bb-mobile-header .mobile-logo-wrapper { min-width:0; margin-inline:6px; }
  body.tmo-cherry .bb-mobile-header .mobile-logo-wrapper .site-title { margin:0!important; }
  body.tmo-cherry .bb-mobile-header .mobile-logo-wrapper a { display:flex; justify-content:center; min-height:44px; align-items:center; }
  body.tmo-cherry .bb-mobile-header .bb-mobile-logo { max-width:100%; width:44px; object-fit:contain; }
  body.tmo-cherry .bb-mobile-header .header-aside { gap:0; }
  body.tmo-cherry .bb-mobile-header .header-aside .bb-separator { display:none; }
  body.tmo-cherry .bb-mobile-header .header-aside > .notification-wrap { padding:0; margin:0; width:44px; min-width:44px; }
  body.tmo-cherry .bb-mobile-header :is(.header-search-link,.notification-link,.bb-left-panel-mobile) { width:44px; min-width:44px; min-height:44px; margin:0; padding:0; display:inline-flex; align-items:center; justify-content:center; }
}
body.tmo-cherry .tmo-cherry-navigation { position:fixed; z-index:999997; top:calc(env(safe-area-inset-top,0px) + 14px); left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:10px; padding:10px 16px; border:1px solid #8d75b4; border-radius:99px; background:#211829; color:#fff; box-shadow:0 7px 25px #180c2930; font:600 13px/1.5 Inter,sans-serif; pointer-events:none; }
body.tmo-cherry .tmo-cherry-navigation[hidden] { display:none; }
body.tmo-cherry .tmo-cherry-navigation::before { content:''; width:12px; height:12px; border-radius:50%; border:2px solid #d9c9ee55; border-top-color:#f49dce; animation:tmo-cherry-loading .8s linear infinite; }
@keyframes tmo-cherry-loading { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) {
  body.tmo-cherry #content :where(a,button,.tmo-cherry-icon,.tmo-cherry-credential) { transition:none!important; animation:none!important; scroll-behavior:auto!important; }
  body.tmo-cherry .tmo-pwa-nav-loading,body.tmo-cherry .tmo-pwa-nav-loading__mark,body.tmo-cherry .tmo-pwa-nav-loading__ring { animation:none!important; }
  body.tmo-cherry .tmo-cherry-navigation::before { animation:none!important; }
}
