/* Mahina v3.21 — dimensional cursor refinement and balanced media-origin note. */

.art-cursor-arrow {
  contain: layout style;
  overflow: visible;
  background:
    radial-gradient(circle at 13% 12%, rgba(255, 255, 255, 1) 0 4%, rgba(255, 255, 255, 0.7) 8%, transparent 25%),
    linear-gradient(315deg, rgba(246, 249, 253, 0.98) 0%, rgba(174, 187, 205, 0.93) 31%, rgba(73, 82, 98, 0.82) 67%, rgba(35, 39, 47, 0.32) 100%);
  -webkit-backdrop-filter: blur(2.4px) saturate(122%);
  backdrop-filter: blur(2.4px) saturate(122%);
  filter:
    drop-shadow(1.4px 2.2px 2.4px rgba(15, 19, 27, 0.38))
    drop-shadow(-0.45px -0.45px 0.65px rgba(255, 255, 255, 0.9));
  box-shadow:
    inset 0.8px 0.8px 0 rgba(255, 255, 255, 0.72),
    inset -1px -1px 1px rgba(24, 30, 40, 0.24);
}

.art-cursor-arrow::before {
  inset: -10% -16%;
  background: linear-gradient(315deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 0.46) 25%, transparent 57%);
}

.art-cursor-arrow::after {
  content: "";
  position: absolute;
  inset: 1px;
  pointer-events: none;
  clip-path: polygon(0 0, 100% 38%, 38% 100%);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0.28) 24%, transparent 48%);
  opacity: 0.92;
}

.art-cursor-lens {
  width: 13.3px;
  height: 13.3px;
  border-radius: 50%;
  background:
    radial-gradient(circle at 31% 27%, rgba(255, 255, 255, 0.98) 0 12%, rgba(255, 255, 255, 0.64) 18%, transparent 39%),
    linear-gradient(145deg, rgba(105, 133, 169, 0.9), rgba(40, 49, 63, 0.76));
  -webkit-backdrop-filter: blur(1.2px) saturate(124%);
  backdrop-filter: blur(1.2px) saturate(124%);
  filter: blur(0.32px) saturate(1.08);
  box-shadow:
    0 0 0 0.85px rgba(30, 37, 48, 0.58),
    0 2.2px 6.5px rgba(32, 48, 72, 0.34),
    inset 0 1px 1.5px rgba(255, 255, 255, 0.78);
}

.art-cursor-lens::before {
  inset: 0.8px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(105, 137, 178, 0.24));
  filter: none;
}

.art-cursor-lens.is-positioned.is-interactive {
  opacity: 0.94;
  box-shadow:
    0 0 0 0.9px rgba(27, 34, 45, 0.64),
    0 2.5px 7px rgba(31, 48, 73, 0.4),
    inset 0 1px 1.5px rgba(255, 255, 255, 0.84);
}

.art-cursor-lens.is-pressed {
  width: 8.4px;
  height: 8.4px;
  opacity: 0.96;
  filter: blur(0.2px) brightness(0.94) saturate(1.1);
}

.site-footer .mahina-media-origin,
.mahina-origin-footer .mahina-media-origin {
  width: min(calc(100% - 32px), 660px);
  max-width: 660px;
  justify-self: center;
  color: rgba(30, 30, 32, 0.55);
  text-wrap: balance;
  overflow-wrap: anywhere;
}

@media (prefers-reduced-motion: reduce) {
  .art-cursor-arrow::before {
    animation: none;
  }
}
