/*
 Theme Name: Nephilim
 Theme URI: https://example.com/nephilim
 Author: （あなたの名前）
 Author URI: https://example.com
 Description: フルスクラッチで構築する WordPress テーマ「Nephilim」。
 Version: 1.0.0
 License: GNU General Public License v2 or later
 License URI: https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain: nephilim
 Tags: custom-theme, full-scratch, blog, minimal, responsive
*/

/* =========================================
   Front：2カラム（固定ページ + ウィジェットサイドバー）
   ====================================== */

.nephilim-front-two-column {
  margin: 24px 0;
}

.nephilim-front-two-row {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

/* メインカラム（固定ページ本文） */
.nephilim-front-two-main {
  flex: 0 1 68%;
}

.nephilim-front-two-inner {
  background: rgba(255, 255, 255, 0.65);
  border-radius: 18px;
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.08),
    0 12px 28px rgba(0, 0, 0, 0.10);
  padding: 18px 20px;
}

/* サイドバー（ウィジェットエリア） */
.nephilim-front-two-sidebar {
  flex: 0 1 32%;
  background: rgba(255, 255, 255, 0.65);
  border-radius: 18px;
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.08),
    0 12px 28px rgba(0, 0, 0, 0.10);
  padding: 14px 16px;
}

/* ウィジェットタイトルなど */
.nephilim-front-widget-title {
  margin: 0 0 8px 0;
  font-size: 0.9rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(40, 40, 40, 0.8);
}

/* front-page のときだけ、main 上の余白を消す */
.home .site-main {
  margin-top: 0;
  padding-top: 0;
}

/* =========================================
   Front Bot : Category Cards
   ====================================== */

.nephilim-front-bot-categories {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.nephilim-category-card {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 12px 18px;
  min-width: 120px;

  background: rgba(255, 255, 255, 0.55);
  border-radius: 16px;

  text-decoration: none;
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  color: rgba(40, 40, 40, 0.85);

  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.06),
    0 10px 24px rgba(0, 0, 0, 0.08);

  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.nephilim-category-card:hover {
  transform: translateY(-2px);
  box-shadow:
    0 6px 16px rgba(0, 0, 0, 0.10),
    0 14px 30px rgba(0, 0, 0, 0.12);
}

.nephilim-front-top-posts.is-loading {
  opacity: 0.6;
  pointer-events: none;
	
}

/* カテゴリーカード群：中央配置 */
.nephilim-category-card-group{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;   /* 横方向：中央 */
  align-items: center;

  gap: 10px 12px;            /* 行間・列間 */
  margin: 32px auto;         /* 記事内で中央ブロックとして扱う */
  max-width: 100%;
}


/* =========================================
   Responsive (SP)
   ====================================== */
@media (max-width: 768px) {

  /* 2カラム → 縦並び */
  .nephilim-front-two-row {
    flex-direction: column;
  }

  .nephilim-front-two-main,
  .nephilim-front-two-sidebar {
    flex: 1 1 auto;
    width: 100%; /* 左寄り対策：縦並び時に必ず親幅を取らせる */
  }

  /* Category Cards：SP調整 */
  .nephilim-front-bot-categories {
    gap: 12px;
  }

  .nephilim-category-card {
    flex: 1 1 calc(50% - 12px);
    min-width: auto;
  }

  /* landing装飾を省略 */
  .nephilim-landing-inner {
    display: none;
  }
}
/* =========================================
   Responsive (SP) - unified
   ====================================== */
@media (max-width: 768px) {

  /* 2カラム → 縦並び */
  .nephilim-front-two-row {
    flex-direction: column;
  }

  /* 左寄り対策：縦並び時に必ず親幅を取らせる */
  .nephilim-front-two-main,
  .nephilim-front-two-sidebar {
    flex: 1 1 auto;
    width: 100%;
  }

  /* ---- SPで「幅いっぱい」モードに寄せる（外側レイヤーをフラット化） ---- */

  /* wrapper：幅・余白を握らせない（主犯） */
  .nephilim-home-wrapper {
    max-width: none;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  /* front-top-posts：上の余白を作らない */
  .nephilim-front-top-posts {
    margin-top: 0;
    padding-top: 0;
  }

  /* inner：箱感を減らす（必要ならこのまま／不要なら消してOK） */
  .nephilim-front-two-inner {
    padding-top: 0;
  }

  /* two-main：上下余白を撤去して row 側に責務を寄せる */
  .nephilim-front-two-main {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  /* two-main 内の先頭/末尾の余白保険 */
  .nephilim-front-two-main > *:first-child {
    margin-top: 0;
  }
  .nephilim-front-two-main > *:last-child {
    margin-bottom: 0;
  }

  /* site-main：ヘッダーとの兼ね合いで余白が要るなら 0→8px などに調整 */
  .site-main {
    padding-top: 0;
  }

  /* ---- Category Cards：SP調整 ---- */
  .nephilim-front-bot-categories {
    gap: 12px;
  }

  .nephilim-category-card {
    flex: 1 1 calc(50% - 12px);
    min-width: auto;
  }

  /* ---- landing装飾を省略 ---- */
  .nephilim-landing-inner {
    display: none;
  }
}
