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

/* These variables can be used to control values throughout the job board. */
:root {
/* --- Brand palette (purple accent on dark) ---
WARNING: --colorPrimary900/600 can also be set in Ashby admin theme settings.
Keep them in sync if you edit both places. */
--colorPrimary900: #5E42E6; /* darker purple — hover / active */
--colorPrimary600: #ffffff; /* base purple — primary actions */
--colorPrimary400: #1057C3; /* lighter purple — title hover */

/* Job board container max width */
--widthMaxJobBoard: 800px;

/* Radii */
--borderRadiusContainer: 10px;
--borderRadiusControl: 10px;
--borderRadiusButton: 10px;

/* Font */
--fontFamily: "Inter", "Arial", sans-serif;

/* --- Neutrals (dark theme, glass surfaces) --- */
--colorAppBackground: #000000; /* page bg */
--colorNeutral000: rgb(0, 0, 0); /* page bg */
--colorNeutral100: rgba(255, 255, 255, 0.10); /* surface (cards, inputs) */
--colorNeutral200: rgba(255, 255, 255, 0.25); /* border */
--colorNeutral300: rgba(255, 255, 255, 0.50); /* muted text */
--colorNeutral500: #FFFFFF; /* pure white */
--colorNeutral600: rgba(255, 255, 255, 0.50); /* muted text */
--colorNeutral700: rgba(255, 255, 255, 0.70); /* secondary text */
--colorNeutral800: #FFFFFF; /* primary text */
}

/* --- Board heading --- */
.ashby-job-board-heading {
color: #FFFFFF;
font-weight: 700;
letter-spacing: -0.01em;
}

.ashby-job-board-heading-count {
color: rgba(255, 255, 255, 0.50);
font-size: 0.9em;
font-weight: 400;
}

/* --- Filters & form inputs (share shape) --- */
.ashby-job-board-filter,
.ashby-application-form-field-entry input {
min-height: 48px;
padding: 8px 14px;
background: rgba(255, 255, 255, 0.10);
border: 1px solid rgba(255, 255, 255, 0.25);
border-radius: 0.75rem;
color: #FFFFFF;
font-family: "Inter", "Arial", sans-serif;
transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.ashby-job-board-filter:hover,
.ashby-application-form-field-entry input:hover {
border-color: rgba(255, 255, 255, 0.40);
}

.ashby-job-board-filter:focus,
.ashby-job-board-filter:focus-visible,
.ashby-application-form-field-entry input:focus,
.ashby-application-form-field-entry input:focus-visible {
outline: none;
border-color: #1057C3;
box-shadow: 0 0 0 2px rgba(123, 97, 255, 0.20);
}

.ashby-job-board-filter svg {
fill: rgba(255, 255, 255, 0.70) !important;
}

.ashby-job-board-filters-label {
color: rgba(255, 255, 255, 0.70);
font-size: 0.85rem;
font-weight: 500;
}

.ashby-job-board-reset-filters-label {
color: #1057C3;
font-size: 0.85rem;
font-weight: 500;
cursor: pointer;
transition: color 0.2s ease;
}

.ashby-job-board-reset-filters-label:hover {
color: #1057C3;
}

/* --- Back button --- */
.ashby-job-board-back-to-all-jobs-button {
color: #1057C3;
font-weight: 500;
transition: color 0.2s ease;
}

.ashby-job-board-back-to-all-jobs-button:hover {
color: #1057C3;
}

/* --- Department / team headings --- */
.ashby-department-heading {
color: rgba(255, 255, 255, 0.50);
font-size: 0.85rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-top: 32px;
margin-bottom: 8px;
}

.ashby-department-heading-level {
color: #1057C3;
font-weight: 600;
}

.ashby-job-posting-brief-department-heading {
color: rgba(255, 255, 255, 0.50);
font-size: 0.75rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.08em;
}

/* --- Job posting cards --- */
.ashby-job-posting-brief-list {
background: #09070F;
}

.ashby-job-posting-brief {
min-height: 104px;
margin-bottom: 10px;
padding: 14px;
border-radius: 16px;
background: rgba(255, 255, 255, 0.10);
transition: background-color 0.2s ease, border-color 0.2s ease;
}

.ashby-job-posting-brief:hover,
.ashby-job-posting-brief:active {
background-color: rgba(255, 255, 255, 0.14);
border-color: rgba(255, 255, 255, 0.40);
}

.ashby-job-posting-brief-title {
color: #FFFFFF;
font-weight: 600;
font-size: 1rem;
}

.ashby-job-posting-brief-details,
.ashby-job-posting-brief-details p {
color: rgba(255, 255, 255, 0.50);
font-size: 0.85rem;
}

/* --- Job posting page --- */
.ashby-job-posting-header {
background-color: #09070F;
}

.ashby-job-posting-heading {
color: #FFFFFF;
font-weight: 700;
letter-spacing: -0.01em;
}

.ashby-job-posting-left-pane {
color: rgba(255, 255, 255, 0.85);
}

/* Tabs */
.ashby-job-posting-right-pane-overview-tab,
.ashby-job-posting-right-pane-application-tab {
color: rgba(255, 255, 255, 0.50);
font-weight: 500;
transition: color 0.2s ease;
}

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

.ashby-job-posting-right-pane-tab-slider {
background-color: #1057C3;
border-radius: 2px;
}

/* --- Application form --- */
.ashby-application-form-container {
background: #09070F;
}

.ashby-application-form-question-title {
color: #FFFFFF;
font-weight: 500;
font-size: 0.9rem;
}

.ashby-application-form-question-description {
color: rgba(255, 255, 255, 0.50);
font-size: 0.82rem;
}

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

.ashby-application-form-section-header-description {
color: rgba(255, 255, 255, 0.70);
}

/* Submit button — purple gradient */
.ashby-application-form-submit-button {
background: linear-gradient(125.65deg,
#1057C3 1.55%,
#1057C3 53.55%,
#5E42E6 105.56%);
border: none;
border-radius: 10px;
color: #FFFFFF;
font-weight: 600;
letter-spacing: 0.01em;
transition: opacity 0.2s ease;
}

.ashby-application-form-submit-button:hover {
opacity: 0.92;
}

.ashby-application-form-submit-button:active {
opacity: 1;
}

/* Success / failure messages */
.ashby-application-form-success-container {
color: #FFFFFF;
background: rgba(123, 97, 255, 0.15);
border: 1px solid rgba(123, 97, 255, 0.35);
border-radius: 10px;
}

.ashby-application-form-failure-container {
color: #FFD9D2;
background: rgba(244, 92, 67, 0.12);
border: 1px solid rgba(244, 92, 67, 0.35);
border-radius: 10px;
}

/* --- Autofill input --- */
.ashby-application-form-autofill-input-root {
background: rgba(255, 255, 255, 0.10);
border: 1px solid rgba(255, 255, 255, 0.25);
border-radius: 16px;
}

.ashby-application-form-autofill-input-title {
color: #FFFFFF;
font-weight: 600;
}

.ashby-application-form-autofill-input-description {
color: rgba(255, 255, 255, 0.70);
}

/* --- Survey form --- */
.ashby-survey-form-container {
background: #09070F;
}

/* =====================================================================
   HIDE DEPARTMENT ("Self-Improvement App") — added 2026-11-02
   ===================================================================== */

/* 1. Group heading above the job list */
.ashby-department-heading {
display: none !important;
}

/* 2. "Self-Improvement App • " prefix in each job card.
   Ashby renders the whole line as plain text nodes (no wrapper per field),
   so we shift the first line left by the exact prefix width and clip it.
   11.79em = width of "Self-Improvement App • " in Inter 400.
   !! If the department name changes, this value must be re-measured. */
.ashby-job-posting-brief-details p {
text-indent: -11.79em;
overflow: hidden;
margin-top: -0.15em; /* compensates the Ashby ::before trim below */
}

/* Ashby's ::before is display:block, which blocks text-indent from applying */
.ashby-job-posting-brief-details p::before {
display: inline;
}

/* 3. "Department" block in the left pane of the job page.
   Order: Location | Employment Type | Location Type | Department.
   :last-child = safe fallback: if a block (e.g. Compensation) is ever
   added after it, nothing gets hidden by mistake. */
.ashby-job-posting-left-pane > div:nth-child(4):last-child {
display: none;
}
