/*
Theme Name: lightning_child
Theme URI:
Template: lightning
Description:
Author:
*/



.page-header { display:none; }



/* =========================================
   spambuster.jp - Official Minimal (no-SVG) v1
   影ゼロ / フラット / 公的感 / Lightning子テーマ
   ========================================= */

:root{
  --sb-maxw: 1120px;
  --sb-fg: #0e1726;          /* 本文色（濃紺） */
  --sb-muted: #475569;       /* 補助テキスト */
  --sb-border: #d8dee6;      /* 罫線 */
  --sb-surface: #ffffff;     /* 面 */
  --sb-soft: #f3f6fa;        /* ごく薄い面 */
  --sb-primary: #174ea6;     /* 濃い青 */
  --sb-link: #0b57d0;        /* リンク青 */
  --sb-accent: #0a7ac7;      /* アクセント */
  --sb-radius: 8px;          /* 角丸控えめ */
}

body{ color:var(--sb-fg); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.l-container,.l-content,.wp-site-blocks{ max-width:var(--sb-maxw); }
.wp-site-blocks a{ color:var(--sb-link); text-decoration: underline; text-underline-offset: 2px; }
.wp-site-blocks a.wp-element-button{ text-decoration: none; }

/* ===== Hero（影ナシ・フラット） ===== */
.spb-hero{
  background: var(--sb-soft);
  border: 1px solid var(--sb-border);
  border-radius: 10px;
  padding: clamp(20px,3vw,28px);
}
.spb-hero h1{
  font-size: clamp(28px,3.2vw,40px);
  line-height:1.25; margin:0 0 .4em; letter-spacing:.01em;
}
.spb-hero p.lead{
  color: var(--sb-muted);
  font-size: clamp(15px,1.6vw,18px);
  margin: 0 0 12px;
}

/* クイックリンク：公的ラベル風 */
.spb-quick{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.spb-chip{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid var(--sb-border); border-radius:6px;
  padding:6px 10px; background:#fff; font-size:.92rem; color:inherit;
  text-decoration:none;
}

/* 検索：フラット */
.spb-hero .wp-block-search{ max-width:760px; margin-top:12px; }
.spb-hero .wp-block-search__input{
  padding:12px 14px; border-radius:6px !important; border:1px solid #cbd5e1;
}
.spb-hero .wp-element-button{
  border-radius:6px; padding:10px 14px; background:var(--sb-primary); color:#fff;
}

/* Hero右のチェックカード（影なし・区切り線あり） */
.spb-hero-cards{ display:grid; gap:10px; }
.spb-hero-card{
  background:#fff; border:1px solid var(--sb-border); border-radius:8px; padding:12px 14px;
}
.spb-hero-card .head{
  display:flex; gap:10px; align-items:center; padding-bottom:6px;
  border-bottom:1px solid var(--sb-border); margin-bottom:8px;
}
.spb-hero-card .head h3{ margin:0; font-size:1rem; }
.spb-hero-card ul{ margin:0; padding-left:20px; color:var(--sb-muted); }

/* ===== セクション間隔 ===== */
.spb-section{ padding: clamp(22px,3vw,30px) 0; }

/* ===== 最新の注意喚起：フラットカード ===== */
.spb-latest .wp-block-post-template{ gap:16px !important; }
.spb-card{
  background:#fff; border:1px solid var(--sb-border); border-radius:8px; padding:14px;
}
.spb-card h3 a{ color:inherit; text-decoration:none; }
.spb-card h3 a:hover{ text-decoration:underline; }
.spb-meta{
  display:flex; gap:12px; flex-wrap:wrap; align-items:center;
  color: var(--sb-muted); font-size:.92rem;
}
.spb-meta .wp-block-post-terms a{
  display:inline-block; border:1px solid var(--sb-border); border-radius:6px;
  padding:2px 8px; text-decoration:none; font-size:.85rem; background:#fff;
}
.spb-excerpt{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}

/* ===== カテゴリ一覧 ===== */
.spb-cats .wp-block-categories{
  background:#fff; border:1px solid var(--sb-border); border-radius:8px; padding:10px 12px;
}
.spb-cats .wp-block-categories li{
  display:flex; justify-content:space-between; gap:12px; padding:10px 6px;
  border-bottom:1px solid #e7ecf3;
}
.spb-cats .wp-block-categories li:last-child{ border-bottom:none; }
.spb-cats .count{ color: var(--sb-muted); }

/* ===== 3つのサイン ===== */
.spb-signs .card{
  background:#fff; border:1px solid var(--sb-border); border-radius:8px; padding:14px;
}
.spb-signs .card .head{ display:flex; gap:10px; align-items:center; margin-bottom:8px; }
.spb-signs h3{ margin:0; font-size:1.05rem; }
.spb-signs code{
  background:#eef4ff; border:1px solid #dbe6ff; padding:2px 6px; border-radius:6px;
}

/* ===== 情報提供のお願い ===== */
.spb-report .left{
  background:#fff; border:1px solid var(--sb-border); border-radius:8px; padding:14px;
}
.spb-report .wp-element-button{
  background:var(--sb-primary); border-radius:6px; padding:10px 14px; color:#fff;
}

/* ===== フッターノート ===== */
.spb-note{ color: var(--sb-muted); border-top: 1px solid var(--sb-border); padding-top: 14px; }

/* ===== テーブル / コード ===== */
.wp-block-table table{ width:100%; border-collapse:collapse; }
.wp-block-table th,.wp-block-table td{ border:1px solid var(--sb-border); padding:10px 12px; }
.wp-block-table thead th{ background:#f5f7fb; }
.wp-block-code,.wp-block-preformatted{
  background:#0b1220; color:#e5edff; border-radius:8px; padding:14px 16px; overflow:auto;
}

/* ====== “文字アイコン”のバッジ（SVGなし） ====== */
.badge{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:8px;
  background:#eef4ff; border:1px solid #dbe6ff; color:#174ea6;
  font-size:20px; line-height:1; font-weight:700;
}
.i-check::before{ content:"✔︎"; }   /* チェック */
.i-link::before{ content:"🔗"; }    /* リンク */
.i-info::before{ content:"ⓘ"; }     /* 情報 */
.i-clock::before{ content:"⏱"; }    /* 時計 */

.spb-meta .date{ display:inline-flex; gap:6px; align-items:center; }
.spb-meta .date .badge{ width:20px; height:20px; font-size:12px; border-radius:6px; }

/* ===== レスポンシブ ===== */
@media (min-width: 960px){
  .spb-hero-grid{ display:grid; grid-template-columns: 1.6fr .9fr; gap: 18px; }
}
@media (max-width: 781px){
  .spb-latest .wp-block-post-template{ grid-template-columns: 1fr !important; }
  .spb-hero p.lead{ padding:0 8px; }
}
/* === Fix: 「詳しく読む」ボタンが黒になる問題（Lightning） === */
.spb-signs .wp-block-button__link,
.spb-signs a.wp-element-button{
  display: inline-block;
  background: var(--sb-primary);
  color: #fff !important;             /* 文字を白に強制 */
  border: 1px solid var(--sb-primary);
  border-radius: 6px;
  padding: 8px 12px;
  text-decoration: none;
  line-height: 1.2;
}

.spb-signs .wp-block-button__link:hover,
.spb-signs a.wp-element-button:hover{
  background: #0b57d0;                /* 少し濃い青に */
  border-color: #0b57d0;
  color: #fff !important;
}

.spb-signs .wp-block-button__link:visited,
.spb-signs a.wp-element-button:visited{
  color: #fff !important;             /* 訪問済みでも白のまま */
}




/* 汎用注意帯（本文上の黄色帯など） */
.notice-wrap {
  background: #fff7db;
  border-left: 6px solid #ff9900;
  padding: 12px 16px;
  border-radius: 6px;
  line-height: 1.7;
}

/* 色バリエーション */
.notice--info  { background:#eaf4ff; border-left-color:#1e73be; } /* 青 */
.notice--warn  { background:#fff7db; border-left-color:#ff9900; } /* 黄 */
.notice--danger{ background:#ffecec; border-left-color:#e64545; } /* 赤 */

/* メタ表（表の見栄えを軽く） */
.meta-table table { width:100%; border-collapse:collapse; }
.meta-table th, .meta-table td { padding:8px 10px; border-bottom:1px solid #eee; }
.meta-table th { width:140px; color:#555; text-align:left; }
