/*
  Staff list (BLAZE icon-content inspired)
  - 画像を「上」ではなく「左」に置き、テキストを右側へ。
  - 役職（青）→ 名前（太字）→ 説明文 の順。
  - 罫線で区切る 2カラム前提の見た目（スクリーンショット相当）。
  - 既存テーマへの影響を避けるため、.sls-staff--blaze 配下にスコープ。
*/

.sls-staff--blaze{
  /* 参照先があっても崩れないように最低限の変数を用意 */
  --sls-staff-border: #dddddd;
  /* 役職色はデフォルトで本文色（= currentColor） */
  --sls-staff-role-color: currentColor;
  --sls-staff-text: #000000;
  --sls-staff-bg: #ffffff;

  /* サイズは固定値ではなく可変（レスポンシブ前提） */
  --sls-staff-photo-size: 160px;
  --sls-staff-pad: 48px;
  --sls-staff-gap: 40px;
  --sls-staff-name-size: 32px;
}

/* grid */
.sls-staff--blaze .sls-staff-grid{
  display:grid;
  grid-template-columns: repeat(var(--sls-staff-cols, 2), minmax(0, 1fr));
  width:100%;
  border:1px solid var(--sls-staff-border);
  background: var(--sls-staff-bg);
}

/*
  仕様：2カラムで件数が奇数のときは、右側を“空白”のまま残す。
  （BLAZEの見え方に合わせる／1件だけのとき右半分が空くのも正）
*/

/* card */
.sls-staff--blaze .sls-staff-card{
  color:inherit;
  text-decoration:none;
  border-top:1px solid var(--sls-staff-border);
  border-left:1px solid var(--sls-staff-border);
  margin:-1px 0 0 -1px; /* 二重罫線を避ける */
  background:transparent;
}

.sls-staff--blaze .sls-staff-card.is-link{ transition: background-color .25s ease; }
@media (any-hover:hover){
  .sls-staff--blaze .sls-staff-card.is-link:hover{ background:#f2f2f2; }
}

.sls-staff--blaze .sls-staff-card__inner{
  display:flex;
  align-items:flex-start;
  gap:var(--sls-staff-gap);
  padding:var(--sls-staff-pad);
}

/* media (circle) */
.sls-staff--blaze .sls-staff-card__media{
  width:var(--sls-staff-photo-size);
  height:var(--sls-staff-photo-size);
  flex:0 0 var(--sls-staff-photo-size);
  max-width:var(--sls-staff-photo-size);
  border-radius:9999px;
  overflow:hidden;
  background:#f2f2f2;
}

.sls-staff--blaze .sls-staff-card__img{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  display:block;
}

.sls-staff--blaze .sls-staff-card__placeholder{
  width:100%;
  height:100%;
  background:#e9e9e9;
}

/* body */
.sls-staff--blaze .sls-staff-card__body{
  min-width:0;
  flex:1 1 auto;
  color: var(--sls-staff-text);
  display:flex;
  flex-direction:column;
}

.sls-staff--blaze .sls-staff-card__role{
  font-size:16px;
  line-height:1.6;
  color: var(--sls-staff-role-color, currentColor);
  margin:0 0 18px;
  letter-spacing: .02em;
  min-height:1.6em;
}

.sls-staff--blaze .sls-staff-card__role.is-empty{
  visibility:hidden;
}

.sls-staff--blaze .sls-staff-card__name{
  font-size:var(--sls-staff-name-size);
  line-height:1.25;
  font-weight:700;
  margin:0;
  word-break:break-word;
}

.sls-staff--blaze .sls-staff-card__desc{
  margin:56px 0 0;
  font-size:16px;
  line-height:2.35;
  color: var(--sls-staff-text);
  white-space:normal;
  word-break:break-word;
}

.sls-staff--blaze .sls-staff-card__desc br{
  display:block;
  content:'';
}

/* responsive */
@media (max-width: 991px){
  .sls-staff--blaze .sls-staff-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .sls-staff--blaze{ --sls-staff-photo-size: 140px; --sls-staff-pad: 32px; --sls-staff-gap: 28px; --sls-staff-name-size: 28px; }
  .sls-staff--blaze .sls-staff-card__desc{ margin-top:36px; }
}

@media (max-width: 767px){
  .sls-staff--blaze .sls-staff-grid{ grid-template-columns: 1fr; }
  .sls-staff--blaze{ --sls-staff-photo-size: 104px; --sls-staff-pad: 22px; --sls-staff-gap: 16px; --sls-staff-name-size: 22px; }
  .sls-staff--blaze .sls-staff-card__role{ margin-bottom:12px; font-size:14px; }
  .sls-staff--blaze .sls-staff-card__desc{ margin-top:22px; font-size:14px; line-height:2.1; }
}

/* さらに狭い端末は写真を小さめにしてテキスト優先 */
@media (max-width: 420px){
  .sls-staff--blaze{ --sls-staff-photo-size: 88px; }
}

/* ----------------------------------------------------------------------
   Staff archive layout: remove SOLARIS sidebar separator
   - SOLARISは #main_contents:after でメイン/サイドの区切り線を描画する。
   - staffアーカイブではサイドバーを使わない前提のため、区切り線とサイド領域を無効化し、メインをフル幅にする。
---------------------------------------------------------------------- */

body.post-type-archive-staff #main_contents:after{ display:none; }
body.post-type-archive-staff #side_col{ display:none; }
body.post-type-archive-staff #main_col{ width:100%; margin:0; }

/* アーカイブ上部のリード文（wp_editor想定） */
body.post-type-archive-staff .sls-staff-archive-lead p{ margin:0 0 0.9em; }
body.post-type-archive-staff .sls-staff-archive-lead p:last-child{ margin-bottom:0; }

