/* Only Latinas — full-bleed photos. Neon and glass stay on controls and text, never as a frame around the picture.
   Tiles do not use a blur layer: the home grid dropped that because iOS collapsed while scrolling (style.css, 31/10). */
.olhome{margin:14px 0 0}
.olhome a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font-weight:700;font-size:.9rem;color:#f5eefc;text-decoration:none;background:#12081c;border:1px solid rgba(232,121,249,.55);box-shadow:0 0 18px rgba(192,38,211,.25)}
.olentry{margin:8px 0 12px}
.olentry a{border-color:rgba(232,121,249,.7);color:#f5eefc;background:#12081c}
#view.ol{padding:0 0 calc(96px + env(safe-area-inset-bottom));max-width:none;background:#07040e}
.olsec{background:#07040e;color:#f6eefe}
.lp .olsec{margin:22px -18px 8px;width:auto}
.olbar{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 10px;background:#07040e;border-bottom:1px solid rgba(168,85,247,.35)}
.olbar label,.olbar .ollangs{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:650;color:#e9d5ff}
.olbar select,.olchip,.ollive{font:inherit;color:#f6eefe;background:#161022;border:1px solid rgba(232,121,249,.45);border-radius:999px;padding:7px 12px}
.olbar select{max-width:100%}
.olchip{cursor:pointer}
.olchip.on,.ollive.on{background:linear-gradient(90deg,#7c3aed,#c026d3);border-color:transparent;color:#fff}
.olchip b,.ollive b,.olchip small{font-weight:700;color:#f0abfc}
.olchip.on b,.olchip.on small,.ollive.on b{color:#fff}
.olchip:disabled{opacity:.35}
.olgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.olcard{position:relative;display:block;width:100%;aspect-ratio:3/4;padding:0;margin:0;border:0;border-radius:0;background:#111;overflow:hidden;box-shadow:none;color:#fff}
.olopen{position:absolute;inset:0;padding:0;border:0;border-radius:0;background:none;cursor:pointer}
.olcard img,.olcard video{width:100%;height:100%;object-fit:cover;display:block;border:0;border-radius:0;box-shadow:none}
.olcard video{position:absolute;inset:0}
.olshade{position:absolute;left:0;right:0;bottom:0;padding:28px 10px 46px;background:linear-gradient(transparent,rgba(0,0,0,.82));text-align:left;pointer-events:none}
.olshade b,.olshade small{display:block;font-size:.95rem;text-shadow:0 1px 8px #000}
.olshade small{font-size:.72rem;font-weight:650;letter-spacing:.04em;color:#fbcfe8}
.olmeta{position:absolute;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:flex-start;gap:6px;pointer-events:none}
.olbadge{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:3px 8px;border-radius:999px;background:rgba(0,0,0,.55);font-size:.68rem;font-weight:700;line-height:1.25;text-align:left;color:#f6eefe}
.olbadge i{width:7px;height:7px;border-radius:50%;background:#71717a}
.olbadge.live i{background:#22c55e;box-shadow:0 0 8px #22c55e;animation:olpulse 1.6s infinite}
@keyframes olpulse{70%{box-shadow:0 0 0 6px transparent}}
.olprice{margin-top:2px;padding:0;border-radius:0;background:none;font-size:.72rem;font-weight:700;color:#fff}
.olcta{position:absolute;right:8px;bottom:8px;z-index:1;border:0;border-radius:999px;padding:7px 10px;font:inherit;font-size:.75rem;font-weight:800;color:#fff;background:linear-gradient(90deg,#7c3aed,#ff2d87);cursor:pointer}
.olempty{margin:0;padding:28px 16px 36px;text-align:center;color:#e9d5ff}
.olempty button,.olempty a{margin:8px 6px 0}
.olcard:focus-visible,.olcta:focus-visible,.olbar button:focus-visible,.olbar select:focus-visible,.olfs button:focus-visible{outline:2px solid #e879f9;outline-offset:2px}
.olfs{position:fixed;inset:0;z-index:40;background:#000;color:#fff;touch-action:pan-y}
.olfs .olshot,.olfs img,.olfs video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;border-radius:0;box-shadow:none;background:#000}
.olfs img.kb{animation:olkb 18s ease-in-out infinite alternate}
@keyframes olkb{from{transform:scale(1)}to{transform:scale(1.045)}}
.oltop{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;gap:8px;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;z-index:2}
.oltop button,.olnav button{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.45);color:#fff;font-size:1.2rem}
.olhud{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:36px 16px calc(18px + env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(0,0,0,.82));display:flex;flex-direction:column;gap:8px}
.olhud h2{margin:0;font-size:1.6rem}
.olhud .row{display:flex;flex-wrap:wrap;gap:8px}
.olhud .olgo{border:0;border-radius:999px;padding:14px 18px;font:inherit;font-weight:800;color:#fff;background:linear-gradient(90deg,#7c3aed,#ff2d87);cursor:pointer}
.olhud a{color:#fbcfe8;font-weight:700}
.olnav{position:absolute;top:50%;left:0;right:0;display:flex;justify-content:space-between;padding:0 8px;transform:translateY(-50%);z-index:2;pointer-events:none}
.olnav button{pointer-events:auto}
@media(min-width:800px){.olgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1200px){.olgrid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.olfs img.kb,.olbadge.live i{animation:none}}
