/*
Theme Name:           Cocoon Child
Template:             cocoon-master
Description:          Cocoon Child Theme - Sensual Dark Premium (Cocoon Native Layout)
*/

/* =======================================================
   🔥 SENSUAL DARK PREMIUM THEME (Cocoon Native Layout)
   Cocoon標準の洗練されたレイアウト ＋ 官能的ネオンダークカラー
   ======================================================= */

/* --- Google Fonts --- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&family=Inter:wght@400;600;800;900&display=swap');

/* ===== GLOBAL BASE ===== */
:root {
  --bg-deep: #0b090e;
  --bg-card: #130f18;
  --bg-card-hover: #1b1523;
  --accent-red: #e6002e;
  --accent-crimson: #c70028;
  --accent-pink: #ff1a5e;
  --accent-gold: #f5c518;
  --text-primary: #f0eaf5;
  --text-muted: #9d8fad;
  --border-subtle: #2a1f36;
  --font-main: 'Noto Sans JP', 'Inter', -apple-system, sans-serif;
}

body {
  font-family: var(--font-main) !important;
  background-color: var(--bg-deep) !important;
  color: var(--text-primary) !important;
  line-height: 1.7 !important;
}

a { color: var(--text-primary) !important; text-decoration: none !important; transition: all 0.25s ease !important; }
a:hover { color: var(--accent-pink) !important; }

/* ===== HEADER & NAVI ===== */
.header, #header, .header-container {
  background: linear-gradient(180deg, #0d0911 0%, var(--bg-deep) 100%) !important;
  border-bottom: 1px solid var(--border-subtle) !important;
}
.site-name-text, .logo-text a, .header .site-name a {
  color: #ffffff !important;
  font-weight: 900 !important;
  font-size: 24px !important;
  letter-spacing: 2px !important;
  text-shadow: 0 0 12px rgba(230, 0, 46, 0.6) !important;
}

.navi, .mobile-menu-buttons, .menu-header {
  background: rgba(11, 9, 14, 0.95) !important;
  border-bottom: 1px solid var(--border-subtle) !important;
}
.navi a, .menu-header a {
  color: var(--text-muted) !important;
  font-weight: 600 !important;
}
.navi a:hover, .menu-header a:hover {
  color: var(--accent-pink) !important;
}

/* ===== COCOON NATIVE CARDS ===== */
.entry-card-wrap, .related-entry-card-wrap {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: 10px !important;
  transition: all 0.3s ease !important;
  margin-bottom: 16px !important;
}
.entry-card-wrap:hover {
  background: var(--bg-card-hover) !important;
  border-color: var(--accent-red) !important;
  box-shadow: 0 4px 20px rgba(230, 0, 46, 0.35) !important;
  transform: translateY(-3px) !important;
}

.entry-card-title, .card-title {
  color: #ffffff !important;
  font-weight: 800 !important;
  font-size: 15px !important;
}
.entry-card-snippet { color: var(--text-muted) !important; }

/* カテゴリ・タグピルバッジ */
.cat-label {
  background: linear-gradient(135deg, var(--accent-crimson), #8b0020) !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  font-weight: 800 !important;
}
.tag-link, .tagcloud a, .post-tag {
  background: var(--bg-card) !important;
  color: var(--accent-pink) !important;
  border: 1px solid var(--accent-crimson) !important;
  border-radius: 20px !important;
  padding: 4px 12px !important;
  font-weight: 700 !important;
}
.tag-link:hover {
  background: var(--accent-crimson) !important;
  color: #ffffff !important;
}

/* ===== 記事本文 ===== */
.article, .entry-content {
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  border-radius: 12px !important;
  padding: 24px !important;
  border: 1px solid var(--border-subtle) !important;
}
.entry-title {
  color: #ffffff !important;
  font-weight: 900 !important;
  font-size: 22px !important;
  border-bottom: 2px solid var(--accent-red) !important;
  padding-bottom: 12px !important;
}

/* 見出し装飾 */
.article h2 {
  border-left: 5px solid var(--accent-red) !important;
  background: linear-gradient(90deg, rgba(230, 0, 46, 0.1), transparent) !important;
  color: #ffffff !important;
  padding: 10px 14px !important;
}

/* ===== 🔥 PLAYボタン（脈動アニメーション） ===== */
@keyframes sensualPulse {
  0%, 100% {
    box-shadow: 0 4px 15px rgba(230, 0, 46, 0.4);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 6px 30px rgba(230, 0, 46, 0.7), 0 0 40px rgba(230, 0, 46, 0.25);
    transform: scale(1.03);
  }
}

.wp-block-cocoon-blocks-button-1 a.btn,
.btn-l,
.button-block a {
  display: inline-block !important;
  width: 90% !important;
  max-width: 420px !important;
  padding: 16px 24px !important;
  background: linear-gradient(135deg, #e6002e 0%, #ff1a5e 40%, #c70028 100%) !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  font-size: 18px !important;
  letter-spacing: 2px !important;
  border: 1.5px solid rgba(255, 100, 130, 0.5) !important;
  border-radius: 40px !important;
  animation: sensualPulse 2s infinite ease-in-out !important;
}

/* ===== SIDEBAR & FOOTER ===== */
.sidebar, #sidebar { background: transparent !important; }
.sidebar .widget-sidebar {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: 10px !important;
  padding: 16px !important;
  margin-bottom: 20px !important;
}
.sidebar h3, .widget-title {
  color: #ffffff !important;
  border-left: 4px solid var(--accent-red) !important;
  padding-left: 10px !important;
}

.footer, #footer {
  background: #060409 !important;
  border-top: 1px solid var(--border-subtle) !important;
  color: var(--text-muted) !important;
}

/* 広告枠 */
.exoclick-ad-wrapper, .exoclick-ad-wrapper-top, .exoclick-native-ad-wrapper {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: 10px !important;
}

/* スクロールバー */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg-deep); }
::-webkit-scrollbar-thumb { background: var(--accent-crimson); border-radius: 4px; }
