/* LVD WHITE v2 — 20260209v2
   White base (Photoshop canvas-friendly): #FAFAF8
*/
body.theme-white{
  /* Override global tokens so the whole system inherits the white field */
  --bg:#FAFAF8;
  --fg:#1A1A1A;
  --muted:#4A4A4A;
  --muted2:#6A6A6A;

  /* Make lines/frames "invisible" (same as background) */
  --line:#FAFAF8;

  background:var(--bg);
  color:var(--fg);
}

/* iOS: reduce chances of double-tap "smart zoom" on interactive UI/media */
body.theme-white a,
body.theme-white button,
body.theme-white img,
body.theme-white .hamburger,
body.theme-white .lightbox-close,
body.theme-white [role="button"],
body.theme-white .clickable{
  touch-action:manipulation;
}

body.theme-white a{ color:var(--fg); }
body.theme-white .muted,
body.theme-white .footer,
body.theme-white .footer a{ color:var(--muted); }

/* Header/Footer: same white field, no translucent black UI */
body.theme-white .header,
body.theme-white .footer{
  background:var(--bg) !important;
  backdrop-filter:none !important;
}
body.theme-white .header{ border-bottom:1px solid var(--bg) !important; }
body.theme-white .footer{ border-top:1px solid var(--bg) !important; }

/* Portfolio grid: sin recorte, sin lienzo negro */
body.theme-white .frame{
  background:var(--bg);
}
body.theme-white .card img{
  object-fit:contain;
  background:var(--bg);
}

/* Thumbs (series view) también en blanco */
body.theme-white .card.thumb img{
  background:var(--bg);
}

/* Separadores / bordes sutiles si existen */
body.theme-white .card{
  background:transparent;
}

/* Prevent dark hover borders in the white field */
body.theme-white .card:hover{ border-color:var(--bg) !important; }
body.theme-white .lang-btn.active{ border-color:var(--bg) !important; }
body.theme-white input:focus,
body.theme-white textarea:focus{ border-color:var(--bg) !important; }
body.theme-white .btn:hover{ border-color:var(--bg) !important; }
body.theme-white .carousel-btn:hover{ border-color:var(--bg) !important; }
body.theme-white .lightbox-close:hover{ border-color:var(--bg) !important; }

/* If any component draws separators, keep them invisible in white */
body.theme-white .statement-wrap{ border-top:1px solid var(--bg) !important; }



/* --- White v2 fixes — 20260211v18 --- */

/* Sharp corners everywhere in White */
body.theme-white{
  --radius: 0px;
}

/* Mobile menu: white field + dark text */
@media (max-width: 560px){
  body.theme-white .nav-mobile{
    background: var(--bg) !important;
    border-bottom: 1px solid #D8D8D3;
  }
  body.theme-white .nav-mobile a{
    color: var(--fg) !important;
    border-bottom: 1px solid #D8D8D3;
  }
}

/* Home (Now): preserve original proportion inside 4:5 frame */
body.theme-white .home-gallery .tile{
  background: var(--bg);
  aspect-ratio: 4 / 5;
  display:flex;
  align-items:center;
  justify-content:center;
}
body.theme-white .home-gallery .tile img{
  width:100% !important;
  height:100% !important;
    object-fit:contain !important;
  aspect-ratio:auto !important;
  background: var(--bg) !important;
}

/* IMPORTANT: override base selector `.home-gallery img` (which uses object-fit:cover)
   to ensure White Now grid never crops previews. */
body.theme-white .home-gallery img{
  width:100% !important;
  height:100% !important;
  display:block;
  object-fit:contain !important;
  aspect-ratio:auto !important;
  background: var(--bg) !important;
}


/* Portfolio / Series frames: white background, sharp corners */
body.theme-white .card,
body.theme-white .tile,
body.theme-white .frame,
body.theme-white .carousel-frame{
  border-radius: 0 !important;
}
body.theme-white .card,
body.theme-white .tile{
  background: var(--bg) !important;
}
body.theme-white .frame{
  background: var(--bg) !important;
}
body.theme-white .carousel-frame{
  background: var(--bg) !important;
}
body.theme-white .carousel-frame img{
  background: var(--bg) !important;
  border-radius: 0 !important;
}

/* Lightbox: white field, no visible border, sharp corners */
body.theme-white .lightbox{
  background: var(--bg) !important;
}
body.theme-white .lightbox img{
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.theme-white .lightbox-close{
  background: var(--bg) !important;
  border: 1px solid #D8D8D3 !important;
  color: var(--fg) !important;
}


/* Lightbox centering (iOS safe-area) */
body.theme-white .lightbox{
  padding-left: env(safe-area-inset-left) !important;
  padding-right: env(safe-area-inset-right) !important;
  box-sizing: border-box;
}
body.theme-white .lightbox-inner{
  padding-left: calc(var(--pad) + env(safe-area-inset-left)) !important;
  padding-right: calc(var(--pad) + env(safe-area-inset-right)) !important;
  box-sizing: border-box;
}
body.theme-white .lightbox img{
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Contact form: subtle underline lines */
body.theme-white input,
body.theme-white textarea{
  background: transparent !important;
  color: var(--fg) !important;
  border: 0 !important;
  border-bottom: 1px solid #D8D8D3 !important;
  border-radius: 0 !important;
}
body.theme-white input:focus,
body.theme-white textarea:focus{
  outline: none;
  border-bottom: 1px solid #B8B8B3 !important;
}


/* White desktop scale — subtle (no changes on mobile) */
@media (min-width: 901px){
  body.theme-white .nav{ font-size:15px; }
  body.theme-white .lang{ font-size:14px; }
  body.theme-white .footer-left, body.theme-white .footer-right{ font-size:13px; }
  body.theme-white .home-name{ font-size:17px; }
  body.theme-white .home-line{ font-size:21px; }
  body.theme-white .nav-toggle{ font-size:20px; }
  body.theme-white .lightbox-close{ font-size:26px; }
  body.theme-white .footer svg{ width:20px; height:20px; }
}

/* --- White v2 fixes — 20260211v22 (lightbox centering) --- */
body.theme-white .lightbox{
  background: var(--bg) !important;
  /* add symmetrical horizontal padding so centering is consistent */
  padding: 72px var(--pad) 48px !important;
}
body.theme-white .lightbox-inner{
  max-width:none !important;
  width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
body.theme-white .lightbox img{
  margin:0 !important;
  border-color: var(--bg) !important; /* invisible */
  border-radius: 0 !important;
  background: var(--bg) !important;
  /* hard-center and compensate iOS safe areas */
  max-width: calc(100vw - (2 * var(--pad)) - env(safe-area-inset-left) - env(safe-area-inset-right)) !important;
}
body.theme-white .lightbox-close{
  color: var(--fg) !important;
  border-color: #D8D8D3 !important;
  background: rgba(255,255,255,0.75) !important;
}



body.theme-white .lightbox-meta{
  width:100% !important;
  text-align:center !important;
}
