/*
Theme Name: four-dimensions Lightning Child
Theme URI: https://four-dimensions.jp/
Description: Child theme for Lightning (four-dimensions.jp)
Author: hayashi
Template: lightning
Version: 1.0.1
*/

/* =========================================================
   FD Base: tokens
   ========================================================= */
:root {
  --fd-font:
    ui-sans-serif, -apple-system, 'Segoe UI', Roboto, 'Noto Sans JP', Arial,
    sans-serif;
  --fd-maxw: 980px;

  --fd-text: rgba(0, 0, 0, 0.86);
  --fd-muted: rgba(0, 0, 0, 0.62);
  --fd-border: rgba(0, 0, 0, 0.12);
  --fd-bg: rgba(255, 255, 255, 0.92);

  --fd-link: #0f8b5f;
  --fd-link-hover: #0b6d4a;

  --fd-radius: 14px;
  --fd-gap: 14px;
}

/* =========================================================
   FD Typography / layout (safe overrides)
   ========================================================= */
html {
  font-size: 17px;
}
body {
  font-family: var(--fd-font);
  line-height: 1.85;
  letter-spacing: 0.01em;
  color: var(--fd-text);
}

/* Lightningは .container を多用する。幅がブレるのを抑える */
.container,
.vk_outer .container,
.siteContent .container,
.site-content .container {
  max-width: var(--fd-maxw);
}

/* 余白（詰まりすぎ対策） */
.site-content,
.siteContent,
.site-main,
main,
article,
.entry-content,
.page-content,
.post-content {
  font-size: 1rem;
}

/* 見出し（大きすぎ/小さすぎを避ける） */
.entry-content h1,
.page-content h1 {
  font-size: 1.65rem;
  line-height: 1.25;
  margin: 0.9em 0 0.45em;
}
.entry-content h2,
.page-content h2 {
  font-size: 1.35rem;
  line-height: 1.3;
  margin: 1.1em 0 0.45em;
}
.entry-content h3,
.page-content h3 {
  font-size: 1.15rem;
  line-height: 1.35;
  margin: 1em 0 0.35em;
}
.entry-content p,
.page-content p {
  margin: 0.7em 0;
}

/* リンク：ボタンにしない。軽い下線だけ */
a,
a:visited {
  color: var(--fd-link);
  text-decoration: underline;
  text-underline-offset: 0.18em;
  text-decoration-thickness: 0.08em;
}
a:hover {
  color: var(--fd-link-hover);
  text-decoration-thickness: 0.14em;
}

/* 「Ham Net」が改行されるのを防ぐ（必要な箇所だけ span で包む） */
.fd-nowrap {
  white-space: nowrap;
}

/* =========================================================
   FD Components (Classic Editor HTML用)
   ※ ここでは「カード/区切り/小文字」だけ。ボタンは禁止。
   ========================================================= */
.fd-wrap {
  margin: 18px 0 6px;
}
.fd-lead {
  font-size: 1.05rem;
  color: var(--fd-text);
}
.fd-muted {
  color: var(--fd-muted);
}

.fd-card {
  border: 1px solid var(--fd-border);
  border-radius: var(--fd-radius);
  background: var(--fd-bg);
  padding: 14px 16px;
  margin: 14px 0;
}
.fd-card > :first-child {
  margin-top: 0;
}
.fd-card > :last-child {
  margin-bottom: 0;
}

.fd-kv {
  border: 1px solid var(--fd-border);
  border-radius: calc(var(--fd-radius) + 2px);
  background: linear-gradient(
    180deg,
    rgba(15, 139, 95, 0.08),
    rgba(15, 139, 95, 0.02)
  );
  padding: 16px 16px 14px;
  margin: 14px 0 18px;
}
.fd-kv h2 {
  margin: 0 0 0.35em;
}
.fd-kv p {
  margin: 0.5em 0;
}

.fd-list {
  margin: 0.6em 0;
  padding-left: 1.2em;
}
.fd-list li {
  margin: 0.25em 0;
}

.fd-hr {
  border: 0;
  height: 1px;
  background: var(--fd-border);
  margin: 18px 0;
}

/* 2カラム（PCのみ） */
.fd-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--fd-gap);
}
@media (min-width: 860px) {
  .fd-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* 注意書き（煽らず、落ち着いた見せ方） */
.fd-note {
  border-left: 4px solid rgba(15, 139, 95, 0.35);
  padding: 10px 12px;
  background: rgba(0, 0, 0, 0.02);
  border-radius: 10px;
  margin: 12px 0;
}

/* =========================================================
   FD: Disable all "button-like" styles (最後の保険)
   ========================================================= */
.fd-btn,
a.fd-btn,
.wp-block-button__link,
a.wp-block-button__link,
button,
input[type='button'],
input[type='submit'],
input[type='reset'] {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: auto !important;
  height: auto !important;
  line-height: inherit !important;
  border-radius: 0 !important;
  font-weight: inherit !important;
  text-decoration: underline !important;
  cursor: pointer;
}

/* モバイルで小さすぎ防止 */
@media (max-width: 520px) {
  html {
    font-size: 16.5px;
  }
  .fd-card {
    padding: 13px 14px;
  }
}

/* Lightningのスライダー等が邪魔なら“見出しだけ”使う想定（必要なら後でOFF化） */
