/* Woody's Hiring Portal - brand design tokens
   Matched 1:1 to the live woodyspharmacyga.net site so the portal feels native. */

:root {
  color-scheme: light;

  /* Brand (from the live site) */
  --red:       #c91422;
  --red-deep:  #8f0e17;
  --red-soft:  #fff0f1;
  --red-hover: #b80f1b;

  /* Ink / neutrals */
  --ink:    #171213;
  --muted:  #6e6060;
  --paper:  #fffaf7;
  --cream:  #f6eee8;
  --line:   rgba(23, 18, 19, .12);
  --shadow: 0 22px 70px rgba(79, 18, 18, .16);
  --shadow-sm: 0 14px 36px rgba(79, 18, 18, .08);

  /* Status colors (candidate pipeline - dashboard) tuned to the warm palette */
  --status-new-bg:       #e4eefb;  --status-new-fg:       #1c5fc0;
  --status-interview-bg: #fff3da;  --status-interview-fg: #9a6b00;
  --status-hired-bg:     #e4f6ea;  --status-hired-fg:     #1e7a43;
  --status-rejected-bg:  #fbe3e3;  --status-rejected-fg:  #b23030;
  --status-archived-bg:  #efeae6;  --status-archived-fg:  #6e6060;

  /* Typography - matches the live site */
  --font-body:    "Avenir Next", "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-display: Georgia, "Iowan Old Style", "Times New Roman", serif;
  --font-ui:      "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --radius: 8px;
  --radius-pill: 50px;
  --max: 1160px;
  --nav: 70px;

  font-family: var(--font-body);
}

/* ---------- base reset ---------- */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body {
  margin: 0; color: var(--ink); background: var(--paper);
  line-height: 1.5; -webkit-font-smoothing: antialiased;
  font-family: var(--font-body);
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--font-display); font-weight: 700; letter-spacing: 0; }

/* ---------- shared buttons (live-site styling) ---------- */
.btn {
  padding: 14px 28px; border: none; border-radius: var(--radius-pill);
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  font-family: var(--font-ui); font-size: 15px; font-weight: 600; white-space: nowrap;
  cursor: pointer; transition: background .22s, transform .18s, box-shadow .22s, color .18s;
}
.btn:hover { transform: translateY(-1px); }
.btn:active { transform: translateY(0); }
.btn-primary   { color: #fff; background: var(--red); box-shadow: 0 6px 20px rgba(201, 20, 34, .28); }
.btn-primary:hover { background: var(--red-hover); box-shadow: 0 8px 24px rgba(201, 20, 34, .34); }
.btn-secondary { color: var(--ink); background: #fff; border: 1.5px solid rgba(23, 18, 19, .12); box-shadow: 0 6px 20px rgba(23, 18, 19, .12); }
.btn-secondary:hover { border-color: rgba(23, 18, 19, .16); box-shadow: 0 8px 24px rgba(23, 18, 19, .18); }
.btn-dark { color: #fff; background: var(--ink); }

/* ---------- status pills (dashboard) ---------- */
.pill {
  display: inline-flex; align-items: center; padding: 3px 11px; border-radius: 999px;
  font-family: var(--font-ui); font-size: .75rem; font-weight: 700; text-transform: capitalize;
}
.pill--new      { background: var(--status-new-bg);       color: var(--status-new-fg); }
.pill--interview{ background: var(--status-interview-bg); color: var(--status-interview-fg); }
.pill--hired    { background: var(--status-hired-bg);     color: var(--status-hired-fg); }
.pill--rejected { background: var(--status-rejected-bg);  color: var(--status-rejected-fg); }
.pill--archived { background: var(--status-archived-bg);  color: var(--status-archived-fg); }

/* ---------- helpers ---------- */
.wrap { width: min(var(--max), calc(100% - 28px)); margin: 0 auto; }
.visually-hidden {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
