/* ===== Glass Menu v4 (CSS-only, uses .uc-scrolled) ===== */

.uc-menu {
  --gm-ease: cubic-bezier(0.2, 0.72, 0.12, 1);

  /* top state */
  --gm-opacity: 0.80;
  --gm-blur: 12px;
  --gm-shadow-y: 10px;
  --gm-shadow-blur: 30px;
  --gm-shadow-alpha: 0.14;
  --gm-line-alpha: 0.06;
  --gm-hover-alpha: 0.05;
}

/* scrolled state (class is added to the same block .uc-menu) */
.uc-menu.uc-scrolled {
  --gm-opacity: 0.86;
  --gm-blur: 14px;
  --gm-shadow-y: 14px;
  --gm-shadow-blur: 40px;
  --gm-shadow-alpha: 0.24;
  --gm-line-alpha: 0.12;
  --gm-hover-alpha: 0.08;
}

/* Surface only: no layout/height changes */
.uc-menu .t-menu-base,
.uc-menu .tmenu-mobile {
  position: relative;
  background-color: rgba(10, 12, 16, var(--gm-opacity)) !important;
  border: 0 !important;
  background-clip: padding-box;

  box-shadow:
    0 var(--gm-shadow-y) var(--gm-shadow-blur) -18px rgba(0, 0, 0, var(--gm-shadow-alpha)),
    inset 0 0 0 1px rgba(255, 255, 255, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;

  backdrop-filter: blur(var(--gm-blur)) saturate(116%);
  -webkit-backdrop-filter: blur(var(--gm-blur)) saturate(116%);

  transition:
    background-color 280ms var(--gm-ease),
    box-shadow 280ms var(--gm-ease),
    backdrop-filter 280ms var(--gm-ease),
    -webkit-backdrop-filter 280ms var(--gm-ease);

  will-change: background-color, box-shadow;
}

/* Do not touch Tilda geometry */
.uc-menu .t-menu-base__maincontainer,
.uc-menu .tmenu-mobile__container {
  background-color: transparent !important;
}

/* Thin light line at the bottom */
.uc-menu .t-menu-base::after,
.uc-menu .tmenu-mobile::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, var(--gm-line-alpha)) 20%,
    rgba(255, 255, 255, calc(var(--gm-line-alpha) + 0.03)) 50%,
    rgba(255, 255, 255, var(--gm-line-alpha)) 80%,
    rgba(255, 255, 255, 0) 100%
  );
}

/* Link micro-hover: no padding/min-height overrides */
.uc-menu .t-menu__link-item {
  position: relative;
  border-radius: 999px;
  isolation: isolate;
  transition: color 220ms var(--gm-ease);
}

.uc-menu .t-menu__link-item::before {
  content: "";
  position: absolute;
  inset: -5px -7px;
  border-radius: inherit;
  background: rgba(255, 255, 255, var(--gm-hover-alpha));
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  transition: opacity 220ms var(--gm-ease);
}

@media (hover: hover) {
  .uc-menu .t-menu__link-item:hover::before,
  .uc-menu .t-menu__link-item:focus-visible::before {
    opacity: 1;
  }

  .uc-menu .t-menuwidgeticons__link:hover,
  .uc-menu .t-menuwidgeticons__link:focus-visible {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
    border-radius: 999px;
  }
}

.uc-menu .t-menu__link-item.t-active {
  color: #ffffff !important;
}

/* Mobile opened panel: calmer, no layered glass */
@media screen and (max-width: 960px) {
  .uc-menu .t-menu-base.tmenu-mobile__menucontent_fixed {
    background-color: rgba(10, 12, 16, 0.94) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
  }

  .uc-menu .t-menu-base.tmenu-mobile__menucontent_fixed::after {
    display: none;
  }
}

@supports not (
  (-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))
) {
  .uc-menu .t-menu-base,
  .uc-menu .tmenu-mobile {
    background-color: rgba(10, 12, 16, 0.92) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .uc-menu .t-menu-base,
  .uc-menu .tmenu-mobile,
  .uc-menu .t-menu__link-item,
  .uc-menu .t-menu__link-item::before {
    transition: none !important;
  }
}

/* FIX: preserve Tilda fixed positioning */
.uc-menu .t-menu-base.t-menu-base_positionfixed,
.uc-menu .t-menu-base.tmenu-mobile__menucontent_fixed {
  position: fixed !important;
}

.uc-menu .t-menu-base__mobile-menu.tmenu-mobile_positionfixed,
.uc-menu .tmenu-mobile.tmenu-mobile_positionfixed {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
}