/* stylelint-disable */
/* Google Fonts */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap");

/* Root variables */
:root {
  --colorWhite: #ffffff;
  --colorBlack: #222222;
  --colorHoverBlack: #dddddd;
  --colorTextGrey: #808080;
  --colorLGrey: #dddddd;
  --colorBGrey: #f7f7f9;
  --fontSizeNormal: 14px !important;

  --colorPrimary900: #1f74bf !important;
  --colorPrimary600: #53abf9 !important;
  --colorPrimary400: #cbe6fd;

  --colorError: #f1acaa;
  --colorNegative800: #f1acaa;

  --widthMaxJobBoard: 800px;

  --borderRadiusContainer: 0;
  --borderRadiusControl: 0;
  --borderRadiusButton: 0;

  --fontFamily: "Inter", "Segoe UI", "Helvetica", "Arial", "Apple Color Emoji",
    "Segoe UI Emoji", sans-serif;

  --colorAppBackground: #ffffff;
}

/* Typography */
h1,
h2,
h3,
h4,
h5 {
  color: var(--colorBlack);
  font-weight: 500 !important;
}

a,
a:hover,
a:visited,
a:active {
  color: var(--colorPrimary600) !important;
}

input {
  color: var(--colorBlack);
}

input::placeholder {
  color: var(--colorBlack);
}

label {
  color: var(--colorBlack) !important;
  font-weight: 400 !important;
  font-size: 12px !important;
}

/* Overview tab */
[role="tabpanel"][id="overview"] {
  padding: 16px;
  border-radius: 0;
}

[role="tabpanel"][id="overview"] > div {
  color: var(--colorBlack);
}

/* Autofill input and application form styling */
.ashby-application-form-autofill-input-base-layer,
.ashby-application-form-autofill-input-description,
.ashby-application-form-autofill-input-form-alert,
.ashby-application-form-autofill-input-icon,
.ashby-application-form-autofill-input-title,
.ashby-application-form-blocked-application-container,
.ashby-application-form-question-description,
.ashby-application-form-question-title,
.ashby-application-form-section-header,
.ashby-application-form-section-header-description,
.ashby-application-form-section-header-title,
.ashby-application-form-texting-consent-description {
  color: var(--colorBlack);
}

.ashby-application-form-autofill-input-root {
  background-color: var(--colorAppBackground);
  padding: 16px;
  border-radius: 0;
}

.ashby-application-form-autofill-pane,
.ashby-application-form-autofill-uploader {
  padding: 16px;
  border-radius: 10px;
}

.ashby-application-form-container {
  background-color: var(--colorAppBackground);
}

.ashby-application-form-failure-container {
  color: var(--colorError);
}

.ashby-application-form-success-container {
  color: var(--colorPrimary600);
}

/* Buttons */
.ashby-job-board-back-to-all-jobs-button {
  color: var(--colorBlack);
  border: 1px solid var(--colorLGrey);
  border-radius: var(--borderRadiusControl);
  padding: 12px;
  width: auto;
  height: 50px;
  font-size: 16px;
  font-weight: 500;
  display: flex;
  justify-content: center;
  transition: opacity 0.2s ease-in-out;
}

.ashby-job-board-back-to-all-jobs-button:hover {
  opacity: 0.8;
  background-color: var(--colorAppBackground);
  color: var(--colorBlack);
}

/* Replacement for deleted _container_ud4nd_29 */
.ashby-job-posting-brief-list {
  margin-top: 2rem;
}

/* Replacement for deleted _button_8wvgw_29 */
button:hover svg,
button:active svg {
  fill: var(--colorPrimary600) !important;
}

/* Filters */
.ashby-job-board-filter {
  color: var(--colorBlack) !important;
  background-color: var(--colorWhite) !important;
  border-radius: var(--borderRadiusControl);
  border: 1px solid var(--colorHoverBlack);
  padding: 8px 12px;
  font-size: 14px;
}

.ashby-job-board-filters-label {
  font-size: 16px;
  font-weight: 500;
  color: var(--colorBlack);
}

.ashby-job-board-heading {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 16px;
  color: var(--colorBlack);
}

.ashby-job-board-heading-count {
  font-size: 16px;
  color: var(--colorBlack);
}

.ashby-job-board-reset-filters-label {
  color: var(--colorBlack);
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 16px;
}

/* Job posting list */
.ashby-job-posting-brief {
  padding: 20px 0;
  border-bottom: 1px solid var(--colorLGrey);
  border-radius: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: all 200ms ease-in;
}
.ashby-department-heading {
    margin-left: 0 !important;
}
.ashby-job-posting-brief:hover {
  padding-left: 10px;
  border-bottom: 1px solid var(--colorBlack);
  background-color: transparent !important;
}

/* Job posting details */
.ashby-job-posting-brief-details {
  font-size: 12px;
  font-weight: 400;
  color: var(--colorTextGrey);
}

/* Title hover state */
.ashby-job-posting-brief-title:hover,
.ashby-job-posting-brief-title:active,
.ashby-job-posting-brief-title:visited {
  color: var(--colorPrimary600) !important;
}

.ashby-job-posting-heading {
  font-size: 40px !important;
  font-weight: 500;
  margin-bottom: 16px;
}

/* Layout panes */
.ashby-job-posting-left-pane,
.ashby-job-posting-right-pane {
  background-color: var(--colorAppBackground);
  padding: 16px;
  border-radius: 10px;
}

/* Apply button */
.ashby-job-posting-right-pane a[href*="/application"] > button {
  background-color: var(--colorPrimary600);
  color: var(--colorWhite);
  border-radius: 10px;
  padding: 12px 24px;
  font-weight: 500;
  font-size: 16px;
  border: none;
  transition: background-color 0.2s ease-in-out;
}

.ashby-job-posting-right-pane a[href*="/application"] > button:hover {
  background-color: var(--colorPrimary400);
  color: var(--colorBlack);
}

/* Generic button styling */
.ashby-job-posting-right-pane button,
.ashby-application-form-container button {
  border: 1px solid var(--colorPrimary600);
  border-radius: var(--borderRadiusButton) !important;
  font-weight: 500;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.ashby-job-posting-right-pane button:hover,
.ashby-application-form-container button:hover {
  background-color: var(--colorPrimary600) !important;
  color: var(--colorWhite) !important;
}

/* Autocomplete hover */
[role="listbox"] > div > div:hover {
  background-color: var(--colorPrimary600) !important;
  color: var(--colorWhite) !important;
}

[role="listbox"] > div > div[aria-selected="true"] {
  background-color: var(--colorPrimary600) !important;
  color: var(--colorWhite) !important;
}

/* Mobile layout cleanup: safe version */
@media only screen and (max-width: 767px) {
  .ashby-job-posting-left-pane,
  .ashby-job-posting-right-pane {
    box-shadow: none !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-top: 0 !important;
  }
}
