@charset "UTF-8";

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

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/* ===== 人気記事ランキング（WP Popular Posts / #wk-pop-card） ===== */
/* データがまだないときはカードごと非表示 */
#wk-pop-card:has(.wpp-no-data) { display: none; }

#wk-pop-card .wpp-list {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: wakarank;
}
#wk-pop-card .wpp-list li {
  counter-increment: wakarank;
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(59, 35, 20, 0.10);
}
#wk-pop-card .wpp-list li:last-child { border-bottom: none; }
#wk-pop-card .wpp-list li::before {
  content: counter(wakarank);
  position: absolute;
  top: 6px;
  left: 2px;
  width: 22px;
  height: 22px;
  line-height: 22px;
  text-align: center;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 700;
  color: #3B2314;
  background: #D9D9D9;
  box-shadow: 0 1px 3px rgba(0,0,0,.25);
  z-index: 2;
}
#wk-pop-card .wpp-list li:nth-child(1)::before { background: linear-gradient(135deg, #F7DC8A, #D4A11E); }
#wk-pop-card .wpp-list li:nth-child(2)::before { background: linear-gradient(135deg, #EAEAEA, #B4B4B4); }
#wk-pop-card .wpp-list li:nth-child(3)::before { background: linear-gradient(135deg, #E6B084, #B06A34); color: #fff; }
#wk-pop-card .wpp-thumbnail {
  width: 75px;
  height: 75px;
  object-fit: cover;
  border-radius: 6px;
  margin: 0;
  flex: 0 0 75px;
  display: block;
}
#wk-pop-card .wpp-post-title {
  display: block;
  font-size: 13px;
  line-height: 1.5;
  color: #3B2314;
  text-decoration: none;
}
#wk-pop-card .wpp-post-title:hover { text-decoration: underline; }
#wk-pop-card .wpp-excerpt,
#wk-pop-card .wpp-meta,
#wk-pop-card .post-stats { display: none; }

/* ===== トップページの人気記事ランキング（#wk-pop-home） ===== */
#wk-pop-home:has(.wpp-no-data) { display: none; }
#wk-pop-home { margin-bottom: 38px; }
#wk-pop-home .wpp-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  counter-reset: wakarankh;
}
#wk-pop-home .wpp-list li {
  counter-increment: wakarankh;
  position: relative;
  background: #fff;
  border: 1px solid rgba(59, 35, 20, 0.10);
  border-radius: 10px;
  overflow: hidden;
  padding-bottom: 12px;
  transition: transform .15s ease, box-shadow .15s ease;
}
#wk-pop-home .wpp-list li:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(59, 35, 20, 0.12);
}
#wk-pop-home .wpp-list li::before {
  content: counter(wakarankh);
  position: absolute;
  top: 8px;
  left: 8px;
  width: 26px;
  height: 26px;
  line-height: 26px;
  text-align: center;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 800;
  color: #3B2314;
  background: #D9D9D9;
  box-shadow: 0 2px 5px rgba(0,0,0,.3);
  z-index: 2;
}
#wk-pop-home .wpp-list li:nth-child(1)::before { background: linear-gradient(135deg, #F7DC8A, #D4A11E); }
#wk-pop-home .wpp-list li:nth-child(2)::before { background: linear-gradient(135deg, #EAEAEA, #B4B4B4); }
#wk-pop-home .wpp-list li:nth-child(3)::before { background: linear-gradient(135deg, #E6B084, #B06A34); color: #fff; }
#wk-pop-home .wpp-thumbnail {
  width: 100%;
  height: 140px;
  object-fit: cover;
  display: block;
  margin: 0;
  border-radius: 0;
}
#wk-pop-home .wpp-post-title {
  display: block;
  padding: 10px 12px 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
  color: #3B2314;
  text-decoration: none;
}
#wk-pop-home .wpp-post-title:hover { text-decoration: underline; }
#wk-pop-home .wpp-excerpt,
#wk-pop-home .wpp-meta,
#wk-pop-home .post-stats { display: none; }
@media (max-width: 768px) {
  #wk-pop-home .wpp-list { grid-template-columns: 1fr; }
  #wk-pop-home .wpp-thumbnail { height: 160px; }
}


/* ================= WK8 GLOBAL 8-BIT SKIN (P2 Stage 1) ================= */
/* Scoped to non-home pages via body:not(.wk8). Home uses its own inline CSS. */
:root{
  --wk8-cream:#ece4d3; --wk8-cream2:#f3eddf; --wk8-navy:#23262f; --wk8-green:#1f7a5c; --wk8-green2:#2f7d6b;
  --wk8-gold:#d99a1a; --wk8-blue:#2f6f9e; --wk8-pink:#c07a90; --wk8-gray:#C2C3C7;
  --wk8-dot:'DotGothic16',sans-serif; --wk8-arc:'Press Start 2P',monospace;
  --wk8-bg:#ece4d3; --wk8-card:#ffffff; --wk8-text:#2b2b33; --wk8-muted:#5a5e68; --wk8-line:#23262f; --wk8-panel:#f3eddf;
}
html.wk8-dark{
  --wk8-bg:#16171d; --wk8-card:#20232c; --wk8-text:#d9dae2; --wk8-muted:#a7abb8; --wk8-line:#0e0f14; --wk8-panel:#1f222b;
}

/* ---- base / background ---- */
body:not(.wk8){ background:var(--wk8-bg); color:var(--wk8-text); font-family:var(--wk8-dot); }
html.wk8-dark body:not(.wk8){ background:var(--wk8-bg) !important; }
body:not(.wk8) #container, body:not(.wk8) #main, body:not(.wk8) #content,
body:not(.wk8) .main, body:not(.wk8) .content-in, body:not(.wk8) #main-in{ background:transparent !important; }

/* ---- header (existing wk-nav header) ---- */
body:not(.wk8) #header{ background:var(--wk8-card) !important; border-bottom:4px solid var(--wk8-line); box-shadow:0 4px 0 rgba(0,0,0,.4); }
body:not(.wk8) .wk-nav > a, body:not(.wk8) .wk-nav > span > a{ font-family:var(--wk8-dot) !important; }

/* ---- article card ---- */
body:not(.wk8) .article{
  background:var(--wk8-card); border:4px solid var(--wk8-line);
  box-shadow:0 0 0 4px var(--wk8-blue),8px 8px 0 rgba(0,0,0,.4);
  padding:26px 28px; color:var(--wk8-text); border-radius:0;
}
body:not(.wk8) .entry-title, body:not(.wk8) .article-title, body:not(.wk8) h1.entry-title{
  font-family:var(--wk8-dot) !important; font-weight:400; color:var(--wk8-navy);
  text-shadow:3px 3px 0 var(--wk8-gold); border:0; line-height:1.5;
}
html.wk8-dark body:not(.wk8) .entry-title{ color:#f0f1f5; }

/* ---- entry content typography ---- */
body:not(.wk8) .entry-content{ color:var(--wk8-text); font-family:var(--wk8-dot); line-height:2; font-size:16px; }
body:not(.wk8) .entry-content a{ color:var(--wk8-blue); }
html.wk8-dark body:not(.wk8) .entry-content a{ color:#6fb0e0; }
body:not(.wk8) .entry-content strong{ color:var(--wk8-gold); }
body:not(.wk8) .entry-content h2, body:not(.wk8) .entry-content .wp-block-heading{
  font-family:var(--wk8-dot) !important; font-weight:400; color:#fff; background:var(--wk8-green);
  border:3px solid var(--wk8-line); box-shadow:4px 4px 0 rgba(0,0,0,.4);
  padding:12px 16px; border-radius:0; border-left:8px solid var(--wk8-gold);
}
body:not(.wk8) .entry-content h3{
  font-family:var(--wk8-dot) !important; font-weight:400; color:var(--wk8-navy);
  border-left:6px solid var(--wk8-blue); border-bottom:2px dashed var(--wk8-blue);
  padding:6px 0 6px 12px; background:transparent;
}
html.wk8-dark body:not(.wk8) .entry-content h3{ color:#e8e9ee; }
body:not(.wk8) .entry-content h4{ font-family:var(--wk8-dot) !important; color:var(--wk8-green2); border-left:5px solid var(--wk8-green2); padding-left:10px; }
body:not(.wk8) .entry-content blockquote{ border:3px solid var(--wk8-line); border-left:8px solid var(--wk8-pink); background:var(--wk8-panel); box-shadow:4px 4px 0 rgba(0,0,0,.3); }
body:not(.wk8) .entry-content table, body:not(.wk8) .entry-content .wp-block-table table{ border:3px solid var(--wk8-line); }
body:not(.wk8) .entry-content th{ background:var(--wk8-navy); color:#fff; border:2px solid var(--wk8-line); font-family:var(--wk8-dot); }
body:not(.wk8) .entry-content td{ background:var(--wk8-card); color:var(--wk8-text); border:2px solid var(--wk8-line); }
body:not(.wk8) .entry-content hr, body:not(.wk8) .entry-content .wp-block-separator{ border:0; border-top:3px dashed var(--wk8-blue); background:transparent; height:0; }
body:not(.wk8) .entry-content ul li, body:not(.wk8) .entry-content ol li{ line-height:1.9; }
/* TOC (Cocoon table of contents) */
body:not(.wk8) .toc{ background:var(--wk8-panel) !important; border:3px solid var(--wk8-line) !important; box-shadow:4px 4px 0 rgba(0,0,0,.3); border-radius:0 !important; }
body:not(.wk8) .toc .toc-title{ font-family:var(--wk8-dot); color:var(--wk8-gold); }
body:not(.wk8) .toc a{ color:var(--wk8-blue); }
html.wk8-dark body:not(.wk8) .toc a{ color:#6fb0e0; }

/* ---- date / meta ---- */
body:not(.wk8) .date-tags, body:not(.wk8) .post-meta, body:not(.wk8) .entry-read-time{ font-family:var(--wk8-arc); font-size:10px; color:var(--wk8-muted); }

/* ---- sidebar ---- */
body:not(.wk8) #sidebar{ color:var(--wk8-text); }
body:not(.wk8) #sidebar h3, body:not(.wk8) #sidebar .widget-name, body:not(.wk8) #sidebar .widget h4{ font-family:var(--wk8-dot) !important; }
body:not(.wk8) #sidebar .widget{ background:var(--wk8-card); border:4px solid var(--wk8-line); box-shadow:0 0 0 3px var(--wk8-pink),7px 7px 0 rgba(0,0,0,.4); padding:16px; border-radius:0; }
body:not(.wk8) #sidebar .widget a{ color:var(--wk8-text); }

/* ---- footer ---- */
body:not(.wk8) #footer{ background:var(--wk8-navy) !important; border-top:4px solid var(--wk8-green); box-shadow:0 -4px 0 rgba(0,0,0,.4); color:var(--wk8-gray); }
body:not(.wk8) #footer a{ color:var(--wk8-gray); }
body:not(.wk8) #footer a:hover{ color:var(--wk8-gold); }
body:not(.wk8) .copyright{ font-family:var(--wk8-dot); color:#6b76a6; }

/* ---- buttons / cards common ---- */
body:not(.wk8) .wp-block-button__link, body:not(.wk8) .btn{ font-family:var(--wk8-dot) !important; border:3px solid var(--wk8-line) !important; box-shadow:4px 4px 0 #000; border-radius:0 !important; }

/* ---- pagination / related ---- */
body:not(.wk8) .pagination .page-numbers{ font-family:var(--wk8-arc); border:3px solid var(--wk8-line); box-shadow:2px 2px 0 #000; border-radius:0; }

/* ---- theme toggle (segmented) — shared, used once header adds it ---- */
.wk8-themesw{display:inline-flex;border:3px solid var(--wk8-navy);box-shadow:3px 3px 0 #000;cursor:pointer;line-height:1;overflow:hidden;user-select:none;vertical-align:middle;}
.wk8-themesw .seg{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;font-size:14px;background:#ece3d0;color:#8b8f9a;}
.wk8-themesw .seg b{font-family:var(--wk8-arc);font-size:8px;font-weight:400;}
.wk8-themesw .s-dark{border-left:3px solid var(--wk8-navy);}
html:not(.wk8-dark) .wk8-themesw .s-light{background:var(--wk8-gold);color:#1a1a00;}
html.wk8-dark .wk8-themesw{border-color:#0e0f14;}
html.wk8-dark .wk8-themesw .seg{background:#2b2f3a;color:#8b8f9a;}
html.wk8-dark .wk8-themesw .s-dark{background:var(--wk8-blue);color:#fff;border-left-color:#0e0f14;}

/* ---- global marquee (added in header) ---- */
.wk8-gmarq{background:var(--wk8-navy);border-bottom:4px solid var(--wk8-green);overflow:hidden;white-space:nowrap;}
.wk8-gmarq span{display:inline-block;font-family:var(--wk8-arc);font-size:10px;color:var(--wk8-gold);padding:8px 0;animation:wk8gmarq 22s linear infinite;}
.wk8-gmarq span i{padding:0 40px;font-style:normal;}
@keyframes wk8gmarq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ---- custom sidebar cards (wk-side-card) dark mode ---- */
html.wk8-dark body:not(.wk8) #sidebar .wk-side-card{ background:#20232c; border-color:#0e0f14; color:#d9dae2; }
html.wk8-dark body:not(.wk8) #sidebar .wk-side-card a{ color:#c3c6d0; }
html.wk8-dark body:not(.wk8) #sidebar .wk-side-title{ color:#e8e9ee; }
html.wk8-dark body:not(.wk8) #sidebar .wk-search input{ background:#12131a; border-color:#0e0f14; color:#d9dae2; }
html.wk8-dark body:not(.wk8) #sidebar .wk-recent .rt, html.wk8-dark body:not(.wk8) #sidebar .wk-recent a{ color:#c3c6d0; }
html.wk8-dark body:not(.wk8) #sidebar .wk-cats a{ background:#1f222b; border-color:#0e0f14; color:#c3c6d0; }
html.wk8-dark body:not(.wk8) #sidebar .wk-prof-bio, html.wk8-dark body:not(.wk8) #sidebar .wk-prof-role{ color:#a7abb8; }
html.wk8-dark body:not(.wk8) #sidebar .wpp-shortcode li a{ color:#c3c6d0; }

/* ================= WK8 P3: article-body polish + mobile tuning ================= */
/* --- body reading polish (all widths) --- */
body:not(.wk8) .entry-content > *:first-child{ margin-top:0; }
body:not(.wk8) .entry-content .wp-block-image img,
body:not(.wk8) .entry-content figure.wp-block-image img{ border:3px solid var(--wk8-line); box-shadow:5px 5px 0 rgba(0,0,0,.26); border-radius:0; }
body:not(.wk8) .entry-content figcaption,
body:not(.wk8) .entry-content .wp-element-caption{ font-family:var(--wk8-arc); font-size:10px; color:var(--wk8-muted); text-align:center; margin-top:6px; }
/* table: guarantee horizontal scroll rather than overflow */
body:not(.wk8) .entry-content .wp-block-table,
body:not(.wk8) .entry-content figure.wp-block-table{ overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%; }

/* --- MOBILE tier 1 (<=782px): tablets / large phones --- */
@media screen and (max-width:782px){
  body:not(.wk8) .wk-site{ overflow-x:hidden; }
  body:not(.wk8) .article{ padding:20px 18px; box-shadow:0 0 0 3px var(--wk8-blue),5px 5px 0 rgba(0,0,0,.4); }
  body:not(.wk8) .entry-title,
  body:not(.wk8) h1.entry-title{ font-size:22px; line-height:1.45; text-shadow:2px 2px 0 var(--wk8-gold); }
  body:not(.wk8) .entry-content{ font-size:15.5px; line-height:1.9; }
  body:not(.wk8) .entry-content h2,
  body:not(.wk8) .entry-content .wp-block-heading{ font-size:19px; padding:9px 13px; box-shadow:3px 3px 0 rgba(0,0,0,.4); border-left-width:7px; }
  body:not(.wk8) .entry-content h3{ font-size:16px; }
  body:not(.wk8) .entry-content .wp-block-image img{ box-shadow:3px 3px 0 rgba(0,0,0,.26); }
  body:not(.wk8) .entry-content table{ font-size:13px; }
}

/* --- MOBILE tier 2 (<=430px): phones --- */
@media screen and (max-width:430px){
  body:not(.wk8) .article{ padding:15px 12px; box-shadow:0 0 0 2px var(--wk8-blue),4px 4px 0 rgba(0,0,0,.4); }
  body:not(.wk8) .entry-title,
  body:not(.wk8) h1.entry-title{ font-size:19px; text-shadow:2px 2px 0 var(--wk8-gold); }
  body:not(.wk8) .entry-content{ font-size:15px; }
  body:not(.wk8) .entry-content h2,
  body:not(.wk8) .entry-content .wp-block-heading{ font-size:17px; padding:8px 11px; }
  body:not(.wk8) .entry-content h3{ font-size:15px; }
  /* header: hide toggle text labels, keep sun/moon icons, to avoid crowding */
  .wk8-themesw .seg b{ display:none; }
  .wk8-themesw .seg{ padding:6px 8px; font-size:16px; }
  /* marquee slightly smaller */
  .wk8-gmarq span{ font-size:9px; }
}

/* ================= WK8 HEADER (from top page) — unify non-home header ================= */
.wk8-marq { background: var(--navy); border-bottom: 4px solid var(--green); overflow: hidden; white-space: nowrap; }
.wk8-marq span { display: inline-block; font-family: var(--arc); font-size: 10px; color: var(--gold); padding: 8px 0px; animation: 22s linear 0s infinite normal none running wk8marq; }
.wk8-marq span i { padding: 0px 40px; font-style: normal; }
.wk8-ticker { background: var(--navy); border-bottom: 4px solid var(--navy); box-shadow: inset 0 0 0 2px var(--blue); }
.wk8-ticker .tradingview-widget-copyright { display: none; }
.wk8-head { background: rgb(255, 255, 255); border-bottom: 4px solid var(--navy); box-shadow: rgba(0, 0, 0, 0.5) 0px 4px 0px; position: relative; z-index: 50; }
.wk8-head .in { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 14px 20px; }
.wk8-logo { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.wk8-logo .badge { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: var(--green); border: 3px solid var(--navy); box-shadow: rgb(0, 0, 0) 3px 3px 0px; font-family: var(--dot); font-size: 26px; color: rgb(255, 255, 255); }
.wk8-logo .n1 { font-family: var(--arc); font-size: 12px; color: var(--green); }
.wk8-logo .n2 { font-family: var(--dot); font-size: 14px; color: rgb(106, 110, 120); }
.wk8-nav { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.wk8-nav .item { position: relative; }
.wk8-nav .tg { font-family: var(--dot); font-size: 14px; background: rgb(236, 227, 208); color: var(--ink); border: 3px solid var(--navy); box-shadow: rgb(0, 0, 0) 3px 3px 0px; padding: 9px 12px; cursor: pointer; }
.wk8-nav .tg:hover { background: var(--green); color: rgb(255, 255, 255); }
.wk8-nav .dd { position: absolute; top: calc(100% + 8px); left: 0px; min-width: 230px; background: var(--cream2); border: 4px solid var(--navy); box-shadow: 0 0 0 3px var(--gold),7px 7px 0 rgba(0,0,0,.6); padding: 8px; z-index: 60; display: none; flex-direction: column; gap: 4px; }
.wk8-nav .item.open .dd { display: flex; }
.wk8-nav .dd a { font-family: var(--dot); font-size: 14px; color: var(--ink); text-decoration: none; padding: 8px 10px; border: 2px solid transparent; }
.wk8-nav .dd a:hover { background: var(--gold); color: rgb(26, 26, 0); border: 2px solid var(--navy); }
.wk8-burger { display: none; }
.wk8-tag { display: inline-block; font-family: var(--dot); font-size: 13px; background: var(--green2); color: rgb(4, 34, 15); border: 3px solid var(--navy); box-shadow: rgb(0, 0, 0) 3px 3px 0px; padding: 6px 10px; margin-bottom: 20px; }
@media (max-width: 900px){
  .wk8-nav { display: none; position: absolute; top: 100%; left: 0px; right: 0px; background: rgb(255, 255, 255); border-bottom: 4px solid var(--navy); flex-direction: column; padding: 14px 20px; box-shadow: rgba(0, 0, 0, 0.4) 0px 8px 0px; }
  .wk8-nav.open { display: flex; }
  .wk8-nav .item, .wk8-nav .tg { width: 100%; }
  .wk8-nav .dd { position: static; box-shadow: none; border-width: 2px; }
  .wk8-burger { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; background: var(--gold); color: rgb(26, 26, 0); border: 3px solid var(--navy); box-shadow: rgb(0, 0, 0) 3px 3px 0px; font-size: 20px; cursor: pointer; }
}
.wk8-themesw { display: inline-flex; border: 3px solid var(--navy); box-shadow: rgb(0, 0, 0) 3px 3px 0px; cursor: pointer; line-height: 1; overflow: hidden; user-select: none; }
.wk8-themesw .seg { display: inline-flex; align-items: center; gap: 5px; padding: 7px 9px; font-size: 14px; background: rgb(236, 227, 208); color: rgb(139, 143, 154); }
.wk8-themesw .seg b { font-family: var(--arc); font-size: 8px; font-weight: 400; }
.wk8-themesw .s-dark { border-left: 3px solid var(--navy); }
html:not(.wk8-dark) .wk8-themesw .s-light { background: var(--gold); color: rgb(26, 26, 0); }
.wk8-dark .wk8-themesw { border-color: rgb(14, 15, 20); }
.wk8-dark .wk8-themesw .seg { background: rgb(43, 47, 58); color: rgb(139, 143, 154); }
.wk8-dark .wk8-themesw .s-dark { background: var(--blue); color: rgb(255, 255, 255); border-left-color: rgb(14, 15, 20); }
.wk8-dark .wk8-head { background: rgb(32, 35, 44); border-bottom-color: rgb(14, 15, 20); }
.wk8-dark .wk8-logo .n2 { color: rgb(154, 160, 176); }
.wk8-dark .wk8-nav .tg { background: rgb(43, 47, 58); color: rgb(217, 218, 226); border-color: rgb(14, 15, 20); }
.wk8-dark .wk8-nav .dd { background: rgb(32, 35, 44); }
.wk8-dark .wk8-nav .dd a { color: rgb(217, 218, 226); }
.wk8-themesw { display: inline-flex; border: 3px solid var(--wk8-navy); box-shadow: rgb(0, 0, 0) 3px 3px 0px; cursor: pointer; line-height: 1; overflow: hidden; user-select: none; vertical-align: middle; }
.wk8-themesw .seg { display: inline-flex; align-items: center; gap: 5px; padding: 7px 9px; font-size: 14px; background: rgb(236, 227, 208); color: rgb(139, 143, 154); }
.wk8-themesw .seg b { font-family: var(--wk8-arc); font-size: 8px; font-weight: 400; }
.wk8-themesw .s-dark { border-left: 3px solid var(--wk8-navy); }
html:not(.wk8-dark) .wk8-themesw .s-light { background: var(--wk8-gold); color: rgb(26, 26, 0); }
html.wk8-dark .wk8-themesw { border-color: rgb(14, 15, 20); }
html.wk8-dark .wk8-themesw .seg { background: rgb(43, 47, 58); color: rgb(139, 143, 154); }
html.wk8-dark .wk8-themesw .s-dark { background: var(--wk8-blue); color: rgb(255, 255, 255); border-left-color: rgb(14, 15, 20); }
@media screen and (max-width: 430px){
  .wk8-themesw .seg b { display: none; }
  .wk8-themesw .seg { padding: 6px 8px; font-size: 16px; }
}

/* WK8 HEADER z-index fix (dropdown above sidebar on non-home) */
body:not(.wk8) .wk8-head{ position:relative; z-index:9990; }
body:not(.wk8) .wk8-nav{ position:relative; }
body:not(.wk8) .wk8-nav .dd{ z-index:9991; }

/* ================= WK8 LIST CARDS (archive/search/category) + remove 無料 badge ================= */
/* remove leftover 無料 pseudo-badge (defined in Cocoon customizer CSS) */
body:not(.wk8) .entry-card-content::before,
body:not(.wk8) .card-content::before,
body:not(.wk8) .e-card-content::before{ content:none !important; display:none !important; }

/* 8-bit skin for list/archive/search cards */
body:not(.wk8) .list .entry-card-wrap,
body:not(.wk8) .list .a-wrap,
body:not(.wk8) .list article.post{
  border:3px solid var(--wk8-line,#26282e) !important;
  border-radius:0 !important;
  box-shadow:5px 5px 0 rgba(0,0,0,.26) !important;
  transition:transform .08s ease, box-shadow .08s ease;
}
body:not(.wk8) .list .entry-card-wrap:hover,
body:not(.wk8) .list .a-wrap:hover{
  transform:translate(-2px,-2px);
  box-shadow:7px 7px 0 var(--wk8-blue,#2f6df6) !important;
}
body:not(.wk8) .list .cat-label{
  border-radius:0 !important;
  font-family:var(--wk8-arc,monospace);
  font-size:9px;
  letter-spacing:.5px;
  border:2px solid #fff;
  box-shadow:2px 2px 0 rgba(0,0,0,.3);
}
body:not(.wk8) .list .entry-card-title,
body:not(.wk8) .list .entry-card-snippet{ font-family:inherit; }

/* dark mode list cards */
html.wk8-dark body:not(.wk8) .list .entry-card-wrap,
html.wk8-dark body:not(.wk8) .list .a-wrap,
html.wk8-dark body:not(.wk8) .list article.post{
  background:#20232c !important;
  border-color:#3a3f4b !important;
}
html.wk8-dark body:not(.wk8) .list .entry-card-title a,
html.wk8-dark body:not(.wk8) .list .entry-card-snippet{ color:#e8e8ec !important; }

/* ================= WK8 404 CTA ================= */
.wk8-404inner{ margin-top:24px; padding:20px; border:3px dashed var(--wk8-line,#26282e); }
.wk8-404lead{ font-size:14px; line-height:1.85; margin:0 0 16px; }
.wk8-404btns{ margin-bottom:20px; }
.wk8-404btn{ display:inline-block; padding:12px 22px; background:var(--wk8-gold,#f5b301); color:#1a1a1a; border:3px solid var(--wk8-line,#26282e); box-shadow:4px 4px 0 rgba(0,0,0,.35); font-weight:700; text-decoration:none; font-family:var(--wk8-arc,monospace); transition:transform .08s ease, box-shadow .08s ease; }
.wk8-404btn:hover{ transform:translate(-2px,-2px); box-shadow:6px 6px 0 var(--wk8-blue,#2f6df6); }
.wk8-404h{ font-family:var(--wk8-arc,monospace); font-size:12px; margin-bottom:10px; color:var(--wk8-blue,#2f6df6); letter-spacing:.5px; }
.wk8-404recent ul{ list-style:none; margin:0; padding:0; }
.wk8-404recent li{ border-bottom:2px dotted #cfcfcf; padding:9px 2px; }
.wk8-404recent li:last-child{ border-bottom:none; }
.wk8-404recent li a{ text-decoration:none; font-weight:600; }
.wk8-404recent li a:hover{ color:var(--wk8-blue,#2f6df6); }
html.wk8-dark .wk8-404inner{ border-color:#3a3f4b; }
html.wk8-dark .wk8-404lead{ color:#e8e8ec; }
html.wk8-dark .wk8-404recent li{ border-bottom-color:#3a3f4b; }
html.wk8-dark .wk8-404recent li a{ color:#e8e8ec; }

/* ================= WK8 HEADER unify FIX: fonts + ticker bg (non-home) ================= */
/* Press Start 2P (pixel) for logo main + marquee */
html body:not(.wk8) .wk8-marq,
html body:not(.wk8) .wk8-marq span,
html body:not(.wk8) .wk8-marq i,
html body:not(.wk8) .wk8-logo .n1{ font-family:'Press Start 2P','DotGothic16',monospace !important; }

/* DotGothic16 for sub-logo, sub-banner, nav buttons, toggle */
html body:not(.wk8) .wk8-logo .n2,
html body:not(.wk8) .wk8-tag,
html body:not(.wk8) .wk8-nav .tg,
html body:not(.wk8) .wk8-nav .dd a,
html body:not(.wk8) .wk8-themesw .seg,
html body:not(.wk8) .wk8-themesw .seg b{ font-family:'DotGothic16','Noto Sans JP',sans-serif !important; }

/* ticker: navy background + no brown frame (match top's .wk8-ticker) */
html body:not(.wk8) .wk-ticker{ background:#23262f !important; border:0 !important; box-shadow:none !important; }
html body:not(.wk8) .wk-ticker *{ border-color:transparent !important; }

/* ================= WK8 READABILITY: body gothic font + comfort ================= */
/* prose & small headings -> clean gothic (keep pixel/dot for h2, chrome, buttons) */
body:not(.wk8) .entry-content p,
body:not(.wk8) .entry-content li,
body:not(.wk8) .entry-content td,
body:not(.wk8) .entry-content th,
body:not(.wk8) .entry-content dd,
body:not(.wk8) .entry-content h3,
body:not(.wk8) .entry-content h4,
body:not(.wk8) .entry-content h5{
  font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif !important;
}
/* reading rhythm */
body:not(.wk8) .entry-content p,
body:not(.wk8) .entry-content li{
  font-size:16px;
  line-height:1.9;
  letter-spacing:.03em;
}
body:not(.wk8) .entry-content p{ margin-bottom:1.5em; }

/* light-mode card: shave pure-white glare (kept clearly lighter than cream page) */
body:not(.wk8) .article{ background:#fcfbf9; }

/* WK8 MARKET CLOCK OPEN lamp (blinking) */
.wk-clock .st.open .wk8-lamp{ display:inline-block; margin-right:3px; font-size:.8em; animation:wk8blink 1.1s steps(1,end) infinite; }
.wk-clock .st.open{ color:#38d66b !important; }
@keyframes wk8blink{ 0%,60%{opacity:1;} 61%,100%{opacity:.15;} }
@media (prefers-reduced-motion:reduce){ .wk-clock .st.open .wk8-lamp{ animation:none; } }

/* WK8 top multi-city clock rows */
.wk8-clock .wk8-crow{ display:flex; align-items:center; justify-content:space-between; gap:8px; font-family:var(--dot,"DotGothic16",sans-serif); font-size:12px; padding:5px 2px; border-top:1px dashed rgba(255,255,255,.15); }
.wk8-clock .wk8-crow:first-of-type{ border-top:none; margin-top:6px; }
.wk8-clock .wk8-crow .c{ flex:1; white-space:nowrap; }
.wk8-clock .wk8-crow .t{ font-family:var(--arc,"Press Start 2P",monospace); font-size:11px; letter-spacing:.5px; }
.wk8-clock .wk8-crow .s{ font-size:9px; padding:1px 5px; border-radius:2px; }
.wk8-clock .wk8-crow .s.close{ opacity:.6; }
.wk8-clock .wk8-crow .s.open{ color:#38d66b; font-weight:bold; }
.wk8-clock .wk8-crow .s.open .wk8-lamp{ margin-right:2px; animation:wk8blink 1.1s steps(1,end) infinite; }

/* wk8-crow color fix: light text on navy clock */
.wk8-clock .wk8-crow, .wk8-clock .wk8-crow .c, .wk8-clock .wk8-crow .t{ color:#e6e7ee !important; }
.wk8-clock .wk8-crow .s.close{ color:#aeb2bf !important; opacity:1; }

/* ================= WK8 SIDEBAR unify (from top .wk8-side) ================= */
:root{ --navy:#23262f; --dot:'DotGothic16',sans-serif; --gold:#d99a1a; --arc:'Press Start 2P',monospace; --green2:#2f7d6b; --blue:#2f6f9e; --gray:#C2C3C7; --cream2:#f3eddf; --green:#1f7a5c; }
.wk8-side { display: flex; flex-direction: column; gap: 26px; min-width: 0px; }
.wk8-box { background: rgb(255, 255, 255); border: 4px solid var(--navy); padding: 18px; }
.wk8-box .hd { font-family: var(--dot); font-size: 16px; margin-bottom: 12px; }
.wk8-prof { display: flex; flex-direction: column; align-items: center; text-align: center; }
.wk8-prof .pic { background: rgb(255, 255, 255); border: 4px solid var(--gold); padding: 8px; margin-bottom: 14px; }
.wk8-prof .pic img { width: 110px; height: auto; image-rendering: pixelated; }
.wk8-prof .nm { font-family: var(--arc); font-size: 16px; color: var(--gold); text-shadow: rgb(0, 0, 0) 2px 2px 0px; margin-bottom: 8px; }
.wk8-prof .rl { font-family: var(--dot); font-size: 12px; color: var(--green2); margin-bottom: 12px; }
.wk8-prof .bio { font-family: var(--dot); font-size: 12px; line-height: 1.8; color: rgb(106, 110, 120); margin: 0px 0px 16px; }
.wk8-soc { display: flex; gap: 8px; }
.wk8-soc a { font-family: var(--arc); font-size: 10px; color: rgb(26, 26, 0); text-decoration: none; border: 3px solid var(--navy); box-shadow: rgb(0, 0, 0) 2px 2px 0px; padding: 8px 10px; }
.wk8-clock { background: var(--navy); border: 4px solid var(--blue); box-shadow: 0 0 0 4px var(--navy),8px 8px 0 rgba(0,0,0,.5); padding: 18px; text-align: center; }
.wk8-clock .lb { font-family: var(--arc); font-size: 11px; color: var(--blue); margin-bottom: 12px; letter-spacing: 1px; }
.wk8-clock .tm { font-family: var(--arc); font-size: 28px; color: var(--green2); text-shadow: rgba(0, 228, 54, 0.6) 0px 0px 8px; margin-bottom: 8px; letter-spacing: 2px; }
.wk8-clock .zn { font-family: var(--dot); font-size: 12px; color: var(--gray); }
.wk8-recent a { display: flex; gap: 10px; align-items: flex-start; text-decoration: none; padding: 9px 6px; border-bottom: 2px dotted var(--blue); }
.wk8-recent a:hover { background: var(--cream2); }
.wk8-recent .rd { flex: 0 0 auto; font-family: var(--arc); font-size: 9px; color: var(--gold); padding-top: 2px; }
.wk8-recent .rt { font-family: var(--dot); font-size: 12px; color: rgb(58, 61, 71); line-height: 1.5; }
.wk8-scta { display: block; text-decoration: none; border: 4px solid var(--navy); box-shadow: 0 0 0 3px var(--navy),7px 7px 0 rgba(0,0,0,.55); padding: 18px; }
.wk8-scta .st { font-family: var(--dot); font-size: 16px; color: rgb(26, 26, 0); margin-bottom: 8px; }
.wk8-scta .sd { font-family: var(--dot); font-size: 12px; color: rgb(42, 26, 0); line-height: 1.7; margin-bottom: 12px; }
.wk8-scta .sl { font-family: var(--dot); font-size: 13px; color: var(--navy); font-weight: 700; }
.wk8-cats a { display: flex; justify-content: space-between; align-items: center; gap: 10px; text-decoration: none; padding: 9px 10px; background: var(--cream2); border: 2px solid var(--navy); margin-bottom: 8px; }
.wk8-cats a:hover { background: var(--gold); }
.wk8-cats .ct { font-family: var(--dot); font-size: 13px; color: rgb(58, 61, 71); line-height: 1.4; }
.wk8-cats .cn { flex: 0 0 auto; font-family: var(--arc); font-size: 10px; color: rgb(255, 255, 255); background: var(--green); border: 2px solid var(--navy); padding: 4px 6px; }
.wk8-dark .wk8-box { background: rgb(32, 35, 44); border-color: rgb(14, 15, 20); }
.wk8-dark .wk8-recent .rt { color: rgb(195, 198, 208); }
.wk8-dark .wk8-cats a { background: rgb(31, 34, 43); border-color: rgb(14, 15, 20); }
.wk8-dark .wk8-cats .ct { color: rgb(195, 198, 208); }
.wk8-clock .wk8-crow { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-family: var(--dot,"DotGothic16",sans-serif); font-size: 12px; padding: 5px 2px; border-top: 1px dashed rgba(255, 255, 255, 0.15); }
.wk8-clock .wk8-crow:first-of-type { border-top-width: medium; border-top-style: none; border-top-color: currentcolor; margin-top: 6px; }
.wk8-clock .wk8-crow .c { flex: 1 1 0%; white-space: nowrap; }
.wk8-clock .wk8-crow .t { font-family: var(--arc,"Press Start 2P",monospace); font-size: 11px; letter-spacing: 0.5px; }
.wk8-clock .wk8-crow .s { font-size: 9px; padding: 1px 5px; border-radius: 2px; }
.wk8-clock .wk8-crow .s.close { opacity: 0.6; }
.wk8-clock .wk8-crow .s.open { color: rgb(56, 214, 107); font-weight: bold; }
.wk8-clock .wk8-crow .s.open .wk8-lamp { margin-right: 2px; animation: 1.1s steps(1) 0s infinite normal none running wk8blink; }
.wk8-clock .wk8-crow, .wk8-clock .wk8-crow .c, .wk8-clock .wk8-crow .t { color: rgb(230, 231, 238) !important; }
.wk8-clock .wk8-crow .s.close { color: rgb(174, 178, 191) !important; opacity: 1; }

body:not(.wk8) #sidebar .wk-sidebar-embed{ display:none !important; }

/* ================= WK8 dark sidebar readability fix ================= */
/* dim profile bio + role -> readable on dark cards (top + article) */
html.wk8-dark .wk8-side .wk8-prof p,
html.wk8-dark .wk8-side .wk8-prof .bio{ color:#b3b9c6 !important; }
html.wk8-dark .wk8-side .wk8-prof .rl{ color:#5fd0b3 !important; }
/* keizai link: kill Cocoon red bleed on article, make light */
html.wk8-dark .wk8-side .sh-green a{ color:#e6e7ee !important; }
/* article light-mode: also neutralize red link bleed in keizai box */
body:not(.wk8) .wk8-side .sh-green a{ color:#1f7a5c; }
/* hover: retro yellow, never sinks into bg */
html.wk8-dark .wk8-side a:hover{ color:#facc15 !important; }
body:not(.wk8) .wk8-side a:hover{ color:#c99700; }

/* ================= WK8 dark article card fix (glare rule must not leak into dark) ================= */
html.wk8-dark body:not(.wk8) .article{ background:#20232c !important; }
html.wk8-dark body:not(.wk8) .entry-content{ color:#d9dae2; }

/* ================= WK8 dark balloon (speech bubble) ================= */
html.wk8-dark .speech-balloon{ background:#1e293b !important; color:#e2e8f0 !important; border-color:#3d4658 !important; }
html.wk8-dark .speech-balloon p, html.wk8-dark .speech-balloon span, html.wk8-dark .speech-balloon li, html.wk8-dark .speech-balloon div{ color:#e2e8f0 !important; }
html.wk8-dark .speech-balloon a{ color:#6fb0e0 !important; }
/* pointer triangle: fill matches bubble, edge matches border (covers left/right balloons) */
html.wk8-dark .speech-balloon::after{ border-right-color:#1e293b !important; border-left-color:#1e293b !important; }
html.wk8-dark .speech-balloon::before{ border-right-color:#3d4658 !important; border-left-color:#3d4658 !important; }
/* speaker name */
html.wk8-dark .speech-name{ color:#9aa3b2 !important; }

/* ================= WK8 article header tweaks: hide sub-banner + navy marquee ================= */
body:not(.wk8) .wk8-tag{ display:none !important; }
body:not(.wk8) .wk8-marq{ background:#23262f !important; }

/* ================= WK8 feed card thumbnail (eyecatch on top page list) ================= */
.wk8-feed .wk8-art{ display:flex; flex-direction:column; overflow:hidden; }
.wk8-art-thumb{ margin:0 0 10px; width:calc(100% + 32px); margin-left:-16px; margin-top:-16px; border-bottom:3px solid var(--navy,#23262f); background:#0d0f14; line-height:0; }
.wk8-art-thumb img{ display:block; width:100%; height:150px; object-fit:cover; image-rendering:auto; }
.wk8-art-thumb + .meta{ margin-top:0; }
html.wk8-dark .wk8-art-thumb{ border-bottom-color:#3d4658; }
@media (max-width:600px){ .wk8-art-thumb img{ height:130px; } }
