/* stylelint-disable */

/*
 * Westmag brand override for Ashby's "Full Job Board Embedding" starter CSS.
 * Base file: https://www.ashbyhq.com/job_board_example_css/full-job-board.css
 * Brand tokens pulled from the live westmag.com/careers stylesheet on 2026-09-18.
 */

/* These variables can be used to control values throughout the job board. */
:root {
  /* Background color of the application.
     Westmag's site runs a dark theme with a cream secondary surface (--cream: #f5efe6)
     for lighter sections — using that here instead of Ashby's default gray so the
     embedded board reads as a Westmag surface, not a foreign app. */
  --colorAppBackground: #f5efe6;

  /*
   * Darker primary color (hover / active states on primary actions).
   * WARNING - This can be set in the Ashby admin under theme settings!
   * If you modify, you should make sure your colors work with the settings there.
   * Westmag orange (#ff3905), darkened ~20% for a hover state.
   */
  --colorPrimary900: #cc2d04;

  /*
   * Lighter primary color (default state on primary actions / links).
   * WARNING - This can be set in the Ashby admin under theme settings!
   * If you modify, you should make sure your colors work with the settings there.
   * This is Westmag's actual brand orange, taken directly from :root --orange on westmag.com.
   */
  --colorPrimary600: #ff3905;

  /* The max width of job board container.
     Westmag's site commonly caps content at 860px (see max-w-[860px] on westmag.com) —
     matched here so the embedded board doesn't feel narrower/wider than the rest of the page. */
  --widthMaxContent: 860px;

  /* The max width of application form section */
  --widthMaxJobBoard: 860px;

  /* The max width of subscription preferences container */
  --widthMaxSubscriptionPreferences: 600px;

  /* Container border radius.
     Westmag's visual language is angular (the "M" mark is all diagonal cuts, and the
     site's own .wm-btn buttons use a clipped-corner shape, not rounded corners) —
     dialing radius down from Ashby's default 10px keeps the embed from feeling
     softer/rounder than the rest of the brand. Set to 0 for fully square, or bump to
     2-4px if you want a slight softening without looking "bubbly." */
  --borderRadiusContainer: 2px;

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

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

  /* Font families.
     Westmag uses Inter (via next/font) as its primary typeface. Inter Fallback is the
     size-adjusted local fallback next/font generates; kept in the stack so metrics
     stay stable before the webfont loads. */
  --fontFamily: "Inter", "Inter Fallback", "-apple-system", "BlinkMacSystemFont", "Segoe UI", "Helvetica", "Arial", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;
}

/* ------------------------------------------------------------------ */
/* Below: the full set of Ashby class hooks, unchanged from the base   */
/* template. These are empty on purpose — they're available if you    */
/* want to go further than the variables above (e.g. give the submit  */
/* button Westmag's angled clip-path look instead of a plain rounded   */
/* rectangle). Fill in as needed; everything below is optional.       */
/* ------------------------------------------------------------------ */

/* A container for the application limits disclosure message shown before form submission. */
.ashby-application-blocking-disclosure {}

/* 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 {}

/* Application autofill input's description. */
.ashby-application-form-autofill-input-description {}

/* 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 {}

/* Application autofill input form's alert element. Can style [data-highlight] which can be 'negative' or 'positive'. */
.ashby-application-form-autofill-input-form-alert {}

/* Application autofill input's magic sparkles icon. */
.ashby-application-form-autofill-input-icon {}

/* 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 {}

/* Application autofill input's root element. Can style [data-state] which can be 'pending', 'drag', or 'default'. */
.ashby-application-form-autofill-input-root {}

/* Application autofill input's title. */
.ashby-application-form-autofill-input-title {}

/* Container element for application autofill input form. */
.ashby-application-form-autofill-pane {}

/* The resume uploader to auto-fill the application form */
.ashby-application-form-autofill-uploader {}

/* A container for displaying the custom message to the user */
.ashby-application-form-blocked-application-container {}

/* A container for the application form. */
.ashby-application-form-container {}

/* A container for the failure message */
.ashby-application-form-failure-container {}

/* A container for the label and input on an application form. */
.ashby-application-form-field-entry {}

/* An autocomplete input on an application form. */
.ashby-application-form-input-autocomplete {
  /* Use [aria-expanded="true"] to target when the popup is open. */
}

/* The results popup for an autocomplete input. */
.ashby-application-form-input-autocomplete-popup {
  /* Use [data-loading] to target when results are loading.
   * Use [data-empty] to target when there are no results found. */
}

/* The empty state message displayed in an autocomplete input popup. */
.ashby-application-form-input-autocomplete-popup-empty {}

/* The loading state message displayed in an autocomplete input popup. */
.ashby-application-form-input-autocomplete-popup-loading {}

/* A result item displayed in an autocomplete input popup. */
.ashby-application-form-input-autocomplete-popup-result {
  /* Use [aria-selected="true"] to target the selected result. */
}

/* A checkbox group on an application form. */
.ashby-application-form-input-checkbox-group {}

/* An option in a checkbox group. */
.ashby-application-form-input-checkbox-group-option {
  /* Use [data-checked] to target checked options.
   * Use [data-disabled] to target disabled options. */
}

/* The checkbox inside a checkbox group option. */
.ashby-application-form-input-checkbox-group-option-checkbox {}

/* The label for a checkbox group option. */
.ashby-application-form-input-checkbox-group-option-label {}

/* A date input on an application form. */
.ashby-application-form-input-date {}

/* The date picker popup of a date input. */
.ashby-application-form-input-date-popup {}

/* The header of the date picker popup. */
.ashby-application-form-input-date-popup-header {}

/* The month navigation button inside the date picker popup header. */
.ashby-application-form-input-date-popup-header-button {
  /* Use [data-direction="previous"] or [data-direction="next"] to target the buttons separately. */
}

/* The month/year title of the date picker popup. */
.ashby-application-form-input-date-popup-title {}

/* A dropdown input on an application form. */
.ashby-application-form-input-dropdown {
  /* Use [data-disabled] to target the disabled state. */
}

/* The icon inside a dropdown input. */
.ashby-application-form-input-dropdown-icon {}

/* The select element inside a dropdown input. */
.ashby-application-form-input-dropdown-select {}

/* The add entry button inside the education history input. */
.ashby-application-form-input-education-add {}

/* An entry in the education history input on an application form. */
.ashby-application-form-input-education-entry {}

/* The delete button inside an education history entry. */
.ashby-application-form-input-education-entry-delete {}

/* The header of an entry in the education history input. */
.ashby-application-form-input-education-entry-header {}

/* A file input on an application form. */
.ashby-application-form-input-file {}

/* The drag & drop zone in a file input. */
.ashby-application-form-input-file-dropzone {}

/* The instructions for the drag & drop zone in a file input. */
.ashby-application-form-input-file-dropzone-instructions {}

/* The upload button for the drag & drop zone in a file input. */
.ashby-application-form-input-file-dropzone-upload {}

/* An uploaded item in a file input. */
.ashby-application-form-input-file-item {}

/* The delete button for an uploaded item in a file input. */
.ashby-application-form-input-file-item-delete {}

/* The filename of an uploaded item in a file input. */
.ashby-application-form-input-file-item-name {}

/* A radio group on an application form. */
.ashby-application-form-input-radio-group {}

/* An option in a radio group. */
.ashby-application-form-input-radio-group-option {
  /* Use [data-checked] to target the checked option.
   * Use [data-disabled] to target disabled options. */
}

/* The label for a radio group option. */
.ashby-application-form-input-radio-group-option-label {}

/* The radio inside a radio group option. */
.ashby-application-form-input-radio-group-option-radio {}

/* A text input on an application form. */
.ashby-application-form-input-text {
  /* Use [type="..."] to target different fields. Possible values: "text", "email", "tel", "url", "number". */
}

/* A textarea input on an application form. */
.ashby-application-form-input-textarea {}

/* A Yes/No input on an application form. */
.ashby-application-form-input-yesno {
  /* Use [data-disabled] to target the disabled state. */
}

/* An option inside a Yes/No input. */
.ashby-application-form-input-yesno-option {
  /* Use [data-option="yes"] or [data-option="no"] to target the options separately.
   * Use [aria-pressed="true"] to target the active option. */
}

/* The description of each question on an application form. Will only show if a description is specified. */
.ashby-application-form-question-description {}

/* The title of each question on an application form. */
.ashby-application-form-question-title {}

/* 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 {}

/* The header for an application form section, possibly containing a title and description. */
.ashby-application-form-section-header {}

/* The description for an application form section. May not exist if no description was specified. */
.ashby-application-form-section-header-description {}

/* The title for an application form section. May not exist for the default section. */
.ashby-application-form-section-header-title {}

/* The application submission button. Will have loading and hover states that should be tested. */
.ashby-application-form-submit-button {}

/* A container for the success message */
.ashby-application-form-success-container {}

/* The text message consent description. Displayed below phone number fields. Will only show if texting is enabled. */
.ashby-application-form-texting-consent-description {}

/* The heading of a department, which can have many teams under it. */
.ashby-department-heading {}

/* The heading of a single team. */
.ashby-department-heading-level {}

/* 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 {}

/* A select box element for filtering the job board. */
.ashby-job-board-filter {}

/* The 'Filters' label element in the job board. */
.ashby-job-board-filters-label {}

/* The heading of the entire job board. */
.ashby-job-board-heading {}

/* The count of job postings on the job board. */
.ashby-job-board-heading-count {}

/* The 'Reset filters' label element in the job board. The reset filters label element in the job board. */
.ashby-job-board-reset-filters-label {}

/* The container of the job posting details pane. */
.ashby-job-posting-brief {
  /* This adds some space between posting briefings. */
  margin-bottom: 10px;
}

/* The heading of a department name. Departments group teams. */
.ashby-job-posting-brief-department-heading {}

/* The heading of a single team. */
.ashby-job-posting-brief-department-heading-level {}

/* The container for the details of the job posting, in the details pane. The subtitle of the section. */
.ashby-job-posting-brief-details {}

/* The container for the list of job post briefings. */
.ashby-job-posting-brief-list {}

/* The title of the job posting in the details pane. The title of the section. */
.ashby-job-posting-brief-title {}

/* The rich text content of the job posting description */
.ashby-job-posting-description {}

/* The container of the job posting description, including the apply button */
.ashby-job-posting-description-container {}

/* The main header on the job posting page */
.ashby-job-posting-header {}

/* The heading of a job post */
.ashby-job-posting-heading {}

/* The left pane of the job posting, with the job posting details */
.ashby-job-posting-left-pane {}

/* The right pane of the job posting, containing the tabs, overview, and application form */
.ashby-job-posting-right-pane {}

/* The application tab in the right pane of the job posting */
.ashby-job-posting-right-pane-application-tab {}

/* The overview tab in the right pane of the job posting */
.ashby-job-posting-right-pane-overview-tab {}

/* The tabs slider in the right pane of the job posting */
.ashby-job-posting-right-pane-tab-slider {}

/* A container for any surveys specified for this application form. */
.ashby-survey-form-container {}
