/* サイト全体の上書き。catnose流の「1色＋無彩色・引き算」に寄せる。
   テーマ（SANGO）がページ内に埋め込んだ配色（緑・紫・水色・ピンク・クリーム）を、紺1色とその薄い色、灰色にまとめる。
   本文・URL・HTMLの骨格は変えない。tools/slim-pages.mjs が全ページの </head> 直前に読み込ませる */
:root {
  --brand: #123751;
  --brand-link: #1f5582;
  --brand-tint: #eef2f6;
  --brand-tint-strong: #dfe7ef;
  --ink: #252525;
  --ink-soft: #5c6670;
  --line: #dde1e6;
  --surface: #ffffff;
  --page: #f3f4f6;
  --focus: #1a73e8;
}

body { background-color: var(--page); color: var(--ink); }

/* 本文は16px以上（テーマの既定は15.84px） */
.entry-content { font-size: max(1em, 16px); line-height: 1.85; }

/* リンクは紺。本文中は下線で見分ける */
a, a:visited { color: var(--brand-link); }
.entry-content p a, .entry-content li a { text-decoration: underline; text-underline-offset: 0.2em; }
a:focus-visible, button:focus-visible, input:focus-visible, summary:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }

/* テーマの配色クラスを1色にまとめる */
.main-c, .has-sango-main-color, .accent-c, .has-sango-accent-color { color: var(--brand) !important; }
.main-bc, .has-sango-main-background-color, .accent-bc, .has-sango-accent-background-color { background-color: var(--brand) !important; color: #ffffff; }
.pastel-c, .has-sango-pastel-color { color: var(--brand-tint-strong) !important; }
.pastel-bc, .has-sango-pastel-background-color, #inner-content .pastel-bc { background-color: var(--brand-tint) !important; }
.main-bdr, #inner-content .main-bdr, #toc_container, #ez-toc-container, .entry-content h3, .li-mainbdr ul, .li-mainbdr ol, .li-accentbdr ul, .li-accentbdr ol { border-color: var(--brand) !important; }
#toc_container .toc_title, #footer_menu .raised, .pagination a, .pagination span, .entry-content blockquote:before, .main-c-before li:before, .main-c-b:before { color: var(--brand) !important; }
.searchform__submit, #toc_container .toc_title:before, .cat-name, .pre_tag > span, .pagination .current, .post-page-numbers.current, .withtag_list > span, .main-bc-before li:before, .search-title i, .acc-bc-before li:before { background: var(--brand) !important; color: #ffffff !important; }
.pagination a:hover, .li-pastelbc ul, .li-pastelbc ol { background: var(--brand-tint) !important; }

/* 既存のボタン（例:「〇〇を聴いてみる」）は紺の地に白文字。影は付けない */
.entry-content .btn, .btn.raised { background-color: var(--brand) !important; color: #ffffff !important; box-shadow: none !important; border-radius: 3px; }
.entry-content .btn:hover { background-color: var(--brand-link) !important; }

/* サイドバー見出し・メモ枠・タブ・トップへ戻るボタン */
.widgettitle, .sidebar .wp-block-group h2 { color: var(--brand) !important; background-color: var(--brand-tint) !important; }
.entry-content .memo { background: var(--brand-tint) !important; color: var(--ink) !important; }
.entry-content .memo_ttl { color: var(--brand) !important; }
.totop { background: var(--brand) !important; }
.header-info a { background: var(--brand) !important; }
.fixed-menu .current-menu-item a, .fixed-menu ul li a.active { color: var(--brand) !important; }
.post-tab > div.tab-active { background: var(--brand) !important; color: #ffffff !important; }
.rank { background: var(--brand) !important; }

/* SNSボタンは各社の色をやめ、無彩色にそろえる（引き算） */
.sns-btn__item a, .sns-btn__item a i, .sns-btn__item .share_txt { color: var(--ink-soft) !important; }
.sns-btn__item a { background: var(--surface) !important; }
.sns-btn__title { color: var(--ink-soft) !important; }

/* 本文の大見出し（テーマ既定は水緑のリボン型で、白文字とのコントラストも不足）を紺地に */
.entry-content h2 { background: var(--brand) !important; color: #ffffff !important; box-shadow: none !important; }
.entry-content h2::before, .entry-content h2::after { display: none !important; }

/* メモ枠のアイコン（テーマ既定はオレンジ）も紺に */
.entry-content .memo_ttl::before { background: var(--brand) !important; color: #ffffff !important; }
