@charset UTF-8;

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon
Version:    1.1.4
*/

/* ===== KabuAI Midnight Terminal Theme ===== */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=Noto+Sans+JP:wght@400;500;700&family=IBM+Plex+Mono:wght@400;600&display=swap');

:root {
  --bg: #0d1117;
  --bg2: #0f172a;
  --card: #1a2332;
  --card2: #1e293b;
  --border: #1e3a5f;
  --border2: #334155;
  --text: #e2e8f0;
  --muted: #94a3b8;
  --dim: #64748b;
  --cyan: #22d3ee;
  --green: #4ade80;
  --red: #f87171;
  --purple: #c084fc;
  --amber: #fbbf24;
}

body, html {
  background-color: var(--bg) !important;
  color: var(--text) !important;
  font-family: 'Noto Sans JP', -apple-system, sans-serif !important;
}

/* ===== SIDEBAR HIDDEN ===== */
#sidebar, .sidebar { display: none !important; }
#main { width: 100% !important; max-width: 100% !important; float: none !important; }
.content-in { display: block !important; max-width: 920px !important; margin: 0 auto !important; padding: 0 20px !important; }

/* ===== WRAPPER / CONTAINER ===== */
#wrapper, #container, #contents, #main-contents, .main-view {
  background: var(--bg) !important;
  box-shadow: none !important;
}

/* ===== HEADER ===== */
#header, #header-container, #header-container-in {
  background: var(--bg2) !important;
  border-bottom: 1px solid var(--border2) !important;
  box-shadow: none !important;
}

#site-title a, .site-name a {
  color: var(--text) !important;
  font-family: 'Syne', 'Noto Sans JP', sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  text-decoration: none !important;
}
#site-title a:hover { color: var(--cyan) !important; }

#site-description, .site-description {
  color: var(--muted) !important;
  font-size: 0.8rem !important;
}

/* ===== NAVIGATION ===== */
#navi, .navi-in, #navi-in, .global-navi {
  background: var(--bg2) !important;
  border-bottom: 1px solid var(--border) !important;
}

.navi-in ul, #navi-in ul { background: transparent !important; }

.navi-in > ul > li > a, #navi-in > ul > li > a {
  color: var(--muted) !important;
  font-family: 'Syne', 'Noto Sans JP', sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  transition: color 0.15s !important;
  text-transform: uppercase !important;
  border-bottom: 2px solid transparent !important;
}

.navi-in > ul > li > a:hover,
#navi-in > ul > li > a:hover,
.navi-in > ul > li.current-menu-item > a,
#navi-in > ul > li.current-menu-item > a {
  color: var(--cyan) !important;
  border-bottom-color: var(--cyan) !important;
  background: transparent !important;
}

/* ===== ENTRY / POST CARDS ===== */
.e-card, article.post, .post-list article, .cat-post-toc article {
  background: var(--card) !important;
  border: 1px solid var(--border2) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  transition: border-color 0.2s, transform 0.15s !important;
}

.e-card:hover, article.post:hover, .post-list article:hover {
  border-color: var(--cyan) !important;
  transform: translateY(-2px) !important;
}

/* ===== HEADINGS ===== */
h1, h2, h3, h4, h5, h6, .entry-title, .widget-title {
  color: var(--text) !important;
  font-family: 'Syne', 'Noto Sans JP', sans-serif !important;
}

.entry-title a { color: var(--text) !important; text-decoration: none !important; }
.entry-title a:hover { color: var(--cyan) !important; }

.article-header .entry-title, .post-header .entry-title {
  border-left: 4px solid var(--cyan) !important;
  padding-left: 16px !important;
}

/* ===== ENTRY CONTENT ===== */
.entry-content { color: var(--text) !important; }
.entry-content p { color: var(--muted) !important; line-height: 1.8 !important; }
.entry-content h2 { border-left: 4px solid var(--cyan) !important; padding-left: 12px !important; background: transparent !important; }
.entry-content h3 { border-left: 3px solid var(--purple) !important; padding-left: 10px !important; background: transparent !important; }
.entry-content a { color: var(--cyan) !important; }

/* ===== LINKS ===== */
a { color: var(--cyan) !important; }
a:hover { opacity: 0.75 !important; }

/* ===== META / DATE ===== */
.post-meta, .post-date, .entry-meta, .update-date, time {
  color: var(--dim) !important;
  font-size: 0.8rem !important;
  font-family: 'IBM Plex Mono', monospace !important;
}

/* ===== WIDGETS ===== */
.widget {
  background: var(--card2) !important;
  border: 1px solid var(--border2) !important;
  border-radius: 10px !important;
}
.widget-title {
  color: var(--dim) !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--border2) !important;
  padding-bottom: 8px !important;
  margin-bottom: 12px !important;
}
.widget li { border-bottom: 1px solid var(--border) !important; padding: 6px 0 !important; }
.widget li a { color: var(--muted) !important; font-size: 0.875rem !important; }

/* ===== FOOTER ===== */
#footer, #footer-container, .footer-widget-area {
  background: var(--bg2) !important;
  border-top: 1px solid var(--border) !important;
  color: var(--dim) !important;
}
#footer a { color: var(--muted) !important; }
#footer a:hover { color: var(--cyan) !important; }

/* ===== BREADCRUMB ===== */
.breadcrumb { color: var(--dim) !important; background: transparent !important; font-size: 0.8rem !important; }
.breadcrumb a { color: var(--muted) !important; }

/* ===== SHARE BUTTONS ===== */
.sns-buttons { opacity: 0.7 !important; }

/* ===== IFRAME PAGE ===== */
.entry-content iframe { border: 1px solid var(--border2) !important; border-radius: 10px !important; }

/* ===== PAGINATION ===== */
.page-numbers { background: var(--card) !important; border: 1px solid var(--border2) !important; color: var(--muted) !important; border-radius: 6px !important; }
.page-numbers.current { background: var(--cyan) !important; color: var(--bg) !important; border-color: var(--cyan) !important; }

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: var(--border2); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--muted); }
::selection { background: var(--cyan); color: var(--bg); }

/* ===== TRADE PAGE FULL WIDTH ===== */
.page-id-5 .content-in,
.page-id-5 #main,
.page-id-5 .main-view {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

.page-id-5 .article-header,
.page-id-5 .entry-meta,
.page-id-5 .sns-buttons,
.page-id-5 .breadcrumb,
.page-id-5 .article-footer {
  display: none !important;
}

.page-id-5 .entry-content {
  padding: 0 !important;
  margin: 0 !important;
}

.page-id-5 iframe {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  height: 100vh !important;
  min-height: 900px !important;
  border: none !important;
  border-radius: 0 !important;
}

.page-id-5 article,
.page-id-5 .e-card {
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}

/* ===== 朝報ショートコード ===== */
.kmb-badge {
  display: inline-block;
  background: var(--cyan);
  color: var(--bg);
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 0.85rem;
  padding: 6px 18px;
  border-radius: 20px;
  margin-bottom: 20px;
  letter-spacing: 0.03em;
}

.kmb-latest {
  margin-bottom: 12px;
}

.kmb-archive {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid var(--border2);
}

.kmb-details summary.kmb-summary {
  cursor: pointer;
  font-family: 'Syne', 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--muted);
  background: var(--card);
  border: 1px solid var(--border2);
  border-radius: 10px;
  padding: 14px 20px;
  list-style: none;
  transition: color 0.2s, border-color 0.2s;
}

.kmb-details summary.kmb-summary:hover {
  color: var(--cyan);
  border-color: var(--cyan);
}

.kmb-details[open] summary.kmb-summary {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.kmb-list {
  list-style: none;
  padding: 0;
  margin: 0;
  background: var(--card2);
  border: 1px solid var(--border2);
  border-top: none;
  border-radius: 0 0 10px 10px;
}

.kmb-list li {
  border-bottom: 1px solid var(--border);
}

.kmb-list li:last-child {
  border-bottom: none;
}

.kmb-list li a {
  display: block;
  padding: 12px 20px;
  font-size: 0.875rem;
  color: var(--muted) !important;
  text-decoration: none !important;
  transition: color 0.15s, background 0.15s;
}

.kmb-list li a:hover {
  color: var(--cyan) !important;
  background: var(--card);
}

/* ===== 朝報ページ（page-id-12）調整 ===== */
.page-id-12 article.post,
.page-id-12 .e-card,
.page-id-12 .post-list article {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* 上部・下部のシェアボタン、日付、著者フォロー等を非表示 */
.page-id-12 .article-header .entry-title,
.page-id-12 .article-header,
.page-id-12 .sns-buttons,
.page-id-12 .post-date,
.page-id-12 .post-author,
.page-id-12 .author-box,
.page-id-12 .follow-box,
.page-id-12 .article-footer,
.page-id-12 .related-entries,
.page-id-12 .comment-area,
.page-id-12 .breadcrumb {
  display: none !important;
}

.page-id-12 .entry-content {
  padding: 0 !important;
}
