/* ui_common.css (final) */
/* List pages + small global fixes */

:root{
  --page-max: 1100px;
}

body{
  background:#eef5ff;
}

.container{
  max-width:var(--page-max);
  margin:0 auto;
  padding:24px 16px;
}

.section{
  background:#fff;
  border:1px solid #cfe2ff;
  border-radius:18px;
  overflow:hidden;
}

.actress-row{
  display:flex;
  gap:18px;
  padding:18px;
  border-top:1px solid #e7eefc;
}

.actress-row:first-child{
  border-top:none;
}

.thumb-box{
  width:140px;
  display:flex;
  align-items:center;   /* vertical center inside thumb box */
  justify-content:center;
}

.thumb-box img{
  width:128px;
  height:128px;
  object-fit:cover;
  border-radius:14px;
  display:block;
}

/* ===== Detail page fix =====
   data/*.txt (ASP widget) often outputs: <img ... align="left">
   That breaks centering even if the wrapper is text-align:center.
   Force those images back to centered. */
img[align="left"],
img[align="right"]{
  float:none !important;
  display:block !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* If the widget wraps the image in an <a>, keep it centered too */
a:has(> img[align="left"]),
a:has(> img[align="right"]){
  display:block;
  text-align:center;
}

/* Safety: old HTML might also inline float on the image */
img[style*="float:left"],
img[style*="float: left"],
img[style*="float:right"],
img[style*="float: right"]{
  float:none !important;
  display:block !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Mobile: make the list rows readable */
@media (max-width: 600px){
  .container{ padding:18px 12px; }
  .actress-row{
    flex-direction:column;
    gap:12px;
    padding:16px;
  }
  .thumb-box{
    width:100%;
    justify-content:flex-start;
  }
}

/* === Guest smartphone wrapper (opt-in) =========================
   - Max width 450px (smartphone-first)
   - Does NOT affect any page unless you add class="ui450wrap"
   ============================================================ */
.ui450wrap{
  max-width:450px;
  margin:0 auto;
  padding:24px 12px;
  box-sizing:border-box;
}
/* Slightly tighter padding on very small screens */
@media (max-width:360px){
  .ui450wrap{ padding:18px 10px; }
}

/* === Actress name pill (opt-in) ================================
   Used only when markup uses .actress-pill (no global impact).
   ============================================================ */
.actress-pill-wrap{
  text-align:center;
  margin-top:10px;
}
.actress-pill{
  display:inline-block;
  padding:6px 16px;
  border-radius:999px;
  border:1px solid rgba(80,120,255,0.35);
  background:rgba(80,120,255,0.08);
  color:#0b2a55;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}
