/* stylelint-disable */

/* ============================================================
   TRAYSAR — Ashby job board theme
   Brand: obsidian #0d0d0d · lichen #d0f470 · limestone/paper #f7f5ef
   Fonts loaded cross-origin from traysar.com (CORS-enabled)
   Paste into Ashby → Job Board → Theme → Custom CSS
   ============================================================ */

@font-face {
  font-family: "Systemia";
  src: url("https://traysar.com/fonts/Systemia-Regular.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Systemia";
  src: url("https://traysar.com/fonts/Systemia-Medium.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Systemia";
  src: url("https://traysar.com/fonts/Systemia-Bold.woff2") format("woff2");
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Ingram Mono";
  src: url("https://traysar.com/fonts/IngramMono-Regular.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}

:root {
  /* --- Traysar brand tokens --- */
  --ink: #0d0d0d;
  --paper: #f7f5ef;
  --lichen: #d0f470;
  --muted: rgba(13, 13, 13, 0.55);
  --line: rgba(13, 13, 13, 0.14);
  --accentDark: #5f6a1f; /* readable lichen on light */
  --mono: "Ingram Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;

  /* --- Ashby variables ---
     NOTE: also set the primary colors under Ashby Admin → Theme so they match. */
  --colorPrimary900: #0d0d0d;          /* darker primary (links, focus) */
  --colorPrimary600: #3a3a30;          /* lighter primary (hover) */

  --widthMaxJobBoard: 820px;

  /* Sharp, hard-edged corners to match the site */
  --borderRadiusContainer: 0px;
  --borderRadiusControl: 0px;
  --borderRadiusButton: 0px;

  --fontFamily: "Systemia", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;

  --colorAppBackground: #f7f5ef;
}

/* ---- Job board header ------------------------------------------------- */
.ashby-job-board-heading {
  font-family: var(--fontFamily);
  font-weight: 500;
  letter-spacing: -0.03em;
  color: var(--ink);
}
.ashby-job-board-heading-count {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
}

/* ---- Filters --------------------------------------------------------- */
.ashby-job-board-filters-label,
.ashby-job-board-reset-filters-label {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 12px;
  color: var(--muted);
}
.ashby-job-board-filter {
  font-family: var(--mono);
  background: #ffffff;
  border: 1px solid var(--line);
  color: var(--ink);
}

/* ---- Department / team headings -------------------------------------- */
.ashby-department-heading,
.ashby-job-posting-brief-department-heading {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 12px;
  color: var(--accentDark);
}
.ashby-department-heading-level,
.ashby-job-posting-brief-department-heading-level {
  font-family: var(--fontFamily);
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--ink);
}

/* ---- Posting list cards ---------------------------------------------- */
.ashby-job-posting-brief-list {}

.ashby-job-posting-brief {
  margin-bottom: 12px;
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 20px 22px;
  transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}
.ashby-job-posting-brief:hover {
  border-color: var(--ink);
  /* subtle lichen edge on hover */
  box-shadow: inset 3px 0 0 0 var(--lichen);
}
.ashby-job-posting-brief-title {
  font-family: var(--fontFamily);
  font-weight: 500;
  font-size: 19px;
  letter-spacing: -0.01em;
  color: var(--ink);
}
.ashby-job-posting-brief-details {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 11px;
  color: var(--muted);
}

/* ---- Individual posting page ----------------------------------------- */
.ashby-job-posting-header,
.ashby-job-posting-heading {
  font-family: var(--fontFamily);
  font-weight: 500;
  letter-spacing: -0.03em;
  color: var(--ink);
}
.ashby-job-posting-left-pane { color: var(--ink); }
.ashby-job-posting-right-pane {}

.ashby-job-board-back-to-all-jobs-button {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 12px;
  color: var(--ink);
  background: transparent;
  border: 1px solid var(--ink);
  border-radius: 0;
}
.ashby-job-board-back-to-all-jobs-button:hover {
  background: var(--ink);
  color: var(--lichen);
}

/* ---- Application form ------------------------------------------------- */
.ashby-application-form-container { color: var(--ink); }

.ashby-application-form-section-header-title {
  font-family: var(--fontFamily);
  font-weight: 500;
  letter-spacing: -0.02em;
  color: var(--ink);
}
.ashby-application-form-section-header-description {
  color: var(--muted);
}
.ashby-application-form-question-title {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 12px;
  color: var(--ink);
}
.ashby-application-form-question-description {
  color: var(--muted);
}

/* Inputs / selects / textareas (Ashby's hashed inputs, targeted generically) */
.ashby-application-form-container input,
.ashby-application-form-container select,
.ashby-application-form-container textarea {
  font-family: var(--mono);
  background: #ffffff;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 0;
}
.ashby-application-form-container input:focus,
.ashby-application-form-container select:focus,
.ashby-application-form-container textarea:focus {
  border-color: var(--ink);
  outline: none;
  box-shadow: 0 0 0 2px rgba(208, 244, 112, 0.5);
}

/* The signature Traysar button: lichen + obsidian, inverts on hover */
.ashby-application-form-submit-button {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  background: var(--lichen);
  color: var(--ink);
  border: 1px solid var(--ink);
  border-radius: 0;
  transition: background 0.15s ease, color 0.15s ease;
}
.ashby-application-form-submit-button:hover {
  background: var(--ink);
  color: var(--lichen);
}

/* Autofill (resume → form) panel */
.ashby-application-form-autofill-input-title {
  font-family: var(--fontFamily);
  font-weight: 500;
  color: var(--ink);
}
.ashby-application-form-autofill-input-description { color: var(--muted); }
.ashby-application-form-autofill-input-root {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 0;
}
.ashby-application-form-autofill-input-icon { color: var(--accentDark); }

/* Success / failure messages */
.ashby-application-form-success-container { color: var(--ink); }
.ashby-application-form-failure-container { color: var(--ink); }
.ashby-application-form-texting-consent-description { color: var(--muted); }
