/* stylelint-disable */

/* These variables can be used to control values throughout the job board. */
:root {
  /* Brand Colors */
  --colorPrimary900: #292826;
  --colorPrimary600: #292826;
  --colorWhite: #ffffff;
  --colorAppBackground: #ffffff;

  /* The max width of the job board container */
  --widthMaxJobBoard: 1200px;

  /* Container border radius */
  --borderRadiusContainer: 8px;

  /* Border radius of control elements (e.g. input boxes) */
  --borderRadiusControl: 8px;

  /* Button border radius */
  --borderRadiusButton: 8px;

  /* Font families */
  --fontFamily: "PP Neue Montreal Variable", "-apple-system",
    "BlinkMacSystemFont", "Segoe UI", "Helvetica", "Arial", "Apple Color Emoji",
    "Segoe UI Emoji", sans-serif;

  /* Typography */
  --fontWeightNormal: 500;
  --fontWeightBold: 600;

  /* Spacing */
  --spacing4: 4px;
  --spacing8: 8px;
  --spacing16: 16px;
  --spacing24: 24px;
  --spacing32: 32px;
  --spacing40: 40px;
  --spacing48: 48px;
  --spacing56: 56px;
  --spacing64: 64px;
}

/* Application autofill input's base layer element. This contains standard copy, a CTA button, and potential validation alerts. */
.ashby-application-form-autofill-input-base-layer {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing24);
  border: 1px solid #d8d7d5;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

/* Application autofill input's description. */
.ashby-application-form-autofill-input-description {
  color: var(--colorPrimary900);
  font-size: 16px;
  margin-top: var(--spacing8);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
  word-wrap: break-word;
  overflow-wrap: break-word;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

/* Application autofill input's drag state overlay element. Can style [data-state] which can be 'active' or 'hidden'. */
.ashby-application-form-autofill-input-drag-layer {
  background-color: rgba(41, 40, 38, 0.1);
  border-radius: var(--borderRadiusContainer);
}

/* Application autofill input form's alert element. Can style [data-highlight] which can be 'negative' or 'positive'. */
.ashby-application-form-autofill-input-form-alert {
  padding: var(--spacing16);
  border-radius: var(--borderRadiusContainer);
  margin: var(--spacing16) 0;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* Application autofill input's magic sparkles icon. */
.ashby-application-form-autofill-input-icon {
  color: var(--colorPrimary900);
}

/* Target the header structure to fix layout issues */
[class*="_header_xd2v0_"] {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing8);
  flex-wrap: wrap;
  max-width: 100%;
  box-sizing: border-box;
}

[class*="_iconContainer_xd2v0_"] {
  flex-shrink: 0;
  margin-top: 2px;
}

[class*="_title_xd2v0_"] {
  flex: 1;
  min-width: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  white-space: normal;
}

/* Application autofill input's pending state overlay element. Can style [data-state] which can be 'active' or 'hidden'. */
.ashby-application-form-autofill-input-pending-layer {
  background-color: rgba(41, 40, 38, 0.05);
  border-radius: var(--borderRadiusContainer);
}

/* Application autofill input's root element. Can style [data-state] which can be 'pending', 'drag', or 'default'. */
.ashby-application-form-autofill-input-root {
  border-radius: var(--borderRadiusControl);
  border: 1px solid #d8d7d5;
  transition: border-color 0.2s ease;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* Application autofill input's title. */
.ashby-application-form-autofill-input-title {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 18px;
  margin-bottom: var(--spacing8);
  font-family: var(--fontFamily);
  word-wrap: break-word;
  overflow-wrap: break-word;
  max-width: 100%;
  box-sizing: border-box;
  text-align: left;
}

/* Container element for application autofill input form. */
.ashby-application-form-autofill-pane {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing32);
  margin-bottom: var(--spacing32);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* The resume uploader to auto-fill the application form */
.ashby-application-form-autofill-uploader {
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing40);
  text-align: center;
  transition: border-color 0.2s ease;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* A container for displaying the custom message to the user */
.ashby-application-form-blocked-application-container {
  background-color: #ffedea;
  border: 1px solid #ffedea;
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing24);
  color: #ac250f;
  text-align: center;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* A container for the application form. */
.ashby-application-form-container {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing32);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* A container for the failure message */
.ashby-application-form-failure-container {
  background-color: #ffedea;
  border: 1px solid #ffedea;
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing24);
  color: #ac250f;
  text-align: center;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* A container for the label and input on an application form. */
.ashby-application-form-field-entry {
  margin-bottom: var(--spacing24);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* Fix placeholder font weight for all inputs */
input::placeholder {
  font-weight: var(--fontWeightNormal) !important;
  font-family: var(--fontFamily);
  color: #54524f !important;
}

textarea::placeholder {
  font-weight: var(--fontWeightNormal) !important;
  font-family: var(--fontFamily);
  color: #54524f !important;
}

select {
  font-weight: var(--fontWeightNormal) !important;
  font-family: var(--fontFamily);
  color: #54524f !important;
}

/* Add top padding to the main container */
[class*="_container_ud4nd_"] {
  padding-top: var(--spacing16) !important;
}

/* Hide the weird active tab indicator */
[class*="_active_oj0x8_"]::after {
  display: none !important;
}

[class*="_active_oj0x8_"]::before {
  display: none !important;
}

/* Alternative approach - try to override the active state */
[class*="_tab_oj0x8_"] {
  border-bottom: none !important;
  background: none !important;
}

/* Add separation between tabs and form content on desktop */
[class*="_tabs_oj0x8_"] {
  margin-bottom: var(--spacing32) !important;
}

/* Add more space around the application form container */
.ashby-application-form-container {
  margin-top: var(--spacing16);
}

/* The description of each question on an application form. Will only show if a description is specified. */
.ashby-application-form-question-description {
  color: #54524f;
  font-size: 14px;
  margin-top: var(--spacing8);
  margin-bottom: var(--spacing16);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* The title of each question on an application form. */
.ashby-application-form-question-title {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 18px;
  margin-bottom: var(--spacing16);
  font-family: var(--fontFamily);
}

/* A single section on the Ashby application form. All questions will be wrapped in sections, though the default section may not have a title. */
.ashby-application-form-section-container {
  margin-bottom: var(--spacing40);
  padding-bottom: var(--spacing32);
  border-bottom: 1px solid #f0eeeb;
}

/* The header for an application form section, possibly containing a title and description. */
.ashby-application-form-section-header {
  margin-bottom: var(--spacing24);
}

/* The description for an application form section. May not exist if no description was specified. */
.ashby-application-form-section-header-description {
  color: #54524f;
  font-size: 16px;
  margin-top: var(--spacing8);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* The title for an application form section. May not exist for the default section. */
.ashby-application-form-section-header-title {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 24px;
  margin-bottom: var(--spacing16);
  font-family: var(--fontFamily);
}

/* The application submission button. Will have loading and hover states that should be tested. */
.ashby-application-form-submit-button {
  background-color: var(--colorPrimary900);
  color: var(--colorWhite);
  border: none;
  border-radius: var(--borderRadiusButton);
  padding: var(--spacing16) var(--spacing32);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightBold);
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  width: 100%;
  margin-top: var(--spacing24);
}

/* A container for the success message */
.ashby-application-form-success-container {
  background-color: #ecffc7;
  border: 1px solid #ecffc7;
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing24);
  color: #417662;
  text-align: center;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* The text message consent description. Displayed below phone number fields. Will only show if texting is enabled. */
.ashby-application-form-texting-consent-description {
  color: #54524f;
  font-size: 14px;
  margin-top: var(--spacing8);
  font-style: italic;
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
}

/* The heading of a department, which can have many teams under it. */
.ashby-department-heading {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 24px;
  margin-bottom: var(--spacing24);
  margin-top: var(--spacing48);
  font-family: var(--fontFamily);
}

/* The heading of a single team. */
.ashby-department-heading-level {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 20px;
  margin-bottom: var(--spacing16);
  margin-top: var(--spacing32);
  font-family: var(--fontFamily);
}

/* The button which allows users to navigate from an individual posting back to the list of all job postings. */
.ashby-job-board-back-to-all-jobs-button {
  background-color: transparent;
  color: var(--colorPrimary900);
  border: 1px solid var(--colorPrimary900);
  border-radius: var(--borderRadiusButton);
  padding: 12px var(--spacing24);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightBold);
  font-size: 16px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--spacing8);
}

/* A select box element for filtering the job board. */
.ashby-job-board-filter {
  padding: 12px var(--spacing16);
  border: 1px solid #d8d7d5;
  border-radius: var(--borderRadiusControl);
  font-family: var(--fontFamily);
  font-weight: var(--fontWeightNormal);
  font-size: 16px;
  background-color: var(--colorWhite);
  color: var(--colorPrimary900);
  cursor: pointer;
  transition: border-color 0.2s ease;
}

/* The 'Filters' label element in the job board. */
.ashby-job-board-filters-label {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 16px;
  margin-bottom: var(--spacing8);
  font-family: var(--fontFamily);
}

/* The heading of the entire job board. */
.ashby-job-board-heading {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 32px;
  margin-bottom: var(--spacing24);
  font-family: var(--fontFamily);
}

/* The count of job postings on the job board. */
.ashby-job-board-heading-count {
  color: #54524f;
  font-weight: var(--fontWeightNormal);
  font-size: 16px;
  margin-left: var(--spacing16);
  font-family: var(--fontFamily);
}

/* The 'Reset filters' label element in the job board. The reset filters label element in the job board. */
.ashby-job-board-reset-filters-label {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 14px;
  cursor: pointer;
  text-decoration: underline;
  transition: color 0.2s ease;
  font-family: var(--fontFamily);
}

/* The container of the job posting details pane. */
.ashby-job-posting-brief {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing24);
  margin-bottom: var(--spacing16);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.2s ease;
  cursor: pointer;
  font-weight: var(--fontWeightNormal);
}

/* Fix hover state for job posting brief cards */
[class*="_jobPosting_12ylk_"]:hover {
  background-color: #f0eeeb !important;
}

/* The heading of a department name. Departments group teams. */
.ashby-job-posting-brief-department-heading {
  color: #54524f;
  font-weight: var(--fontWeightNormal);
  font-size: 14px;
  margin-bottom: var(--spacing8);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-family: var(--fontFamily);
}

/* The heading of a single team. */
.ashby-job-posting-brief-department-heading-level {
  color: #54524f;
  font-weight: var(--fontWeightNormal);
  font-size: 14px;
  margin-bottom: var(--spacing8);
  font-family: var(--fontFamily);
}

/* The container for the details of the job posting, in the details pane. */
.ashby-job-posting-brief-details {
  margin-top: var(--spacing16);
}

/* The container for the list of job post briefings. */
.ashby-job-posting-brief-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing4);
}

/* The title of the job posting in the details pane. */
.ashby-job-posting-brief-title {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 18px;
  margin-bottom: var(--spacing8);
  line-height: 1.4;
  font-family: var(--fontFamily);
}

/* The main header on the job posting page */
.ashby-job-posting-header {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing32);
  margin-bottom: var(--spacing32);
  margin-top: var(--spacing24);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* The heading of a job post */
.ashby-job-posting-heading {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 32px;
  margin-bottom: var(--spacing16);
  line-height: 1.2;
  font-family: var(--fontFamily);
}

/* The left pane of the job posting, with the job posting details */
.ashby-job-posting-left-pane {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing32);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  font-weight: var(--fontWeightNormal);
}

/* The right pane of the job posting, containing the tabs, overview, and application form */
.ashby-job-posting-right-pane {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing32);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  font-weight: var(--fontWeightNormal);
  font-family: var(--fontFamily);
}

/* The application tab in the right pane of the job posting */
.ashby-job-posting-right-pane-application-tab {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 16px;
  padding: 12px var(--spacing24);
  border-radius: var(--borderRadiusButton);
  cursor: pointer;
  transition: background-color 0.2s ease;
  font-family: var(--fontFamily);
}

/* The overview tab in the right pane of the job posting */
.ashby-job-posting-right-pane-overview-tab {
  color: var(--colorPrimary900);
  font-weight: var(--fontWeightBold);
  font-size: 16px;
  padding: 12px var(--spacing24);
  border-radius: var(--borderRadiusButton);
  cursor: pointer;
  transition: background-color 0.2s ease;
  font-family: var(--fontFamily);
}

/* The tabs slider in the right pane of the job posting */
.ashby-job-posting-right-pane-tab-slider {
  border-radius: var(--borderRadiusButton);
  padding: 2px;
  margin-bottom: var(--spacing48);
}

/* Try to override any grey backgrounds with white */
[class*="_filtersOpen_"] {
  background-color: #ffffff !important;
}

[class*="_filtersContainer_"] {
  background-color: #ffffff !important;
}

[class*="_filtersWindow_"] {
  background-color: #ffffff !important;
}

[class*="_filtersHeader_"] {
  background-color: #ffffff !important;
}

[class*="_filters_"] {
  background-color: #ffffff !important;
}

[class*="_filterContainer_"] {
  background-color: #ffffff !important;
}

[class*="_filtersAction_"] {
  color: #54524f !important;
}

/* A container for any surveys specified for this application form. */
.ashby-survey-form-container {
  background-color: var(--colorWhite);
  border-radius: var(--borderRadiusContainer);
  padding: var(--spacing24);
  margin-top: var(--spacing24);
  border: 1px solid #d8d7d5;
}
