/* stylelint-disable */

/* ============================================================
   Linq – Ashby Job Board Dark Theme
   ONLY uses :root variables and valid Ashby class selectors.
   ============================================================ */

:root {
  --colorPrimary900: #C4FF20;
  --colorPrimary600: #C4FF20;
  --colorTextOnPrimary: #141414;
  --widthMaxJobBoard: 100%;
  --borderRadiusContainer: 12px;
  --borderRadiusControl: 8px;
  --borderRadiusButton: 9999px;
  --fontFamily: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
  --colorAppBackground: #141414;
}


/* ========== GLOBAL DARK OVERRIDE ========== */

body, html {
  background-color: #141414 !important;
  color: #E7E7E7 !important;
}

div, section, article, aside, main, nav, header, footer, form, fieldset {
  background-color: transparent !important;
}

h1, h2, h3, h4, h5, h6 {
  color: #FFFFFF !important;
}

p, span, li, label, td, th, caption, figcaption, blockquote, pre, code, small, strong, em, b, i {
  color: #E7E7E7 !important;
}

a {
  color: #C4FF20 !important;
}

a:hover {
  color: #b8f01e !important;
}

hr {
  border-color: #333 !important;
}

input, textarea, select {
  background-color: #1F1F1F !important;
  border: 1px solid #333 !important;
  color: #E7E7E7 !important;
  border-radius: 8px !important;
}

input::placeholder, textarea::placeholder {
  color: #AAAAAA !important;
}

input:focus, textarea:focus, select:focus {
  border-color: #C4FF20 !important;
  box-shadow: 0 0 0 2px rgba(196, 255, 32, 0.3) !important;
  outline: 2px solid transparent !important;
}

option {
  background-color: #1F1F1F !important;
  color: #E7E7E7 !important;
}

button {
  color: #E7E7E7 !important;
}

/* Primary buttons: force dark text on lime green */
.ashby-application-form-submit-button,
.ashby-application-form-submit-button * {
  color: #141414 !important;
}

/* All buttons in the right pane: filled lime green with dark text */
.ashby-job-posting-right-pane button,
.ashby-job-posting-right-pane [role="button"] {
  background-color: #C4FF20 !important;
  color: #141414 !important;
  border: none !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
}

.ashby-job-posting-right-pane button *,
.ashby-job-posting-right-pane [role="button"] * {
  color: #141414 !important;
}

.ashby-job-posting-right-pane button svg,
.ashby-job-posting-right-pane button svg * {
  color: #141414 !important;
  fill: #141414 !important;
  stroke: #141414 !important;
}

footer {
  color: #666 !important;
}


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

.ashby-job-board-heading {
  color: #FFFFFF !important;
  letter-spacing: -0.02em;
}

.ashby-job-board-heading-count {
  color: #D0D0D0 !important;
}


/* === Filters === */

.ashby-job-board-filters-label {
  color: #D0D0D0 !important;
  font-size: 13px;
}

.ashby-job-board-filter {
  background-color: #1F1F1F !important;
  border: 1px solid #333 !important;
  color: #333 !important;
  border-radius: 8px !important;
}

.ashby-job-board-reset-filters-label {
  color: #C4FF20 !important;
  cursor: pointer;
}

.ashby-job-board-reset-filters-label:hover {
  color: #b8f01e !important;
}


/* ========== DEPARTMENT HEADINGS ========== */

.ashby-department-heading {
  color: #FFFFFF !important;
  font-weight: 600;
}

.ashby-department-heading-level {
  color: #FFFFFF !important;
  font-weight: 600;
}

.ashby-job-posting-brief-department-heading {
  color: #FFFFFF !important;
  font-weight: 600;
}

.ashby-job-posting-brief-department-heading-level {
  color: #FFFFFF !important;
  font-weight: 600;
}


/* ========== JOB POSTING CARDS ========== */

.ashby-job-posting-brief {
  background-color: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 12px !important;
  margin-bottom: 8px !important;
  padding: 16px 20px !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px 2px rgba(0, 0, 0, 0.2);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.ashby-job-posting-brief:hover {
  border-color: #555 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
  transform: translateY(-1px);
}

.ashby-job-posting-brief-list {
  color: #E7E7E7 !important;
}

.ashby-job-posting-brief-title {
  color: #C4FF20 !important;
  font-weight: 600;
}

.ashby-job-posting-brief-details {
  color: #D0D0D0 !important;
  font-size: 14px;
}


/* ========== JOB DETAIL PAGE ========== */

.ashby-job-board-back-to-all-jobs-button {
  color: #C4FF20 !important;
  font-weight: 500;
}

.ashby-job-board-back-to-all-jobs-button:hover {
  color: #b8f01e !important;
}

.ashby-job-posting-heading {
  color: #FFFFFF !important;
}

.ashby-job-posting-header {
  color: #FFFFFF !important;
  position: relative !important;
  z-index: auto !important;
}


/* === Left Pane (Job Details Sidebar) === */

.ashby-job-posting-left-pane {
  background-color: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 12px 0 0 12px !important;
  border-right: none !important;
  color: #E7E7E7 !important;
}


/* === Right Pane (Overview & Application) === */

.ashby-job-posting-right-pane {
  background-color: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 0 12px 12px 0 !important;
  color: #E7E7E7 !important;
  padding: 24px 28px !important;
}


/* === Tabs === */

.ashby-job-posting-right-pane-overview-tab {
  color: #E7E7E7 !important;
  font-weight: 500;
  cursor: pointer;
  padding: 12px 16px 12px 0 !important;
  margin-right: 24px !important;
}

.ashby-job-posting-right-pane-overview-tab:hover {
  color: #FFFFFF !important;
}

.ashby-job-posting-right-pane-application-tab {
  color: #E7E7E7 !important;
  font-weight: 500;
  cursor: pointer;
  padding: 12px 16px 12px 0 !important;
  margin-right: 24px !important;
}

.ashby-job-posting-right-pane-application-tab:hover {
  color: #FFFFFF !important;
}

.ashby-job-posting-right-pane-tab-slider {
  background-color: #C4FF20 !important;
}

.ashby-job-posting-right-pane-overview-tab,
.ashby-job-posting-right-pane-application-tab {
  margin-bottom: 20px !important;
}


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

.ashby-application-form-container {
  background-color: transparent !important;
  color: #E7E7E7 !important;
  padding: 24px 28px 8px 28px !important;
}

.ashby-application-form-section-container {
  color: #E7E7E7 !important;
  margin-bottom: 12px !important;
}

.ashby-application-form-section-header {
  color: #FFFFFF !important;
}

.ashby-application-form-section-header-title {
  color: #FFFFFF !important;
  font-weight: 600;
}

.ashby-application-form-section-header-description {
  color: #D0D0D0 !important;
  line-height: 1.5;
}

.ashby-application-form-question-title {
  color: #FFFFFF !important;
  font-weight: 600;
  margin-bottom: 6px !important;
}

.ashby-application-form-question-description {
  color: #D0D0D0 !important;
  line-height: 1.5;
}

.ashby-application-form-field-entry {
  color: #E7E7E7 !important;
  margin-bottom: 20px !important;
}


/* === Submit Button === */

.ashby-application-form-submit-button {
  background-color: #C4FF20 !important;
  color: #141414 !important;
  font-weight: 600 !important;
  border-radius: 9999px !important;
  border: none !important;
  padding: 14px 32px !important;
  font-size: 15px;
  cursor: pointer;
  margin-top: 24px !important;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.ashby-application-form-submit-button:hover {
  background-color: #b8f01e !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(196, 255, 32, 0.2);
}

.ashby-application-form-submit-button:active {
  transform: translateY(0);
}


/* === Resume Upload / Autofill === */

.ashby-application-form-autofill-pane {
  background-color: #1a1a1a !important;
  border: 1px solid #333 !important;
  border-radius: 12px !important;
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 16px 20px !important;
  margin-bottom: 24px !important;
}

.ashby-application-form-autofill-input-root {
  background-color: transparent !important;
  border: none !important;
}

.ashby-application-form-autofill-input-base-layer {
  color: #E7E7E7 !important;
}

.ashby-application-form-autofill-input-title {
  color: #FFFFFF !important;
  text-align: left !important;
}

.ashby-application-form-autofill-input-description {
  color: #D0D0D0 !important;
  text-align: left !important;
}

.ashby-application-form-autofill-input-icon {
  display: none !important;
}

.ashby-application-form-autofill-uploader {
  background-color: #1a1a1a !important;
  border: 2px dashed #333 !important;
  border-radius: 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 24px 20px !important;
}

.ashby-application-form-autofill-uploader:hover {
  border-color: #C4FF20 !important;
}


/* === Form States === */

.ashby-application-form-blocked-application-container {
  color: #E7E7E7 !important;
}

.ashby-application-form-success-container {
  color: #C4FF20 !important;
}

.ashby-application-form-failure-container {
  color: #ff6b6b !important;
}

.ashby-application-form-texting-consent-description {
  color: #D0D0D0 !important;
}

.ashby-survey-form-container {
  color: #E7E7E7 !important;
}


/* ========== MOBILE RESPONSIVE ========== */

@media (max-width: 768px) {
  .ashby-job-posting-brief {
    padding: 14px 16px !important;
    margin-bottom: 6px !important;
  }

  .ashby-job-posting-left-pane {
    border-radius: 12px 12px 0 0 !important;
    border-right: 1px solid #333 !important;
    border-bottom: none !important;
  }

  .ashby-job-posting-right-pane {
    border-radius: 0 0 12px 12px !important;
    border-top: none !important;
  }

  .ashby-application-form-submit-button {
    width: 100% !important;
    padding: 14px 24px;
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  .ashby-job-posting-brief {
    border-radius: 8px !important;
  }

  .ashby-job-posting-left-pane {
    border-radius: 8px !important;
  }

  .ashby-job-posting-right-pane {
    border-radius: 8px !important;
  }
}


/* ========== ACCESSIBILITY ========== */

@media (prefers-reduced-motion: reduce) {
  .ashby-job-posting-brief {
    transition: none !important;
  }

  .ashby-application-form-submit-button {
    transition: none !important;
  }
}
