/* Local demonstration tools. Product type and loading geometry are untouched. */
body[data-motion-lab-v2] .trial-controls {
  bottom: calc(100px + env(safe-area-inset-bottom,0px));
  max-width: calc(100vw - 32px);
  flex-wrap: wrap;
}
body[data-motion-lab-v2] .trial-controls:not([data-expanded="true"]) > :not([data-demo-tools]):not([data-demo-next]) { display: none; }
body[data-motion-lab-v2] .trial-controls [data-demo-tools] { color:#f2c230; }
body[data-motion-lab-v2] .trial-controls [data-demo-next] { border-color:#ffffff30; }
html[data-v2-site-phase="departing"] :is(.c-track,.kc-editorial__viewport) { opacity: .65; transition: opacity 160ms ease; }
/* Same unblurred 50ms menu rhythm as Home; the native dialog owns focus. */
body[data-motion-lab-v2] .kc-editorial dialog.kc-primary-menu {
  opacity:0;clip-path:none!important;filter:none!important;transform:none!important;
  transition:opacity 200ms cubic-bezier(.37,0,.63,1);
}
body[data-motion-lab-v2].v2-editorial-menu-open .kc-editorial dialog.kc-primary-menu { opacity:1; }
body[data-motion-lab-v2] .kc-editorial dialog.kc-primary-menu::backdrop { background:#03142de6; }
body[data-motion-lab-v2]:not([data-motion-variant="original"]) .kc-editorial .kc-primary-menu nav a {
  opacity:0;transform:translateY(18px);filter:none!important;
  transition:opacity 160ms ease,transform 180ms ease;
}
body[data-motion-lab-v2]:not([data-motion-variant="original"]).v2-editorial-menu-open .kc-editorial .kc-primary-menu nav a {
  opacity:1;transform:translateY(0);
  transition:opacity 260ms cubic-bezier(.22,1,.36,1),transform 360ms cubic-bezier(.22,1,.36,1);
  transition-delay:calc(100ms + var(--v2-menu-order,0) * 50ms);
}
body[data-motion-lab-v2] .kc-editorial .kc-primary-menu nav a:nth-child(1) { --v2-menu-order:0; }
body[data-motion-lab-v2] .kc-editorial .kc-primary-menu nav a:nth-child(2) { --v2-menu-order:1; }
body[data-motion-lab-v2] .kc-editorial .kc-primary-menu nav a:nth-child(3) { --v2-menu-order:2; }
body[data-motion-lab-v2] .kc-editorial .kc-primary-menu nav a:nth-child(4) { --v2-menu-order:3; }
body[data-motion-lab-v2] .kc-editorial .kc-primary-menu nav a:nth-child(5) { --v2-menu-order:4; }
.v2-editorial-video-control { display:block;margin:16px 0 0 auto;min-height:44px;padding:8px 12px;border:1px solid #ffffff30;border-radius:3px;background:transparent;color:#f1f5f8;font:400 10px/1.4 "KC Sans",sans-serif;cursor:pointer; }
@media(max-width:560px) {
  body[data-motion-lab-v2] .trial-controls { max-width:none; }
  body[data-motion-lab-v2] .trial-controls [data-demo-tools],body[data-motion-lab-v2] .trial-controls [data-demo-next] { font-size:10px; }
}
@media(max-width:700px) {
  body[data-motion-lab-v2]:has(.kc-editorial[data-local-editorial]) .trial-controls { bottom:calc(160px + env(safe-area-inset-bottom,0px)); }
}
@media(prefers-reduced-motion:reduce) {
  html[data-v2-site-phase="departing"] :is(.c-track,.kc-editorial__viewport) { opacity:1;transition:none; }
  body[data-motion-lab-v2] .kc-editorial dialog.kc-primary-menu,
  body[data-motion-lab-v2]:not([data-motion-variant="original"]).v2-editorial-menu-open .kc-editorial .kc-primary-menu nav a,
  body[data-motion-lab-v2]:not([data-motion-variant="original"]) .kc-editorial .kc-primary-menu nav a { transition:none;transition-delay:0s;transform:none; }
}

/* Pointer correction: remove the decorative MENU ring; retain keyboard focus. */
body.concept-c .c-motion-menu-toggle::before { content: none !important; }
body.concept-c .c-motion-menu-toggle:focus-visible,
.kc-editorial .kc-editorial__menu-toggle:focus-visible {
  outline: 1px solid rgba(241,245,248,.85) !important;
  outline-offset: 4px;
}

/* Keep the pointer dot over menu controls without the decorative cursor disk. */
body.concept-c .lab-cursor[data-menu-control="true"] i {
  visibility: hidden !important;
}

/* MENU uses the chapter navigation's fine yellow ring, anchored to its glyph. */
.kc-editorial .kc-editorial__menu-toggle > i { position: relative; }
body.concept-c .c-motion-menu-toggle .c-motion-menu-glyph::after,
.kc-editorial .kc-editorial__menu-toggle > i::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 34px;
  height: 34px;
  box-sizing: border-box;
  border: 1px solid #f2c230;
  border-radius: 50%;
  background: transparent;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.35);
  transition: opacity .3s ease, transform .6s cubic-bezier(.16,1,.3,1);
  pointer-events: none;
}
@media (hover: hover) and (pointer: fine) {
  body.concept-c .c-motion-menu-toggle:hover .c-motion-menu-glyph::after,
  .kc-editorial .kc-editorial__menu-toggle:hover > i::after {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}
body.concept-c .c-motion-menu-toggle:focus-visible .c-motion-menu-glyph::after,
body.concept-c .c-motion-menu-toggle[aria-expanded="true"] .c-motion-menu-glyph::after,
.kc-editorial .kc-editorial__menu-toggle:focus-visible > i::after,
.kc-editorial .kc-editorial__menu-toggle[aria-expanded="true"] > i::after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
@media (prefers-reduced-motion: reduce) {
  body.concept-c .c-motion-menu-toggle .c-motion-menu-glyph::after,
  .kc-editorial .kc-editorial__menu-toggle > i::after { transition: none; }
}

/* Avoid old WebKit flex-to-grid content displacement in the primary menu. */
.kc-editorial .kc-primary-menu nav { display: block; }

/* Restore the original moving halo on Home MENU/CLOSE, retaining pointer positioning fixes. */
body.concept-c .lab-cursor[data-menu-control="true"] i { visibility: visible !important; }
body.concept-c .c-motion-menu-toggle .c-motion-menu-glyph::after { content: none; }
