/*
Theme Name: fukayomi-bl Child
Template: swell
*/

/* =========================================================
   ふかよみBL 子テーマ
   Palette: Deep Plum #7A2B5E × Warm Rose #D4527A × Cream #FEF9F7
   Font: Shippori Mincho (見出し) × Noto Sans JP (本文)
   Concept: 「この作家、全部読んだ。だから言える。」
   ========================================================= */

@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;700;800&family=Noto+Sans+JP:wght@400;500;700&display=swap");

/* ── カラー変数 ── */
:root {
  --color_main:    #7A2B5E;
  --color_accent:  #D4527A;
  --color_bg:      #FEF9F7;
  --color_text:    #2C1818;
  --color_border:  #EDD6E3;
  --color_card_bg: #FDF2F7;
  --color_link:    #9B3870;
  --color_link_hover: #D4527A;
}

/* SWELL 深部まで上書き */
body,
.l-header,
.l-inner,
.l-footer,
.l-content,
.l-container,
.c-pageTitle,
.p-globalNav {
  --color_main:   #7A2B5E;
  --color_accent: #D4527A;
  --color_bg:     #FEF9F7;
  --color_text:   #2C1818;
}

/* ── ベース ── */
body {
  background-color: var(--color_bg);
  color: var(--color_text);
  font-family: "Noto Sans JP", sans-serif;
}
a { color: var(--color_link); }
a:hover { color: var(--color_link_hover); text-decoration: none; }

/* ── 見出しフォント ── */
h1, h2, h3, .entry-title, .p-blogCard__title {
  font-family: "Shippori Mincho", serif;
}

/* ── ヘッダー ── */
.l-header {
  background-color: #fff;
  border-bottom: 3px solid var(--color_main);
}
.l-header__logo { color: var(--color_main); }

/* ── グローバルナビ ── */
.p-globalNav__item > a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: .875rem;
  color: var(--color_text) !important;
}
.p-globalNav__item > a:hover,
.p-globalNav__item.-current > a {
  color: var(--color_main) !important;
}

/* ── H2 見出し ── */
.l-article h2 {
  background-color: var(--color_main);
  color: #fff;
  padding: .6em 1em;
  border-radius: 4px;
  font-size: 1.25rem;
  -webkit-text-fill-color: #fff;
  fill-color: #fff;
}
/* H3 見出し */
.l-article h3 {
  border-left: 4px solid var(--color_accent);
  padding-left: .75em;
  color: var(--color_main);
  font-size: 1.1rem;
  -webkit-text-fill-color: var(--color_main);
  fill-color: var(--color_main);
}

/* ── CTAボタン 全強制上書き ── */
.wp-block-button__link,
.swell-block-btn-wrap a,
.c-btn,
.c-btn--primary,
.wp-block-button a {
  background-color: var(--color_accent) !important;
  border-color:     var(--color_accent) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  border-radius: 6px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.wp-block-button__link:hover,
.swell-block-btn-wrap a:hover,
.c-btn:hover { opacity: .85; }
.wp-block-button__link.has-black-background-color {
  background-color: var(--color_accent) !important;
  border-color:     var(--color_accent) !important;
}

/* ── 記事カード ── */
.c-postCard,
.p-postList__item {
  background-color: #fff;
  border: 1px solid var(--color_border);
  border-radius: 8px;
  transition: box-shadow .2s;
}
.c-postCard:hover,
.p-postList__item:hover { box-shadow: 0 4px 12px rgba(122,43,94,.12); }

/* ── サイドバー ウィジェット ── */
.widget { background: #fff; border: 1px solid var(--color_border); border-radius: 8px; padding: 1rem; }
.widget-title {
  font-family: "Shippori Mincho", serif;
  color: var(--color_main);
  font-size: 1rem;
  border-bottom: 2px solid var(--color_main);
  padding-bottom: .4em;
  margin-bottom: .8em;
}

/* ── PR表記ボックス ── */
.bl-pr-box {
  background: #fff9c4;
  border-left: 4px solid #f5a623;
  padding: .6em 1em;
  font-size: .8rem;
  margin: 0 0 1.2em;
  border-radius: 0 4px 4px 0;
}

/* ── フォーカスインジケータ（アクセシビリティ） ── */
*:focus-visible { outline: 3px solid var(--color_main); outline-offset: 2px; }

/* ── モバイル最適化（375px） ── */
@media (max-width: 599px) {
  .l-article h2 { font-size: 1.1rem; padding: .5em .8em; }
  .l-article h3 { font-size: 1rem; }
  .c-postCard__title { font-size: .9rem; }
  .l-header__logo img { max-height: 40px; }
  .p-postList.-col3,
  .p-postList.-col4 { grid-template-columns: 1fr; }
}

/* ── メインビジュアル非表示（固定トップページ用） ── */
.home .p-mainVisual { display: none; }

/* ── テキストロゴ fallback ── */
.l-header__logo .logo-text {
  font-family: "Shippori Mincho", serif;
  font-weight: 800;
  font-size: 1.5rem;
  color: var(--color_main);
  letter-spacing: .05em;
}
