@charset "UTF-8";

/* ==========================================================
   community-portal.css
   コミュニティサイト用CSS。
   配置場所：子テーマ/assets/css/community-portal.css
   （functions.phpで読み込む）
   ========================================================== */

/* フォント読み込み（Google Fonts）
   ・ベース：Noto Sans JP → SWELLのカスタマイザー側で設定済みのため、
     このCSSファイルでは読み込み・指定ともに行わない。
     （wpForo本体側に競合するfont-family指定は無いことを確認済み）
   ・見出し／ラベル：Zen Maru Gothic → このファイルで読み込む
   旧 Archivo Black は英字しか対応しておらず、日本語は結局
   フォールバック（游ゴシック等）に落ちていたため置き換え。
----------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Zen+Maru+Gothic:wght@500;700;900&display=swap');

/* 見出し・ラベルのフォント（ヘッダーメニュー・wpForoメニューは、英字ラベルのみのため
   元のArchivo Blackのままにする。下の方で別途指定）
----------------------------------------------- */
.hero-en,
.hero-jp,
.c-widget__title {
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;
}

.c-gnav a,
.c-spnav a {
  /* TOP/LOGIN/REGISTERなど英字だけのラベルなので、元のArchivo Blackのまま */
  font-family: 'Archivo Black', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif !important;
}

.c-gnav a {
  font-weight: 700;
  letter-spacing: 0.03em;
}

/* ヒーローエリア（portal.cssと同じ）
----------------------------------------------- */
#hero {
  background: linear-gradient(135deg, #fbf4d8 0%, #efe3b3 50%, #efbfb3 100%);
  padding: 70px 0;
  text-align: center;
}

/* フルブリード：サイドバー非表示のページ */
#body_wrap.-sidebar-off #hero {
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

/* フルブリード：960px未満はサイドバーonでも同じ扱い */
@media not all and (min-width: 960px) {
  #body_wrap.-sidebar-on #hero {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}

#hero-inner {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding-left: 5%;
  padding-right: 5%;
  box-sizing: border-box;
}

.hero-en {
  font-size: 13px;
  letter-spacing: 4px;
  color: #fff;
  font-weight: 700;
  margin-bottom: 10px;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}

.hero-jp {
  font-size: 34px;
  font-weight: 900;
  color: #fff;
  letter-spacing: 2px;
  margin-bottom: 12px;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}

.hero-desc {
  font-size: 14px;
  color: #fff;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}

/* ヒーローのCTAボタン
   ・メイン：サイト全体のアクセント色（くすみローズ）で塗りつぶし
   ・サブ：枠線のみ。ただしヒーロー背景がグラデーション（クリーム〜ピーチ）で
   　　　　場所によって濃淡が変わるため、ローズの枠線ではなく、他の見出し
   　　　　文字と同じ「白＋text-shadow」にして、どこに乗っても読めるようにしている
----------------------------------------------- */
.hero-cta {
  display: flex;
  gap: 16px;
  margin-top: 24px;
  flex-wrap: wrap;
  justify-content: center;
}

.hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  box-sizing: border-box;
  padding: 14px 32px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.hero-btn:hover {
  opacity: 0.85;
}

.hero-btn-primary {
  background: var(--bb-accent);
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.hero-btn-outline {
  background: transparent;
  border: 2px solid #fff;
  color: #fff;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}

@media not all and (min-width: 960px) {
  #hero {
    padding: 48px 0;
  }

  .hero-jp {
    font-size: 24px;
  }

  .hero-en {
    font-size: 11px;
    letter-spacing: 2px;
  }

  .hero-cta {
    margin-top: 18px;
  }

  .hero-btn {
    padding: 12px 24px;
    font-size: 14px;
  }
}

/* ==========================================================
   以下、bbPress 用のスタイル（現在未使用・無効化）
   もう bbPress 側は見ない方針のため、無効化しています。

   注意：内部に /* */ コメントが多数含まれるため、
   単純な /* 全体コメントアウト */ では、最初の */ で
   途中解除されてしまいます。そのため、絶対に一致しない
   @media 条件で全体を包み、実質的に無効化しています。
   （中のコードは、削除せず、そのまま残しています）
   ========================================================== */
@media (min-width: 99999px) {

/* bbPress 基本（PC）
----------------------------------------------- */
#bbpress-forums {
  font-size: 16px;
  line-height: 1.7;
}

#bbpress-forums ul.bbp-forums,
#bbpress-forums ul.bbp-topics,
#bbpress-forums ul.bbp-replies,
#bbpress-forums div.bbp-reply-content,
#bbpress-forums div.bbp-topic-content,
#bbpress-forums p,
#bbpress-forums li {
  font-size: 16px;
}

#bbpress-forums .bbp-forum-title,
#bbpress-forums .bbp-topic-title a {
  font-size: 18px;
}

#bbpress-forums .bbp-forum-content,
#bbpress-forums .bbp-topic-meta,
#bbpress-forums .bbp-meta {
  font-size: 14px;
}

/* bbPress スマホ・タブレット（画面幅960px以下）
----------------------------------------------- */
@media (max-width: 960px) {
  #bbpress-forums {
    font-size: 14px;
    line-height: 1.6;
  }

  #bbpress-forums ul.bbp-forums,
  #bbpress-forums ul.bbp-topics,
  #bbpress-forums ul.bbp-replies,
  #bbpress-forums div.bbp-reply-content,
  #bbpress-forums div.bbp-topic-content,
  #bbpress-forums p,
  #bbpress-forums li {
    font-size: 14px;
  }

  #bbpress-forums .bbp-forum-title,
  #bbpress-forums .bbp-topic-title a {
    font-size: 16px;
  }

  #bbpress-forums .bbp-forum-content,
  #bbpress-forums .bbp-topic-meta,
  #bbpress-forums .bbp-meta {
    font-size: 12px;
  }

  #bbpress-forums li.bbp-header {
    font-size: 12px;
  }
}

/* カテゴリ下の掲示板を縦に並べる
----------------------------------------------- */
#bbpress-forums .bbp-forums-list {
  margin: 8px 0 0 0 !important;
  padding: 0 !important;
  border-left: none !important;
  list-style: none !important;
}

#bbpress-forums .bbp-forums-list li,
#bbpress-forums .bbp-forums-list li.css-sep {
  display: block !important;
  position: relative !important;
  margin: 0 !important;
  padding: 4px 0 4px 1.2em !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

#bbpress-forums .bbp-forums-list li::before {
  content: "・" !important;
  position: absolute !important;
  left: 0 !important;
}

#bbpress-forums .bbp-forums-list li::after,
#bbpress-forums .bbp-forums-list li.css-sep::after {
  content: none !important;
}

/* カテゴリ下の掲示板リンク：テーマの青色をやめて、通常の文字色にする */
#bbpress-forums .bbp-forums-list a.bbp-forum-link {
  color: var(--bb-text);
  text-decoration: none;
}

#bbpress-forums .bbp-forums-list a.bbp-forum-link:hover {
  color: var(--bb-accent);
}

/* 匿名投稿フォームの「ウェブサイト」欄を隠す（任意）
----------------------------------------------- */
#bbpress-forums label[for="bbp_anonymous_website"],
#bbpress-forums #bbp_anonymous_website,
#bbpress-forums p:has(#bbp_anonymous_website) {
  display: none !important;
}

/* ==========================================================
   bbPress モダンデザイン
   色は変数で管理（ここを変えれば全体の色が変わる）
   ・--bb-soft   : ヒーロー・common.cssのクリーム色に合わせた薄い背景
   ・--bb-muted  : common.cssのメニュー文字色（#797979）
   ・--bb-accent : ホバー時などに使うアクセント色（好みで変更可）
   ========================================================== */
#bbpress-forums {
  --bb-text: #333;
  --bb-muted: #797979;
  --bb-line: #efe9d3;
  --bb-soft: #fbf4d8;
  --bb-accent: #d4788b;
  color: var(--bb-text);
}

/* リスト全体をカード化
----------------------------------------------- */
#bbpress-forums ul.bbp-forums,
#bbpress-forums ul.bbp-topics,
#bbpress-forums ul.bbp-replies,
#bbpress-forums ul.bbp-lead-topic,
#bbpress-forums ul.bbp-search-results {
  border: 1px solid var(--bb-line) !important;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06);
  margin-bottom: 28px;
}

/* 見出し行（フォーラム／トピック／投稿…の行） */
#bbpress-forums li.bbp-header {
  background: var(--bb-soft) !important;
  border: none !important;
  padding: 12px 20px !important;
  font-size: 12px !important;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--bb-muted);
}

/* 下の空のグレー帯は非表示にする */
#bbpress-forums li.bbp-footer {
  display: none !important;
}

/* 各行
----------------------------------------------- */
#bbpress-forums li.bbp-body ul.forum,
#bbpress-forums li.bbp-body ul.topic {
  border-top: 1px solid var(--bb-line) !important;
  padding: 16px 20px !important;
  background: #fff !important;
  transition: background-color 0.2s ease;
}

#bbpress-forums li.bbp-body ul.forum:first-child,
#bbpress-forums li.bbp-body ul.topic:first-child {
  border-top: none !important;
}

#bbpress-forums li.bbp-body ul.forum:hover,
#bbpress-forums li.bbp-body ul.topic:hover {
  background: #fffbef !important;
}

/* 固定表示のトピック */
#bbpress-forums li.bbp-body ul.sticky,
#bbpress-forums li.bbp-body ul.super-sticky {
  background: #fff9e6 !important;
}

/* タイトル */
#bbpress-forums a.bbp-forum-title,
#bbpress-forums a.bbp-topic-permalink {
  font-weight: 700;
  color: var(--bb-text);
  text-decoration: none;
}

#bbpress-forums a.bbp-forum-title:hover,
#bbpress-forums a.bbp-topic-permalink:hover {
  color: var(--bb-accent);
}

/* 件数・最新の投稿 */
#bbpress-forums li.bbp-forum-topic-count,
#bbpress-forums li.bbp-forum-reply-count,
#bbpress-forums li.bbp-topic-voice-count,
#bbpress-forums li.bbp-topic-reply-count {
  color: var(--bb-muted);
  font-weight: 700;
}

#bbpress-forums li.bbp-forum-freshness a,
#bbpress-forums li.bbp-topic-freshness a {
  color: var(--bb-muted);
  text-decoration: none;
}

#bbpress-forums li.bbp-forum-freshness a:hover,
#bbpress-forums li.bbp-topic-freshness a:hover {
  color: var(--bb-accent);
}

/* アバターを丸く */
#bbpress-forums img.avatar {
  border-radius: 50%;
  border: none;
}

/* パンくず・お知らせ
----------------------------------------------- */
#bbpress-forums div.bbp-breadcrumb {
  font-size: 13px;
  color: var(--bb-muted);
  margin-bottom: 16px;
}

#bbpress-forums div.bbp-breadcrumb a {
  color: var(--bb-muted);
  text-decoration: none;
}

#bbpress-forums div.bbp-breadcrumb a:hover {
  color: var(--bb-accent);
}

#bbpress-forums div.bbp-template-notice,
#bbpress-forums div.indicator-hint {
  background: var(--bb-soft) !important;
  border: none !important;
  border-radius: 12px;
  padding: 12px 16px !important;
  color: var(--bb-text);
}

#bbpress-forums div.bbp-template-notice p {
  margin: 0;
}

#bbpress-forums div.bbp-template-notice ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#bbpress-forums div.bbp-template-notice li {
  margin: 0;
  padding: 2px 0;
  list-style: none;
}

#bbpress-forums div.bbp-template-notice.error {
  background: #fdecec !important;
}

/* 返信・トピック本文まわり
----------------------------------------------- */
#bbpress-forums div.bbp-reply-header,
#bbpress-forums div.bbp-topic-header {
  background: #fdfaf0 !important;
  border-top: 1px solid var(--bb-line) !important;
  font-size: 12px !important;
  color: var(--bb-muted);
}

#bbpress-forums div.odd,
#bbpress-forums div.even {
  background-color: #fff !important;
}

#bbpress-forums div.bbp-reply-content,
#bbpress-forums div.bbp-topic-content {
  line-height: 1.9;
}

/* 投稿フォーム
----------------------------------------------- */
#bbpress-forums fieldset.bbp-form {
  border: 1px solid var(--bb-line) !important;
  border-radius: 16px;
  padding: 20px 24px !important;
  background: #fff;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06);
  margin-top: 28px;
}

#bbpress-forums fieldset.bbp-form legend {
  font-size: 16px;
  font-weight: 700;
  padding: 0 8px;
}

#bbpress-forums fieldset.bbp-form label {
  font-size: 13px;
  font-weight: 700;
  color: var(--bb-muted);
}

#bbpress-forums input[type="text"],
#bbpress-forums input[type="email"],
#bbpress-forums input[type="url"],
#bbpress-forums input[type="password"],
#bbpress-forums textarea,
#bbpress-forums select {
  border: 1px solid #e3dcc2 !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  background: #fff !important;
  box-shadow: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#bbpress-forums input[type="text"]:focus,
#bbpress-forums input[type="email"]:focus,
#bbpress-forums input[type="url"]:focus,
#bbpress-forums input[type="password"]:focus,
#bbpress-forums textarea:focus,
#bbpress-forums select:focus {
  outline: none;
  border-color: var(--bb-accent) !important;
  box-shadow: 0 0 0 3px rgba(212, 120, 139, 0.18);
}

/* 投稿フォームの詳細（匿名用の入力欄・Turnstile）
----------------------------------------------- */
/* 「あなたの情報」の入れ子fieldset：外側のカードの中で二重に見えないよう、控えめな囲みにする */
#bbpress-forums fieldset.bbp-form fieldset.bbp-form {
  margin: 0 0 20px;
  padding: 16px 20px !important;
  border: 1px solid var(--bb-line) !important;
  border-radius: 12px;
  background: #fdfaf0;
  box-shadow: none;
}

#bbpress-forums fieldset.bbp-form fieldset.bbp-form legend {
  font-size: 14px;
}

/* 各項目の間隔と入力欄の幅 */
#bbpress-forums fieldset.bbp-form p {
  margin: 0 0 16px;
}

#bbpress-forums fieldset.bbp-form input[type="text"] {
  width: 100%;
  max-width: 640px;
  box-sizing: border-box;
}

/* Cloudflare Turnstile：ウィジェット前後の余白を整える（直後の<br>は使わない） */
#bbpress-forums .cf-turnstile {
  margin: 16px 0 8px;
}

#bbpress-forums br.cf-turnstile-br {
  display: none;
}

/* 本文エディタ（クイックタグ付きテキストエリア）
----------------------------------------------- */
#bbpress-forums .wp-editor-container {
  border: 1px solid #e3dcc2 !important;
  border-radius: 10px;
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#bbpress-forums .wp-editor-container:focus-within {
  border-color: var(--bb-accent) !important;
  box-shadow: 0 0 0 3px rgba(212, 120, 139, 0.18);
}

#bbpress-forums .quicktags-toolbar {
  background: var(--bb-soft);
  border: none !important;
  border-bottom: 1px solid #e3dcc2 !important;
  padding: 6px;
}

#bbpress-forums .quicktags-toolbar input.ed_button {
  border: none !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--bb-text) !important;
  padding: 2px 10px !important;
  margin: 2px !important;
  cursor: pointer;
}

#bbpress-forums .quicktags-toolbar input.ed_button:hover {
  background: var(--bb-accent) !important;
  color: #fff !important;
}

/* エディタ内のテキストエリアは、外枠に任せて枠を消す */
#bbpress-forums textarea.wp-editor-area {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

#bbpress-forums textarea.wp-editor-area:focus {
  box-shadow: none !important;
}

/* 購読リンク */
#bbpress-forums a.subscription-toggle,
#bbpress-forums a.favorite-toggle {
  display: inline-block;
  padding: 4px 14px;
  border: 1px solid #e3dcc2;
  border-radius: 999px;
  font-size: 13px;
  color: var(--bb-muted);
  text-decoration: none;
}

#bbpress-forums a.subscription-toggle:hover,
#bbpress-forums a.favorite-toggle:hover {
  color: var(--bb-accent);
  border-color: var(--bb-accent);
}

/* ボタン */
#bbpress-forums .bbp-submit-wrapper .button,
#bbpress-forums button.submit,
#bbpress-forums input[type="submit"],
#bbpress-forums button[type="submit"] {
  background: var(--bb-text) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 10px 28px !important;
  font-weight: 700;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

#bbpress-forums .bbp-submit-wrapper .button:hover,
#bbpress-forums button.submit:hover,
#bbpress-forums input[type="submit"]:hover,
#bbpress-forums button[type="submit"]:hover {
  opacity: 0.8;
}

/* 返信・トピック本文の詳細（個別トピックのページ）
----------------------------------------------- */
/* 返信リストの見出し行（投稿者／投稿）：本文側の桁位置とずれないよう、左右は標準の8pxに戻す */
#bbpress-forums ul.bbp-replies li.bbp-header {
  padding: 12px 8px !important;
}

/* 日時・#番号・操作リンクの行 */
#bbpress-forums div.bbp-reply-header .bbp-meta {
  font-size: 13px;
}

#bbpress-forums div.bbp-reply-header a {
  color: var(--bb-muted);
  text-decoration: none;
}

#bbpress-forums div.bbp-reply-header a:hover {
  color: var(--bb-accent);
}

/* 投稿者欄 */
#bbpress-forums div.bbp-reply-author img.avatar {
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

#bbpress-forums div.bbp-reply-author a.bbp-author-link {
  text-decoration: none;
}

#bbpress-forums div.bbp-reply-author .bbp-author-name {
  display: block;
  margin-top: 6px;
  font-weight: 700;
  color: var(--bb-text);
}

#bbpress-forums div.bbp-reply-author .bbp-author-role {
  display: inline-block;
  margin-top: 4px;
  padding: 1px 10px;
  border-radius: 999px;
  background: var(--bb-soft);
  font-size: 11px;
  color: var(--bb-muted);
}

#bbpress-forums div.bbp-reply-author .bbp-reply-ip {
  margin-top: 4px;
  font-size: 11px;
  color: var(--bb-muted);
}

/* 購読・お気に入り：間の区切り文字「|」を見えなくして、リンクを並べる */
#bbpress-forums #subscription-toggle {
  font-size: 0;
}

#bbpress-forums #subscription-toggle,
#bbpress-forums #favorite-toggle {
  margin-right: 8px;
}

/* トピック一覧まわり
----------------------------------------------- */
/* 作成者・所属フォーラムなどの補足行 */
#bbpress-forums p.bbp-topic-meta {
  margin: 4px 0 0;
  color: var(--bb-muted);
}

#bbpress-forums p.bbp-topic-meta a {
  color: var(--bb-muted);
  text-decoration: none;
}

#bbpress-forums p.bbp-topic-meta a:hover {
  color: var(--bb-accent);
}

/* クローズ済みトピック：標準は文字が薄いグレーで読みにくいため、タイトルは通常色に戻す */
#bbpress-forums ul.status-closed,
#bbpress-forums ul.status-closed a {
  color: var(--bb-muted);
}

#bbpress-forums ul.status-closed a.bbp-topic-permalink {
  color: var(--bb-text);
}

/* 件数表示・検索フォーム */
#bbpress-forums .bbp-pagination-count {
  font-size: 13px;
  color: var(--bb-muted);
}

#bbpress-forums .bbp-search-form {
  margin-bottom: 16px;
}

/* ページ送り
----------------------------------------------- */
#bbpress-forums .bbp-pagination-links a,
#bbpress-forums .bbp-pagination-links span.current {
  display: inline-block;
  min-width: 32px;
  padding: 4px 10px;
  border-radius: 999px;
  text-align: center;
  font-size: 13px;
}

#bbpress-forums .bbp-pagination-links a.page-numbers {
  background: var(--bb-soft);
  border: none;
  color: var(--bb-text);
  text-decoration: none;
}

#bbpress-forums .bbp-pagination-links span.current {
  background: var(--bb-text);
  border: none;
  color: #fff;
}

/* スマホ・タブレット（画面幅960px以下）
----------------------------------------------- */
@media (max-width: 960px) {
  #bbpress-forums ul.bbp-forums,
  #bbpress-forums ul.bbp-topics,
  #bbpress-forums ul.bbp-replies,
  #bbpress-forums ul.bbp-lead-topic,
  #bbpress-forums ul.bbp-search-results {
    border-radius: 12px;
  }

  #bbpress-forums li.bbp-header {
    padding: 10px 14px !important;
  }

  #bbpress-forums li.bbp-body ul.forum,
  #bbpress-forums li.bbp-body ul.topic {
    padding: 12px 14px !important;
  }

  #bbpress-forums fieldset.bbp-form {
    padding: 16px !important;
  }
}

/* ==========================================================
   ログイン・新規登録・パスワード再発行フォーム
   （[bbp-login] [bbp-register] [bbp-lost-pass] のページ）
   これらのフォームは共通で .bbp-login-form が付く。
   #bbpress-forums の外に出力される可能性があるため、
   .bbp-login-form 単体で完結するように書いている。
   ========================================================== */
.bbp-login-form {
  --bb-text: #333;
  --bb-muted: #797979;
  --bb-line: #efe9d3;
  --bb-soft: #fbf4d8;
  --bb-accent: #d4788b;
  max-width: 480px;
  margin: 0 auto;
  color: var(--bb-text);
}

.bbp-login-form fieldset.bbp-form {
  margin: 0;
  padding: 28px 28px 24px;
  border: 1px solid var(--bb-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06);
}

.bbp-login-form fieldset.bbp-form legend {
  padding: 0 8px;
  font-size: 18px;
  font-weight: 700;
  color: var(--bb-text);
}

/* 注意書き */
.bbp-login-form .bbp-template-notice {
  margin-bottom: 20px;
  padding: 12px 16px;
  border: none;
  border-radius: 12px;
  background: var(--bb-soft);
  font-size: 13px;
  color: var(--bb-text);
}

.bbp-login-form .bbp-template-notice ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.bbp-login-form .bbp-template-notice li {
  margin: 0;
  padding: 2px 0;
  list-style: none;
}

/* 入力項目 */
.bbp-login-form .bbp-username,
.bbp-login-form .bbp-email,
.bbp-login-form .bbp-password {
  margin-bottom: 16px;
}

.bbp-login-form label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 700;
  color: var(--bb-muted);
}

/* 「ログイン状態を保存する」のチェックボックスは横並びのまま */
.bbp-login-form .bbp-remember-me {
  margin-bottom: 16px;
}

.bbp-login-form .bbp-remember-me label {
  display: inline;
  font-weight: 400;
}

.bbp-login-form input[type="text"],
.bbp-login-form input[type="email"],
.bbp-login-form input[type="password"] {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid #e3dcc2;
  border-radius: 10px;
  background: #fff;
  box-shadow: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.bbp-login-form input[type="text"]:focus,
.bbp-login-form input[type="email"]:focus,
.bbp-login-form input[type="password"]:focus {
  outline: none;
  border-color: var(--bb-accent);
  box-shadow: 0 0 0 3px rgba(212, 120, 139, 0.18);
}

/* Cloudflare Turnstile */
.bbp-login-form .cf-turnstile {
  margin: 16px 0 8px;
}

.bbp-login-form br.cf-turnstile-br {
  display: none;
}

/* 送信ボタン */
.bbp-login-form .bbp-submit-wrapper {
  margin-top: 8px;
}

.bbp-login-form button.submit {
  padding: 10px 28px;
  border: none;
  border-radius: 999px;
  background: var(--bb-text);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.bbp-login-form button.submit:hover {
  opacity: 0.8;
}

@media (max-width: 960px) {
  .bbp-login-form fieldset.bbp-form {
    padding: 20px 18px 18px;
  }
}

/* ウィジェット：bbPress専用の、リスト・リンクのスタイル（RECENT TOPICS / RECENT REPLIES / FORUMS）
   ※ .l-sidebar 自体のカード化ルールは、wpForoでも使うため、下（有効な範囲）に残しています。
----------------------------------------------- */
.l-sidebar .bbp-topics-widget,
.l-sidebar .bbp-replies-widget,
.l-sidebar .bbp-forums-widget {
  margin: 0;
  padding: 0;
  list-style: none;
}

.l-sidebar .bbp-topics-widget li,
.l-sidebar .bbp-replies-widget li,
.l-sidebar .bbp-forums-widget li {
  margin: 0;
  padding: 10px 0;
  border: none;
  border-bottom: 1px dashed var(--bb-line);
  list-style: none;
}

.l-sidebar .bbp-topics-widget li:last-child,
.l-sidebar .bbp-replies-widget li:last-child,
.l-sidebar .bbp-forums-widget li:last-child {
  border-bottom: none;
}

.l-sidebar .bbp-topics-widget li::before,
.l-sidebar .bbp-replies-widget li::before,
.l-sidebar .bbp-forums-widget li::before {
  content: none;
}

/* リンク */
.l-sidebar .bbp-topics-widget a,
.l-sidebar .bbp-replies-widget a,
.l-sidebar .bbp-forums-widget a {
  color: var(--bb-text);
  font-size: 14px;
  line-height: 1.6;
  text-decoration: none;
}

.l-sidebar .bbp-topics-widget a:hover,
.l-sidebar .bbp-replies-widget a:hover,
.l-sidebar .bbp-forums-widget a:hover {
  color: var(--bb-accent);
}

} /* ← @media (min-width: 99999px) ここまで。bbPress用スタイル、無効化ここまで */

/* ==========================================================
   サイドバー（wpForoでも使う、共通のカード化ルール）
   ここから下は、bbPress専用のクラス名ではないため、
   wpForoに切り替えた後も、そのまま有効にしています。
   ========================================================== */
.l-sidebar {
  --bb-text: #333;
  --bb-muted: #797979;
  --bb-line: #efe9d3;
  --bb-soft: #fbf4d8;
  --bb-accent: #d4788b;
}

/* ウィジェットをカード化（検索ウィジェットは除く）
   ※ウィジェット同士の間隔は、SWELL標準の #sidebar .c-widget+.c-widget { margin-top: 2.5em } に任せる */
.l-sidebar .c-widget:not(.widget_search) {
  padding: 18px 20px 12px;
  border: 1px solid var(--bb-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06);
}

/* タイトル（RECENT TOPICS など）は、SWELL標準のデザイン（カスタマイザー設定）をそのまま使う */

/* ==========================================================
   トップページの幅を、本ブログのトップページに合わせる
   （portal.cssの #content.l-container ／ .-sidebar-off #main_content.l-article と同じ内容）
   本ブログと同様、「サイドバー非表示」に設定したフロントページだけに絞っている。
   ※フロントページを示すクラスは .front-page ではなく .home（WordPress標準の body_class）。
   #body_wrap.home … という書き方は、portal.cssのコメントにあった実例と同じ形。
   ========================================================== */
#body_wrap.home #content.l-container {
  width: 100%;
  max-width: none;
  padding-left: 5%;
  padding-right: 5%;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

#body_wrap.home.-sidebar-off #main_content.l-article {
  max-width: 100%;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

/* ==========================================================
   wpForo デザイン調整 - KAWAII LAB. コミュニティ
   bbPress版の、色の使い方を、基本的になぞりつつ、
   フォーラムだけ --bb-accent を黄色(#C99A2E)に上書き（下記）。
   ・黄色(--bb-accent)は、ホバー時・フォーカス時だけ
   ・ボタンは、黒(--bb-text)+白文字、ホバーは、opacity
   ・クリーム(--bb-soft)は、見出し・フォームの背景（:rootのまま）
   ・全体を、白いカードで、囲む
   ・サイドバー(.l-sidebar)やそれ以外のページは、:root の
     くすみローズ(--bb-accent: #d4788b)のまま変更していない。
   wpForo本体のCSSは「#wpforo #wpforo-wrap:not(#_) ...」という、
   IDを2つ重ねた、強い指定を使っているため、同じ強さ＋
   !important で、確実に上書きする。
   ========================================================== */

:root {
  --bb-text: #333;
  --bb-muted: #797979;
  --bb-line: #efe9d3;
  --bb-soft: #fbf4d8;
  --bb-accent: #d4788b;
}

#wpforo #wpforo-wrap:not(#_) {
  /* フォーラムだけ、黄色基調のアクセントに上書き（:root や .l-sidebar には影響しない） */
  --bb-accent: #C99A2E;
  /* 薄め（ホバー時など、元は#659fbeだった箇所用） */
  --bb-accent-soft: #D9B65C;
  /* 濃いめ（ボタンのホバー時など、元は#0099ccだった箇所用） */
  --bb-accent-dark: #A6791C;
  color: var(--bb-text) !important;
  font-size: 13px;
  /* フォーラム内は、すべてZen Maru Gothicをベースフォントにする。
     !importantは付けない：コードブロック等、プラグイン本体側で
     意図的に等幅フォントを指定している箇所は、そちらを優先させる
     （下の個別上書きで、バッジ・タグ等は別途Zen Maru Gothicに揃えている） */
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;
}

/* wpForo本体(style.css)が、個別にArial/Verdana/等幅フォント等を指定していた、
   小さなバッジ・タグ・コードブロック類も、すべてZen Maru Gothicに統一する。
   （コードブロックの等幅フォントも例外にせず統一：投稿エディタの
   「ソースコード挿入」ボタンが非表示設定のため、実質ほぼ使われない機能のため） */
#wpforo #wpforo-wrap:not(#_) .wpf-bar-right .wpf-alerts-count,
#wpforo #wpforo-wrap:not(#_) span.wpf-new-button,
#wpforo #wpforo-wrap:not(#_) .wpf-tags tag,
#wpforo #wpforo-wrap:not(#_) .wpf-ai-chat-input,
#wpforo #wpforo-wrap:not(#_) .wpforo-post-code,
#wpforo #wpforo-wrap:not(#_) code {
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif !important;
}

/* ---------- 全体を、1枚の、白いカードに（bbPress版の、ul.bbp-forums 等と、同じ考え方） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpforo-content {
  background: #fdfdfd !important;
  border: 1px solid var(--bb-line) !important;
  border-radius: 16px !important;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-section {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
}

/* ---------- 上部メニュー ---------- */
#wpforo #wpforo-wrap:not(#_) #wpforo-menu {
  border-bottom: 1px solid var(--bb-line) !important;
  background: #fdfdfd !important;
}

#wpforo #wpforo-wrap:not(#_) #wpf-menu li a {
  /* フォーラム内は全てZen Maru Gothicにするため、ベース指定に合わせる（個別指定は不要） */
  font-size: 12px;
  letter-spacing: 0.08em;
  color: var(--bb-muted) !important;
}

#wpforo #wpforo-wrap:not(#_) #wpf-menu li.wpforo-active a,
#wpforo #wpforo-wrap:not(#_) #wpf-menu li a:hover {
  color: var(--bb-accent) !important;
}

/* ---------- パンくず ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb {
  font-size: 13px;
  color: var(--bb-muted) !important;
}

/* 背景色で、矢印の、形を、作る、仕組みは、やめる */
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div,
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div:hover,
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div.active {
  background: transparent !important;
  padding: 0 4px 0 4px !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div:after {
  display: none !important;
}

/* 代わりに、シンプルな「›」の、文字で、区切る */
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div:not(.wpf-root)::before {
  content: "›";
  color: var(--bb-line);
  margin-right: 8px;
  font-weight: 700;
}

/* 現在地(最後の項目)は、背景なし、文字色だけ、ピンクに */
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div.active {
  color: var(--bb-accent) !important;
  font-weight: 700;
}
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb div:hover {
  color: var(--bb-accent) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb a {
  color: var(--bb-muted) !important;
  text-decoration: none;
}
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb a:hover {
  color: var(--bb-accent) !important;
}

/* 「Forums」タブ、選択中の、グレーの背景に、丸みを追加 */
#wpforo #wpforo-wrap:not(#_) #wpforo-menu #wpf-menu li.wpforo-active,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu #wpf-menu li:hover {
  border-radius: 8px !important;
}

/* パンくずの、家アイコンの、箱にも、丸みを追加 */
#wpforo #wpforo-wrap:not(#_) .wpf-breadcrumb .wpf-root {
  border-radius: 8px !important;
  overflow: hidden;
}

/* ---------- カテゴリー見出し（bbPress版の、li.bbp-header と、同じ、クリーム色） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpforo-cat-panel {
  background: var(--bb-soft) !important;
  border-left: none !important;
  border-radius: 0 !important;
  padding: 12px 20px !important;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-category {
  background-color: transparent !important;
  border-bottom: 1px solid var(--bb-line) !important;
}

/* カテゴリーパネルと、トピック一覧の、間の、余白を、消す（wpForo本体が、margin-topを、付けていたため） */
#wpforo #wpforo-wrap:not(#_) .wpf-threads {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

#wpforo #wpforo-wrap:not(#_) .cat-name {
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  color: var(--bb-muted) !important;
}

#wpforo #wpforo-wrap:not(#_) .cat-icon i {
  color: var(--bb-muted) !important;
}

/* ---------- フォーラム一覧（カテゴリー内の、各フォーラム） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-forum-item {
  border-top: 1px solid var(--bb-line) !important;
  border-bottom: none !important;
  padding: 16px 20px !important;
  background: #fdfdfd !important;
  transition: background-color 0.2s ease !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-forum-item:hover {
  background: #fffbef !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-forum-item > a {
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;
  font-weight: 700;
  color: var(--bb-text) !important;
  transition: color 0.2s ease !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-forum-item > a:hover {
  color: var(--bb-accent) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-forum-item-stat {
  color: var(--bb-muted) !important;
  font-weight: 700;
}

/* ---------- トピック一覧（表） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-threads-head {
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif !important;
  background: var(--bb-soft) !important;
  border-bottom: none !important;
  padding: 12px 20px !important;
  font-size: 12px !important;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--bb-muted) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-thread {
  border-top: 1px solid var(--bb-line) !important;
  border-bottom: none !important;
  border-left: none !important;
  padding: 16px 20px !important;
  background: #fdfdfd !important;
  transition: background-color 0.2s ease !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-thread:hover {
  background: #fffbef !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-thread-title a {
  font-weight: 700;
  color: var(--bb-text) !important;
  text-decoration: none;
  transition: color 0.2s ease !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-thread-title a:hover {
  color: var(--bb-accent) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-thread-author-name,
#wpforo #wpforo-wrap:not(#_) .wpf-thread-author-name a {
  color: var(--bb-muted) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-thread-users-avatars img,
#wpforo #wpforo-wrap:not(#_) .wpf-author-avatar img {
  border-radius: 50% !important;
  border: none !important;
}

/* ---------- トピック詳細ページ ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-post-info-forum {
  color: var(--bb-muted) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-post-head .wpf-post-head-top {
  background: var(--bb-soft) !important;
  border-left: none !important;
  border-radius: 0 !important;
  border-bottom: 1px solid var(--bb-line) !important;
  padding: 12px 20px !important;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box .wpf-tstat svg {
  fill: var(--bb-muted) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box span {
  color: var(--bb-muted) !important;
  font-weight: 700;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-post {
  border-top: 1px solid var(--bb-line) !important;
  background: #fdfdfd !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-author-name a,
#wpforo #wpforo-wrap:not(#_) .wpf-author-name .is_guest {
  color: var(--bb-text) !important;
  font-weight: 700;
}

#wpforo #wpforo-wrap:not(#_) .wpf-post-starter {
  color: var(--bb-muted) !important;
  border-bottom: 1px solid var(--bb-line) !important;
  font-size: 11px;
}

#wpforo #wpforo-wrap:not(#_) .wpf-post-date {
  color: var(--bb-muted) !important;
  font-size: 12px;
}

/* wpForo本体（wpfl-4レイアウト）の .wpf-right は、上・左の余白しか
   指定されておらず、右側の余白が無いため、日付や本文が、カードの
   右端に、ぴったりくっついて見えていた。右側の余白を、ここで補う */
#wpforo #wpforo-wrap:not(#_) .wpf-right {
  padding-right: 16px !important;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-post-content {
  color: var(--bb-text) !important;
  line-height: 1.9;
}
/* 本文中のpタグ自体に、固定のline-heightが指定されていたため、直接、上書き */
#wpforo #wpforo-wrap:not(#_) .wpforo-post-content p {
  color: var(--bb-text) !important;
  line-height: 1.9 !important;
}

#wpforo #wpforo-wrap:not(#_) .wpforo-post-content img.wpforo-default-image-attachment {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  border: 1px solid var(--bb-line);
  margin-top: 8px;
}

/* ---------- 返信・投稿フォーム（bbPress版の、fieldset.bbp-form と、同じ） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-form-wrapper,
#wpforo #wpforo-wrap:not(#_) .wpforo-post-form {
  border-top: 1px solid var(--bb-line) !important;
  background: #fdfdfd !important;
  padding: 20px 24px !important;
  margin: 0 !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-reply-form-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--bb-text) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap input[type="text"],
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap input[type="email"],
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap input[type="password"],
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap textarea,
#wpforo #wpforo-wrap:not(#_) .wpf-post-guest-fields input[type="text"],
#wpforo #wpforo-wrap:not(#_) .wpf-post-guest-name input,
#wpforo #wpforo-wrap:not(#_) .wpf-post-guest-email input {
  border: 1px solid #e3dcc2 !important;
  border-radius: 999px !important;
  padding: 10px 16px !important;
  background: #fdfdfd !important;
}
/* ユーザー名・メール欄などは、左にアイコン(.wpf-field-icon, left:12px)が重なるため、
   左側だけ余分に空ける（wpForo本体も元々は padding-left:34px 前後を指定していた） */
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap .wpf-field-icon ~ input[type="text"],
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap .wpf-field-icon ~ input[type="email"],
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap .wpf-field-icon ~ input[type="password"] {
  padding-left: 38px !important;
}
/* パスワード欄は、右側にも「表示/非表示」の目のアイコン(.wpf-show-password)があるため、
   右側にも余分に空けて、入力文字とアイコンが重ならないようにする */
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap input[type="password"] {
  padding-right: 38px !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap input:focus,
#wpforo #wpforo-wrap:not(#_) .wpf-field-wrap textarea:focus {
  outline: none;
  border-color: var(--bb-accent) !important;
  box-shadow: 0 0 0 3px rgba(201, 154, 46, 0.18) !important;
}

/* ---------- ボタン（bbPress版と、同じ：黒＋白文字、ホバーはopacity） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-button,
#wpforo #wpforo-wrap:not(#_) input[type="submit"].wpf-button,
#wpforo #wpforo-wrap:not(#_) .add_wpftopic {
  background: var(--bb-text) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 10px 28px !important;
  height: auto !important;
  line-height: normal !important;
  font-weight: 700 !important;
  transition: opacity 0.2s ease !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-button:hover,
#wpforo #wpforo-wrap:not(#_) .add_wpftopic:hover {
  opacity: 0.8;
}

/* ボタンの中の span 自体に「普通の太さにする」指定が、wpForo本体にあったため、
   spanを直接、狙って、太字を、確実に効かせる */
#wpforo #wpforo-wrap:not(#_) .wpf-button span,
#wpforo #wpforo-wrap:not(#_) .add_wpftopic span {
  font-weight: 700 !important;
}

/* ボタンの中のアイコン（羽根マークなど）も、文字と同じ、白に統一 */
#wpforo #wpforo-wrap:not(#_) .wpf-button i,
#wpforo #wpforo-wrap:not(#_) .wpf-button svg,
#wpforo #wpforo-wrap:not(#_) .add_wpftopic i,
#wpforo #wpforo-wrap:not(#_) .add_wpftopic svg {
  color: #fff !important;
  fill: #fff !important;
}

/* カテゴリー内のボタンだけ、青にする、特別な指定が、wpForo本体にあったため、
   セレクタを、さらに強くして（.wpf-button.add_wpftopic を、同じ要素に、指定）、
   読み込み順に関係なく、確実に勝てるようにする */
#wpforo #wpforo-wrap:not(#_) .wpforo-category .wpf-button.add_wpftopic {
  background: var(--bb-text) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: none !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-category .wpf-button.add_wpftopic:hover {
  background: var(--bb-text) !important;
  color: #fff !important;
  opacity: 0.8;
  border: none !important;
  box-shadow: none !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-category .wpf-button {
  background: var(--bb-text) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: none !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-category .wpf-button:hover {
  background: var(--bb-text) !important;
  color: #fff !important;
  opacity: 0.8;
  border: none !important;
  box-shadow: none !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-button-secondary {
  background: #fdfdfd !important;
  color: var(--bb-muted) !important;
  border: 1px solid #e3dcc2 !important;
  border-radius: 999px !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-button-outlined {
  background: #fdfdfd !important;
  color: var(--bb-muted) !important;
  border: 1px solid #e3dcc2 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-button-outlined:hover {
  color: var(--bb-accent) !important;
  border-color: var(--bb-accent) !important;
}

/* ---------- フッター統計 ---------- */
#wpforo #wpforo-wrap:not(#_) #wpforo-footer {
  background: #fdfdfd !important;
  border: 1px solid var(--bb-line) !important;
  border-radius: 16px !important;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06) !important;
  margin-top: 20px !important;
  padding: 20px 24px !important;
}

#wpforo #wpforo-wrap:not(#_) #wpforo-stat-header {
  border-bottom: 1px solid var(--bb-line) !important;
  padding-bottom: 12px !important;
  margin-bottom: 12px !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-footer-box {
  background: transparent !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-footer-title,
#wpforo #wpforo-wrap:not(#_) .wpf-stat-label {
  color: var(--bb-muted) !important;
}

#wpforo #wpforo-wrap:not(#_) .wpf-stat-value {
  color: var(--bb-muted) !important;
  font-weight: 700;
}

#wpforo #wpforo-wrap:not(#_) .wpf-newest-member a,
#wpforo #wpforo-wrap:not(#_) .wpf-newest-post a {
  color: var(--bb-muted) !important;
  text-decoration: none;
}
#wpforo #wpforo-wrap:not(#_) .wpf-newest-member a:hover,
#wpforo #wpforo-wrap:not(#_) .wpf-newest-post a:hover {
  color: var(--bb-accent) !important;
}

/* ---------- 通常のリンク(既定の色は、黒。ホバーだけ、ピンク) ---------- */
#wpforo #wpforo-wrap:not(#_) a {
  color: var(--bb-text) !important;
}
#wpforo #wpforo-wrap:not(#_) a svg {
  fill: var(--bb-muted) !important;
}
#wpforo #wpforo-wrap:not(#_) a:hover {
  color: var(--bb-accent) !important;
}
#wpforo #wpforo-wrap:not(#_) a:hover svg {
  fill: var(--bb-accent) !important;
}

/* ---------- サイドバー ---------- */
.l-sidebar a {
  color: var(--bb-text) !important;
}
.l-sidebar a:hover {
  color: var(--bb-accent) !important;
}

/* フォーラム全体の、見出し（太さを、揃え、上の余白だけ、広げる。下は、標準のまま） */
#wpforo #wpforo-wrap:not(#_) #wpforo-title {
  font-family: 'Zen Maru Gothic', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif !important;
  font-weight: 700 !important;
  color: var(--bb-text) !important;
  padding-top: 20px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  margin-top: 12px !important;
}
/* 見出し内の、未読/RSSフィードリンクは、小さな機能リンクなのでベースフォントに戻す */
#wpforo #wpforo-wrap:not(#_) #wpforo-title .wpforo-feed {
  font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic Medium", 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif !important;
  font-weight: 400 !important;
}

/* ==========================================================
   投稿者名の横の、オンライン/オフラインの、丸を、非表示に
   （wpfcl-8 / wpfcl-0 は、他の場所（解決済みマークなど）
     にも、使われる、共通の、色クラスのため、fa-circle と、
     組み合わせて、狙いを絞る）
   ========================================================== */
#wpforo #wpforo-wrap:not(#_) .wpf-author-name .fa-circle {
  display: none !important;
}

/* ==========================================================
   投稿・返信フォーム（本文エディタまわり）を、
   他のフォーム（ログインフォーム・旧bbPress版）と、同じ
   デザインに揃える。
   対象：post_add / reply_add 等で使われる .wpf-post-create
   （投稿者名・メール・タイトル欄は、既存の
   「.wpf-field-wrap input」ルールで、既に揃っているため、
   ここではTinyMCEエディタ・添付ファイル・reCAPTCHA・
   購読チェックボックス・リビジョン操作のみを、追加で調整）
   ========================================================== */

/* ---------- フォーム全体を、他のカードと、同じ白いカードに ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create {
  border: 1px solid var(--bb-line) !important;
  border-radius: 16px !important;
  background: #f4f4f4 !important;
  box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06) !important;
  padding: 20px 24px !important;
  margin-top: 20px !important;
}

/* 各項目行（投稿者名／メール、タイトル、本文…）の、縦の間隔 */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-tr {
  margin-bottom: 16px !important;
}
/* 本文エディタ(TinyMCE)の行は、この後に .wpf-cl など、他のdivがまだ
   続くため、:last-of-type（＝「divタグとして最後」の意味で、
   クラス名は見ていない）では、意図通りに選べていなかった。
   本文エディタを含む行を、直接狙って、下マージンを0にする */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-tr:has(.wpf-field-type-tinymce) {
  margin-bottom: 0 !important;
}

/* wpForo本体（colors.css）が、各項目(.wpf-field)に付けている、
   点線の区切り(border-bottom: 1px dashed #cccccc)を、消す。
   項目間の余白は、上の .wpf-tr の margin-bottom で、代わりに確保 */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-field {
  border-bottom: none !important;
}

/* ラベル（アイコン付き：投稿者名・メール・タイトルなど） */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--bb-muted) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-label-wrap i {
  color: var(--bb-muted) !important;
}

/* ---------- 本文エディタ（TinyMCE）：quicktags版（bbPress）と、同じ見た目に
   ※新規トピック(.wpf-post-create)・返信など、どちらのフォームでも効くよう、
   wpf-post-create配下に限定せず #wpforo-wrap 全体を対象にしている
   （返信フォームの本文エディタがゴールドにならなかったのは、これが原因） ---------- */
#wpforo #wpforo-wrap:not(#_) .mce-tinymce {
  border: 1px solid #e3dcc2 !important;
  border-radius: 10px !important;
  overflow: hidden;
  box-shadow: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
/* フォーカス時：本文エディタ内（iframe）にフォーカスがある間、枠をフォーラム用アクセント色（黄色）に
   ※iframe自体が「フォーカスされた要素」になるため、:focus-withinが効く */
#wpforo #wpforo-wrap:not(#_) .mce-tinymce:focus-within {
  border-color: var(--bb-accent) !important;
  box-shadow: 0 0 0 3px rgba(201, 154, 46, 0.18) !important;
}

/* ツールバー（.mce-toolbar-grp）：ボタンは、PHP側（wpforo_editor_settings）で、
   既に0個にしているが、TinyMCE自身が、ボタンの有無に関わらず、1段目の
   枠（入れ物）は、必ず作ってしまう仕様のため、中身が空でも、細い帯として
   残ってしまう。中身が無い、空の枠そのものなので、ここを畳む */
#wpforo #wpforo-wrap:not(#_) .mce-toolbar-grp {
  display: none !important;
}

/* 本文の、入力エリアと、下のステータスバー（文字数・リサイズハンドル） */
#wpforo #wpforo-wrap:not(#_) .mce-edit-area {
  background: #fdfdfd !important;
}
#wpforo #wpforo-wrap:not(#_) .mce-statusbar {
  background: #fdfdfd !important;
  border-top: 1px solid var(--bb-line) !important;
}
#wpforo #wpforo-wrap:not(#_) .mce-path-item {
  color: var(--bb-muted) !important;
  font-size: 11px !important;
}

/* ---------- 添付ファイル欄：クリーム色の、小さなボックスに ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-default-attachment {
  margin-top: 16px !important;
  padding: 14px 16px !important;
  border: 1px solid var(--bb-line) !important;
  border-radius: 12px !important;
  background: var(--bb-soft) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-default-attachment label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--bb-muted) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-default-attachment p {
  margin: 6px 0 0 !important;
  font-size: 11px !important;
  color: var(--bb-muted) !important;
}

/* ---------- reCAPTCHA：前後の余白だけ、Turnstile版と、同じように整える ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpforo_recaptcha_widget {
  margin: 16px 0 0 !important;
}

/* ---------- ユーザー登録フォームのCloudflare Turnstileを中央配置に
   ウィジェット自体の幅は可変のため、親を基準に中央寄せするのではなく、
   .cf-turnstile自身をflexにして、中のiframeを中央に寄せている ---------- */
#wpforo #wpforo-wrap:not(#_) .wpforo-register-wrap .cf-turnstile {
  display: flex !important;
  justify-content: center !important;
  margin: 0 auto !important;
}

/* ---------- 「ログイン」リンク（登録画面）／「アカウントを作成」リンク（ログイン画面）：
   どちらも、相手の画面へ行き来するための、同じ役割のリンク。
   wpForo本体の点線ボーダー(ghost button風)は不要なので外し、ふつうのテキストリンクにする ---------- */
#wpforo #wpforo-wrap:not(#_) .wpforo-register-wrap .wpf-field-login a,
#wpforo #wpforo-wrap:not(#_) .wpforo-login-wrap .wpf-field-reg a {
  border: none !important;
  padding: 3px 0 !important;
  color: var(--bb-muted) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-register-wrap .wpf-field-login a:hover,
#wpforo #wpforo-wrap:not(#_) .wpforo-login-wrap .wpf-field-reg a:hover {
  color: var(--bb-accent) !important;
}

/* ---------- 登録ボタン＋ログインリンクの行：wpForo本体が display:flex; justify-content:flex-end
   を指定しており、PC幅では横並びでちょうど収まるが、スマホ幅では折り返されず圧縮され、
   「ログイン」の文字が2行に割れてしまう。スマホ幅だけ縦積みにする ---------- */
@media not all and (min-width: 960px) {
  #wpforo #wpforo-wrap:not(#_) .wpf-field.wpf-field-type-submit {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  #wpforo #wpforo-wrap:not(#_) .wpf-field.wpf-field-type-submit input[type="submit"] {
    width: 100% !important;
  }
  #wpforo #wpforo-wrap:not(#_) .wpf-field-login {
    width: 100% !important;
    margin-left: 0 !important;
  }
}

/* ---------- hidden inputだけを包んでいる、中身の無い.wpf-field自体を非表示に
   （.wpf-fieldには、偶数番目に灰色背景・下部に点線ボーダーが共通で付くため、
   中身が空でも、意味のない帯や線だけ描画されてしまっていた） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-field.wpf-extra-field-end {
  display: none !important;
}

/* ---------- 「このトピックを購読」チェックボックス ----------
   ※ reCAPTCHAとは、ネストが深く離れた別階層の要素同士で、マージンが
      相殺されない（足し算されてしまう）ため、上側は、あえて小さめに ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-topic-sbs {
  display: flex !important;
  align-items: center !important;
  gap: 6px;
  margin: 12px 0 !important;
  font-size: 13px !important;
  color: var(--bb-muted) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-topic-sbs label {
  color: var(--bb-muted) !important;
  font-weight: 400 !important;
}

/* wpForoのHTMLには、.wpf-extra-fields というクラスのdivが、
   本文エディタ内（添付ファイル・reCAPTCHA入り）と、その外側
   （中身が空、購読チェックボックスの直前）の、2箇所にある。
   同じクラス名なので、「直後に .wpf-topic-sbs が続く方」という、
   位置関係で絞り込んで、空の方だけを畳む */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-extra-fields:has(+ .wpf-topic-sbs) {
  display: none !important;
}

/* ---------- 送信ボタンの行（ボタン自体は、既存の「.wpf-button」ルールで、済） ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-buttons-wrap {
  margin-top: 8px !important;
}

/* ---------- プレビュー・リビジョン履歴などの、操作リンク
   ：bbPress版の「購読・お気に入り」リンクと、同じ、細い丸ピル ---------- */
/* display:inline-blockのまま margin-right だけで間隔を取ると、
   横幅が足りずに折り返した時、上下の行の間隔が0になり、くっついて見える。
   flex + gap にすることで、横に並ぶ時も、折り返して縦に並ぶ時も、
   常に一定の間隔（8px）を確保する */
#wpforo #wpforo-wrap:not(#_) .wpforo-revisions-action-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 12px !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-revision-action-button {
  display: inline-block;
  padding: 4px 14px !important;
  margin-right: 0 !important;
  border: 1px solid #e3dcc2 !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  color: var(--bb-muted) !important;
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-revision-action-button:hover {
  color: var(--bb-accent) !important;
  border-color: var(--bb-accent) !important;
}
#wpforo #wpforo-wrap:not(#_) .wpforo-revision-action-button i {
  color: inherit !important;
}

/* スマホ・タブレット（画面幅960px以下） */
@media (max-width: 960px) {
  #wpforo #wpforo-wrap:not(#_) .wpf-post-create {
    padding: 16px !important;
  }

  /* wpForo本体が「購読チェックボックスは左フロート、送信ボタンは右フロート」
     という、横並び前提のレイアウトにしているため、幅が狭いスマホだと、
     ボタンがチェックボックスの行に、重なってしまう。
     幅が足りない画面では、横並びをやめて、縦に積む */
  #wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-topic-sbs {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    box-sizing: border-box;
    text-align: center !important;
  }
  /* チェックボックスと、ラベルの間の余白を、中央寄せでも、不自然にならないよう整える */
  #wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-topic-sbs input[type="checkbox"] {
    vertical-align: middle;
  }
  #wpforo #wpforo-wrap:not(#_) .wpf-post-create .wpf-buttons-wrap {
    margin-top: 12px !important;
    justify-content: center !important;
  }
}

/* ==========================================================
   wpForoプラグイン本体(colors.css)のデフォルト配色を、
   フォーラムの黄色アクセント(--bb-accent / --bb-accent-soft /
   --bb-accent-dark)に統一する上書き。

   対象：AIヘルパー・AI検索・AIチャット・通知バッジ・パンくず・
   各種レイアウト(wpfl-1〜5)のカテゴリー見出し・ボタン・タグ・
   プロフィールツール・検索・ページ送り・アクティビティタイムライン・
   タグ並び替えなど、colors.cssで#43a6df系の青が指定されていた箇所。

   元の色の役割ごとに、変数を使い分けている：
   ・#43a6df(強いアクセント)        → var(--bb-accent)
   ・#3f7796(通常リンク等の既定色)   → var(--bb-accent)
   ・#4a8eb3 / #72ccfc(その他の青系) → var(--bb-accent)
   ・#659fbe(ホバー時の薄い青)       → var(--bb-accent-soft)
   ・#0099cc(ボタンホバー時の濃い青) → var(--bb-accent-dark)

   注意：
   ・.wpf-dark(ダークモード)配下の指定は、このサイトで未使用の
     ため対象外にしている。
   ・#wpforo-load、#wpforo-dialog、#wpf-msg-box、.ui-dialog、
     .wpforo-widget-wrap、.wpfcl-*/.wpfbg-*/.wpfbr-* など、
     元々 #wpforo-wrap の外側（モーダル・トースト・サイドバー
     ウィジェット等）で使われている要素は、そのセレクタのまま
     （:not(#_)は付けず）上書きしている。
   ・【重要】a（リンク全般）・a svg・a:visited・a:visited svg・
     a:hover・a:hover svg・.wpf-breadcrumb div.active・
     .wpf-post-starter・.wpf-button-outlined・
     .wpforo-post-head .wpf-post-head-top（とそのsvg）・
     .wpforo-category .wpf-button（とhover）・
     .wpf-button（とhover、「トピックを追加」等のボタン本体）の
     13セレクタは、このファイル上部にすでに「通常は黒(--bb-text)、
     ホバー時だけ黄色」という意図的なルールがあり、ここで重複定義
     するとコードの並び順で後勝ちしてしまい、通常時の文字・背景
     まで黄色になってしまう（フォーラム管理パネル等の文字や、
     「トピックを追加」ボタンが読みにくくなる原因になっていた）。
     そのため、この13個はここでは定義せず、上部の既存ルールに
     そのまま任せている。
   ・AI翻訳機能のオレンジ(#ff812d)は、差し色として意図的に青/黄色
     とは別の役割を持っているため、今回は対象外にしている。
   ========================================================== */

#wpforo #wpforo-wrap:not(#_) *::selection { color: #000000 !important; background: var(--bb-accent) !important; }  /* src colors.css:9 */
#wpforo #wpforo-wrap:not(#_) *::-moz-selection { color: #000000 !important; background: var(--bb-accent) !important; }  /* src colors.css:10 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-helper-toggle { background:#f5f5f5 !important; color:var(--bb-accent) !important; border: 2px solid #e6e6e6 !important; }  /* src colors.css:21 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-helper-toggle:hover { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:22 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-helper-toggle .wpf-ai-sparkle-icon { fill:var(--bb-accent) !important; }  /* src colors.css:23 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-tab-active { color:var(--bb-accent) !important; }  /* src colors.css:28 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-tab-content .wpf-ai-search-form .wpf-ai-results .wpf-ai-result-score { color:var(--bb-accent) !important; }  /* src colors.css:49 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-star { fill:var(--bb-accent) !important; }  /* src colors.css:54 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-search-form[data-search-form="classic"] input[type="text"]:focus, #wpforo #wpforo-wrap:not(#_) .wpf-ai-search-form[data-search-form="classic"] select:focus { border-color:var(--bb-accent) !important; }  /* src colors.css:67 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-search-form[data-search-form="classic"] input[type="submit"] { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:68 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-search-form[data-search-form="classic"] input[type="submit"]:hover { background:var(--bb-accent-soft) !important; }  /* src colors.css:69 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-summarize-btn { color: var(--bb-accent) !important; border: 1px solid var(--bb-accent) !important; background: #ffffff !important; }  /* src colors.css:78 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-summarize-btn:hover { color: var(--bb-accent) !important; }  /* src colors.css:79 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-summarize-btn .wpf-ai-star { color: var(--bb-accent) !important; }  /* src colors.css:80 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-summary-body { border-left: 3px dashed var(--bb-accent) !important; }  /* src colors.css:82 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-summary-body h3, #wpforo #wpforo-wrap:not(#_) .wpf-ai-summary-body h4 { color: var(--bb-accent) !important; }  /* src colors.css:83 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-chat-msg-content .wpf-ai-chat-reference { color: var(--bb-accent) !important; }  /* src colors.css:86 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-chat-msg-content .wpf-ai-chat-reference:hover { color: var(--bb-accent) !important; }  /* src colors.css:87 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-chat-msg-user .wpf-ai-chat-msg-content { background-color: var(--bb-accent) !important; color: #ffffff !important; }  /* src colors.css:88 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-suggestions-title { color: var(--bb-accent) !important; }  /* src colors.css:92 */
#wpforo #wpforo-wrap:not(#_) .wpforo-active,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li.wpforo-active,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li:hover,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li.current-menu-ancestor,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li.current-menu-parent,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li.current_page_item { border-bottom: var(--bb-accent) 2px solid !important; }  /* src colors.css:93-101（前回見落とし分を統合） */
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li > ul li:hover,
#wpforo #wpforo-wrap:not(#_) #wpforo-menu li > ul li.current-menu-item { border-bottom: 1px solid var(--bb-accent) !important; }  /* src colors.css:112-114 */
#wpforo-load { color: var(--bb-accent) !important; }  /* src colors.css:116 */
#wpforo-load i { color: var(--bb-accent)!important; }  /* src colors.css:117 */
#wpforo #wpforo-wrap:not(#_) .wpf-search i { color: var(--bb-accent) !important; }  /* src colors.css:121 */
#wpforo #wpforo-wrap:not(#_) .wpf-bar-right .wpf-alerts i:hover { color: var(--bb-accent) !important; }  /* src colors.css:126 */
#wpforo #wpforo-wrap:not(#_) #wpforo-poweredby a { color: var(--bb-accent) !important; }  /* src colors.css:159 */
#wpforo #wpforo-wrap:not(#_) a:active { color: var(--bb-accent) !important; }  /* src colors.css:170 */
#wpforo #wpforo-wrap:not(#_) a:active svg { fill: var(--bb-accent) !important; }  /* src colors.css:171 */
#wpforo #wpforo-wrap:not(#_) .wpf-link { color: var(--bb-accent) !important; }  /* src colors.css:172 */
#wpforo #wpforo-wrap:not(#_) .wpflink { color: var(--bb-accent) !important; }  /* src colors.css:174 */
#wpforo #wpforo-wrap:not(#_) .wpflink:hover { color: var(--bb-accent-soft) !important; }  /* src colors.css:175 */
.wpfcl-a { color:var(--bb-accent-soft)!important; }  /* src colors.css:179 */
.wpfbg-a { background-color:var(--bb-accent-soft)!important; }  /* src colors.css:180 */
.wpfcl-b { color:var(--bb-accent)!important; }  /* src colors.css:181 */
.wpfbg-b { background-color:var(--bb-accent)!important; }  /* src colors.css:182 */
.wpfbr-b { border:1px solid var(--bb-accent)!important; }  /* src colors.css:183 */
.wpfcl-4 { color:var(--bb-accent)!important; fill: var(--bb-accent) !important; }  /* src colors.css:192 */
.wpfbg-4 { background-color:var(--bb-accent)!important; }  /* src colors.css:193 */
.wpfcl-6 { color:var(--bb-accent-dark)!important; }  /* src colors.css:197 */
.wpfbg-6 { background-color:var(--bb-accent-dark)!important; }  /* src colors.css:198 */
.wpfbr-6 { border:1px solid var(--bb-accent-dark)!important; }  /* src colors.css:199 */
#wpforo #wpforo-wrap:not(#_) .wpforo-post .wpforo-membertoggle i { color:var(--bb-accent) !important; }  /* src colors.css:243 */
#wpforo #wpforo-wrap:not(#_) .wpforo-post-head .wpf-topic-more-info { border-left:3px dashed var(--bb-accent) !important; }  /* src colors.css:266 */
#wpforo #wpforo-wrap:not(#_) .wpfl-1 .wpforo-category { background-color:#f5f5f5 !important; border-bottom: var(--bb-accent) 2px solid !important; }  /* src colors.css:271 */
#wpforo #wpforo-wrap:not(#_) .wpfl-1 .wpforo-last-post-title i { color: var(--bb-accent) !important; }  /* src colors.css:282 */
#wpforo #wpforo-wrap:not(#_) .wpfl-1 .wpforo-topic-head { border-bottom:var(--bb-accent) 2px solid !important; color: #555555 !important; }  /* src colors.css:284 */
#wpforo #wpforo-wrap:not(#_) .wpfl-1 .wpforo-post .wpf-left { border-top:var(--bb-accent) 2px solid !important; background:#f5f5f5 !important; }  /* src colors.css:297 */
#wpforo #wpforo-wrap:not(#_) .wpfl-2 .wpforo-category { background-color:#f5f5f5 !important; border-bottom:var(--bb-accent) 2px solid !important; }  /* src colors.css:304 */
#wpforo #wpforo-wrap:not(#_) .wpfl-2 .wpforo-topic-head { border-bottom:var(--bb-accent) 3px solid !important; color: #555555 !important; }  /* src colors.css:317 */
#wpforo #wpforo-wrap:not(#_) .wpfl-3 .wpforo-category { background-color:#f5f5f5 !important; border-bottom:var(--bb-accent) 2px solid !important; }  /* src colors.css:339 */
#wpforo #wpforo-wrap:not(#_) .wpfl-3 .wpforo-topic-head { border-bottom:var(--bb-accent) 3px solid !important; color: #555555 !important; }  /* src colors.css:360 */
#wpforo #wpforo-wrap:not(#_) .wpfl-3 .wpforo-post .wpf-right .wpforo-post-signature-content { border-top:var(--bb-accent-soft) 1px dotted !important; }  /* src colors.css:381 */
#wpforo #wpforo-wrap:not(#_) .wpfl-3 .wpf-answer-sep { color: #666666 !important; border-bottom: 2px solid var(--bb-accent) !important; }  /* src colors.css:385 */
#wpforo #wpforo-wrap:not(#_) .wpfl-3 .wpf-answer-sep svg { fill: var(--bb-accent) !important; }  /* src colors.css:386 */
#wpforo #wpforo-wrap:not(#_) .wpfl-3 .wpforo-comment .wpforo-comment-action-links .wpf-action:hover { color: var(--bb-accent-soft) !important; }  /* src colors.css:390 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpforo-category { background-color:#f5f5f5 !important; border-bottom: 2px solid var(--bb-accent) !important; }  /* src colors.css:395 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4.wpf-subforums .wpforo-category { background-color:transparent !important; border-bottom: 3px solid var(--bb-accent) !important; }  /* src colors.css:397 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-load-threads .wpf-newest:hover { color:var(--bb-accent-dark) !important; }  /* src colors.css:407 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-load-threads .wpf-newest:hover,#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-load-threads .wpf-newest.wpf-active { border-color:var(--bb-accent-dark) !important; color:var(--bb-accent-dark) !important; }  /* src colors.css:411 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-cat-forum-list .wpf-forum-item a:hover { color: var(--bb-accent-soft) !important; }  /* src colors.css:418 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-threads .wpforo-tags tag a:hover { color: var(--bb-accent-soft) !important; }  /* src colors.css:425 */
#wpforo #wpforo-wrap:not(#_) .wpft-topic .wpfl-4 .wpf-threads-head { background: var(--bb-accent) !important; color: #ffffff !important; border-bottom: 2px solid #cccccc !important; }  /* src colors.css:429 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-thread-box.wpf-thread-last-reply .wpf-thread-last-avatar i.fa-feather-alt { color: var(--bb-accent) !important; }  /* src colors.css:434 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-reply:hover .wpf-action { color: var(--bb-accent-soft) !important; }  /* src colors.css:441 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action:hover { color: var(--bb-accent) !important; }  /* src colors.css:444 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-public i { color: var(--bb-accent-soft) !important; }  /* src colors.css:446 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-open i { color: var(--bb-accent-soft) !important; }  /* src colors.css:448 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-approve i { color: var(--bb-accent-soft) !important; }  /* src colors.css:450 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-unsolved i,
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-unsticky i { color: var(--bb-accent-soft) !important; }  /* src colors.css:450-452 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-unsolved i:hover,
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-content-foot .wpf-buttons .wpf-action.wpforo-unsticky i:hover { color: var(--bb-accent) !important; }  /* src colors.css:454 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-post-replies-bar .wpf-post-replies-info { color: var(--bb-accent) !important; }  /* src colors.css:456 */
#wpforo #wpforo-wrap:not(#_) .wpfl-4 .wpf-child-post .wpf-reply-content .wpf-reply-tree .wpf-tree-item.wpf-starter .avatar { background: #ffffff !important; border: 1px solid var(--bb-accent) !important; }  /* src colors.css:466 */
#wpforo #wpforo-wrap:not(#_) .wpfl-5 .wpforo-category { background-color:#f5f5f5 !important; border-bottom:var(--bb-accent) 2px solid !important; }  /* src colors.css:473 */
#wpforo #wpforo-wrap:not(#_) .wpf-popover i.fa-thumbs-up { color: var(--bb-accent) !important; }  /* src colors.css:476 */
#wpforo #wpforo-wrap:not(#_) .wpforo-profile .wpforo-profile-head .wpforo-profile-back { background: var(--bb-accent) !important; color: #ffffff !important; }  /* src colors.css:481 */
#wpforo #wpforo-wrap:not(#_) .wpforo-profile .wpforo-user-tools span { color: var(--bb-accent) !important; border-bottom: var(--bb-accent) 2px solid !important; }  /* src colors.css:482 */
#wpforo #wpforo-wrap:not(#_) .wpforo-profile .wpforo-user-tools span:hover { color: var(--bb-accent) !important; border-bottom: var(--bb-accent) 2px solid !important; }  /* src colors.css:483 */
#wpforo #wpforo-wrap:not(#_) .wpforo-profile .wpforo-profile-menu .wpf-profile-menu.wpforo-active { color: var(--bb-accent) !important; }  /* src colors.css:494 */
#wpforo #wpforo-wrap:not(#_) .wpf-profile-section .wpf-statbox .wpf-statbox-icon { background-color: #dff4ff !important; fill: var(--bb-accent-soft) !important; color: var(--bb-accent-soft) !important; }  /* src colors.css:497 */
#wpforo #wpforo-wrap:not(#_) input[type="submit"],
#wpforo #wpforo-wrap:not(#_) input[type="reset"],
#wpforo #wpforo-wrap:not(#_) input[type="button"],
#wpforo-dialog input[type="submit"],
#wpforo-dialog input[type="reset"],
#wpforo-dialog input[type="button"] { background:var(--bb-accent) !important; color:#ffffff !important; border: 1px solid var(--bb-accent-dark) !important; }  /* src colors.css:546-551（前回の抽出で見落とし、登録フォームの「登録」ボタン等が対象） */
/* スコープ無しの .wpf-button（#wpforo-wrap の外、ダイアログ等で使われる場合のフォールバック） */
.wpf-button { background:var(--bb-accent) !important; color:#ffffff !important; border: 1px solid var(--bb-accent-dark) !important; }  /* src colors.css:553 */
.wpf-button:hover { background:var(--bb-accent-dark) !important; }  /* src colors.css:554 */
#wpforo #wpforo-wrap:not(#_) input[type="submit"]:hover,#wpforo #wpforo-wrap:not(#_) input[type="reset"]:hover { background:var(--bb-accent-dark) !important; }  /* src colors.css:552 */
#wpforo #wpforo-wrap:not(#_) input[type="button"]:hover { background:var(--bb-accent-dark) !important; }  /* src colors.css:553 */
#wpforo #wpforo-wrap:not(#_) .wpf-topic-create .quicktags-toolbar input[type="button"] { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:566 */
#wpforo #wpforo-wrap:not(#_) .wpf-topic-create .quicktags-toolbar input[type="button"]:hover { background:var(--bb-accent-dark)!important; }  /* src colors.css:567 */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .quicktags-toolbar input[type="button"] { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:573 */
#wpforo #wpforo-wrap:not(#_) .wpf-post-create .quicktags-toolbar input[type="button"]:hover { background:var(--bb-accent-dark)!important; }  /* src colors.css:574 */
#wpforo #wpforo-wrap:not(#_) .wpf-tags a { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:577 */
#wpforo #wpforo-wrap:not(#_) .wpf-tags a:before { border-color:transparent var(--bb-accent) transparent transparent !important; }  /* src colors.css:578 */
#wpforo #wpforo-wrap:not(#_) .wpf-tags a:after { background:#ffffff !important; -moz-box-shadow:-1px -1px 2px var(--bb-accent) !important; -webkit-box-shadow:-1px -1px 2px var(--bb-accent) !important; box-shadow:-1px -1px 2px var(--bb-accent) !important; }  /* src colors.css:579 */
#wpforo #wpforo-wrap:not(#_) .wpf-topic-tags #wpf_tags { color: var(--bb-accent) !important; }  /* src colors.css:580 */
#wpforo #wpforo-wrap:not(#_) .wpforo-members .wpforo-member .wpforo-member-social a:hover { color: var(--bb-accent) !important; fill: var(--bb-accent) !important; }  /* src colors.css:598 */
#wpforo #wpforo-wrap:not(#_) .wpforo-search-sep { background: var(--bb-accent) !important; border: transparent !important; height: 2px !important; display: none !important; }  /* src colors.css:615 */
#wpforo #wpforo-wrap:not(#_) .wpforo-search-wrap .wpforo-search-content .wpf-htr { background-color:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:621 */
#wpforo #wpforo-wrap:not(#_) .wpf-search-result-card:hover { border-color:var(--bb-accent) !important; }  /* src colors.css:627 */
#wpforo #wpforo-wrap:not(#_) .wpf-action:hover, .wpf-notifications .wpf-action:hover { cursor: pointer !important; color: var(--bb-accent-soft) !important; }  /* src colors.css:653 */
#wpforo #wpforo-wrap:not(#_) .wpf-action.wpforo-tools { color: var(--bb-accent) !important; }  /* src colors.css:654 */
#wpforo #wpforo-wrap:not(#_) .wpf-action.wpforo-tools:hover { cursor: pointer !important; color: var(--bb-accent) !important; }  /* src colors.css:655 */
#wpforo #wpforo-wrap:not(#_) .wpf-navi .wpf-navi-wrap .wpf-prev-button { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:658 */
#wpforo #wpforo-wrap:not(#_) .wpf-navi .wpf-navi-wrap .wpf-next-button { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:659 */
#wpforo #wpforo-wrap:not(#_) #wpforo-stat-header .wpf-footer-title { border-bottom: 3px solid var(--bb-accent) !important; margin-bottom: -2px !important; }  /* src colors.css:668 */
#wpforo #wpforo-wrap:not(#_) #wpforo-stat-body.wpf-new svg { color:var(--bb-accent) !important; }  /* src colors.css:672（前回見落とし） */
#wpforo #wpforo-wrap:not(#_) #wpforo-stat-body .wpf-all-read i { color:var(--bb-accent) !important; }  /* src colors.css:675 */
.wpforo-widget-wrap .wpf-widget-tags li:hover { background-color: var(--bb-accent-soft)!important; }  /* src colors.css:686 */
.wpforo-widget-wrap .wpf-prof-footer .wpf-prof-buttons a:hover { background: var(--bb-accent-soft)!important; }  /* src colors.css:689 */
.ui-dialog .ui-widget-header { background-color: var(--bb-accent)!important; border-bottom:#cccccc 1px solid!important; }  /* src colors.css:694 */
.ui-widget input[type="submit"]:hover { background:var(--bb-accent-dark) !important; }  /* src colors.css:696 */
.ui-widget input[type="submit"] { background:var(--bb-accent) !important; color:#ffffff !important; border: 1px solid var(--bb-accent-dark) !important; }  /* src colors.css:697 */
#wpforo #wpforo-wrap:not(#_) .wpforo-topic-badges i.fa,
#wpforo #wpforo-wrap:not(#_) .wpforo-topic-badges i.fas,
#wpforo #wpforo-wrap:not(#_) .wpforo-topic-badges i.fab,
#wpforo #wpforo-wrap:not(#_) .wpforo-topic-badges i.far,
#wpforo #wpforo-wrap:not(#_) .wpforo-topic-badges i.fal { color: var(--bb-accent) !important; }  /* src colors.css:697-703（前回見落とし分を統合） */
#wpf_multi_quote .wpf-multi-quote { color: #ffffff !important; background: var(--bb-accent) !important; }  /* src colors.css:705 */
#wpf-msg-box > p { color:#ffffff!important; background-color:var(--bb-accent) !important; background:-moz-linear-gradient(var(--bb-accent)) !important; background:-o-linear-gradient(var(--bb-accent)) !important; background:linear-gradient(var(--bb-accent)) !important; }  /* src colors.css:710 */
#wpf-msg-box > p:after { border-color:transparent var(--bb-accent) !important; }  /* src colors.css:711 */
#wpforo #wpforo-wrap:not(#_) .wpf-add-topic-title { border: 1px dashed var(--bb-accent) !important; color: var(--bb-accent) !important; border-right: none !important; border-left: none !important; }  /* src colors.css:756 */
#wpforo #wpforo-wrap:not(#_) .wpf-acp-header { border-bottom: 1px dashed var(--bb-accent) !important; }  /* src colors.css:757 */
#wpforo #wpforo-wrap:not(#_) .wpf-acp-header .wpf-acp-toggle i { color: var(--bb-accent) !important; }  /* src colors.css:758 */
#wpforo #wpforo-wrap:not(#_) .wpf-tools .wpf-tool-tabs .wpf-tool-tab.wpf-tt-active { border-bottom-color: var(--bb-accent) !important; color:var(--bb-accent) !important; }  /* src colors.css:762 */
#wpforo #wpforo-wrap:not(#_) .wpf-sb-2 { color:var(--bb-accent) !important; background-color:#f5f5f5 !important; }  /* src colors.css:773 */
#wpforo #wpforo-wrap:not(#_) .wpf-sb-4 { color:var(--bb-accent) !important; background-color:transparent !important; }  /* src colors.css:775 */
#wpforo #wpforo-wrap:not(#_) .wpf-sb .wpf-sb-toggle .wpfsa { color:var(--bb-accent)!important; }  /* src colors.css:777 */
#wpforo #wpforo-wrap:not(#_) .wpf-sb.wpf-sb-top .wpf-sb-buttons { border-left: 1px dotted var(--bb-accent) !important; }  /* src colors.css:782 */
[dir="rtl"] #wpforo #wpforo-wrap:not(#_) .wpf-sb.wpf-sb-top .wpf-sb-buttons { border-right: 1px dotted var(--bb-accent) !important; border-left:none !important; }  /* src colors.css:783 */
#wpforo #wpforo-wrap:not(#_) .wpf-sb.wpf-sb-top.sb-tt-expanded .wpf-sb-buttons i { color:var(--bb-accent) !important; }  /* src colors.css:784 */
#wpforo #wpforo-wrap:not(#_) .wpforo-revisions-wrap * { border-color: var(--bb-accent) !important; }  /* src colors.css:811 */
#wpforo #wpforo-wrap:not(#_) .wpf-timeline-line { background: linear-gradient(180deg, var(--bb-accent-soft) 0%, var(--bb-accent-soft) 50%, rgba(201,154,46,0.4) 100%) !important; }  /* src colors.css:943 */
#wpforo #wpforo-wrap:not(#_) .wpf-timeline-user a:hover { color: var(--bb-accent) !important; }  /* src colors.css:947 */
#wpforo #wpforo-wrap:not(#_) .wpf-recent-activity-filter-form select:focus { border-color: var(--bb-accent) !important; }  /* src colors.css:949 */
#wpforo #wpforo-wrap:not(#_) .wpf-recent-activity-label a { color: var(--bb-accent) !important; }  /* src colors.css:951 */
#wpforo #wpforo-wrap:not(#_) .wpf-timeline-date-stick { border-bottom: 2px dashed var(--bb-accent-soft) !important; }  /* src colors.css:955 */
#wpforo #wpforo-wrap:not(#_) .wpf-timeline-new_reply .wpf-timeline-icon,
#wpforo #wpforo-wrap:not(#_) .wpf-timeline-wpforo_post .wpf-timeline-icon { border-color: var(--bb-accent) !important; color: var(--bb-accent) !important; }  /* src style.css（大文字#43A6DFのため前回未検出） */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-pref-input:focus { outline: none !important; border-color: var(--bb-accent) !important; box-shadow: 0 0 0 1px var(--bb-accent) !important; }  /* src style.css（#2271b1、前回未対象） */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-pref-save,
#wpforo #wpforo-wrap:not(#_) .wpf-ai-chat-sidebar-header .wpf-ai-chat-new { background: var(--bb-accent) !important; color: #fff !important; }  /* src style.css（#2271b1） */
#wpforo #wpforo-wrap:not(#_) .wpf-recent-activity-new_reply .wpf-recent-activity-icon { color: var(--bb-accent) !important; }  /* src style.css（#2271b1） */
#wpforo #wpforo-wrap:not(#_) .wpf-tags-sort a.is-active { background:var(--bb-accent) !important; border-color:var(--bb-accent-dark) !important; color:#ffffff !important; }  /* src colors.css:961 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-helper-toggle.wpf-ai-highlight { background:var(--bb-accent) !important; color:#ffffff !important; }  /* src colors.css:969 */
#wpforo #wpforo-wrap:not(#_) .wpf-ai-helper-toggle.wpf-ai-highlight:hover { background:var(--bb-accent) !important; color:#ffffff !important; opacity: 0.85 !important; }  /* src colors.css:971 */

/* ---------- 投稿者名表示：Courier New(タイプライター風)を、本文と同じ書体に統一 ---------- */
#wpforo #wpforo-wrap:not(#_) .wpf-author-nicename {
  font-family: inherit !important;
}
