/*
Theme Name: Cocoon Child Works V6
Template: cocoon-master
Version: 6.0.0
*/

/* ===== V6 Reset / Base ===== */
html {
  scroll-behavior: smooth;
}

body,
#container,
#content,
.main,
.article {
  background: #151515 !important;
  color: #dedede;
  line-height: 1.95;
}

a {
  color: #d8b46c;
  text-decoration: none;
}

a:hover {
  color: #f0cf82;
}

img {
  border-radius: 10px;
}

/* Cocoon標準ヘッダーを隠す */
.header-container,
#header-container,
.navi,
#navi,
#header,
.logo-header {
  display: none !important;
}

/* ===== V6 Header ===== */
.v6-site-header {
  background: linear-gradient(180deg, #101010 0%, #171717 100%);
  border-bottom: 1px solid #333;
  position: sticky;
  top: 0;
  z-index: 999;
  box-shadow: 0 8px 24px rgba(0,0,0,.35);
}

.admin-bar .v6-site-header {
  top: 32px;
}

.v6-header-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 18px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.v6-logo {
  display: flex;
  flex-direction: column;
  color: #f5f5f5 !important;
  line-height: 1.25;
}

.v6-logo-main {
  font-size: 1.25rem;
  font-weight: 800;
  letter-spacing: .04em;
}

.v6-logo-sub {
  font-size: .68rem;
  color: #d8b46c;
  letter-spacing: .16em;
}

.v6-global-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.v6-global-nav a {
  color: #dedede !important;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: .92rem;
  transition: background .2s ease, color .2s ease;
}

.v6-global-nav a:hover {
  background: #b88d3b;
  color: #151515 !important;
}

/* ===== Layout ===== */
.v6-container,
.v6-content {
  background: #151515 !important;
}

.v6-content {
  max-width: 1180px;
  margin: 0 auto;
  padding: 42px 22px 60px;
}

.content-in,
.main-in,
.sidebar {
  background: transparent !important;
}

.works-home,
.works-gojuon,
.works-search,
.works-taxonomy-list,
.works-taxonomy-archive,
.single-works .work-detail {
  max-width: 1120px;
  margin: 0 auto;
}

/* ===== Hero ===== */
.works-hero {
  background:
    radial-gradient(circle at 20% 20%, rgba(216,180,108,.20), transparent 34%),
    linear-gradient(135deg, #26201a 0%, #1d1d1d 45%, #111 100%);
  border: 1px solid #3a3a3a;
  border-radius: 24px;
  padding: 68px 32px;
  margin-bottom: 44px;
  box-shadow: 0 18px 52px rgba(0,0,0,.42);
  overflow: hidden;
}

.works-hero-inner {
  max-width: 840px;
  margin: 0 auto;
  text-align: center;
}

.works-hero-label {
  color: #d8b46c;
  letter-spacing: .22em;
  font-size: .78rem;
  font-weight: 800;
}

.works-hero h1 {
  color: #fff;
  font-size: clamp(2.1rem, 5vw, 3.4rem);
  letter-spacing: .04em;
  margin: 12px 0;
  text-shadow: 0 3px 16px rgba(0,0,0,.55);
}

.works-hero-copy {
  color: #d8b46c;
  font-size: 1.25rem;
  font-weight: 800;
}

.works-hero-description {
  color: #d7d7d7;
  max-width: 740px;
  margin: 24px auto;
}

.works-hero-buttons,
.works-home-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.works-hero-buttons a,
.works-home-buttons a,
.works-search-form button,
.works-like-button,
.hero-button {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 999px;
  background: #c99a3b !important;
  color: #111 !important;
  text-decoration: none;
  font-weight: 800;
  border: none;
  box-shadow: 0 6px 18px rgba(201,154,59,.18);
}

.works-hero-buttons a:nth-child(2) {
  background: transparent !important;
  color: #d8b46c !important;
  border: 1px solid #d8b46c;
  box-shadow: none;
}

/* ===== Sections ===== */
.works-section,
.related-works,
.works-search,
.works-taxonomy-list,
.sidebar .widget,
.works-side-ranking,
.work-review-box {
  background: #222 !important;
  border: 1px solid #383838 !important;
  color: #dedede;
  border-radius: 18px;
  padding: 26px;
  margin-bottom: 38px;
  box-shadow: 0 10px 32px rgba(0,0,0,.30);
}

.works-section h2,
.works-gojuon h1,
.works-gojuon-section h2,
.works-search h1,
.works-search h2,
.works-taxonomy-archive h1,
.related-works h2,
.work-review-box h2,
.sidebar h3,
.widget h3 {
  color: #f7f7f7;
  border-left: 6px solid #d8b46c !important;
  padding-left: 12px;
  background: transparent !important;
}

/* ===== Horizontal rows for home ===== */
.works-home .works-section .works-card-grid {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  padding-bottom: 10px;
  scroll-snap-type: x mandatory;
}

.works-home .works-section .works-card {
  min-width: 190px;
  scroll-snap-align: start;
}

/* ===== Cards ===== */
.works-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(185px, 1fr));
  gap: 20px;
}

.works-card {
  background: #1c1c1c !important;
  border: 1px solid #363636 !important;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(0,0,0,.32);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.works-card:hover {
  transform: translateY(-5px);
  border-color: #84652c !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.48);
}

.works-card a {
  color: inherit;
  text-decoration: none;
  display: block;
}

.works-card-thumb {
  background: #111;
  aspect-ratio: 3 / 4;
  overflow: hidden;
}

.works-card-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
}

.works-card-noimage,
.work-cover-noimage {
  min-height: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #222;
  color: #777;
  font-weight: 700;
}

.works-card-body {
  padding: 14px;
}

.works-card-rating,
.work-rating {
  color: #d8b46c;
  font-weight: 900;
  margin-bottom: 6px;
}

.works-card-body h3 {
  color: #f0f0f0;
  font-size: .98rem;
  line-height: 1.45;
  margin: 0 0 8px;
}

.works-card-meta {
  color: #aaa;
  font-size: .86rem;
  margin: 0 0 8px;
}

.works-card-stats {
  display: flex;
  gap: 10px;
  color: #bdbdbd;
  font-size: .86rem;
}

/* ===== Work detail ===== */
.single-works .work-hero-card {
  display: grid;
  grid-template-columns: 390px 1fr;
  gap: 32px;
  padding: 28px;
  border: 1px solid #3a3a3a;
  border-radius: 22px;
  background:
    radial-gradient(circle at top right, rgba(216,180,108,.10), transparent 35%),
    #222;
  margin-bottom: 36px;
  box-shadow: 0 12px 36px rgba(0,0,0,.36);
}

.single-works .work-cover img {
  width: 100%;
  height: auto;
  display: block;
  box-shadow: 0 8px 24px rgba(0,0,0,.45);
}

.work-eyebrow {
  color: #d8b46c;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .20em;
}

.single-works .work-title {
  color: #fff;
  font-size: clamp(1.55rem, 3vw, 2.2rem);
  line-height: 1.4;
  margin-bottom: 12px;
}

.single-works .work-meta-box {
  background: #191919 !important;
  border: 1px solid #333;
  border-radius: 14px;
  padding: 17px;
}

.single-works .work-meta-box div {
  margin-bottom: 10px;
}

.single-works .work-meta-box span {
  display: inline-block;
  min-width: 85px;
  color: #d8b46c;
  font-weight: 800;
}

.single-works .work-content {
  color: #dedede;
  line-height: 2;
  font-size: 1.02rem;
}

.single-works .work-content p {
  margin-bottom: 1.5em;
}

.single-works .work-content h2 {
  color: #f5f5f5;
  border-left: 6px solid #d8b46c;
  padding-left: 12px;
  margin-top: 38px;
}

.single-works .work-content img {
  max-width: 100%;
  height: auto;
  box-shadow: 0 6px 20px rgba(0,0,0,.38);
}

/* ===== Like ===== */
.works-like-box {
  margin-top: 20px;
  display: flex;
  gap: 14px;
  align-items: center;
  flex-wrap: wrap;
}

.works-liked-button {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 999px;
  background: #555 !important;
  color: #eee !important;
  font-weight: 800;
  border: none;
}

/* ===== Search / lists ===== */
.works-index-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 24px;
}

.works-index-nav a {
  padding: 8px 12px;
  border-radius: 999px;
  background: #2b2b2b;
  color: #d8b46c;
  border: 1px solid #444;
  text-decoration: none;
}

.works-index-nav a:hover {
  background: #c99a3b;
  color: #111;
}

.works-search-form {
  display: flex;
  gap: 10px;
  margin: 20px 0 28px;
}

.works-search-form input[type="text"] {
  flex: 1;
  padding: 13px 15px;
  background: #151515 !important;
  color: #eee !important;
  border: 1px solid #444 !important;
  border-radius: 10px;
  font-size: 1rem;
}

.works-taxonomy-list ul {
  list-style: none;
  padding-left: 0;
}

.works-taxonomy-list li,
.works-side-ranking-item {
  border-bottom: 1px solid #333 !important;
}

.works-taxonomy-list a {
  display: flex;
  justify-content: space-between;
  padding: 12px 14px;
  text-decoration: none;
  font-weight: 700;
  color: #dedede;
}

.works-taxonomy-list span,
.works-side-ranking-count {
  color: #aaa;
}

/* ===== Sidebar ranking ===== */
.works-side-ranking-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.works-side-ranking-item {
  padding-bottom: 12px;
}

.works-side-ranking-rank {
  color: #d8b46c;
  font-weight: 900;
  margin-bottom: 6px;
}

.works-side-ranking-item a {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 10px;
  color: inherit;
  text-decoration: none;
}

.works-side-ranking-item img {
  width: 72px;
  height: 96px;
  object-fit: cover;
}

.works-side-ranking-title {
  color: #f0f0f0;
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.4;
}

/* ===== Cocoon leftovers color fix ===== */
.entry-title,
.article h1,
.article h2,
.article h3,
.article h4,
.page .entry-title,
.single .entry-title,
.entry-content,
.entry-content p,
.entry-content li,
.breadcrumb,
.breadcrumb a,
.breadcrumb span,
.toc,
.toc *,
#toc_container,
#toc_container *,
.date-tags,
.post-date,
.update-date,
.author-info,
.entry-footer,
.entry-footer * {
  color: #dedede !important;
}

.toc,
#toc_container,
.blank-box,
.information-box,
.question-box,
.alert-box,
.memo-box,
.comment-box,
.common-icon-box {
  background: #1f1f1f !important;
  border-color: #444 !important;
}

/* ===== Footer ===== */
.v6-site-footer {
  background: #101010;
  border-top: 1px solid #333;
  color: #aaa;
}

.v6-footer-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 26px 22px;
  text-align: center;
  font-size: .9rem;
}

/* ===== Responsive ===== */
@media screen and (max-width: 900px) {
  .v6-header-inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .v6-global-nav {
    width: 100%;
  }

  .single-works .work-hero-card {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 768px) {
  .admin-bar .v6-site-header {
    top: 46px;
  }

  .v6-content {
    padding: 28px 14px 46px;
  }

  .works-hero {
    padding: 38px 18px;
  }

  .works-hero-buttons,
  .works-home-buttons {
    flex-direction: column;
  }

  .works-hero-buttons a,
  .works-home-buttons a {
    width: 100%;
    text-align: center;
  }

  .single-works .work-hero-card {
    padding: 18px;
  }

  .single-works .work-meta-box span {
    display: block;
    margin-bottom: 2px;
  }

  .works-search-form {
    flex-direction: column;
  }

  .works-search-form button {
    width: 100%;
  }

  .works-home .works-section .works-card {
    min-width: 170px;
  }
}
/* ==========================================
   作品ページ本文
========================================== */

.single-works .work-content,
.single-works .work-content p,
.single-works .work-content li,
.single-works .work-content ul,
.single-works .work-content ol,
.single-works .work-content blockquote{
    color:#e2e2e2 !important;
}

.single-works .work-content strong{
    color:#ffffff !important;
}

.single-works .work-content a{
    color:#d8b46c !important;
}

.single-works .work-content h2{
    color:#ffffff !important;
}

.single-works .work-content h3{
    color:#f3f3f3 !important;
}

.single-works .work-content h4{
    color:#eeeeee !important;
}
/* 作品ページでは目次を非表示 */
.single-works .toc,
.single-works #toc_container,
.single-works .toc-widget-box,
.single-works .toc-content {
    display: none !important;
}