/**
 * RAVENZ: 記事フッター「シェアする」「○○をフォローする」
 * 両方とも枠・背景なしの同じトーン（見出しは控えめグレー、ボタンは flex）。
 */

/* シェア・フォロー共通: パネル装飾なし */
body.single .article-footer .sns-share,
body.single .entry-footer .sns-share,
body.page .article-footer .sns-share,
body.page .entry-footer .sns-share,
body.single .article-footer .sns-follow,
body.single .entry-footer .sns-follow,
body.page .article-footer .sns-follow,
body.page .entry-footer .sns-follow {
  box-sizing: border-box;
  margin: 0.85rem 0 !important;
  padding: 0 !important;
  max-width: 100%;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* 見出し「シェアする」「○○をフォローする」— 同じデザイン */
body.single .article-footer .sns-share > :first-child:not(ul):not(.sns-share-buttons),
body.single .entry-footer .sns-share > :first-child:not(ul):not(.sns-share-buttons),
body.page .article-footer .sns-share > :first-child:not(ul):not(.sns-share-buttons),
body.single .article-footer .sns-follow > :first-child:not(ul):not(.sns-follow-buttons),
body.single .entry-footer .sns-follow > :first-child:not(ul):not(.sns-follow-buttons),
body.page .article-footer .sns-follow > :first-child:not(ul):not(.sns-follow-buttons),
body.single .article-footer .sns-share-message,
body.single .entry-footer .sns-share-message,
body.page .article-footer .sns-share-message,
body.single .article-footer .sns-follow-message,
body.single .entry-footer .sns-follow-message,
body.page .article-footer .sns-follow-message {
  margin: 0 0 0.5rem !important;
  padding: 0 !important;
  border-left: none !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  color: rgba(0, 0, 0, 0.58) !important;
  line-height: 1.4 !important;
}

/* ボタン行 */
body.single .article-footer .sns-share-buttons,
body.single .entry-footer .sns-share-buttons,
body.single .article-footer .sns-follow-buttons,
body.single .entry-footer .sns-follow-buttons,
body.page .article-footer .sns-share-buttons,
body.page .entry-footer .sns-follow-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.5rem 0.65rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100%;
}

body.single .article-footer .sns-share-buttons li,
body.single .entry-footer .sns-share-buttons li,
body.single .article-footer .sns-follow-buttons li,
body.single .entry-footer .sns-follow-buttons li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
}

/* 各 SNS ボタンリンク */
body.single .article-footer .sns-share-buttons a,
body.single .entry-footer .sns-share-buttons a,
body.single .article-footer .sns-follow-buttons a,
body.single .entry-footer .sns-follow-buttons a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px;
  min-width: 44px;
  padding: 0.35rem 0.5rem !important;
  border-radius: 10px !important;
  transition:
    transform 0.15s ease,
    box-shadow 0.15s ease,
    filter 0.15s ease;
  box-sizing: border-box;
}

body.single .article-footer .sns-share-buttons a:hover,
body.single .entry-footer .sns-share-buttons a:hover,
body.single .article-footer .sns-follow-buttons a:hover,
body.single .entry-footer .sns-follow-buttons a:hover,
body.single .article-footer .sns-share-buttons a:focus-visible,
body.single .entry-footer .sns-follow-buttons a:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(233, 30, 99, 0.2);
  filter: brightness(1.03);
}

/* キャプション（ボタン下テキスト） */
body.single .article-footer .sns-share-buttons .button-caption,
body.single .entry-footer .sns-share-buttons .button-caption,
body.single .article-footer .sns-follow-buttons .button-caption,
body.single .entry-footer .sns-follow-buttons .button-caption {
  font-size: 0.7rem !important;
  margin-top: 0.2rem !important;
  opacity: 0.88;
}

/* フォローをシェアの直下 */
body.single .article-footer .sns-share + .sns-follow,
body.single .entry-footer .sns-share + .sns-follow {
  margin-top: 0.5rem !important;
}

/* DMM 記事: タイトル直後のコンパクトシェア */
.ravenz-dmm-single .ravenz-dmm-after-title-meta .sns-share,
.ravenz-dmm-single .ravenz-dmm-date-sns-row .sns-share {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}

.ravenz-dmm-single .ravenz-dmm-after-title-meta .sns-share > :first-child:not(ul):not(.sns-share-buttons),
.ravenz-dmm-single .ravenz-dmm-date-sns-row .sns-share > :first-child:not(ul):not(.sns-share-buttons) {
  display: none !important;
}

.ravenz-dmm-single .ravenz-dmm-after-title-meta .sns-share-buttons,
.ravenz-dmm-single .ravenz-dmm-date-sns-row .sns-share-buttons {
  gap: 0.35rem 0.45rem !important;
}

.ravenz-dmm-single .ravenz-dmm-after-title-meta .sns-share-buttons a,
.ravenz-dmm-single .ravenz-dmm-date-sns-row .sns-share-buttons a {
  min-height: 38px;
  min-width: 38px;
  border-radius: 8px !important;
}

@media (max-width: 480px) {
  body.single .article-footer .sns-share-buttons,
  body.single .entry-footer .sns-share-buttons,
  body.single .article-footer .sns-follow-buttons,
  body.single .entry-footer .sns-follow-buttons {
    gap: 0.45rem 0.5rem !important;
  }
}
