/* ============================================
   Allocate – Custom Ashby Job Board CSS
   ============================================
   Upload this file in Ashby Admin under:
   Admin > Theme (Job Board) > Custom CSS
   
   Brand colors pulled from Allocate's design:
   - Primary teal/green: #4BA68C
   - Primary dark:       #3D8B74
   - Text dark:          #1A1A1A
   - Text medium:        #4A4A4A
   - Text light/meta:    #6B7280
   - Background:         #FFFFFF
   - Border/divider:     #E5E7EB
   - Light background:   #F9FAFB
   ============================================ */

/* ----- Font Face Declarations ----- */
@font-face {
  font-family: "Circular XX";
  src: url("https://cdn.prod.website-files.com/6965c31508fe8c27c86c2d75/6967f87dffb93391ac9b16a4_CircularXX-Regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Circular XX";
  src: url("https://cdn.prod.website-files.com/6965c31508fe8c27c86c2d75/6967f87d6b1702e53f246a66_CircularXX-Medium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Circular XX";
  src: url("https://cdn.prod.website-files.com/6965c31508fe8c27c86c2d75/6967f87d884842916b7a6f45_CircularXX-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}


/* ----- CSS Variables / Tokens ----- */
:root {
  --fontFamily: "Circular XX", "-apple-system", "BlinkMacSystemFont", "Segoe UI",
    "Helvetica", "Arial", sans-serif;
  --borderRadiusContainer: 8px;
  --borderRadiusControl: 6px;
  --borderRadiusButton: 6px;
  --borderWidthBold: 1px;
  --widthMaxJobBoard: 960px;

  /* Brand colors */
  --colorAppBackground: #FFFFFF;
  --colorPrimary900: #3D8B74;
  --colorPrimary600: #4BA68C;
  --colorNegative200: #fce8e8;
  --colorPositive200: #eafcec;
  --colorWarning800: #8c6d1f;
  --colorWarning600: #f4ca64;
  --colorNegative600: #dc3030;
  --colorPositive600: #29b458;
  --colorWarning900: #5c4813;
}


/* =============================================
   GLOBAL / BODY
   ============================================= */
body {
  font-family: var(--fontFamily);
  color: #1A1A1A;
  background-color: #FFFFFF;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/* =============================================
   JOB BOARD LISTING PAGE (Ashby Landing)
   ============================================= */

/* Main heading – "Open Positions (6)" */
.ashby-job-board-heading {
  font-size: 1.5rem;
  font-weight: 700;
  color: #1A1A1A;
}

/* Position count badge */
.ashby-job-board-heading-count {
  font-weight: 700;
  color: #1A1A1A;
}

/* Filter dropdowns */
.ashby-job-board-filter {
  border: 1px solid #E5E7EB;
  border-radius: var(--borderRadiusControl);
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  color: #4A4A4A;
  background-color: #FFFFFF;
}

.ashby-job-board-filter:focus {
  outline: 2px solid #4BA68C;
  outline-offset: 1px;
  border-color: #4BA68C;
}

/* Department headings on the listing page */
.ashby-department-heading {
  font-size: 1.125rem;
  font-weight: 600;
  color: #1A1A1A;
}

/* Sub-team heading levels */
.ashby-department-heading-level {
  font-size: 1rem;
  font-weight: 600;
  color: #1A1A1A;
}


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

/* Individual job listing container */
.ashby-job-posting-brief {
  transition: background-color 0.15s ease;
}

.ashby-job-posting-brief:hover {
  background-color: #F9FAFB;
}

/* Job title link – teal brand color */
.ashby-job-posting-brief-title {
  font-size: 1rem;
  font-weight: 500;
  color: #4BA68C;
  text-decoration: none;
}

.ashby-job-posting-brief-title:hover {
  color: #3D8B74;
  text-decoration: underline;
}

/* Meta details (location, type, etc.) */
.ashby-job-posting-brief-details {
  font-size: 0.8125rem;
  color: #6B7280;
}

/* Department heading within brief list */
.ashby-job-posting-brief-department-heading {
  font-size: 1.125rem;
  font-weight: 600;
  color: #1A1A1A;
}

.ashby-job-posting-brief-department-heading-level {
  font-size: 1rem;
  font-weight: 600;
  color: #1A1A1A;
}

/* Container wrapping all job brief cards */
.ashby-job-posting-brief-list {
}


/* =============================================
   INDIVIDUAL JOB POSTING PAGE (Role Landing)
   ============================================= */

/* Job posting title */
.ashby-job-posting-heading {
  font-size: 1.5rem;
  font-weight: 700;
  color: #1A1A1A;
}


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

/* Outer form container */
.ashby-application-form-container {
  background-color: #FFFFFF;
  box-shadow: none;
  border: 1px solid #E5E7EB;
  border-radius: var(--borderRadiusContainer);
  padding: 2rem;
}

/* Section titles (e.g. "Your Details") */
.ashby-application-form-section-header-title {
  font-size: 1.125rem;
  font-weight: 600;
  color: #4BA68C;
  margin-bottom: 0.25rem;
}

/* Section description */
.ashby-application-form-section-header-description {
  font-size: 0.875rem;
  color: #6B7280;
  margin-bottom: 1rem;
}

/* Section container */
.ashby-application-form-section-container {
  margin-bottom: 1.5rem;
}

/* Section header wrapper */
.ashby-application-form-section-header {
  margin-bottom: 1rem;
}

/* Question titles */
.ashby-application-form-question-title {
  font-size: 0.875rem;
  font-weight: 500;
  color: #1A1A1A;
  margin-bottom: 0.25rem;
}

/* Question descriptions */
.ashby-application-form-question-description {
  font-size: 0.8125rem;
  color: #6B7280;
  margin-bottom: 0.5rem;
}

/* Field entry wrapper */
.ashby-application-form-field-entry {
  margin-bottom: 1rem;
}

/* Submit button */
.ashby-application-form-submit-button {
  background-color: #4BA68C;
  color: #FFFFFF;
  border: none;
  border-radius: var(--borderRadiusButton);
  padding: 0.75rem 1.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.ashby-application-form-submit-button:hover {
  background-color: #3D8B74;
}

.ashby-application-form-submit-button:focus {
  outline: 2px solid #4BA68C;
  outline-offset: 2px;
}

/* Success / failure containers */
.ashby-application-form-success-container {
  background-color: #eafcec;
  border: 1px solid #29b458;
  border-radius: var(--borderRadiusContainer);
  padding: 1.5rem;
  color: #1A1A1A;
}

.ashby-application-form-failure-container {
  background-color: #fce8e8;
  border: 1px solid #dc3030;
  border-radius: var(--borderRadiusContainer);
  padding: 1.5rem;
  color: #1A1A1A;
}

/* Survey form container */
.ashby-survey-form-container {
  margin-top: 1.5rem;
}


/* =============================================
   GENERAL INPUT OVERRIDES
   These target common Ashby input elements.
   Ashby may render inputs, textareas, and selects
   inside the form — these are broad selectors
   that apply within the embedded iframe.
   ============================================= */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea,
select {
  border: 1px solid #E5E7EB;
  border-radius: var(--borderRadiusControl);
  padding: 0.625rem 0.75rem;
  font-size: 0.875rem;
  font-family: var(--fontFamily);
  color: #1A1A1A;
  background-color: #FFFFFF;
  transition: border-color 0.15s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus {
  border-color: #4BA68C;
  outline: 2px solid rgba(75, 166, 140, 0.25);
}

/* Links — teal accent */
a {
  color: #4BA68C;
  text-decoration: none;
}

a:hover {
  color: #3D8B74;
  text-decoration: underline;
}
