/* t_novel_noir — 小说_影院 · Cinema Noir
   layout:spotlight
   sexmap-style theme tokens + full layout table
*/
:root {
  --bg: #0e0e10;
  --bg-subtle: #17171b;
  --bg-card: #17171b;
  --bg-card-hover: #1f1f26;
  --bg-input: #17171b;
  --ink: #f2eee6;
  --ink-secondary: #d8d2c8;
  --muted: #9a948a;
  --line: #2a2a32;
  --line-light: #2a2a32;
  --primary: #d4a373;
  --primary-hover: #8b0000;
  --primary-glow: #d4a37366;
  --primary-light: #d4a37322;
  --accent: #8b0000;
  --accent-glow: #8b000055;
  --comic-color: #d4a373;
  --novel-color: #d4a373;
  --radius: 8px;
  --radius-lg: calc(8px + 8px);
  --radius-sm: calc(8px - 4px);
}
html { color-scheme: dark; }
body::before { opacity:.18; }
body{background-image:radial-gradient(800px 400px at 50% -20%,#2a1a14 0%,transparent 60%),linear-gradient(180deg,#121214,#0e0e10);}

/* layout:spotlight hero + filmstrip */
html[data-layout="spotlight"] .feature-spot {
  display: grid;
}
html[data-layout="spotlight"] .feature-blurb {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}
html[data-layout="spotlight"] .feature-spot {
  grid-template-columns: minmax(0, 1fr);
  order: 1;
  min-height: 380px;
}
html[data-layout="spotlight"] .feature-cover {
  aspect-ratio: 21 / 9;
  min-height: 280px;
  border-radius: 0;
}
html[data-layout="spotlight"] .work-grid {
  display: flex;
  flex-direction: row;
  gap: 12px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
}
html[data-layout="spotlight"] .work-card {
  flex: 0 0 148px;
  flex-direction: column;
  scroll-snap-align: start;
}
html[data-layout="spotlight"] .work-card .cover {
  aspect-ratio: 3 / 4;
}
html[data-layout="spotlight"] .home-primary {
  order: 2;
}
html[data-layout="spotlight"] .home-ranks {
  order: 3;
}
html[data-layout="spotlight"] .layout-block.cat-wall, .top10-block, .nav-extra {
  display: none;
}
html[data-layout="spotlight"] .ad-carousel-section {
  display: none;
}
html[data-layout="spotlight"] .channel-cat-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

html[data-layout="spotlight"] .channel-cat-bar .cat-pill {
  border: 1px solid var(--line);
  background: var(--bg-card);
  color: var(--ink-secondary);
}

html[data-layout="spotlight"] .filter-panel {
  border-radius: var(--radius);
  background: var(--bg-card);
  border-color: var(--line);
}

html[data-layout="spotlight"] .filter-item.active {
  background: var(--primary);
  color: #fff;
}

html[data-layout="spotlight"] .search-hero {
  margin-top: 8px;
}

html[data-layout="spotlight"] .big-search-form input {
  background: var(--bg-card);
  border: 1px solid var(--line);
  color: var(--ink);
}

html[data-layout="spotlight"] .work-card .card-body h3 {
  color: var(--ink);
  white-space: normal;
}

html[data-layout="spotlight"] .card-cat {
  color: var(--primary);
}

html[data-layout="spotlight"] .card-meta, .card-extra {
  color: var(--muted);
}

html[data-layout="spotlight"] .rail-head h2 {
  color: var(--ink);
}

html[data-layout="spotlight"] .more-link {
  color: var(--primary);
}

html[data-layout="spotlight"] .topbar {
  background: color-mix(in srgb, var(--bg) 82%, transparent);
  border-bottom: 1px solid var(--line);
  box-shadow: none;
}

html[data-layout="spotlight"] .brand {
  color: var(--ink);
  background: none;
  -webkit-text-fill-color: var(--ink);
}

html[data-layout="spotlight"] .nav a {
  color: var(--muted);
}

html[data-layout="spotlight"] .nav a.active, .nav a:hover {
  color: var(--ink);
  background: var(--primary-light);
  border-color: var(--line);
  box-shadow: none;
}

html[data-layout="spotlight"] .tabbar {
  background: color-mix(in srgb, var(--bg) 88%, transparent);
  border-color: var(--line);
}

html[data-layout="spotlight"] .footer-links a {
  color: var(--muted);
}

html[data-layout="spotlight"] .compact-rank-item {
  border-color: var(--line);
}

html[data-layout="spotlight"] .compact-rank-item h4 {
  color: var(--ink);
}

html[data-layout="spotlight"] .pagination .page-btn {
  border-color: var(--line);
  color: var(--ink);
}

html[data-layout="spotlight"] .empty, .empty-box {
  color: var(--muted);
}

@media (max-width: 860px) {
  html[data-layout="spotlight"] .page-shell {
    display: block;
    grid-template-columns: minmax(0, 1fr);
    flex-direction: column;
  }
  html[data-layout="spotlight"] .layout-sidebar {
    display: none !important;
  }
  html[data-layout="spotlight"] .home-stack {
    display: flex;
    flex-direction: column;
    grid-template-columns: minmax(0, 1fr);
  }
  html[data-layout="spotlight"] .feature-spot {
    grid-template-columns: minmax(0, 1fr);
  }
}

