@import url(https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;700;800&display=swap);
/* ===== Horror Theme - Dark Mode for kowabana-file.com ===== */

body {
  background-color: #0a0a0a !important;
  color: #d4d4d4 !important;
}

.l-header {
  background: #0d0d0d !important;
  border-bottom: 1px solid #1a1a1a !important;
}
.l-header a, .c-gnav a, .c-gnav__link {
  color: #e0e0e0 !important;
}
.l-header .c-headLogo__link { color: #e94560 !important; }

.l-mainContent, .post_content, .p-articleContent,
.l-content, .l-fixSidebar { color: #d4d4d4 !important; }

.-type-list .p-postList__item, .-type-card .p-postList__item,
.p-postList__body, .post_content, .p-articleContent,
.-type-card2 .p-postList__item {
  background: #141414 !important;
  border: 1px solid #1a1a1a !important;
  border-radius: 8px;
}

a { color: #e94560 !important; }
a:hover { color: #ff6b6b !important; }

h1, h2, h3, h4, h5, h6,
.p-articleTitle, .c-pageTitle {
  color: #e94560 !important;
}

.l-footer { background: #050505 !important; color: #888 !important; }
.l-footer a { color: #888 !important; }

.l-sidebar, .l-sidebar .widget { color: #d4d4d4 !important; }

.c-categoryBadge { background: #8b0000 !important; color: #fff !important; }

.p-breadcrumb { background: #0d0d0d !important; color: #888 !important; }
.p-breadcrumb a { color: #888 !important; }

.p-infoBar { background: #8b0000 !important; color: #fff !important; }

::selection { background: #8b0000; color: #fff; }

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0a0a0a; }
::-webkit-scrollbar-thumb { background: #333; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #8b0000; }

.search-form input, .s-entryContent input {
  background: #1a1a1a !important;
  color: #e0e0e0 !important;
  border: 1px solid #333 !important;
}

.swell-block-button a { background: #8b0000 !important; }

.p-postList__title { color: #e0e0e0 !important; }
.p-postList__excerpt { color: #999 !important; }
.p-postList__meta { color: #666 !important; }

.widget, .c-widget { background: #141414 !important; border: 1px solid #1a1a1a !important; border-radius: 8px; }
.widget_title, .c-widget__title { color: #e94560 !important; border-color: #8b0000 !important; }

.p-spMenu { background: #0a0a0a !important; }
.p-spMenu a { color: #e0e0e0 !important; }

.c-pagination .page-numbers { background: #1a1a1a !important; color: #e0e0e0 !important; }
.c-pagination .page-numbers.current { background: #8b0000 !important; color: #fff !important; }

.p-articleMetas, .p-articleMetas a { color: #888 !important; }

.wp-block-table td, .wp-block-table th { border-color: #333 !important; }

/* Hide SWELL default main visual */
.p-mainVisual, .p-mainVisual__inner, .p-mainVisual__slide,
.l-topMV, .p-topMV { display: none !important; }

/* Custom hero section for horror */
.p-topPage .l-mainContent__inner::before {
  content: "全国の心霊スポットを完全網羅";
  display: block;
  text-align: center;
  font-size: 2.5rem;
  font-weight: 900;
  color: #e94560;
  padding: 80px 20px 20px;
  text-shadow: 0 0 20px rgba(233,69,96,0.5);
  letter-spacing: 0.1em;
}

.p-topPage .l-mainContent__inner::after {
  content: "実話怪談・心霊体験・都市伝説の恐怖アーカイブ";
  display: block;
  text-align: center;
  font-size: 1.1rem;
  color: #888;
  padding: 0 20px 60px;
  border-bottom: 1px solid #1a1a1a;
  margin-bottom: 40px;
}

/* Horror ambient glow effect */
.l-header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, #8b0000, transparent);
}

/* Site title horror styling */
.c-headLogo {
  text-shadow: 0 0 10px rgba(233,69,96,0.3) !important;
}

/* Menu items hover effect */
.c-gnav__link:hover {
  text-shadow: 0 0 8px rgba(233,69,96,0.5) !important;
}

/* Hero banner styling */
.horror-hero-banner {
  margin: 0 !important;
  max-width: 100vw !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  position: relative;
}

.horror-hero-banner img {
  width: 100% !important;
  height: 400px !important;
  object-fit: cover !important;
  filter: brightness(0.55) contrast(1.2) !important;
}

.horror-hero-banner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100px;
  background: linear-gradient(transparent, #0a0a0a);
  pointer-events: none;
}

/* Remove the CSS pseudo-element hero since we have an image now */
.p-topPage .l-mainContent__inner::before,
.p-topPage .l-mainContent__inner::after {
  display: none !important;
}

/* ===== Readability Fix v2 ===== */

/* Article body text - brighter for readability */
.post_content, .p-articleContent, .s-entryContent,
.post_content p, .p-articleContent p, .s-entryContent p {
  color: #e0e0e0 !important;
  line-height: 1.9 !important;
  font-size: 16px !important;
}

/* Headings - more contrast */
.post_content h2, .s-entryContent h2 {
  color: #ff4757 !important;
  border-bottom: 2px solid #8b0000 !important;
  padding-bottom: 8px !important;
  margin-top: 40px !important;
  font-size: 1.5rem !important;
}

.post_content h3, .s-entryContent h3 {
  color: #ff6b81 !important;
  border-left: 4px solid #8b0000 !important;
  padding-left: 12px !important;
  margin-top: 30px !important;
  font-size: 1.25rem !important;
}

/* Strong/bold text */
.post_content strong, .s-entryContent strong {
  color: #fff !important;
}

/* Emphasis */
.post_content em, .s-entryContent em {
  color: #ff9999 !important;
}

/* List items */
.post_content li, .s-entryContent li {
  color: #d4d4d4 !important;
  margin-bottom: 6px !important;
}

/* Links in articles */
.post_content a, .s-entryContent a {
  color: #ff6b6b !important;
  text-decoration: underline !important;
}
.post_content a:hover, .s-entryContent a:hover {
  color: #ff4757 !important;
}

/* Article meta (date, category) */
.p-articleMetas, .p-articleMetas a, .p-articleMetas span,
.p-postList__meta, .p-postList__date {
  color: #999 !important;
}

/* Category badge in articles */
.p-articleMetas .c-categoryBadge {
  background: #8b0000 !important;
  color: #fff !important;
}

/* Google Maps iframe container */
.post_content iframe {
  border-radius: 8px !important;
  border: 1px solid #333 !important;
}

/* Ghost emoji placeholder boxes */
.post_content div[style*=linear-gradient] {
  border: 1px solid #2a2a2a !important;
}

/* Sidebar widget text */
.l-sidebar .widget, .l-sidebar .c-widget {
  color: #ccc !important;
}
.l-sidebar .widget a {
  color: #ddd !important;
}
.l-sidebar .widget a:hover {
  color: #ff6b6b !important;
}

/* Comment section */
.p-commentArea {
  background: #0f0f0f !important;
  color: #ccc !important;
}

/* TOC (table of contents) */
.p-toc, .p-toc__list, .p-toc a {
  color: #ccc !important;
  background: #111 !important;
}

/* Blockquote */
.post_content blockquote {
  background: #111 !important;
  border-left: 4px solid #8b0000 !important;
  color: #bbb !important;
}

/* Article card on listing */
.p-postList__title {
  color: #eee !important;
  font-size: 1.1rem !important;
}
.p-postList__excerpt {
  color: #aaa !important;
}

/* ===== Fix light-background blocks in dark theme v2 ===== */

.swell-block-capbox, .cap_box, .is-style-border,
.is-style-icon_announce, .is-style-icon_good, .is-style-icon_bad,
.is-style-icon_info, .is-style-icon_pen,
.post_content .has-background,
.wp-block-group.has-background,
.is-style-bg_stripe, .is-style-bg_gray, .is-style-bg_main,
.is-style-bg_main_thin {
  background: #141414 !important;
  color: #d4d4d4 !important;
  border-color: #333 !important;
}

.cap_box_title, .swell-block-capbox__title {
  background: #1a1a1a !important;
  color: #ff6b81 !important;
}

.post_content .is-style-alert_box,
.post_content .is-style-memo_box,
.post_content .is-style-point_box,
.post_content .is-style-check_box,
.post_content .is-style-blank_box {
  background: #141414 !important;
  color: #d4d4d4 !important;
  border-color: #333 !important;
}

.swell-block-step, .swell-block-faq, .swell-block-accordion,
.swell-block-dl {
  color: #d4d4d4 !important;
}

.post_content table, .post_content td, .post_content th {
  background: #0f0f0f !important;
  color: #d4d4d4 !important;
  border-color: #2a2a2a !important;
}
.post_content th {
  background: #1a1a1a !important;
  color: #e0e0e0 !important;
}

.wp-block-group {
  color: #d4d4d4 !important;
}

.post_content hr {
  border-color: #2a2a2a !important;
}

.post_content h2 {
  background: transparent !important;
  color: #ff4757 !important;
}

.post_content .has-luminous-vivid-orange-color,
.post_content .has-vivid-red-color {
  color: #ff6b6b !important;
}

/* Force dark on Gemini article light sections */
.post_content div[style*="background-color"],
.post_content section[style*="background-color"],
.post_content div[style*="background:"] {
  background-color: #141414 !important;
  color: #d4d4d4 !important;
}

/* Override inline color styles from AI-generated content */
.post_content p[style*="color:#3"],
.post_content p[style*="color:#4"],
.post_content p[style*="color:#5"],
.post_content li[style*="color:#3"],
.post_content li[style*="color:#4"] {
  color: #d4d4d4 !important;
}

/* ===== Header Nav Fix - Red text on scroll ===== */

/* Fixed header on scroll */
.l-header.is-fixed, .l-fixHeader,
.l-header.-fixed, .-header-fixed .l-header {
  background: #0d0d0d !important;
  border-bottom: 1px solid #8b0000 !important;
}

/* Nav menu items - always red/light on dark */
.c-gnav .c-gnav__link,
.c-gnav a,
.l-header .c-gnav__link,
.l-fixHeader .c-gnav__link,
.l-header.is-fixed .c-gnav__link,
.-header-fixed .c-gnav__link {
  color: #e94560 !important;
}
.c-gnav .c-gnav__link:hover,
.c-gnav a:hover {
  color: #ff6b6b !important;
  text-shadow: 0 0 8px rgba(233,69,96,0.4);
}

/* Site logo in header */
.c-headLogo a, .c-headLogo__link,
.l-fixHeader .c-headLogo a {
  color: #e94560 !important;
}

/* SWELL h2 heading - remove teal/blue background bar */
.post_content h2,
.s-entryContent h2,
.-style-section_ttl h2,
.swell-block-fullWide h2 {
  background: transparent !important;
  background-color: transparent !important;
  border-bottom: 2px solid #8b0000 !important;
  border-left: none !important;
  padding: 10px 0 !important;
  color: #ff4757 !important;
}

/* Remove SWELL default h2 styles with colored bar */
.post_content h2::before,
.post_content h2::after {
  display: none !important;
}

/* SWELL caption box with teal header - fix to dark */
.swell-block-capbox .cap_box_ttl,
.cap_box_ttl,
.swell-block-capbox__title,
.is-style-onborder_ttl .cap_box_ttl,
.is-style-inner .cap_box_ttl {
  background: #1a0a0a !important;
  background-color: #1a0a0a !important;
  color: #ff4757 !important;
  border-color: #8b0000 !important;
}

/* Caption box body */
.swell-block-capbox .cap_box_content,
.cap_box_content,
.swell-block-capbox__body {
  background: #141414 !important;
  color: #d4d4d4 !important;
  border-color: #333 !important;
}

/* The entire caption box border */
.swell-block-capbox,
.cap_box {
  border-color: #333 !important;
  background: #141414 !important;
}

/* Light pink/salmon background sections - force dark */
.post_content .has-pale-pink-background-color,
.post_content .has-pale-cyan-blue-background-color,
.post_content .has-vivid-cyan-blue-background-color,
.post_content .has-luminous-vivid-amber-background-color,
.post_content .has-light-green-cyan-background-color {
  background-color: #141414 !important;
  color: #d4d4d4 !important;
}

/* Footer nav links */
.l-footer a, .l-footer .c-gnav__link {
  color: #999 !important;
}
.l-footer a:hover {
  color: #e94560 !important;
}
