/**
 * ABOUT SECTION CSS ART
 * Concept: Japanese Warrior Scout + Modern AI Reconnaissance
 * Combining: Torii gate framing radar display + Samurai scout silhouette with data streams
 */

.about-art-zone {
  position: relative;
  width: 100%;
  aspect-ratio: 600 / 750;
  background: linear-gradient(180deg,
    #0A0E27 0%,
    #0f1430 30%,
    #0A0E27 60%,
    #0f1430 100%
  );
  border-radius: 0.75rem;
  overflow: hidden;
  box-shadow:
    inset 0 1px 0 rgba(77, 101, 255, 0.1),
    0 8px 32px rgba(0, 0, 0, 0.4);
}

/* Katakana background texture - サクテキ (Sakuteki) - larger, more prominent */
.about-art-zone::before {
  content: 'サクテキ';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  font-size: 320px;
  font-weight: 900;
  color: rgba(77, 101, 255, 0.04);
  letter-spacing: 0.2em;
  writing-mode: vertical-rl;
  z-index: 1;
  pointer-events: none;
}

/* Torii gate with radar display - primary visual */
.torii-radar-svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  z-index: 3;
  opacity: 0.85;
}

/* Scout silhouette overlay - secondary layer */
.scout-silhouette-svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 66%;
  height: 80%;
  z-index: 4;
  opacity: 0.5;
  mix-blend-mode: screen;
}

/* Vertical scanning line - sweeps over everything */
.about-art-zone::after {
  content: '';
  position: absolute;
  top: -100%;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(77, 101, 255, 0) 10%,
    rgba(77, 101, 255, 0.8) 50%,
    rgba(77, 101, 255, 0) 90%,
    transparent 100%
  );
  box-shadow:
    0 0 30px rgba(77, 101, 255, 0.9),
    0 0 60px rgba(77, 101, 255, 0.5);
  animation: scanVertical 8s ease-in-out infinite;
  z-index: 10;
}

@keyframes scanVertical {
  0% {
    top: -5%;
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  95% {
    opacity: 1;
  }
  100% {
    top: 105%;
    opacity: 0;
  }
}

/* Circuit pattern overlay - subtle tech texture */
.circuit-pattern {
  position: absolute;
  inset: 0;
  z-index: 2;
  background-image:
    linear-gradient(90deg, rgba(77, 101, 255, 0.03) 1px, transparent 1px),
    linear-gradient(0deg, rgba(77, 101, 255, 0.03) 1px, transparent 1px);
  background-size: 30px 30px;
  opacity: 0.4;
}

/* Corner accent brackets - Japanese UI aesthetic */
.corner-bracket {
  position: absolute;
  width: 40px;
  height: 40px;
  border: 2px solid rgba(77, 101, 255, 0.4);
  z-index: 5;
}

.corner-bracket.top-left {
  top: 15px;
  left: 15px;
  border-right: none;
  border-bottom: none;
}

.corner-bracket.top-right {
  top: 15px;
  right: 15px;
  border-left: none;
  border-bottom: none;
}

.corner-bracket.bottom-left {
  bottom: 15px;
  left: 15px;
  border-right: none;
  border-top: none;
}

.corner-bracket.bottom-right {
  bottom: 15px;
  right: 15px;
  border-left: none;
  border-top: none;
}

/* Data stream particles - floating elements */
.data-particle {
  position: absolute;
  width: 3px;
  height: 3px;
  background: rgba(77, 101, 255, 0.6);
  border-radius: 50%;
  z-index: 6;
  box-shadow: 0 0 8px rgba(77, 101, 255, 0.8);
  animation: floatParticle 6s ease-in-out infinite;
}

.data-particle:nth-child(1) {
  left: 15%;
  animation-delay: 0s;
  animation-duration: 5s;
}

.data-particle:nth-child(2) {
  left: 35%;
  animation-delay: 1.2s;
  animation-duration: 6.5s;
}

.data-particle:nth-child(3) {
  left: 55%;
  animation-delay: 2.4s;
  animation-duration: 5.8s;
}

.data-particle:nth-child(4) {
  left: 75%;
  animation-delay: 3.6s;
  animation-duration: 6.2s;
}

.data-particle:nth-child(5) {
  left: 85%;
  animation-delay: 4.8s;
  animation-duration: 5.5s;
}

@keyframes floatParticle {
  0% {
    top: 100%;
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    top: -5%;
    opacity: 0;
  }
}

/* Platform indicator dots - 7 AI engines */
.platform-dot {
  position: absolute;
  width: 6px;
  height: 6px;
  background: rgba(77, 101, 255, 0.7);
  border-radius: 50%;
  z-index: 7;
  box-shadow:
    0 0 10px rgba(77, 101, 255, 0.9),
    0 0 20px rgba(77, 101, 255, 0.5);
  animation: platformPulse 2s ease-in-out infinite;
}

/* Distributed around the art zone perimeter */
.platform-dot:nth-child(1) {
  top: 12%;
  left: 20%;
  animation-delay: 0s;
}

.platform-dot:nth-child(2) {
  top: 18%;
  right: 15%;
  animation-delay: 0.3s;
}

.platform-dot:nth-child(3) {
  top: 35%;
  left: 8%;
  animation-delay: 0.6s;
}

.platform-dot:nth-child(4) {
  top: 52%;
  right: 10%;
  animation-delay: 0.9s;
}

.platform-dot:nth-child(5) {
  top: 68%;
  left: 12%;
  animation-delay: 1.2s;
}

.platform-dot:nth-child(6) {
  top: 75%;
  right: 18%;
  animation-delay: 1.5s;
}

.platform-dot:nth-child(7) {
  top: 88%;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 1.8s;
}

@keyframes platformPulse {
  0%, 100% {
    opacity: 0.5;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.3);
  }
}

/* Horizontal wave accent - bottom (seigaiha pattern) */
.wave-accent {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100px;
  z-index: 2;
  background:
    radial-gradient(ellipse 80px 30px at 10% 70%, rgba(77, 101, 255, 0.08), transparent),
    radial-gradient(ellipse 90px 35px at 30% 80%, rgba(77, 101, 255, 0.06), transparent),
    radial-gradient(ellipse 80px 30px at 50% 70%, rgba(77, 101, 255, 0.08), transparent),
    radial-gradient(ellipse 90px 35px at 70% 80%, rgba(77, 101, 255, 0.06), transparent),
    radial-gradient(ellipse 80px 30px at 90% 70%, rgba(77, 101, 255, 0.08), transparent);
  opacity: 0.7;
}

/* Top glow accent */
.top-glow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 120px;
  z-index: 2;
  background: linear-gradient(180deg,
    rgba(77, 101, 255, 0.15) 0%,
    rgba(77, 101, 255, 0.05) 50%,
    transparent 100%
  );
  opacity: 0.5;
}

/* Center focus point - "reconnaissance lens" */
.recon-lens {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 180px;
  height: 180px;
  z-index: 8;
  border-radius: 50%;
  border: 2px solid rgba(77, 101, 255, 0.3);
  box-shadow:
    0 0 60px rgba(77, 101, 255, 0.3),
    inset 0 0 40px rgba(77, 101, 255, 0.15);
  animation: lensPulse 5s ease-in-out infinite;
}

@keyframes lensPulse {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.4;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.08);
    opacity: 0.7;
  }
}

/* Inner lens ring */
.recon-lens::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
  background: radial-gradient(circle,
    rgba(77, 101, 255, 0.4) 0%,
    rgba(77, 101, 255, 0.1) 50%,
    transparent 100%
  );
  border-radius: 50%;
  box-shadow: 0 0 30px rgba(77, 101, 255, 0.5);
}

/* Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  .about-art-zone::after,
  .data-particle,
  .platform-dot,
  .recon-lens {
    animation: none;
  }

  .about-art-zone::after {
    display: none;
  }

  /* Keep SVG animations but disable if browser supports it */
  .torii-radar-svg,
  .scout-silhouette-svg {
    animation: none;
  }
}

/* Responsive adjustments */
@media (max-width: 991px) {
  .about-art-zone::before {
    font-size: 240px;
  }

  .scout-silhouette-svg {
    width: 70%;
    height: 75%;
  }

  .recon-lens {
    width: 150px;
    height: 150px;
  }

  .corner-bracket {
    width: 30px;
    height: 30px;
  }
}

@media (max-width: 479px) {
  .about-art-zone::before {
    font-size: 160px;
  }

  .scout-silhouette-svg {
    width: 75%;
    height: 70%;
  }

  .recon-lens {
    width: 120px;
    height: 120px;
  }

  .corner-bracket {
    width: 25px;
    height: 25px;
    top: 10px;
    left: 10px;
  }

  .corner-bracket.top-right,
  .corner-bracket.bottom-right {
    right: 10px;
  }

  .corner-bracket.bottom-left,
  .corner-bracket.bottom-right {
    bottom: 10px;
  }
}
