/* Logo palette: color-only layer over HK Design A. No layout or behavior changes. */
:root {
  --bg: #fff;
  --panel: #fff;
  --text: #302c27;
  --muted: #716b62;
  --line: #e9e5de;
  --brand: #ffc66b;
  --brand-hover: #f4b650;
  --brand-ink: #493719;
  --accent: #80571c;
  --accent-strong: #624719;
  --accent-soft: #fff2d9;
  --surface-soft: #faf9f6;
  --brand-border: #dfbf85;
  --danger: #b64538;
  --trend-down: #16745c;
}
html, body { color: var(--text); background: var(--bg); }
::selection { background: #ffe0a6; color: var(--text); }
input, textarea { caret-color: var(--accent); accent-color: var(--accent); }
input::placeholder, textarea::placeholder { color: var(--muted); }
input:focus, select:focus, textarea:focus, .return-search input:focus {
  border-color: var(--accent); box-shadow: 0 0 0 2px #80571c18;
}
.primary, .return-search-button, .poster-download, .feedback-slider-handle {
  background: var(--brand); color: var(--brand-ink); border-color: var(--brand-border); box-shadow: none;
}
.primary:hover, .return-search-button:hover, .poster-download:hover {
  background: var(--brand-hover); color: var(--brand-ink); border-color: var(--accent);
}
.primary:disabled { background: #ece9e3; color: #756f65; }
.secondary, .copy-btn, .secondary:hover, .copy-btn.done {
  background: var(--accent-soft); color: var(--brand-ink);
}
.secondary:hover, .copy-btn:hover { background: #ffe6b8; }
.site-link.active { background: var(--accent-soft); color: var(--brand-ink); }
.feature-tab.active { color: var(--text); border-bottom-color: var(--brand); }
.feature-beta-badge, .feature-tab.active .feature-beta-badge { color: var(--accent); }
.role-button.active, .camp-tab.active, .camp-daily-summary-tab.active,
.return-sort-tab.active { background: var(--brand); color: var(--brand-ink); }
.role-button:hover, .camp-tab:hover, .camp-daily-summary-tab:hover,
.feedback-trigger:hover { background: var(--accent-soft); color: var(--brand-ink); }
.fmvp-button.active { background: var(--accent-soft); border-color: var(--brand-border); }
.counter, .variant-meta, .preview, .camp-rate-value,
.camp-hero-mode-metric strong, .limited-detail-stats strong,
.limited-detail-stat strong, .limited-history-row strong { color: var(--text); }
.status-pill, .tag, .preview, .empty, .skin-load-more,
.camp-rank-table thead th { background: var(--surface-soft); }
.skin-hero-card.is-clickable:hover, .camp-rank-table tbody tr:hover {
  background: #fffaf1; border-color: var(--brand-border);
}
.skin-hero-card .hero-rank.rank-1, .skin-hero-card .hero-rank.rank-2,
.skin-hero-card .hero-rank.rank-3 { color: var(--brand-ink); border-color: var(--brand-border); background: var(--accent-soft); }
.skin-hero-card .return-count { color: var(--accent-strong); background: var(--accent-soft); }
.skin-hero-card .wait-days.is-active { color: var(--accent-strong); }
.skin-load-more { color: var(--text); }
.skin-load-more:hover { background: var(--accent-soft); }
.camp-hero-mode-card, .limited-detail-stat, .limited-history-row,
.poster-link-row { background: var(--surface-soft); border-color: var(--line); }
.camp-hero-mode-card.active { background: #fffaf0; border-color: var(--brand-border); }
.camp-hero-compare-toggle { background: var(--surface-soft); color: var(--muted); border-color: var(--line); }
.camp-hero-compare-toggle::before { background: #cfc9bf; box-shadow: none; }
.camp-hero-compare-toggle[aria-pressed="true"] {
  background: var(--accent-soft); color: var(--brand-ink); border-color: var(--brand-border);
}
.camp-hero-compare-toggle[aria-pressed="true"]::before { background: var(--accent); }
.camp-hero-panel-head, .camp-calendar-footer { border-color: var(--line); }
.camp-calendar, .copy-panel-box, .poster-link-box, .limited-detail-box,
.camp-hero-panel-box, .feedback-box { box-shadow: 0 16px 48px #302c2724; }
.camp-calendar-nav, .camp-calendar-weekdays span, .camp-calendar-legend { color: var(--muted); }
.camp-calendar-nav:disabled, .camp-calendar-day:disabled { color: #b0aaa0; }
.camp-calendar-day.available, .camp-calendar-latest { background: var(--surface-soft); color: var(--text); border-color: var(--line); }
.camp-calendar-day.available:hover, .camp-calendar-nav:hover:not(:disabled) {
  color: var(--brand-ink); background: var(--accent-soft); border-color: var(--brand-border);
}
.camp-calendar-day.selected, .camp-calendar-day.selected:hover {
  background: var(--brand); color: var(--brand-ink); border-color: var(--accent); box-shadow: none;
}
.camp-calendar-day.available::after, .camp-calendar-day.selected::after,
.camp-calendar-legend::before { background: var(--accent); }
.feedback-form textarea, .feedback-form input, .copy-panel-text,
.feedback-slider-scene, .feedback-slider-track { background: var(--surface-soft); border-color: var(--line); }
.feedback-slider-progress { background: var(--brand); opacity: .5; }
.feedback-slider-captcha.is-ready .feedback-slider-track { background: var(--accent-soft); border-color: var(--brand-border); }
.toast { background: var(--text); color: #fff; }
.skin-hero-card .hero-name, .poster-title { color: var(--text); }
.camp-sort-button::after { color: var(--muted); }
.camp-sort-button.active::after { color: var(--accent); }
.camp-calendar-day { color: #b0aaa0; }
.limited-detail-cover, .poster-cover { background: var(--surface-soft); border-color: var(--line); }
.copy-panel, .poster-link-panel, .limited-detail-panel, .camp-hero-panel,
.feedback-panel { background: rgba(36, 32, 27, .42); }
/* Data semantics are independent of the brand palette: up red, down green. */
.camp-mover-change.up, .camp-hero-mode-trend.up,
.camp-hero-mode-metric .camp-hero-mode-trend.up { color: var(--danger); }
.camp-mover-change.down, .camp-hero-mode-trend.down,
.camp-hero-mode-metric .camp-hero-mode-trend.down { color: var(--trend-down); }
.camp-hero-mode-metric .camp-hero-mode-trend.flat,
.camp-hero-mode-metric .camp-hero-mode-trend.unavailable { color: var(--muted); }
@media (max-width: 860px) {
  .site-link.active { background: var(--accent-soft); color: var(--brand-ink); }
}
