/* Colour mode is independent of the server-selected current/craft design.
   Never invert images, documents, logos or the generated CV preview. */
.site-footer__bottom { max-width: 79rem; margin: 1.75rem auto 0; padding-top: .8rem; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1.5rem; }
.site-footer__bottom .site-footer__legal { margin: 0; padding: 0; border: 0; }
.color-mode-controls[hidden] { display: none; }
.color-mode-switch { display: inline-flex; align-items: center; gap: .65rem; min-height: 2.75rem; padding: .35rem 0; border: 0; border-radius: .3rem; background: transparent; color: var(--ink-soft); box-shadow: none; font: inherit; font-size: .8rem; font-weight: 500; cursor: pointer; }
.color-mode-switch:hover { background: transparent; color: var(--ink); }
.color-mode-switch__track { display: inline-block; width: 2.35rem; height: 1.35rem; flex: 0 0 2.35rem; padding: .175rem; border-radius: 2rem; background: #6a7d84; }
.color-mode-switch__track::before { content: ""; display: block; width: 1rem; height: 1rem; border-radius: 50%; background: #fff; transition: transform 140ms ease; }
.color-mode-switch[aria-checked="true"] .color-mode-switch__track { background: #f7c748; }
.color-mode-switch[aria-checked="true"] .color-mode-switch__track::before { transform: translateX(1rem); background: #17323c; }
@media (prefers-reduced-motion: reduce) { .color-mode-switch__track::before { transition: none; } }
html[data-color-mode="light"] { color-scheme: light; }
html[data-color-mode="dark"][data-design] {
  color-scheme: dark;
  --paper: #172228; --surface: #213139; --surface-soft: #293c43;
  --ink: #ecf1ed; --ink-soft: #c4d2d6; --muted: #b1c1c5;
  --line: #3c5159; --blue-950: #d2e7e9; --blue-900: #bedce3;
  --blue-800: #a7d4df; --orange: #f7c748; --orange-dark: #e5b441;
  --orange-700: #f4d77b;
}
html[data-color-mode="dark"][data-design] :is(body, main, .site-workspace, .portal-shell, .workspace-content, .site-header, .site-footer) { background-color: var(--paper); color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(h1, h2, h3, h4) { color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(p, dt, dd, th, td, label, legend, small, figcaption) { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] .skip-link { background: #f7c748; color: #17323c; }
html[data-color-mode="dark"][data-design] :is(table, tbody, tr, th, td) { background-color: var(--surface); border-color: var(--line); }
html[data-color-mode="dark"][data-design] thead th { background-color: var(--surface-soft); color: var(--ink); }
html[data-color-mode="dark"][data-design] a { color: #b5dce5; }
html[data-color-mode="dark"][data-design] :is(.site-name, .site-footer__home, .site-header nav a) { color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(.site-name__mark, .site-footer__mark) { background: #164958; color: #f7c748; }
html[data-color-mode="dark"][data-design] :is(.site-header, .site-footer, .site-footer__legal) { border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.site-header nav .nav-login, .site-header nav form button, .nav-toggle) { background: transparent; border-color: #718b95; color: var(--ink); }
@media (max-width: 40rem) {
  html[data-color-mode="dark"][data-design] .site-header.navigation-ready nav { background: var(--surface); border-color: var(--line); }
}
html[data-color-mode="dark"][data-design] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]), select, textarea) { background-color: var(--surface); border-color: #718b95; color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(input,textarea)::placeholder { color: #a7b9bf; opacity: 1; }
html[data-color-mode="dark"][data-design] option { background: var(--surface); color: var(--ink); }
html[data-color-mode="dark"][data-design] input:is([type="checkbox"],[type="radio"]) { accent-color: #f7c748; }
html[data-color-mode="dark"][data-design] :focus-visible { outline-color: #f7c748; }
html[data-color-mode="dark"][data-design] :is(.portal-card, .portal-command-bar, .candidate-card, .candidate-resume-card, .privacy-card, .privacy-option, .privacy-email, .home-live-empty, .home-path-card, .article-card, .article-prose, .article-sidebar, .article-toc, .article-action-card, .article-category-card, .article-empty, .profession-card, .profession-facts, .profession-summary, .profession-panel, .registration-form, .login-form, .pricing-plan, .pricing-card, .pricing-value, .pricing-faq, .pricing-note, .pricing-feature, .job-search-panel, .job-card, .job-detail__panel, .job-detail__description, .job-detail__locations, .job-detail__company, .job-detail__apply, .job-detail__apply-card, .job-detail__favorite-card, .favorite-job-card, .organization-form, .portal-auth-primary, .cookie-notice, .candidate-dashboard__summary) { background: var(--surface); color: var(--ink); border-color: var(--line); box-shadow: none; }
html[data-color-mode="dark"][data-design] :is(.portal-form__section, .portal-fieldset) { background: var(--surface-soft); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .portal-fieldset legend { color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(.portal-card, .candidate-card, .privacy-card, .article-card, .job-card, .job-detail__apply-card, .favorite-job-card, .pricing-card, .cookie-notice) :is(p, label, dt, dd, li) { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.job-card__organization, .job-card__category, .job-card__footer, .job-card__facts dt, .job-results__count, .candidate-muted, .portal-copy, .portal-prose, .helptext, .portal-form .helptext, .site-footer__brand p, .site-footer__nav a, .site-footer__legal, .article-card__meta, .article-detail__meta, .article-breadcrumbs) { color: var(--muted); }
html[data-color-mode="dark"][data-design] :is(.job-list, .job-card__footer, .portal-card__header, .candidate-card__header, .portal-facts, .portal-list__item, .portal-filter-bar, .job-search-panel__more, .article-detail__hero) { border-color: var(--line); }
html[data-color-mode="dark"][data-design] .job-card:hover { background: #293e45; }
html[data-color-mode="dark"][data-design] .job-card--featured { background: #343426; border-color: #b59a47; }
html[data-color-mode="dark"][data-design] :is(.job-card__category, .home-benefit__mark, .pricing-card__badge) { background: var(--surface-soft); color: var(--ink); }
html[data-color-mode="dark"][data-design] .job-search-panel label { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.job-card h3 a, .job-card__facts dd, .job-card__facts .job-card__salary dd) { color: var(--ink); background: transparent; }
html[data-color-mode="dark"][data-design] :is(.home-live-stats, .home-live-stats > div, .benefit-grid article, .portal-facts > div, .job-detail__facts > div, .job-detail__meta > div, .portal-note-list li, .portal-audit-list li, .portal-check-list li, .portal-details, .portal-code, .candidate-resume-list li, .candidate-profile > div, .candidate-application-list li, .organization-guide-card, .candidate-empty-state) { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .job-detail__account-note { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .job-detail__account-note p { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.job-benefit-tiles > li, .job-detail__locations > li) { background: var(--surface-soft); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .job-detail__locations dd { color: var(--ink); }
html[data-color-mode="dark"][data-design] .home-discovery .home-category-grid a { background: transparent; color: var(--ink); }
html[data-color-mode="dark"][data-design] .home-discovery .home-category-grid a:hover { background: var(--surface); }
html[data-color-mode="dark"][data-design] .home-discovery .home-category-grid :is(span,small,em) { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.home-hero, .job-list-hero, .job-detail__hero, .article-list-hero, .profession-hero, .pricing-hero, .portal-hero, .candidate-dashboard__hero, .candidate-resume-editor__hero, .privacy-center__hero, .privacy-erasure__hero, .organization-dashboard__hero) { background: #164958; color: #edf4f3; }
html[data-color-mode="dark"][data-design] :is(.home-hero, .job-list-hero, .job-detail__hero, .article-list-hero, .profession-hero, .pricing-hero, .portal-hero) :is(h1,h2,h3,p,li,dt,dd) { color: #edf4f3; }
html[data-color-mode="dark"][data-design="craft"] :is(.home-hero, .job-list-hero, .job-detail__hero, .article-list-hero, .article-detail__hero, .profession-hero, .pricing-hero, .portal-hero) { background: transparent; color: var(--ink); }
html[data-color-mode="dark"][data-design="craft"] .home-hero h1 span { color: inherit; }
html[data-color-mode="dark"][data-design="craft"] .craft-highlight::after { background: #aa791e; }
html[data-color-mode="dark"][data-design="craft"] :is(.home-hero__lead, .home-hero__eyebrow, .home-hero__browse a) { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.hero-search, .hero-search__control, .hero-search__field) { background: var(--surface); }
html[data-color-mode="dark"][data-design="current"] :is(.hero-search, .hero-search__field) { background: transparent; }
html[data-color-mode="dark"][data-design] .hero-search__field { border-radius: .4rem; }
html[data-color-mode="dark"][data-design] .hero-search__field label { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.hero-search__icon, .section-heading__eyebrow, .home-path-card__eyebrow, .portal-section-label) { color: #b5dce5; }
html[data-color-mode="dark"][data-design] :is(.home-path-card--employer, .pricing-card--bundle, .pricing-cta, .workspace-sidebar, .cv-sidebar) { background: #164958; color: #edf4f3; }
html[data-color-mode="dark"][data-design] :is(.pricing-steps li, .pricing-table-wrap) { background: var(--surface); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .pricing-steps li > span { background: var(--surface-soft); color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(.pricing-card__action, .pricing-button--light) { background: #f7c748; color: #17323c; border-color: #f7c748; }
html[data-color-mode="dark"][data-design] .workspace-sidebar .platform-navigation a { color: #e4eeee; }
html[data-color-mode="dark"][data-design] .workspace-sidebar .platform-navigation a[aria-current="page"] { background: var(--paper); color: var(--ink); }
html[data-color-mode="dark"][data-design] .workspace-sidebar .platform-navigation a.employer-navigation__attention { background: #f7c748; color: #17323c; }
html[data-color-mode="dark"][data-design] :is(.app-workspace, .cv-workspace, .cv-editor, .cv-wizard) { background: var(--paper); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .cv-wizard { --cv-ink: var(--ink); --cv-muted: var(--muted); --cv-line: var(--line); --cv-accent: #b5dce5; --cv-bg: var(--paper); --cv-soft: var(--paper); --cv-tile: var(--surface-soft); --cv-highlight: #423922; }
html[data-color-mode="dark"][data-design] :is(.cv-period, .cv-levels label > span) { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .cv-field #id_driving_licenses label { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .cv-levels input:checked + span { background: #423922; color: #f7d676; border-color: #ba9340; }
html[data-color-mode="dark"][data-design] .cv-year-stepper__button:hover:not(:disabled) { background: #34505b; color: var(--ink); }
html[data-color-mode="dark"][data-design] .cv-wizard .cv-button:not(.cv-button--secondary):not(.cv-button--danger) { background: #f7c748; color: #17323c; border-color: #f7c748; }
html[data-color-mode="dark"][data-design] :is(.cv-tip-card, .cv-photo-zone, .cv-add-button, .cv-entry, .cv-year-stepper, .cv-replace, .cv-errors, .cv-notice) { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .cv-preview { --cv-ink: #193d49; --cv-muted: #596b70; --cv-line: #dce2de; --cv-accent: #164958; background: #fff; color: #193d49; }
html[data-color-mode="dark"][data-design] .cv-preview :is(h1,h2,h3,p,span,li,dt,dd,strong,small) { color: #193d49; }
html[data-color-mode="dark"][data-design] .app-workspace :is(.portal-hero, .candidate-dashboard__hero, .candidate-resume-editor__hero, .privacy-center__hero, .favorite-jobs__hero) { background: transparent; color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(.portal-hero__aside, .portal-card--soft, .social-login, .candidate-resume-editor__assurances, .privacy-center__assurances, .candidate-resume-editor__panel, .privacy-actions__card, .pricing-hero__proof) { background: var(--surface-soft); border-color: var(--line); color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(.portal-hero__aside, .social-login, .pricing-hero__proof, .candidate-resume-editor__assurances, .privacy-center__assurances) :is(h2,h3,p,li,strong,span) { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] .application-hero__facts strong { color: var(--ink); }
html[data-color-mode="dark"][data-design] .pricing-hero__proof li span { background: #f7c748; color: #17323c; }
html[data-color-mode="dark"][data-design] .pricing-table span[aria-label="Ano"] { color: #b6dac0; }
html[data-color-mode="dark"][data-design] .cv-sidebar .cv-steps a[aria-current="step"] .cv-steps__number { background: #f7c748; color: #17323c; }
html[data-color-mode="dark"][data-design] :is(.favorite-jobs__browse, .privacy-option__action) { background: #f7c748; color: #17323c; border-color: #f7c748; }
html[data-color-mode="dark"][data-design] :is(.privacy-actions, .privacy-center__card) { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.portal-table, .portal-table-wrap) :is(th,td) { color: var(--ink); background: transparent; border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.portal-table, .portal-table-wrap) thead th { background: var(--surface-soft); color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.portal-table tbody tr:hover, .portal-table-wrap tbody tr:hover, .moderation-work-list .portal-list__item:hover) { background: var(--surface-soft); }
html[data-color-mode="dark"][data-design] .ats-case-row--new { background: #383726; }
html[data-color-mode="dark"][data-design] :is(.moderation-summary-card, .employer-summary-card) { background: var(--surface); border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.moderation-summary-card, .employer-summary-card) strong { color: var(--ink); }
html[data-color-mode="dark"][data-design] :is(.portal-status, .active-filter-chips a, .portal-filter-bar a[aria-current="page"]) { background: #334851; color: #d0e1e7; }
html[data-color-mode="dark"][data-design] :is(.portal-row-action, .portal-empty) { background: var(--surface-soft); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.portal-status--success, .system-message--success, .candidate-resume-status--ready) { background: #263f31; color: #b6dac0; }
html[data-color-mode="dark"][data-design] :is(.portal-status--warning, .portal-notice--warning, .job-card__featured-badge, .employer-reaction-alert, .employer-summary-card--attention, .email-delivery-notice) { background: #423922; color: #f7d676; border-color: #ba9340; }
html[data-color-mode="dark"][data-design] :is(.email-delivery-notice, .employer-reaction-alert, .employer-summary-card--attention) :is(p,strong,span) { color: #f7d676; }
html[data-color-mode="dark"][data-design] :is(.portal-notice--danger, .system-message--error, .errorlist, .candidate-resume-status--missing) { background: #482f2d; color: #ffc0b5; border-color: #b6776c; }
html[data-color-mode="dark"][data-design] :is(.portal-notice:not(.portal-notice--warning):not(.portal-notice--danger), .system-message--info) { background: #293e48; color: #c6e1eb; border-color: #547381; }
html[data-color-mode="dark"][data-design] :is(.site-header nav .nav-register, .site-header nav .nav-add-job, .hero-search__submit, .job-search-panel__submit, .button--primary, .portal-button, .portal-button--primary, .portal-button--light, .portal-form button, .portal-card form button, .candidate-action--primary, .candidate-action--light, .job-detail__apply-button, .pricing-button--primary, .profession-hero__cta, .cv-primary-button, .cv-button--primary) { background: #f7c748; color: #17323c; border-color: #f7c748; }
html[data-color-mode="dark"][data-design] :is(.portal-button--secondary, .portal-card form .portal-button--secondary, .button--secondary, .candidate-action--ghost, .job-detail__favorite-button, .pricing-button--secondary, .social-login-button, .cv-button--secondary, .cookie-notice__actions button) { background: var(--surface-soft); color: var(--ink); border-color: #718b95; }
html[data-color-mode="dark"][data-design] :is(.portal-button--danger, .portal-card form .portal-button--danger, .cv-button--danger, .privacy-option__action--danger) { background: #853b31; color: #fff; border-color: #b6776c; }
html[data-color-mode="dark"][data-design] :is(.portal-submit-bar, .cv-topbar, .cv-navigation, .cv-section, .cv-tips, .cv-card, .candidate-resume-editor__card, .candidate-resume-editor__tips) { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.portal-submit-bar, .cv-section, .cv-card, .cv-tips) :is(h2,h3,p,label,small) { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] :is(.cv-field,.cv-period__row,.cv-navigation) :is(button,input,select,textarea) { color: var(--ink); background-color: var(--surface-soft); border-color: #718b95; }
html[data-color-mode="dark"][data-design] .job-description-editor { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .job-description-editor__toolbar { background: var(--surface-soft); border-color: var(--line); }
html[data-color-mode="dark"][data-design] :is(.job-description-editor__icon-button,.job-description-editor__button) { background: var(--surface-soft); color: var(--ink); border-color: #718b95; }
html[data-color-mode="dark"][data-design] .job-benefits__presets { background: var(--surface); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .job-benefits .job-benefits__presets .job-benefits__preset { background: var(--surface-soft); color: var(--ink); border-color: #718b95; }
html[data-color-mode="dark"][data-design] .job-benefits .job-benefits__presets .job-benefits__preset:hover:not(:disabled):not([aria-pressed="true"]) { background: #34505b; color: var(--ink); }
html[data-color-mode="dark"][data-design] .job-benefits .job-benefits__presets .job-benefits__preset[aria-pressed="true"] { background: #164958; color: #fff; border-color: #a7d4df; }
html[data-color-mode="dark"][data-design] [contenteditable="true"] { color: var(--ink); background: var(--surface); }
/* Component surfaces with fixed light colours in the base styles. */
html[data-color-mode="dark"][data-design="current"] .article-detail__hero { background: #164958; }
html[data-color-mode="dark"][data-design] .job-empty-state { background: var(--surface); color: var(--ink); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .active-filter-chips > span { color: var(--ink-soft); }
html[data-color-mode="dark"][data-design] .portal-facts { background: transparent; }
html[data-color-mode="dark"][data-design] .registration-progress li { background: var(--surface); color: var(--ink-soft); border-color: var(--line); }
html[data-color-mode="dark"][data-design] .registration-progress li > span { background: var(--surface-soft); color: var(--ink); }
html[data-color-mode="dark"][data-design] .registration-progress li[aria-current="step"] { background: #423922; color: #f7d676; border-color: #ba9340; box-shadow: inset 0 -.2rem 0 #ba9340; }
html[data-color-mode="dark"][data-design] .registration-progress li[aria-current="step"] > span { background: #f7c748; color: #17323c; }
html[data-color-mode="dark"][data-design] .article-action-card a { background: #f7c748; color: #17323c; }
html[data-color-mode="dark"][data-design] .article-action-card a:hover { background: #e5b441; color: #17323c; }
html[data-color-mode="dark"][data-design] .article-action-card a:last-child { background: var(--surface-soft); color: var(--ink); }
html[data-color-mode="dark"][data-design] .article-action-card a:last-child:hover { background: #34505b; color: var(--ink); }
@media print {
  html[data-color-mode][data-design] { color-scheme: light; --paper: #fff; --surface: #fff; --ink: #193d49; --ink-soft: #435e67; --muted: #596b70; }
  .color-mode-controls { display: none; }
}
