/* ============================================================
   gc4s — Dark Overrides (2026-05-12 박힘)
   ──────────────────────────────────────────────────────────
   목적: style.css (Apple-inspired Dark + Gold) 보존, body class
   기반 페이지별 다크 모드 override. 회귀 위험 0.
   적용: screener-page (6) + dash-page (3) + chat-page (4) +
        chat-disclaimer-page (1) = 14 페이지.
   index.html (랜딩, v2-dark.css 별도 사용)은 영향 없음.
============================================================ */

/* Dark mode tokens (v2-dark.css mirror) */
:root {
  --dk-bg: #0a0f1c;
  --dk-bg-alt: #0f1626;
  --dk-bg-card: #131b2c;
  --dk-bg-card-hi: #182238;
  --dk-text: #f1f5f9;
  --dk-text-secondary: #cbd5e1;
  --dk-text-muted: #94a3b8;
  --dk-border: rgba(255, 255, 255, 0.08);
  --dk-border-hi: rgba(255, 255, 255, 0.16);
}

/* ===== 페이지 bg 다크 ===== */
body.screener-page,
body.dash-page,
body.chat-page,
body.chat-disclaimer-page {
  background: var(--dk-bg) !important;
  color: var(--dk-text) !important;
}

/* ===== Header 다크 ===== */
.screener-header {
  background: var(--dk-bg-alt) !important;
  border-bottom: 1px solid var(--dk-border) !important;
}
.screener-header__logo { color: var(--dk-text) !important; }

/* ===== Card 다크 (screener / intake) ===== */
.screener-card {
  background: var(--dk-bg-card) !important;
  color: var(--dk-text) !important;
  border: 1px solid var(--dk-border) !important;
}
.screener-card__question { color: var(--dk-text) !important; }
.screener-card__step { color: var(--dk-text-muted) !important; }

.intake-review__section {
  background: var(--dk-bg-card) !important;
  border: 1px solid var(--dk-border) !important;
}
.intake-review__label { color: var(--dk-text-muted) !important; }
.intake-review__value { color: var(--dk-text) !important; }
.intake-subtitle { color: var(--dk-text-muted) !important; }
.intake-label { color: var(--dk-text-secondary) !important; }
.intake-error { color: #fca5a5 !important; }

/* ===== Form inputs 다크 ===== */
.intake-input {
  background: var(--dk-bg-card-hi) !important;
  border-color: var(--dk-border-hi) !important;
  color: var(--dk-text) !important;
}
.intake-input:focus {
  border-color: var(--gold) !important;
}
.intake-input::placeholder {
  color: var(--dk-text-muted) !important;
}

/* ===== Yes/No 버튼 + Screener option ===== */
.intake-yesno__btn,
.screener-option {
  background: var(--dk-bg-card-hi) !important;
  border-color: var(--dk-border-hi) !important;
  color: var(--dk-text) !important;
}
.intake-yesno__btn:hover,
.screener-option:hover {
  background: var(--dk-bg-card) !important;
  border-color: var(--gold) !important;
}
.intake-yesno__btn.selected,
.screener-option.selected {
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: var(--dk-bg) !important;
}

/* ===== Progress bar ===== */
.progress-bar {
  background: var(--dk-border) !important;
}
.progress-bar__fill {
  background: var(--gold) !important;
}

/* ===== Lang toggle ===== */
.lang-btn {
  color: var(--dk-text-muted) !important;
}
.lang-btn:hover { color: var(--dk-text) !important; }
.lang-btn--active {
  background: var(--gold) !important;
  color: var(--dk-bg) !important;
}

/* ===== Generic text (페이지 안 h1-h6, p, span) ===== */
body.screener-page h1, body.screener-page h2, body.screener-page h3, body.screener-page h4,
body.dash-page h1, body.dash-page h2, body.dash-page h3, body.dash-page h4,
body.chat-page h1, body.chat-page h2, body.chat-page h3, body.chat-page h4,
body.chat-disclaimer-page h1, body.chat-disclaimer-page h2, body.chat-disclaimer-page h3 {
  color: var(--dk-text) !important;
}

body.screener-page p, body.dash-page p, body.chat-page p, body.chat-disclaimer-page p {
  color: var(--dk-text-secondary);
}

/* ===== Dashboard 페이지 generic card / list ===== */
body.dash-page .dash-card,
body.dash-page .card,
body.dash-page section,
body.dash-page table {
  background: var(--dk-bg-card) !important;
  color: var(--dk-text) !important;
  border-color: var(--dk-border) !important;
}
body.dash-page input,
body.dash-page select,
body.dash-page textarea {
  background: var(--dk-bg-card-hi) !important;
  border-color: var(--dk-border-hi) !important;
  color: var(--dk-text) !important;
}

/* ===== Chat / Voice 페이지 ===== */
body.chat-page .chat-bubble,
body.chat-page .message,
body.chat-page .chat-card,
body.chat-disclaimer-page .disclaimer-card {
  background: var(--dk-bg-card) !important;
  color: var(--dk-text) !important;
  border-color: var(--dk-border) !important;
}
body.chat-page input,
body.chat-page textarea {
  background: var(--dk-bg-card-hi) !important;
  border-color: var(--dk-border-hi) !important;
  color: var(--dk-text) !important;
}
