
/* KAGE v60.38 simple navigation */
.kage-simple-products{position:relative}
.kage-simple-products>summary{
  list-style:none;display:flex;align-items:center;gap:6px;cursor:pointer;
  color:inherit;font:inherit;user-select:none
}
.kage-simple-products>summary::-webkit-details-marker{display:none}
.kage-simple-products>summary::after{
  content:"";width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;
  transform:rotate(45deg) translateY(-2px);opacity:.55;transition:transform .16s ease
}
.kage-simple-products[open]>summary::after{transform:rotate(225deg) translate(-1px,-1px)}
.kage-simple-products-menu{
  position:absolute;top:calc(100% + 14px);left:50%;z-index:1200;width:220px;padding:7px;
  transform:translateX(-50%) translateY(-4px);opacity:0;visibility:hidden;pointer-events:none;
  border:1px solid rgba(199,211,245,.10);border-radius:15px;background:rgba(9,11,14,.97);
  box-shadow:0 22px 64px rgba(0,0,0,.42);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease
}
.kage-simple-products[open] .kage-simple-products-menu,
.kage-simple-products:hover .kage-simple-products-menu{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)
}
.kage-simple-products-menu a{
  display:flex!important;align-items:center;justify-content:space-between;min-height:38px;
  padding:0 10px!important;border-radius:9px;color:#9da7b0!important;font-size:12px!important
}
.kage-simple-products-menu a::after{content:"→";opacity:.22}
.kage-simple-products-menu a:hover,
.kage-simple-products-menu a.active{background:rgba(255,255,255,.055);color:#fff!important}
.kage-simple-products-menu a.active::after{opacity:.65}

.kage-simple-mobile-capabilities{
  margin:8px 0;padding:10px;border:1px solid rgba(255,255,255,.055);
  border-radius:14px;background:rgba(255,255,255,.018)
}
.kage-simple-mobile-capabilities>span{
  display:block;padding:2px 4px 8px;color:rgba(255,255,255,.31);
  font-size:9px;font-weight:750;letter-spacing:.14em;text-transform:uppercase
}
.kage-simple-mobile-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.mobile-menu-panel .kage-simple-mobile-grid a{
  display:block;padding:9px 10px;border-radius:9px;color:#aeb6bd;font-size:12px;font-weight:650
}
.mobile-menu-panel .kage-simple-mobile-grid a.active{
  background:rgba(113,81,239,.11);color:#d8d0ff
}
.kage-simple-mobile-beta{width:100%;margin-top:8px}

/* On a second page in the same browser session the splash must never flash. */
html.kage-splash-skip #kageIntroV293{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}


/* v60.39 — compact capabilities menu.
   Strong selectors intentionally override legacy dropdown styles. */

.landing-nav .kage-simple-products{
  position:relative!important;
}

.landing-nav .kage-simple-products > summary{
  min-height:38px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  list-style:none!important;
  cursor:pointer!important;
  white-space:nowrap!important;
  color:inherit!important;
  font:inherit!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
}

.landing-nav .kage-simple-products > summary::-webkit-details-marker{
  display:none!important;
}

/* Keep only the tiny dropdown chevron next to the current section label. */
.landing-nav .kage-simple-products > summary::after{
  content:""!important;
  width:6px!important;
  height:6px!important;
  flex:0 0 6px!important;
  margin:0 0 4px 2px!important;
  border:0!important;
  border-right:1px solid rgba(255,255,255,.42)!important;
  border-bottom:1px solid rgba(255,255,255,.42)!important;
  background:none!important;
  opacity:1!important;
  transform:rotate(45deg)!important;
  transition:transform .16s ease!important;
}

.landing-nav .kage-simple-products[open] > summary::after{
  transform:rotate(225deg) translate(-2px,-2px)!important;
}

/* Compact floating menu */
.landing-nav .kage-simple-products-menu{
  position:absolute!important;
  top:calc(100% + 9px)!important;
  left:-14px!important;
  right:auto!important;

  width:192px!important;
  min-width:192px!important;
  max-width:192px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;

  display:grid!important;
  grid-template-columns:1fr!important;
  gap:2px!important;

  padding:6px!important;
  margin:0!important;

  transform:translateY(-4px)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;

  border:1px solid rgba(255,255,255,.075)!important;
  border-radius:14px!important;
  background:rgba(8,10,13,.97)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.44)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;

  overflow:hidden!important;
  transition:
    opacity .16s ease,
    transform .16s ease,
    visibility .16s ease!important;
}

.landing-nav .kage-simple-products[open] .kage-simple-products-menu,
.landing-nav .kage-simple-products:hover .kage-simple-products-menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0)!important;
}

.landing-nav .kage-simple-products-menu a{
  width:100%!important;
  min-width:0!important;
  min-height:36px!important;
  height:36px!important;

  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;

  padding:0 11px!important;
  margin:0!important;

  border:0!important;
  border-radius:9px!important;
  background:transparent!important;

  color:rgba(227,231,236,.66)!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;

  transition:
    background .14s ease,
    color .14s ease!important;
}

/* Kill every legacy per-row arrow/icon decoration. */
.landing-nav .kage-simple-products-menu a::before,
.landing-nav .kage-simple-products-menu a::after{
  content:none!important;
  display:none!important;
}

.landing-nav .kage-simple-products-menu a:hover{
  background:rgba(255,255,255,.048)!important;
  color:#fff!important;
}

.landing-nav .kage-simple-products-menu a.active{
  background:rgba(120,86,255,.10)!important;
  color:#c7b7ff!important;
}

/* Avoid accidental huge dropdown rules inherited from older nav styles. */
.landing-nav .nav-links .kage-simple-products-menu{
  inset:auto auto auto -14px!important;
  top:calc(100% + 9px)!important;
}

@media(max-width:900px){
  /* Desktop dropdown never appears inside mobile navigation. */
  .landing-nav .nav-links .kage-simple-products-menu{
    width:192px!important;
  }

  .kage-simple-mobile-capabilities{
    margin:6px 0 4px!important;
    padding:8px!important;
    border-radius:12px!important;
  }

  .kage-simple-mobile-capabilities > span{
    padding:2px 5px 7px!important;
    font-size:8px!important;
  }

  .kage-simple-mobile-grid{
    grid-template-columns:1fr 1fr!important;
    gap:4px!important;
  }

  .mobile-menu-panel .kage-simple-mobile-grid a{
    min-height:36px!important;
    padding:0 9px!important;
    display:flex!important;
    align-items:center!important;
    border-radius:8px!important;
    font-size:11px!important;
  }
}


/* v60.40 mobile production hardening */
@media(max-width:900px){
  /* Keep the open menu inside the visual viewport, including iOS browser chrome. */
  .mobile-menu-panel{
    max-height:calc(100dvh - 62px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body:has(.mobile-menu-panel.open){
    overflow:hidden!important;
  }

  /* Horizontal media rails must scroll inside themselves, never widen the page. */
  .results,
  .showcase-shell,
  .showcase-stage{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
  .showcase-track{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }

  /* Long localized labels must not widen either top bar or menu. */
  .landing-nav .shell,
  .mobile-menu-panel,
  .kage-simple-mobile-capabilities,
  .kage-simple-mobile-grid,
  .kage-simple-mobile-grid>a{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .kage-simple-mobile-grid>a{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}
@media(max-width:620px){
  .mobile-menu-panel{max-height:calc(100dvh - 62px)!important}
}
@supports not (height:100dvh){
  @media(max-width:900px){
    .mobile-menu-panel{max-height:calc(100vh - 62px)!important}
  }
}


/* v60.40.1 global mobile overflow containment */
@media(max-width:900px){
  html,body{
    max-width:100%!important;
    overflow-x:clip!important;
  }
}
@supports not (overflow:clip){
  @media(max-width:900px){
    html,body{overflow-x:hidden!important}
  }
}


/* v60.40.2 mobile menu interaction backdrop */
@media(max-width:900px){
  body:has(.mobile-menu-panel.open)::before{
    content:"";
    position:fixed;
    inset:72px 0 0;
    z-index:79;
    background:rgba(2,3,5,.66);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    pointer-events:auto;
  }
}
@media(max-width:620px){
  body:has(.mobile-menu-panel.open)::before{inset:62px 0 0}
}
