/* stylelint-disable */
/* ============================================================
   Jito - Ashby Job Board Theme v6 (hero-accurate, final)
   Built 1:1 against the jito.wtf hero:
   - near-black green-cast ground (the sky)
   - purple as the STAGE: card accent bars, primary CTAs
     (the For Validators button + platform deck)
   - sage green as the SECONDARY voice (the For Searchers
     button): toggles, links, focus
   - mint highlights (the cubes): eyebrows, count, success
   - white type, gray-sage secondary text
   Includes the logo invert (black assets on dark ground) and
   the eyebrow specificity patch, baked in.
   Ashby admin primaries: #5B2D91 / #7B44BD.
   ============================================================ */

:root {
  --jito-ground: #0A0D0B;          /* hero sky */
  --jito-card: #131A15;            /* raised dark card */
  --jito-card-hover: #182119;
  --jito-input: #10150F;
  --jito-border: #263229;
  --jito-border-strong: #3A4C40;

  --jito-purple-900: #5B2D91;      /* For Validators purple */
  --jito-purple-600: #7B44BD;
  --jito-purple-deck: #6E37AD;     /* platform deck accent */

  --jito-green-500: #82BFAE;       /* For Searchers sage */
  --jito-green-300: #A8D8C9;
  --jito-green-ink: #0E2019;
  --jito-mint: #86D99C;            /* cube mint highlights */

  --jito-text: #FFFFFF;
  --jito-text-secondary: #A9BCB1;
  --jito-text-tertiary: #6E8276;

  --colorAppBackground: var(--jito-ground);
  --colorPrimary900: var(--jito-purple-900);
  --colorPrimary600: var(--jito-purple-600);
  --widthMaxContent: 800px;
  --widthMaxJobBoard: 800px;
  --widthMaxSubscriptionPreferences: 600px;
  --borderRadiusContainer: 12px;
  --borderRadiusControl: 8px;
  --borderRadiusButton: 8px;
  --fontFamily: "Inter", "-apple-system", "BlinkMacSystemFont", "Segoe UI",
    "Helvetica", "Arial", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;
}

/* Hero atmosphere: faint purple glow rising from below,
   like the deck lighting the scene. */
body {
  background:
    radial-gradient(1000px 520px at 50% 108%, rgba(110, 55, 173, 0.16), transparent 60%),
    var(--jito-ground) !important;
  background-attachment: fixed;
  color: var(--jito-text);
  -webkit-font-smoothing: antialiased;
}

/* Logo: black assets are invisible here. Inverts them white.
   DELETE this rule if a white logo is uploaded in admin. */
header img, nav img, a[href="/"] img,
img[src*="logo" i], img[alt*="jito" i] {
  filter: brightness(0) invert(1);
}

a {
  color: var(--jito-green-500) !important;
}

a:hover {
  color: var(--jito-green-300) !important;
}

/* ============================================================
   JOB BOARD
   ============================================================ */

.ashby-job-board-heading {
  color: var(--jito-text) !important;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.ashby-job-board-heading-count {
  color: var(--jito-mint) !important;
  font-weight: 700;
}

.ashby-job-board-filters-label,
.ashby-job-board-reset-filters-label {
  color: var(--jito-text-secondary) !important;
}

.ashby-job-board-filter {
  background: var(--jito-input) !important;
  color: var(--jito-text) !important;
  border: 1px solid var(--jito-border-strong) !important;
  border-radius: 999px;
}

/* Eyebrows: mint, hit from every angle Ashby renders them */
.ashby-department-heading,
.ashby-job-posting-brief-department-heading,
div.ashby-department-heading,
h2.ashby-department-heading,
h3.ashby-department-heading,
span.ashby-department-heading,
div.ashby-job-posting-brief-department-heading,
span.ashby-job-posting-brief-department-heading {
  color: var(--jito-mint) !important;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.78em;
  font-weight: 700;
  margin-top: 44px;
  margin-bottom: 14px;
}

.ashby-department-heading-level,
.ashby-job-posting-brief-department-heading-level {
  color: var(--jito-text-secondary) !important;
}

/* Cards: dark blocks on the purple stage. Purple accent bar,
   purple hover assertion — the For Validators voice. */
.ashby-job-posting-brief {
  margin-bottom: 12px;
  padding: 22px 24px;
  background: var(--jito-card) !important;
  border: 1px solid var(--jito-border) !important;
  border-left: 3px solid var(--jito-purple-deck) !important;
  border-radius: var(--borderRadiusContainer);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
  transition: border-color 140ms ease, background 140ms ease,
    transform 140ms ease, box-shadow 140ms ease;
}

.ashby-job-posting-brief:hover {
  background: var(--jito-card-hover) !important;
  border-color: var(--jito-purple-600) !important;
  border-left-color: var(--jito-mint) !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(110, 55, 173, 0.25);
}

.ashby-job-posting-brief:hover .ashby-job-posting-brief-title {
  color: var(--jito-green-300) !important;
}

.ashby-job-posting-brief-title {
  color: var(--jito-text) !important;
  font-weight: 700;
  font-size: 1.08em;
  transition: color 140ms ease;
}

.ashby-job-posting-brief-details {
  color: var(--jito-text-secondary) !important;
  margin-top: 4px;
}

/* ============================================================
   JOB POSTING DETAIL
   ============================================================ */

.ashby-job-posting-header {
  border-bottom: 1px solid var(--jito-border);
}

.ashby-job-posting-heading {
  color: var(--jito-text) !important;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.ashby-job-posting-left-pane,
.ashby-job-posting-right-pane {
  color: var(--jito-text);
}

.ashby-job-posting-description {
  color: var(--jito-text-secondary) !important;
  line-height: 1.7;
}

.ashby-job-posting-description h1,
.ashby-job-posting-description h2,
.ashby-job-posting-description h3,
.ashby-job-posting-description strong {
  color: var(--jito-text) !important;
}

.ashby-job-board-back-to-all-jobs-button {
  color: var(--jito-text-secondary) !important;
}

.ashby-job-board-back-to-all-jobs-button:hover {
  color: var(--jito-green-500) !important;
}

.ashby-job-posting-right-pane-tab-slider {
  background: var(--jito-card) !important;
  border: 1px solid var(--jito-border);
  border-radius: var(--borderRadiusControl);
}

/* ============================================================
   APPLICATION FORM
   ============================================================ */

.ashby-application-form-container {
  background: var(--jito-card) !important;
  border: 1px solid var(--jito-border);
  border-top: 3px solid var(--jito-purple-deck);
  border-radius: var(--borderRadiusContainer);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);
}

.ashby-application-form-section-header-title {
  color: var(--jito-text) !important;
  font-weight: 700;
}

.ashby-application-form-section-header-description,
.ashby-application-form-question-description,
.ashby-application-form-texting-consent-description {
  color: var(--jito-text-tertiary) !important;
}

.ashby-application-form-question-title {
  color: var(--jito-text) !important;
  font-weight: 500;
}

.ashby-application-form-input-text,
.ashby-application-form-input-textarea,
.ashby-application-form-input-date,
.ashby-application-form-input-autocomplete,
.ashby-application-form-input-dropdown-select {
  background: var(--jito-input) !important;
  color: var(--jito-text) !important;
  border: 1px solid var(--jito-border-strong) !important;
  border-radius: var(--borderRadiusControl);
}

.ashby-application-form-input-text:focus,
.ashby-application-form-input-textarea:focus,
.ashby-application-form-input-autocomplete:focus-within {
  border-color: var(--jito-green-500) !important;
  outline: 2px solid rgba(130, 191, 174, 0.35);
  outline-offset: 1px;
}

.ashby-application-form-input-autocomplete-popup {
  background: var(--jito-input) !important;
  border: 1px solid var(--jito-border-strong);
  border-radius: var(--borderRadiusControl);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}

.ashby-application-form-input-autocomplete-popup-result {
  color: var(--jito-text-secondary) !important;
}

.ashby-application-form-input-autocomplete-popup-result[aria-selected="true"] {
  background: var(--jito-purple-900) !important;
  color: #FFFFFF !important;
}

.ashby-application-form-input-autocomplete-popup-empty,
.ashby-application-form-input-autocomplete-popup-loading {
  color: var(--jito-text-tertiary) !important;
}

.ashby-application-form-input-yesno-option {
  background: var(--jito-input) !important;
  color: var(--jito-text-secondary) !important;
  border: 1px solid var(--jito-border-strong) !important;
  border-radius: var(--borderRadiusControl);
}

/* Active toggle: the For Searchers button, exactly */
.ashby-application-form-input-yesno-option[aria-pressed="true"] {
  background: var(--jito-green-500) !important;
  border-color: var(--jito-green-500) !important;
  color: var(--jito-green-ink) !important;
}

.ashby-application-form-input-radio-group-option-label,
.ashby-application-form-input-checkbox-group-option-label {
  color: var(--jito-text-secondary) !important;
}

.ashby-application-form-input-radio-group-option[data-checked] .ashby-application-form-input-radio-group-option-label,
.ashby-application-form-input-checkbox-group-option[data-checked] .ashby-application-form-input-checkbox-group-option-label {
  color: var(--jito-text) !important;
}

.ashby-application-form-input-file-dropzone {
  background: var(--jito-input) !important;
  border: 1px dashed var(--jito-green-500) !important;
  border-radius: var(--borderRadiusControl);
}

.ashby-application-form-input-file-dropzone-instructions {
  color: var(--jito-text-secondary) !important;
}

.ashby-application-form-input-file-dropzone-upload {
  background: var(--jito-purple-900) !important;
  color: #FFFFFF !important;
  border-radius: var(--borderRadiusButton);
  font-weight: 600;
}

.ashby-application-form-input-file-item {
  background: var(--jito-input) !important;
  border: 1px solid var(--jito-border);
  border-radius: var(--borderRadiusControl);
}

.ashby-application-form-input-file-item-name {
  color: var(--jito-text) !important;
}

.ashby-application-form-autofill-pane {
  background: var(--jito-card) !important;
  border: 1px solid var(--jito-border);
  border-radius: var(--borderRadiusContainer);
}

.ashby-application-form-autofill-input-title {
  color: var(--jito-text) !important;
}

.ashby-application-form-autofill-input-description {
  color: var(--jito-text-tertiary) !important;
}

.ashby-application-form-autofill-input-icon {
  color: var(--jito-mint) !important;
}

/* Submit: For Validators purple, the primary action */
.ashby-application-form-submit-button {
  background: var(--jito-purple-900) !important;
  color: #FFFFFF !important;
  border: none;
  border-radius: var(--borderRadiusButton);
  font-weight: 700;
  transition: background 140ms ease, box-shadow 140ms ease;
}

.ashby-application-form-submit-button:hover {
  background: var(--jito-purple-600) !important;
  box-shadow: 0 4px 20px rgba(123, 68, 189, 0.35);
}

.ashby-application-form-success-container {
  background: var(--jito-card);
  border: 1px solid var(--jito-mint);
  border-radius: var(--borderRadiusContainer);
  color: var(--jito-text);
}

.ashby-application-form-failure-container {
  background: var(--jito-card);
  border: 1px solid #B3423A;
  border-radius: var(--borderRadiusContainer);
  color: var(--jito-text);
}

.ashby-application-blocking-disclosure,
.ashby-application-form-blocked-application-container {
  color: var(--jito-text-secondary) !important;
}

.ashby-application-form-input-date-popup {
  background: var(--jito-input) !important;
  border: 1px solid var(--jito-border-strong);
  border-radius: var(--borderRadiusControl);
  color: var(--jito-text);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}

.ashby-application-form-input-date-popup-title {
  color: var(--jito-text) !important;
}

.ashby-application-form-input-date-popup-header-button {
  color: var(--jito-green-500) !important;
}

.ashby-survey-form-container {
  background: var(--jito-card) !important;
  border: 1px solid var(--jito-border);
  border-radius: var(--borderRadiusContainer);
  color: var(--jito-text);
}
