/*
Theme Name: Cocoon Child
Template: cocoon-master
Version: 2.0
Description: 投資マラソン カスタムデザイン - Yellow & Blue Theme
*/

:root {
  --primary: #2563EB;
  --primary-dark: #1D4ED8;
  --primary-light: #DBEAFE;
  --accent: #F59E0B;
  --accent-dark: #D97706;
  --accent-light: #FEF3C7;
  --accent-pale: #FFFBEB;
  --text: #1F2937;
  --text-light: #6B7280;
  --border: #E5E7EB;
  --bg: #F8FAFF;
  --white: #ffffff;
}

body {
  font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
  background-color: var(--bg);
  color: var(--text);
  font-size: 16px;
  line-height: 1.9;
}

/* ========== ヘッダー ========== */
#header {
  background: var(--white) !important;
  border-bottom: 3px solid var(--accent) !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06) !important;
}
#site-name { font-size: 24px !important; font-weight: 800 !important; }
#site-name a { color: var(--text) !important; }
#site-catch { font-size: 12px !important; color: var(--text-light) !important; }

/* ========== ナビ ========== */
#navi { background: var(--primary) !important; }
#navi .navi-in > ul > li > a {
  color: #fff !important;
  font-weight: 600;
  padding: 14px 18px !important;
}
#navi .navi-in > ul > li > a:hover { background: var(--primary-dark) !important; }

/* ========== メインエリア ========== */
#main {
  background: var(--white);
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  padding: 32px !important;
}

/* ========== 記事タイトル ========== */
.entry-title {
  font-size: 26px !important;
  font-weight: 800 !important;
  border-bottom: 3px solid var(--accent) !important;
  padding-bottom: 12px !important;
  color: var(--text) !important;
}

/* ========== H2：黄色グラデーション ========== */
.entry-content h2 {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #1F2937 !important;
  background: linear-gradient(135deg, #F59E0B, #FBBF24) !important;
  padding: 12px 20px 12px 18px !important;
  border-radius: 8px !important;
  margin: 36px 0 16px !important;
  border-left: 5px solid var(--accent-dark) !important;
  box-shadow: 0 3px 10px rgba(245,158,11,0.22);
}

/* ========== H3：青ボーダー ========== */
.entry-content h3 {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--primary) !important;
  border-left: 5px solid var(--primary) !important;
  border-bottom: 1px solid var(--primary-light) !important;
  padding: 8px 16px !important;
  margin: 28px 0 14px !important;
  background: var(--primary-light) !important;
  border-radius: 0 6px 6px 0 !important;
}

/* ========== H4：黄色ボーダー ========== */
.entry-content h4 {
  border-left: 4px solid var(--accent) !important;
  padding-left: 12px !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--text) !important;
}

/* ========== 本文 ========== */
.entry-content p { line-height: 2.0; margin-bottom: 18px; }
.entry-content strong {
  color: var(--primary-dark);
  font-weight: 700;
  background: linear-gradient(transparent 62%, var(--accent-light) 62%);
}
.entry-content a { color: var(--primary); }
.entry-content a:hover { color: var(--primary-dark); }

/* ========== テーブル ========== */
.entry-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07);
  border-radius: 10px;
  overflow: hidden;
  margin: 20px 0 !important;
}
.entry-content table th {
  background: var(--primary) !important;
  color: #fff !important;
  padding: 12px 16px !important;
  font-weight: 700 !important;
}
.entry-content table td {
  padding: 10px 16px !important;
  border: 1px solid var(--border) !important;
}
.entry-content table tr:nth-child(even) td { background: #EFF6FF !important; }

/* ========== サイドバー ========== */
.widget {
  background: var(--white) !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07) !important;
  padding: 20px !important;
  margin-bottom: 24px !important;
}
.widget-title,
.widgettitle {
  font-size: 14px !important;
  font-weight: 800 !important;
  color: var(--text) !important;
  background: linear-gradient(135deg, var(--accent), #FBBF24) !important;
  padding: 8px 14px !important;
  border-radius: 6px !important;
  margin: -20px -20px 16px !important;
}

/* プロフィールwidget */
#block-profile {
  background: linear-gradient(160deg, #FFFBEB 60%, #EFF6FF 100%) !important;
  border: 2px solid var(--accent-light) !important;
}

/* ========== 記事カード ========== */
.entry-card {
  border-radius: 10px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07) !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
  border: none !important;
}
.entry-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(37,99,235,0.14) !important;
}

/* カテゴリバッジ */
.cat-label {
  background: var(--accent) !important;
  color: var(--text) !important;
  font-weight: 700 !important;
}

/* ========== フッター ========== */
#footer { background: #1E3A5F !important; color: #CBD5E1 !important; }
#footer a { color: #93C5FD !important; }

/* ========== スマホ対応 ========== */
@media (max-width: 768px) {
  #main { padding: 20px !important; }
  .entry-title { font-size: 20px !important; }
  .entry-content h2 { font-size: 17px !important; padding: 10px 14px !important; }
  .entry-content h3 { font-size: 16px !important; }
}
