/* Candidate demo — cream / flat theme matching platform landing */

body.candidate-theme {
  color-scheme: light;
  --bg: #f4efe6;
  --bg-soft: #fffdf8;
  --text: #1f1e1b;
  --muted: rgba(31, 30, 27, 0.62);
  --quiet: rgba(31, 30, 27, 0.42);
  --accent: #d97757;
  --accent-soft: rgba(217, 119, 87, 0.12);
  --accent-strong: #c45f3f;
  --peach: #1f1e1b;
  --input: #fffdf8;
  --focus: #1f1e1b;
  --line: rgba(31, 30, 27, 0.14);
  --font-display: "Newsreader", Georgia, serif;
  --font-body: "Instrument Sans", ui-sans-serif, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --radius: 4px;
}

body.candidate-theme,
html:has(body.candidate-theme) {
  background: var(--bg);
  color: var(--text);
}

/* Kill ambient / glow / grain / vignette */
body.candidate-theme::before,
body.candidate-theme::after,
body.candidate-theme .ambient,
body.candidate-theme .cursor-glow {
  display: none !important;
}

body.candidate-theme .progress-rail {
  background: rgba(31, 30, 27, 0.08);
}

body.candidate-theme .progress-fill {
  background: var(--accent);
  box-shadow: none;
}

body.candidate-theme .enter {
  animation: candidate-enter 520ms var(--ease-out) both;
}

@keyframes candidate-enter {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

body.candidate-theme .company-logo {
  border-radius: var(--radius);
  color: var(--text);
  background: var(--bg-soft);
  border: 1px solid var(--line);
  box-shadow: none;
}

body.candidate-theme .company-logo .logo-letter {
  color: var(--text);
}

body.candidate-theme .upload-target {
  border: 1px dashed rgba(31, 30, 27, 0.28);
  border-radius: var(--radius);
  background: var(--bg-soft);
  box-shadow: none;
  transition:
    border-color 200ms ease,
    transform 240ms var(--ease-out);
}

body.candidate-theme .upload-target:hover,
body.candidate-theme .upload-target.is-dragging {
  border-color: var(--text);
  background: var(--bg-soft);
  box-shadow: none;
  transform: translateY(-2px);
}

body.candidate-theme .upload-orbit {
  border-radius: var(--radius);
  background: rgba(217, 119, 87, 0.12);
  border: 1px solid rgba(217, 119, 87, 0.25);
  box-shadow: none;
  color: var(--text);
}

body.candidate-theme .upload-orbit::before {
  display: none;
}

body.candidate-theme .file-line,
body.candidate-theme .working-block,
body.candidate-theme .facts,
body.candidate-theme .cover-area,
body.candidate-theme .save-area,
body.candidate-theme .sent-banner {
  border-radius: var(--radius);
}

body.candidate-theme .fact-row {
  border-radius: var(--radius);
  background: var(--bg-soft);
  border: 1px solid transparent;
}

body.candidate-theme .fact-row.needs-review {
  background: rgba(217, 119, 87, 0.08);
  border-color: rgba(217, 119, 87, 0.28);
  box-shadow: none;
}

body.candidate-theme .skill-chip {
  border-radius: var(--radius);
  border-color: var(--line);
  background: var(--bg-soft);
  color: var(--muted);
}

body.candidate-theme .pill-button,
body.candidate-theme .file-upload-button,
body.candidate-theme .google-continue,
body.candidate-theme .gsi-slot {
  border-radius: var(--radius);
  box-shadow: none;
  background: var(--text);
  color: var(--bg);
  border: 1px solid transparent;
  font-family: var(--font-body);
  font-weight: 600;
}

body.candidate-theme .pill-button:hover,
body.candidate-theme .file-upload-button:hover {
  background: #2c2a26;
  box-shadow: none;
  transform: translateY(-2px);
}

body.candidate-theme .pill-button.is-selected {
  background: var(--accent);
  color: #fffdf8;
  box-shadow: none;
}

body.candidate-theme .ghost-button {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 0.55rem 1rem;
  color: var(--text);
  background: transparent;
}

body.candidate-theme .ghost-button:hover {
  border-color: var(--text);
  color: var(--text);
}

body.candidate-theme .edit-button,
body.candidate-theme .text-button {
  color: var(--text);
  border-bottom: 1px solid rgba(31, 30, 27, 0.28);
  border-radius: 0;
  padding-bottom: 1px;
}

body.candidate-theme .edit-button:hover,
body.candidate-theme .text-button:hover {
  color: var(--accent);
  border-bottom-color: var(--accent);
}

body.candidate-theme .confirm-button {
  color: #2f6b4f;
}

body.candidate-theme .confirm-button:hover {
  color: #1f4d38;
}

body.candidate-theme .fact-status {
  color: #2f6b4f;
}

body.candidate-theme input,
body.candidate-theme textarea {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--bg-soft);
  color: var(--text);
  box-shadow: none;
}

body.candidate-theme input:focus,
body.candidate-theme textarea:focus {
  border-color: var(--text);
  box-shadow: none;
  outline: none;
}

body.candidate-theme .google-continue {
  border-color: transparent;
  color: var(--bg);
  background: var(--text);
}

body.candidate-theme .w {
  filter: none;
}

@media (prefers-reduced-motion: reduce) {
  body.candidate-theme .enter {
    animation: none;
  }
}
