/* AEROFOLIO 2.0 — Tailwind / Alpine Overrides */

/* Intersection Observer Scroll Reveal */
.reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.5s ease, transform 0.5s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Alpine JS Cloak */
[x-cloak] { display: none !important; }

/* Custom Timeline Track */
.timeline-track { position: relative; padding-left: 34px; border-left: 2px solid theme('colors.aviation.border'); }
.timeline-year { position: relative; }
.timeline-year::before {
  content: ''; position: absolute; left: -42px; top: 6px; width: 12px; height: 12px; border-radius: 50%;
  background: theme('colors.aviation.cyan');
  box-shadow: 0 0 0 4px rgba(0, 210, 211, 0.18);
}

/* Lightbox (Vanilla JS fallback/legacy) */
.lightbox-overlay { position: fixed; inset: 0; background: rgba(15,23,42,0.94); z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 40px 24px; opacity: 0; transition: opacity 0.2s ease; }
.lightbox-overlay.is-open { opacity: 1; }
.lightbox-overlay.is-open .lightbox-inner { transform: scale(1); }
.lightbox-inner { max-width: 1100px; max-height: 100%; display: flex; flex-direction: column; align-items: center; transform: scale(0.97); transition: transform 0.2s ease; }
.lightbox-inner img { max-width: 100%; max-height: 72vh; border-radius: 8px; box-shadow: 0 0 60px rgba(0,0,0,0.6); object-fit: contain; }
.lightbox-cap { margin-top: 16px; text-align: center; max-width: 640px; }
.lightbox-cap h4 { margin: 0 0 6px; color: #fff; font-size: 1.05rem; }
.lightbox-cap p { margin: 0; color: theme('colors.aviation.dim'); font-size: 0.9rem; }
.lightbox-close { position: absolute; top: 20px; right: 26px; background: rgba(255,255,255,0.06); border: 1px solid theme('colors.aviation.border'); color: #fff; width: 40px; height: 40px; border-radius: 50%; font-size: 1.4rem; cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 2; transition: all 0.2s; }
.lightbox-close:hover { border-color: theme('colors.aviation.cyan'); color: theme('colors.aviation.cyan'); }

/* Hide scrollbar for snap carousel */
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
