/* =============================================================
   components/actress-grid.css
   女優特集一覧ページ（actress-list.php）
   ============================================================= */

/* ─── グリッド全体 ─── */
.actress-grid {
  padding-bottom: 20px;
}

/* ─── 各行（あ行/か行/さ行 等） ─── */
.actress-grid__row {
  /* no border here — divider is rendered via ::before on non-first rows */
}

/* セクション区切り: 100px 中央揃え（section-header__line 同仕様）、上下 10px */
.actress-grid__row + .actress-grid__row::before {
  content: '';
  display: block;
  width: 100px;
  height: 1px;
  background: var(--color-border);
  margin: 10px auto;
}

/* ─── 行見出し（あ行/か行 等） ─── */
.actress-grid__row-heading {
  font-family: var(--font-ui);
  font-size: var(--text-section-sub);  /* 18px */
  font-weight: var(--fw-medium);
  color: var(--color-black);
  text-align: center;
  padding: 24px 0 16px;
}

/* ─── 3列グリッド ─── */
.actress-grid__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: var(--actress-col-gap);  /* 17px */
  row-gap: var(--actress-row-gap);     /* 30px */
  padding: 0 var(--content-pad) 38px;
}

/* ─── 女優カード ─── */
.actress-grid__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: inherit;
  gap: 5px;
}

/* ─── 円形写真 ─── */
.actress-grid__photo {
  width: var(--actress-photo-size);   /* 100px */
  height: var(--actress-photo-size);  /* 100px */
  border-radius: 50%;
  object-fit: cover;
  object-position: top;
  display: block;
  background: #E8E8E8;
  flex-shrink: 0;
}

/* ─── 写真なしプレースホルダ ─── */
.actress-grid__no-photo {
  width: var(--actress-photo-size);
  height: var(--actress-photo-size);
  border-radius: 50%;
  background: #E8E8E8;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #BBBBBB;
  font-size: 36px;
  line-height: 1;
  flex-shrink: 0;
}

/* ─── ふりがな ─── */
.actress-grid__ruby {
  font-family: var(--font-ui);
  font-size: var(--text-badge-rect);  /* 10px */
  font-weight: var(--fw-regular);
  color: var(--color-text-muted);
  line-height: 1.4;
  word-break: break-all;
}

/* ─── 女優名 ─── */
.actress-grid__name {
  font-family: var(--font-ui);
  font-size: var(--text-actress-name);  /* 14px */
  font-weight: var(--fw-medium);
  color: var(--color-text);
  line-height: 1.4;
  word-break: break-all;
}

/* ─── 登録女優なし状態 ─── */
.actress-grid__empty {
  padding: 60px var(--content-pad);
  text-align: center;
  color: var(--color-text-sub);
  font-size: var(--text-grid-title);  /* 14px */
}

/* ─── トップに戻るボタン中央揃え ─── */
.detail-back-wrap {
  display: flex;
  justify-content: center;
  padding: 20px 0 50px;
}
