/* v1.4.18 — revert-stable mobile + TikTok side icons; hide titles; clamp logo */
:root { --ob-bg:#000; --ob-fg:#fff; --ob-muted:#9aa0a6; --ob-desktop-width: 720px; }
html, body { margin:0; padding:0; background:#000; color:#fff; }
body.ob-swipe-mode { overflow:hidden; }

/* Kill any theme titles on swipe pages (extra-strong) */
.ob-swipe-mode .entry-title, .ob-swipe-mode .page-title, .ob-swipe-mode .wp-block-post-title,
.ob-swipe-mode h1.entry-title, .ob-swipe-mode h1.page-title { display:none!important; }

/* Shell */
.ob-swipe-shell { position:fixed; inset:0; width:100%; height:100svh; overflow:hidden; background:#000; z-index:99999;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial; }

/* Hide headers/footers across builders */
.ob-swipe-mode .site-header, .ob-swipe-mode header.site-header,
.ob-swipe-mode .site-footer, .ob-swipe-mode footer.site-footer,
.ob-swipe-mode .wp-block-template-part, .ob-swipe-mode .wp-site-blocks>header, .ob-swipe-mode .wp-site-blocks>footer,
.ob-swipe-mode .elementor-location-header, .ob-swipe-mode .elementor-location-footer,
.ob-swipe-mode #masthead, .ob-swipe-mode #colophon, .ob-swipe-mode .header, .ob-swipe-mode .footer { display:none!important; }

/* Logo */
.ob-swipe-logo { position:fixed; top:8px; left:50%; transform:translateX(-50%); z-index:200; pointer-events:none; }
.ob-swipe-logo img { max-height:40px; width:auto; display:block; filter:drop-shadow(0 2px 8px rgba(0,0,0,.6)); }
@media (max-width:768px){ .ob-swipe-logo img{ max-height:24px; } }

/* Container */
.ob-swipe-container { position:relative; height:100%; width:100%; overflow-y:auto; overflow-x:hidden;
  scroll-snap-type:y mandatory; scroll-behavior:smooth; -webkit-overflow-scrolling:touch; touch-action:pan-y; }
.ob-swipe-item { position:relative; height:100%; width:100%; scroll-snap-align:start; display:grid; place-items:center; padding:0!important; box-sizing:border-box; }

/* Card — mobile defaults modeled after your stable build */
.model-card { position:relative; background:#000; border-radius:12px; overflow:hidden; width:min(92vw,430px); aspect-ratio:9/16; border:1px solid rgba(255,255,255,.08); }
.model-card-image, .model-card-video { width:100%; height:100%; object-fit:cover; display:block; background:#000; }
.model-card-video { outline:none; }

/* Side icons */
.ob-actions{ position:absolute; right:12px; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; gap:16px; z-index:6; align-items:center; }
.ob-action-profile{ all:unset; position:relative; width:64px; height:64px; border-radius:999px; display:grid; place-items:center; cursor:pointer; }
.ob-action-profile .ob-profile-img{ position:relative; width:100%; height:100%; border-radius:999px; border:3px solid #fff; overflow:hidden; box-shadow:0 6px 18px rgba(0,0,0,.35); }
.ob-action-profile .ob-profile-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.ob-action-profile .ob-plus{ position:absolute; bottom:-4px; left:50%; transform:translateX(-50%); background:#ff2d55; color:#fff; width:28px; height:28px; border-radius:999px; display:grid; place-items:center; font-weight:800; line-height:1; font-size:18px; box-shadow:0 6px 18px rgba(0,0,0,.35); }

.model-card-heart{ font-size:36px; color:#fff; text-shadow: 0 3px 10px rgba(0,0,0,.5); cursor:pointer; user-select:none; }
.model-card-heart.active{ color:#ff2d55; }

/* Overlay */
.model-card-overlay { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:14px; color:#fff; }
.model-card-bottom { display:flex; gap:10px; align-items:flex-end; }
.model-card-name { margin:0; font-weight:700; font-size:16px; text-shadow:0 2px 4px rgba(0,0,0,.6); }
.model-card-price { margin-left:auto; background:rgba(255,120,255,.95); color:#000; padding:6px 12px; border-radius:20px; font-weight:700; font-size:14px; }
.model-card-verified { font-size:12px; opacity:.95; background:rgba(255,255,255,.15); padding:4px 8px; border-radius:8px; }
.ob-card-link { position:absolute; inset:0; z-index:5; }
.model-card-caption { position:relative; z-index:6; margin-top:10px; font-size:14px; line-height:1.35; color:#f5f5f5; text-shadow:0 1px 2px rgba(0,0,0,.5); max-width:92%;
  max-height:3.6em; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.model-card-caption.expanded { max-height:none; -webkit-line-clamp:unset; }

/* Full-bleed mobile */
@media (max-width:768px){
  .ob-mobile-full .model-card { width:100vw!important; height:100svh!important; height:100dvh!important; aspect-ratio:auto!important; border:0!important; border-radius:0!important; }
  .ob-mobile-full .model-card-overlay{ padding:16px; }
  /* Show side icons on mobile but smaller */
  .ob-actions{ right:10px; gap:12px; }
  .ob-action-profile{ width:48px; height:48px; }
  .ob-action-profile .ob-plus{ width:22px; height:22px; font-size:14px; bottom:-6px; }
  .model-card-heart{ font-size:28px; }
}

/* Admin bar */
@media (min-width:783px){ .admin-bar .ob-swipe-shell{ top:32px; height:calc(100svh - 32px); } }

/* Desktop Juicy */
@media (min-width:1024px){
  body.ob-juicy-desktop .ob-swipe-container{ padding-top:56px; }
  body.ob-juicy-desktop .model-card{
    width: var(--ob-desktop-width, 720px) !important;
    max-width: 78vw !important;
    height: calc(100vh - 100px) !important;
    aspect-ratio: auto !important;
    border-radius: 14px !important;
    border: 0 !important;
    box-shadow: 0 12px 40px rgba(0,0,0,.35);
  }
  body.ob-juicy-desktop .model-card-overlay{
    background: linear-gradient(transparent 56%, rgba(0,0,0,.92) 100%);
    padding: 20px 18px 22px;
  }
  body.ob-juicy-desktop .model-card-name{ font-size:20px; }
  body.ob-juicy-desktop .model-card-price{ font-size:15px; padding:7px 14px; }
}

.ob-like-number{font-size:16px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6);font-weight:700}
