/*
Theme Name: SWELL CHILD
Theme URI: https://swell-theme.com/
Description: SWELL child theme for お得ウォッチ
Template: swell
Version: 1.1.3
*/

/* ================================================
   お得ウォッチ デザイン
   方針: 色はオレンジをアクセント1色に絞る。
   装飾は細い線と余白で作り、絵文字・グラデ・影に頼らない。
================================================ */
:root {
  --ow-orange: #E2701B;      /* アクセント（リンク・ボタン・強調線） */
  --ow-orange-bright: #FF8A1E;
  --ow-navy: #1E2A4A;        /* 見出し・表ヘッダー */
  --ow-text: #333333;
  --ow-text-sub: #767676;
  --ow-bg-warm: #FBF7F0;     /* ごく薄いクリーム（多用しない） */
  --ow-border: #E4E0D8;
  --ow-red: #C43D3D;
  --ow-green: #2E7D53;
  --ow-radius: 6px;
}

/* ---- 見出し ---- */
.c-postTitle__ttl,
.post_content h2,
.post_content h3,
.c-secTitle {
  font-weight: 700;
  color: var(--ow-navy);
  letter-spacing: .02em;
}

/* h2: 白地に太い左線＋下線。帯にしない
   （SWELL標準のオレンジ帯スタイルを打ち消すため background と ::before を明示的に無効化） */
.post_content h2:not([class^="swell-block-"]) {
  background: transparent;
  color: var(--ow-navy);
  border-left: 5px solid var(--ow-orange);
  border-bottom: 1px solid var(--ow-border);
  padding: .3em 0 .45em .7em;
}
.post_content h2:not([class^="swell-block-"])::before {
  content: none;
}

/* h3: 細い下線のみ（SWELL標準の::before線を無効化） */
.post_content h3:not([class^="swell-block-"]) {
  border-bottom: 2px solid var(--ow-border);
  padding: 0 0 .35em;
}
.post_content h3:not([class^="swell-block-"])::before {
  content: none;
}

/* ---- 記事一覧カード: 動きは付けない ---- */
.p-postList__item .p-postList__link {
  border-radius: var(--ow-radius);
}

/* ================================================
   コンポーネント（クラス名は前版と互換）
================================================ */

/* ---- 結論ボックス: ow-summary ---- */
.ow-summary {
  border: 1px solid var(--ow-border);
  border-top: 3px solid var(--ow-orange);
  border-radius: var(--ow-radius);
  padding: 1em 1.2em .6em;
  margin: 1.5em 0;
}
.ow-summary::before {
  content: "この記事の要点";
  display: block;
  font-size: .78em;
  font-weight: 700;
  color: var(--ow-orange);
  letter-spacing: .08em;
  margin-bottom: .4em;
}

/* ---- 検証済み表記: ow-verified ---- */
.ow-verified {
  font-size: .88em;
  color: var(--ow-text-sub);
  border-left: 3px solid var(--ow-green);
  padding: .2em 0 .2em .9em;
  margin: 1.2em 0;
}

/* ---- 注意・改悪: ow-alert ---- */
.ow-alert {
  border: 1px solid var(--ow-red);
  border-radius: var(--ow-radius);
  padding: .7em 1em;
  margin: 1.2em 0;
  font-size: .95em;
}
.ow-alert::before {
  content: "注意";
  display: inline-block;
  font-size: .75em;
  font-weight: 700;
  color: #fff;
  background: var(--ow-red);
  border-radius: 3px;
  padding: .15em .5em;
  margin-right: .6em;
  vertical-align: .1em;
}

/* ---- 締切バッジ: 文字だけの小さなラベル ---- */
.ow-badge {
  display: inline-block;
  font-size: .75em;
  font-weight: 700;
  line-height: 1;
  padding: .32em .55em;
  border-radius: 3px;
  margin-right: .5em;
  white-space: nowrap;
  vertical-align: .1em;
}
.ow-badge--urgent { background: var(--ow-red); color: #fff; }        /* まもなく終了 */
.ow-badge--soon   { background: var(--ow-orange); color: #fff; }     /* 今月中 */
.ow-badge--watch  { border: 1px solid var(--ow-navy); color: var(--ow-navy); } /* 変動あり */
.ow-badge--ok     { border: 1px solid var(--ow-green); color: var(--ow-green); } /* 確認済み */

/* ---- 締切カレンダー表: ow-deadline ---- */
.post_content table.ow-deadline,
.ow-deadline table {
  border-collapse: collapse;
  border: 1px solid var(--ow-border);
  font-size: .95em;
}
.post_content .ow-deadline th,
.ow-deadline th {
  background: var(--ow-navy) !important;
  color: #fff !important;
  font-weight: 600;
  border: none;
  padding: .55em .8em;
}
.ow-deadline td {
  border: none;
  border-top: 1px solid var(--ow-border);
  padding: .55em .8em;
  background: #fff;
}
/* 緊急行: 「あと◯日」の赤バッジ(ow-badge--urgent)がある行を自動で強調。
   trへのクラス付けは不要（エディタで編集しても消えない方式） */
.ow-deadline tr:has(.ow-badge--urgent) td,
.ow-deadline tr.ow-row-urgent td { background: #FAEFE6 !important; }
.ow-deadline tr:has(.ow-badge--urgent) td:first-child,
.ow-deadline tr.ow-row-urgent td:first-child { box-shadow: inset 4px 0 0 var(--ow-red); }

/* ---- CTAボタン: 単色・角は控えめ・動かさない ---- */
.ow-btn .swell-block-button__link,
a.ow-btn {
  background: var(--ow-orange);
  color: #fff;
  font-weight: 700;
  border-radius: var(--ow-radius);
  box-shadow: none;
  transition: background-color .15s ease;
}
.ow-btn .swell-block-button__link:hover,
a.ow-btn:hover {
  background: #C95F12;
  transform: none;
}
.ow-btn-note {
  text-align: center;
  font-size: .78em;
  color: var(--ow-text-sub);
  margin-top: .4em;
}

/* ---- 吹き出し: 枠線を控えめに ---- */
.c-balloon__icon img {
  border: 1px solid var(--ow-border);
}

/* ---- 更新履歴: ow-changelog ---- */
.ow-changelog {
  font-size: .85em;
  color: var(--ow-text-sub);
  border-top: 1px solid var(--ow-border);
  padding-top: .8em;
  list-style-position: inside;
}

/* ---- 確認日スタンプ: ow-checked ---- */
.ow-checked {
  display: inline-block;
  font-size: .78em;
  color: var(--ow-green);
  border: 1px solid var(--ow-green);
  border-radius: 3px;
