/* =========================================== *//* 🪩 PATIO GALLERY LIGHTBOX — NORMAL + RETRO *//* =========================================== *//* ========= Lightbox ========= */.lightbox {  display: none;  position: fixed;  z-index: 10000;  top: 0; left: 0; right: 0; bottom: 0;  background: rgba(0, 0, 0, 0.9);  align-items: center;  justify-content: center;  flex-direction: column;  overflow: hidden;  touch-action: none;}.lightbox.active {  display: flex;}.lightbox-inner {  display: flex;  align-items: center;  justify-content: center;  width: 100%;  max-width: 95vw;  position: relative;}.lightbox-image-wrapper {  position: relative;  max-width: 90vw;  max-height: 80vh;  overflow: hidden;  display: flex;  justify-content: center;  align-items: center;}.lightbox-content {  max-width: 100%;  max-height: 80vh;  object-fit: contain;  border: 6px solid #fff;  box-shadow: 0 0 25px rgba(255, 255, 255, 0.3);}#lightbox-close {  position: fixed;  top: 20px;  right: 20px;  font-size: 3rem;  color: white;  cursor: pointer;  z-index: 10001;}/* ========= Arrows ========= */.prev, .next {  position: fixed;  top: 50%;  transform: translateY(-50%);  font-size: 4rem;  color: white;  cursor: pointer;  user-select: none;  padding: 0.5rem;  z-index: 10001;}.prev { left: 20px; }.next { right: 20px; }.prev:hover, .next:hover {  color: #00ffff;}/* ========= Caption ========= */#lightbox-caption-top {  display: none;}.lightbox-caption {  margin-top: 1rem;  text-align: center;  color: #fff;  font-size: 1.1rem;}/* ============================= *//* 🌈 RETRO MODE OVERRIDES *//* ============================= */body.retro-mode .patio-box {  background: rgba(0, 0, 0, 0.6);  border: 2px dashed #00ffff;  box-shadow: 0 0 12px #00ffff80;}body.retro-mode .gallery-grid {  background: repeating-linear-gradient(45deg, #0d0221, #0d0221 10px, #1a0333 10px, #1a0333 20px);}body.retro-mode .gallery-item {  background: rgba(0, 0, 0, 0.4);  border: 2px solid #ff00cc;  box-shadow: 0 0 14px #ff00cc40;}body.retro-mode .gallery-item:hover {  transform: scale(1.05) rotate(0.5deg);  box-shadow: 0 0 24px #00ffff, 0 0 36px #ff00cc;}body.retro-mode .gallery-label {  background: rgba(255, 0, 255, 0.3);  color: #00ffff;  text-shadow: 0 0 6px #00ffff;  border-top: 1px solid #ff00aa;}body.retro-mode .lightbox {  background: rgba(10, 0, 30, 0.96);  box-shadow: 0 0 20px #ff00cc, 0 0 40px #00ffff;}body.retro-mode .lightbox-content {  border: 4px solid #39ff14;  box-shadow: 0 0 20px #00ffaa, 0 0 30px #ff00cc;  animation: pulseGlow 1.5s infinite alternate;  cursor: url('images/cursor-next-retro.cur'), pointer;}body.retro-mode #lightbox-caption {  color: #00ffff;  text-shadow: 0 0 10px #00ffff, 0 0 20px #ff00cc;}body.retro-mode .lightbox .prev,body.retro-mode .lightbox .next {  color: #ff00cc;  text-shadow: 0 0 10px #ff00cc, 0 0 20px #00ffaa;}body.retro-mode .lightbox .prev:hover,body.retro-mode .lightbox .next:hover {  color: #00ffff;}/* ========= Animations ========= */@keyframes flicker {  0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% { opacity: 1; }  20%, 22%, 24%, 55% { opacity: 0.4; }}@keyframes pulseGlow {  from { box-shadow: 0 0 10px #00ffaa, 0 0 20px #ff00cc; }  to   { box-shadow: 0 0 20px #00ffaa, 0 0 40px #ff00cc; }}@keyframes clickPulse {  from { transform: scale(1); }  to   { transform: scale(0.97); }}/* ========= Mobile Tweaks ========= */@media screen and (max-width: 768px) {  #lightbox-close {    font-size: 2.5rem;    top: 10px;    right: 10px;  }  .prev, .next {    font-size: 3rem;  }}