/* PHSPB Random Live Room modal — homepage-only, client-side and cache-safe. */
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions {
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:11px !important;
  margin:18px 0 0 !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-btn {
  min-height:46px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  padding:0 20px !important;
  border-radius:15px !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.015em !important;
  text-decoration:none !important;
  transition:transform .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-explore {
  color:#fff !important;
  border-color:rgba(255,127,216,.74) !important;
  background:linear-gradient(135deg,#ff4f9e 0%,#b84cf5 100%) !important;
  box-shadow:0 14px 28px rgba(183,61,229,.26), inset 0 1px 0 rgba(255,255,255,.26) !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-trigger {
  color:rgba(255,244,255,.94) !important;
  border-color:rgba(220,153,255,.40) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.035)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-btn:hover {
  transform:translateY(-2px) !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-explore:hover {
  box-shadow:0 18px 32px rgba(231,67,194,.34), inset 0 1px 0 rgba(255,255,255,.30) !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-trigger:hover {
  border-color:rgba(255,116,215,.68) !important;
  background:linear-gradient(135deg,rgba(211,80,255,.18),rgba(255,92,186,.10)) !important;
}
html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-btn:active { transform:scale(.975) !important; }
html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"].is-phspb-hero-wow-visible [data-phspb-hero-stage="actions"] { transition-delay:210ms !important; }

html.phspb-random-modal-open,
body.phspb-random-modal-open { overflow:hidden !important; }
.phspb-random-modal-host {
  position:fixed;
  inset:0;
  z-index:2147482000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}
.phspb-random-modal-host.is-open { opacity:1; pointer-events:auto; }
.phspb-random-modal-backdrop {
  position:absolute;
  inset:0;
  background:rgba(7,3,17,.78);
}
@supports ((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))) {
  @media (min-width:768px) {
    .phspb-random-modal-backdrop { -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); }
  }
}
.phspb-random-modal {
  position:relative;
  z-index:1;
  width:min(760px,calc(100vw - 48px));
  max-height:min(680px,calc(100vh - 48px));
  overflow:auto;
  border:1px solid rgba(223,137,255,.52);
  border-radius:24px;
  background:
    radial-gradient(circle at 11% 7%,rgba(231,86,214,.18),transparent 32%),
    linear-gradient(145deg,rgba(29,12,53,.985),rgba(13,6,27,.99));
  box-shadow:0 32px 90px rgba(0,0,0,.56),0 0 0 1px rgba(255,255,255,.065) inset,0 0 46px rgba(201,81,255,.18);
  color:#fff;
  opacity:0;
  transform:translateY(10px) scale(.985);
  transition:opacity .24s ease,transform .28s cubic-bezier(.2,.85,.25,1);
}
.phspb-random-modal-host.is-open .phspb-random-modal { opacity:1; transform:translateY(0) scale(1); }
.phspb-random-modal-close {
  position:absolute;
  top:16px;
  right:16px;
  z-index:2;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.15);
  border-radius:12px;
  color:rgba(255,246,255,.94);
  background:rgba(255,255,255,.055);
  cursor:pointer;
  font:700 25px/1 system-ui,sans-serif;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.phspb-random-modal-close:hover { background:rgba(255,92,186,.16); border-color:rgba(255,136,217,.58); transform:scale(1.04); }
.phspb-random-modal-inner { padding:29px 30px 24px; }
.phspb-random-modal-eyebrow {
  display:block;
  margin:0 44px 6px 0;
  color:#f275bf;
  font-size:11px;
  font-weight:800;
  letter-spacing:.09em;
}
.phspb-random-modal-title {
  margin:0 44px 22px 0;
  color:#fff;
  font-size:clamp(26px,3vw,34px);
  line-height:1.04;
  letter-spacing:-.04em;
}
.phspb-random-modal-content {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,.88fr);
  gap:24px;
  align-items:center;
  transition:opacity .14s ease,transform .14s ease;
}
.phspb-random-modal.is-switching .phspb-random-modal-content { opacity:.25; transform:translateX(-8px); }
.phspb-random-preview {
  position:relative;
  aspect-ratio:4 / 5;
  overflow:hidden;
  border:1px solid rgba(244,189,255,.30);
  border-radius:18px;
  background:#150a25;
  box-shadow:0 18px 45px rgba(0,0,0,.30);
}
.phspb-random-preview img { width:100%; height:100%; object-fit:cover; display:block; }
.phspb-random-preview::after { content:""; position:absolute; inset:52% 0 0; background:linear-gradient(180deg,rgba(12,4,25,0),rgba(12,4,25,.72)); pointer-events:none; }
.phspb-random-pick-badge {
  position:absolute;
  z-index:1;
  right:10px;
  bottom:10px;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:999px;
  color:rgba(255,248,255,.92);
  background:rgba(19,7,39,.72);
  font-size:10px;
  font-weight:800;
  letter-spacing:.065em;
}
.phspb-random-live-badge {
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:28px;
  padding:0 10px;
  border:1px solid rgba(255,99,179,.36);
  border-radius:999px;
  color:#ff8ac5;
  background:rgba(255,65,146,.10);
  font-size:11px;
  font-weight:800;
  letter-spacing:.055em;
}
.phspb-random-live-dot { width:8px; height:8px; border-radius:50%; background:#ff5d9c; box-shadow:0 0 0 4px rgba(255,93,156,.12),0 0 13px rgba(255,93,156,.45); animation:phspbRandomLiveDot 2.6s ease-in-out infinite; }
.phspb-random-room-name { margin:17px 0 8px; color:#fff; font-size:clamp(26px,3.15vw,38px); line-height:1; letter-spacing:-.045em; overflow-wrap:anywhere; }
.phspb-random-room-meta { margin:0; color:rgba(240,222,255,.73); font-size:13px; line-height:1.45; }
.phspb-random-actions { display:grid; gap:10px; margin-top:25px; }
.phspb-random-actions .phspb-random-watch,
.phspb-random-actions .phspb-random-next {
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0 16px;
  border-radius:13px;
  font-size:13px;
  font-weight:850;
  letter-spacing:.02em;
  text-decoration:none;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.phspb-random-actions .phspb-random-watch { color:#fff; border:1px solid rgba(255,144,222,.70); background:linear-gradient(135deg,#f748a5,#9e44ed); box-shadow:0 16px 28px rgba(215,55,183,.26),inset 0 1px 0 rgba(255,255,255,.24); }
.phspb-random-actions .phspb-random-next { color:rgba(255,244,255,.95); border:1px solid rgba(218,147,255,.48); background:rgba(255,255,255,.045); }
.phspb-random-actions .phspb-random-watch:hover,.phspb-random-actions .phspb-random-next:hover { transform:translateY(-2px); }
.phspb-random-actions .phspb-random-next:hover { border-color:rgba(255,116,215,.72); background:rgba(211,80,255,.12); }
.phspb-random-actions .phspb-random-next.is-turning span { display:inline-block; animation:phspbRandomTurn .34s ease both; }
.phspb-random-helper { display:flex; align-items:center; justify-content:center; gap:7px; margin:20px 0 0; color:rgba(232,211,250,.64); font-size:12px; line-height:1.35; text-align:center; }
.phspb-random-helper-icon { color:#ce8cff; font-size:16px; }
.phspb-random-followers-heart { display:inline-block; color:#ff79b7; margin-right:5px; }
.phspb-random-modal:not(.is-switching) .phspb-random-followers-heart { animation:phspbRandomHeart .45s cubic-bezier(.2,.85,.28,1.45) both; }
@keyframes phspbRandomLiveDot {0%,100%{opacity:.58;transform:scale(.92)}50%{opacity:1;transform:scale(1.05)}}
@keyframes phspbRandomTurn {from{transform:rotate(0)}to{transform:rotate(180deg)}}
@keyframes phspbRandomHeart {0%{transform:scale(.88)}50%{transform:scale(1.10)}72%{transform:scale(.96)}100%{transform:scale(1)}}
@media (max-width:767px) {
  .phspb-random-modal-host { align-items:flex-end; padding:0; }
  .phspb-random-modal { width:100%; max-height:92dvh; border-radius:22px 22px 0 0; }
  .phspb-random-modal-inner { padding:24px 20px calc(20px + env(safe-area-inset-bottom)); }
  .phspb-random-modal-close { top:12px; right:14px; }
  .phspb-random-modal-title { margin-bottom:18px; font-size:27px; }
  .phspb-random-modal-content { display:block; }
  .phspb-random-preview { aspect-ratio:16 / 10; }
  .phspb-random-room-name { margin-top:16px; font-size:29px; }
  .phspb-random-actions { margin-top:19px; }
  .phspb-random-actions .phspb-random-watch,.phspb-random-actions .phspb-random-next { width:100%; }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions { flex-direction:column !important; align-items:stretch !important; gap:9px !important; margin-top:15px !important; }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-btn { width:100% !important; }
}
@media (prefers-reduced-motion:reduce) {
  .phspb-random-modal-host,.phspb-random-modal,.phspb-random-modal-content,.phspb-random-live-dot,.phspb-random-followers-heart,.phspb-random-actions .phspb-random-next.is-turning span { animation:none !important; transition:none !important; }
}


/* PHSPB 3.13.82 — phone-first hero compaction:
   leave the Random action, remove Explore and the metric dock only on phones. */
@media (max-width:767px) {
  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-explore,
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-stats[data-phspb-hero-layer="metrics"] {
    display:none !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions {
    display:block !important;
    margin:18px 0 0 !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-trigger {
    width:100% !important;
    min-height:48px !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] {
    min-height:352px !important;
    padding:22px 16px 20px !important;
    background-position:74% 47% !important;
  }
}
@media (max-width:390px) {
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] {
    min-height:336px !important;
  }
}


/* PHSPB 3.13.83 — mobile hero simplification:
   keep only Random button, replace headline with one-line compact copy,
   and hide the top chips/badges on phones. */
@media (max-width:767px) {
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] .phspb-home-hero-meta {
    display:none !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] h2[data-phspb-hero-stage="headline"] {
    max-width:100% !important;
    margin:0 0 14px !important;
    min-height:30px !important;
    font-size:0 !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] h2[data-phspb-hero-stage="headline"]::after {
    content:"Free live sex chat";
    display:block;
    font-size:clamp(22px,6.8vw,28px);
    line-height:1.02;
    letter-spacing:-0.045em;
    font-weight:900;
    color:#fff7ff;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] {
    min-height:304px !important;
    padding:18px 16px 18px !important;
    background-position:75% 43% !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions {
    margin-top:12px !important;
  }

  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions .phspb-home-random-trigger {
    min-height:46px !important;
    padding:12px 16px !important;
    border-radius:16px !important;
    font-size:16px !important;
  }
}
@media (max-width:390px) {
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] h2[data-phspb-hero-stage="headline"]::after {
    font-size:clamp(20px,6.4vw,24px);
  }
}


/* PHSPB 3.13.84 — explicit mobile hero title.
   Do not use a pseudo element for critical copy: cached/mobile CSS can suppress it. */
.phspb-home-hero-title-mobile { display:none; }
@media (max-width:767px) {
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] h2[data-phspb-hero-stage="headline"] {
    display:block !important;
    max-width:100% !important;
    margin:0 0 14px !important;
    min-height:0 !important;
    font-size:clamp(22px,6.8vw,28px) !important;
    line-height:1.02 !important;
    letter-spacing:-0.045em !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    color:#fff7ff !important;
  }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] h2[data-phspb-hero-stage="headline"]::after { content:none !important; display:none !important; }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-title-desktop { display:none !important; }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-title-mobile { display:block !important; white-space:nowrap !important; }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] {
    min-height:252px !important;
    padding:22px 16px 18px !important;
    background-position:75% 45% !important;
  }
  html body.home .phspb-home-live-cams-shortcode .phspb-home-random-actions { margin-top:14px !important; }
}
@media (max-width:390px) {
  html body.home .phspb-home-live-cams-shortcode .phspb-home-hero-card[data-phspb-home-hero-wow="1"] h2[data-phspb-hero-stage="headline"] { font-size:clamp(20px,6.4vw,24px) !important; }
}
