/* Approved minimal career-flow presentation. Additive and rollout-gated.
 * Scope controls/chrome explicitly: never recolour a résumé/PDF, customer website,
 * employer logo, score meaning, error, success state, or progress width. */
body.jz-clean {
    --jzpx-magenta: var(--jzc-accent); --jzpx-mid: var(--jzc-accent);
    --jzpx-crimson: var(--jzc-accent); --jzpx-navy: var(--jzc-ink);
    --jzpx-ink: var(--jzc-muted); --jzpx-line: var(--jzc-line);
    --ic-accent: var(--jzc-accent); --ic-accent2: var(--jzc-accent);
    --ic-grad: linear-gradient(var(--jzc-primary),var(--jzc-primary));
    --ic-bg: var(--jzc-paper); --ic-bg2: var(--jzc-paper);
    --ic-border: var(--jzc-line); --ic-border-light: var(--jzc-line);
    --ic-text: var(--jzc-ink); --ic-text3: var(--jzc-muted); --ic-muted: var(--jzc-muted);
    --ic-sh2: var(--jzc-shadow); --ic-sh3: var(--jzc-shadow); --ic-sh-glow: var(--jzc-shadow);
    --rb-brand-start: var(--jzc-accent); --rb-brand-end: var(--jzc-accent);
    --rb-brand-gradient: linear-gradient(var(--jzc-primary),var(--jzc-primary));
    --rb-off-white: var(--jzc-paper); --rb-border: var(--jzc-line);
    --rb-text-tertiary: var(--jzc-muted); --rb-text-light: var(--jzc-muted);
    --rt-brand-gradient: linear-gradient(var(--jzc-primary),var(--jzc-primary));
    --rt-border: var(--jzc-line); --rt-off-white: var(--jzc-paper);
    --rt-brand-start:var(--jzc-accent); --rt-brand-end:var(--jzc-accent); --rt-text-tertiary:var(--jzc-muted);
    --ct-brand-start:var(--jzc-accent); --ct-brand-end:var(--jzc-accent);
    --ct-brand-gradient:linear-gradient(var(--jzc-primary),var(--jzc-primary));
    --ct-off-white:var(--jzc-paper); --ct-border:var(--jzc-line); --ct-text-tertiary:var(--jzc-muted);
    --cl-brand-start:var(--jzc-accent); --cl-brand-end:var(--jzc-accent);
    --cl-brand-gradient:linear-gradient(var(--jzc-primary),var(--jzc-primary));
    --cl-off-white:var(--jzc-paper); --cl-border:var(--jzc-line); --cl-text-tertiary:var(--jzc-muted);
}

/* Shared SweetAlert, Bootstrap, native confirmation and toast surfaces. */
body.jz-clean div.swal2-popup.swal2-modal,
body.jz-clean div.swal2-popup.swal2-toast,
body.jz-clean :is(dialog.jzg, .rp-pdf-modal, .jq-toast-single) {
    background: var(--jzc-paper) !important;
    color: var(--jzc-ink) !important;
    border: 1px solid var(--jzc-line) !important;
    box-shadow: var(--jzc-shadow) !important;
    backdrop-filter: none !important;
}
body.jz-clean div.swal2-popup.swal2-modal .swal2-title { color: var(--jzc-ink) !important; }
body.jz-clean div.swal2-popup.swal2-modal :is(.swal2-html-container,.swal2-footer) { color: var(--jzc-muted); }
body.jz-clean div.swal2-popup.swal2-modal :is(.swal2-confirm,.jzpx-btn),
body.jz-clean dialog.jzg .btn-primary {
    background: var(--jzc-primary) !important; color: var(--jzc-paper) !important;
    border: 1px solid var(--jzc-primary) !important; box-shadow: none !important;
}
body.jz-clean div.swal2-popup.swal2-modal :is(.swal2-cancel,.swal2-deny),
body.jz-clean dialog.jzg :is(.btn-quiet,[data-jzg-close]) {
    background: var(--jzc-paper) !important; color: var(--jzc-accent) !important;
    border: 1px solid var(--jzc-line) !important; box-shadow: none !important;
}
body.jz-clean :is(.jz-accent-info,.jz-accent-question,.jz-accent-default),
body.jz-clean div.swal2-popup.swal2-modal.jzpx-popup::before {
    background: var(--jzc-accent); animation: none;
}
body.jz-clean :is(.modal-header,.modal-footer,.swal2-footer,.rp-pdf-modal-header,.rp-pdf-modal-footer) { border-color: var(--jzc-line); }
body.jz-clean :is(.jzpx-know,.rp-pdf-modal-body) { background: var(--jzc-paper); }
body.jz-clean .jzpx-know { border: 1px solid var(--jzc-line); border-left: 3px solid var(--jzc-accent); }
body.jz-clean .jzpx-fill { background: var(--jzc-accent); }
body.jz-clean .jzpx-dot.jzpx-active { box-shadow: 0 0 0 3px var(--jzc-line); }
body.jz-clean .jzpx-fill::after { animation: none; opacity: 0; }
body.jz-clean .jzpx-spinner { background: conic-gradient(var(--jzc-accent) 0deg 270deg,var(--jzc-line) 270deg 360deg); }
body.jz-clean dialog.jzg::backdrop { background: rgba(23,21,27,.42); }
body.jz-clean :is(.swal2-input,.swal2-textarea,.swal2-select) { background: var(--jzc-paper); color: var(--jzc-ink); border-color: var(--jzc-selected); }

/* Smart Apply's independent modal, including dynamically loaded progress. */
body.jz-clean :is(.saw-path-card,.saw-path-card:hover,.saw-path-card.selected,.saw-dropzone,.saw-dropzone:hover,.saw-dropzone.drag-over,.saw-file-row,.saw-sc-msg,.saw-ok-d,.saw-btn-dash,.saw-btn-cover) {
    background: var(--jzc-paper); border-color: var(--jzc-line); box-shadow: none;
}
body.jz-clean :is(.saw-path-card.selected,.saw-path-card:hover,.saw-dropzone:hover,.saw-dropzone.drag-over) { border-color: var(--jzc-selected); }
body.jz-clean :is(.saw-job-bar,.saw-header) { border-color: var(--jzc-line); }
body.jz-clean :is(.saw-job-logo,.saw-job-initials) { background: var(--jzc-paper); color: var(--jzc-accent); border: 1px solid var(--jzc-line); }
body.jz-clean :is(.saw-pbar,.saw-sc-bar-w,.saw-dim-bw,.saw-dot:not(.active):not(.completed),.saw-ld-step-dot) { background: var(--jzc-line); }
body.jz-clean :is(.saw-pfill,.saw-dim-bf,.saw-dot.active,.saw-dot.completed,.saw-ld-step.active .saw-ld-step-dot) { background: var(--jzc-accent); }
body.jz-clean :is(.saw-btn-str,.saw-btn-ap,.saw-btn-go):not(:disabled) { background: var(--jzc-primary); color: var(--jzc-paper); box-shadow: none; }
body.jz-clean :is(.saw-btn-ref,.saw-saved-link,.saw-file-rm,.saw-btn-cover,.saw-casl a,.saw-ld-step.active) { color: var(--jzc-accent); }
body.jz-clean .saw-pg-inner { border: 2px dashed var(--jzc-selected); box-shadow: var(--jzc-shadow); }
body.jz-clean .saw-ld-spinner { background: var(--jzc-accent) border-box; }
body.jz-clean :is(.saw-close:hover,.saw-back:hover,.saw-btn-cover:hover,.saw-btn-dash:hover) { background: var(--jzc-paper); color: var(--jzc-accent); }

/* Interview practice: preparation, session, feedback and history share ic-system. */
body.jz-clean .ic-card-glow::before { background: var(--jzc-line); animation: none; inset: -1px; }
body.jz-clean :is(.ic-btn-primary,.rb-btn-primary,.rb-submit-btn) { box-shadow: none; }
body.jz-clean :is(.ic-btn-secondary,.ic-btn-outline,.ic-sel.on,.ic-prog-dot.active) { background: var(--jzc-paper); color: var(--jzc-accent); border: 1px solid var(--jzc-selected); box-shadow: none; }
body.jz-clean .ic-sesbar-fill { background: var(--jzc-accent); }
body.jz-clean .ic-prev-item { border-image:none !important; border-left-color:var(--jzc-selected) !important; }
body.jz-clean :is(.ic-ambient,.ic-btn-primary::before) { opacity:0; }
body.jz-clean :is(.ic-prefill-banner:hover,.ic-btn-outline:hover) { background:var(--jzc-paper); }
body.jz-clean .ip-page { --brand-red:var(--jzc-accent); --brand-pink:var(--jzc-accent); --gradient-brand:linear-gradient(var(--jzc-primary),var(--jzc-primary)); --bg-light:var(--jzc-paper); --bg-subtle:var(--jzc-paper); --border-light:var(--jzc-line); --text-muted:var(--jzc-muted); }
body.jz-clean .ip-hero { background: var(--jzc-primary); }
body.jz-clean .ip-hero h1 .ip-gt { background:none; -webkit-text-fill-color:var(--jzc-paper); }
body.jz-clean .ip-mk::before { background:var(--jzc-line); animation:none; opacity:1; }
body.jz-clean .ip-sab { background:var(--jzc-paper); border-color:var(--jzc-line); }

/* Personal website builder chrome. The .cw-tpl-preview artwork stays untouched. */
body.jz-clean .cw-hero { background: var(--jzc-primary); }
body.jz-clean .cw-hero::before,body.jz-clean .cw-hero::after { opacity:0; }
body.jz-clean .cw-hero__title span { background:none; -webkit-text-fill-color:var(--jzc-paper); }
body.jz-clean :is(.cw-steps-wrap,.cw-body,.cw-review-card,.cw-photo-zone,.cw-photo-zone:hover,.cw-review-note,.cw-review-link,.cw-btn--ghost,.cw-btn--ghost:hover) { background:var(--jzc-paper); border-color:var(--jzc-line); }
body.jz-clean :is(.cw-review-link,.cw-tpl-card__check svg) { color:var(--jzc-accent); }
body.jz-clean .cw-step--active .cw-step__num { background:var(--jzc-paper); color:var(--jzc-accent); border:1px solid var(--jzc-selected); box-shadow:none; }
body.jz-clean .cw-tpl-radio:checked + .cw-tpl-card__inner { border-color:var(--jzc-selected); box-shadow:0 0 0 1px var(--jzc-selected); }
body.jz-clean .cw-tpl-card__inner:hover { border-color:var(--jzc-selected); }
body.jz-clean :is(.cw-btn--primary,.cw-btn--publish) { background:var(--jzc-primary); color:var(--jzc-paper); box-shadow:none; }
body.jz-clean :is(.cw-photo-zone__hint,.cw-tpl-card__tag,.cw-optional) { color:var(--jzc-muted); }

/* Published-website management is application chrome, not the public template. */
body.jz-clean .pw-hero { background:var(--jzc-primary); }
body.jz-clean .pw-hero::before { opacity:0; }
body.jz-clean :is(.pw-card,.pw-action-tile,.pw-qr-wrap,.pw-flash--update,.pw-flash--info) { background:var(--jzc-paper); border-color:var(--jzc-line); }
body.jz-clean :is(.pw-card__header-icon,.pw-template-badge,.pw-action-tile__icon--edit,.pw-action-tile__icon--preview) { background:var(--jzc-paper); color:var(--jzc-accent); border-color:var(--jzc-line); }
body.jz-clean :is(.pw-card__header-icon svg,.pw-action-tile__icon--edit svg,.pw-action-tile__icon--preview svg,.pw-action-tile:not(.pw-action-tile--danger):hover .pw-action-tile__arrow) { color:var(--jzc-accent); }
body.jz-clean :is(.pw-btn--outline,.pw-btn--outline:hover,.pw-btn--white:hover) { background:var(--jzc-paper); color:var(--jzc-accent); border:1px solid var(--jzc-selected); }
body.jz-clean .pw-btn--primary { background:var(--jzc-primary); color:var(--jzc-paper); }
body.jz-clean .pw-copy-btn:not(.pw-copy-btn--done) { background:transparent; border:1px solid var(--jzc-selected); }
body.jz-clean .pw-flash--update .pw-flash__icon { background:var(--jzc-accent); }

/* Résumé review controls and PDF dialog; no document typography/colours selected. */
body.jz-clean :is(.rp-wrap,.rp-gaps,.rp-delta--top,.rp-edit-save-bar,.rp-next-a,.rp-pdf-modal-close,.rp-package,.rp-package-icon) { background:var(--jzc-paper); border-color:var(--jzc-line); }
body.jz-clean :is(.rp-next-a,.rp-btn-back,.rp-btn-regenerate,.rp-btn-edit,.rp-btn-edit.active,.rp-btn-improve,.rp-btn-preview-pdf,.rp-btn-cancel-edits,.rp-btn-dl-small,.rp-gaps-a) {
    background:var(--jzc-paper); color:var(--jzc-accent); border:1px solid var(--jzc-line); box-shadow:none;
}
body.jz-clean :is(.rp-btn-download,.rp-btn-save-edits,.rp-btn-apply-job,.rp-pkg-submit-btn) { background:var(--jzc-primary); color:var(--jzc-paper); box-shadow:none; }
body.jz-clean .rp-package::before { background:none; }
body.jz-clean :is(.rp-pkg-generate-btn,.rp-pkg-preview-btn) {
    background:var(--jzc-paper); border:1px solid var(--jzc-line); color:var(--jzc-accent); box-shadow:none;
}
body.jz-clean .rp-next-step > a {
    background:var(--jzc-paper) !important; color:var(--jzc-accent) !important; border:1px solid var(--jzc-line);
}
body.jz-clean :is(.rp-pkg-generate-btn,.rp-pkg-preview-btn,.rp-next-step > a):hover { border-color:var(--jzc-selected); box-shadow:none; }
body.jz-clean .rp-pkg-submit-btn:hover { background:var(--jzc-primary-hover); box-shadow:none; }
body.jz-clean .rp-package-item.generating { background:var(--jzc-paper); border-color:var(--jzc-selected); }
body.jz-clean :is(.rp-package-subtitle strong,.rp-package-item.generating .rp-package-item-status) { color:var(--jzc-accent); }
/* The preview's personal-website offer is interface chrome, not résumé artwork. */
body.jz-clean :is(.jzw,.jzw-ic) { background:var(--jzc-paper); border-color:var(--jzc-line); }
body.jz-clean .jzw-ic { border:1px solid var(--jzc-line); }
body.jz-clean .jzw-ic svg { stroke:var(--jzc-accent); }
body.jz-clean :is(.jzw-btn,.jzw-btn.jzw-primary) {
    background:var(--jzc-paper); color:var(--jzc-accent); border:1px solid var(--jzc-line);
}
body.jz-clean .jzw-btn:hover { border-color:var(--jzc-selected); }
body.jz-clean :is(.jzw-addr,.jzw-fine a) { color:var(--jzc-accent); }
body.jz-clean :is(.rp-gaps-list span,.rp-start-over a) { color:var(--jzc-accent); border-color:var(--jzc-line); }
body.jz-clean .rp-gaps-ico { background:var(--jzc-accent); }
body.jz-clean .jz-v2 .state .bar { background:var(--jzc-line); }
body.jz-clean .jz-v2 .state:not(.celebrate) .bar i { background:var(--jzc-accent); }

/* Template selection and upload controls; template preview images keep their colours. */
body.jz-clean :is(.rt-card.rt-selected,.rt-card:hover) { border-color:var(--jzc-selected); box-shadow:var(--jzc-shadow); }
body.jz-clean :is(.rt-badge-popular,.rt-badge-pro,.rt-path-badge,.rt-path-badge.alt,.rt-btn-outline:hover,.rt-file-zone:hover) { background:var(--jzc-paper); color:var(--jzc-accent); border-color:var(--jzc-selected); }
body.jz-clean .rt-form-section::before { background:var(--jzc-accent); }
body.jz-clean .rt-form-input:focus { border-color:var(--jzc-selected); box-shadow:0 0 0 2px var(--jzc-line); }
body.jz-clean :is(#rtShowUpload,#rtShowFresh) { background:var(--jzc-paper); color:var(--jzc-accent); border:1px solid var(--jzc-selected); }

/* The standalone Start Fresh page opts into the same foundation explicitly. */
body.jz-clean.jzc-start-fresh {
    color-scheme:light;
    --bg:var(--jzc-paper); --sidebar:var(--jzc-paper); --surface:var(--jzc-paper); --surface2:var(--jzc-paper);
    --raised:var(--jzc-paper); --card:var(--jzc-paper); --field:var(--jzc-paper); --off:var(--jzc-paper);
    --t1:var(--jzc-ink); --t2:var(--jzc-muted); --t3:var(--jzc-muted);
    --border:var(--jzc-line); --border2:var(--jzc-selected);
    --brand:var(--jzc-accent); --brand2:var(--jzc-accent); --brand-text:var(--jzc-accent);
    --brand-soft:var(--jzc-paper); --brand-line:var(--jzc-line); --brand-ring:var(--jzc-line);
    --grad:linear-gradient(var(--jzc-primary),var(--jzc-primary)); --grad-hover:linear-gradient(var(--jzc-primary-hover),var(--jzc-primary-hover)); --grad-text:linear-gradient(var(--jzc-accent),var(--jzc-accent));
    --green:var(--jzc-success); --amber:var(--jzc-warning); --err:#B42336;
    --sh1:var(--jzc-shadow); --sh2:var(--jzc-shadow); --sh3:var(--jzc-shadow);
}
body.jzc-start-fresh :is(.sfh-logo-text,.sfh-exit:hover) { color:var(--jzc-ink); }
html:has(body.jzc-start-fresh) { color-scheme:light; }
body.jzc-start-fresh .sfh-logo img { filter:none !important; }
body.jzc-start-fresh #actionBar { background:var(--jzc-paper); border-color:var(--jzc-line); box-shadow:0 -2px 12px rgba(83,25,51,.04); }
body.jzc-start-fresh :is(.sfconsent-title,.sfconsent-lbl,.sfconsent-lbl strong,#aiTone,.sfpill) { color:var(--jzc-ink) !important; }
body.jzc-start-fresh .sfconsent-lbl.opt { color:var(--jzc-muted); }
body.jzc-start-fresh #sfToast { color:var(--jzc-ink); }
body.jzc-start-fresh .sfpill.on { background:var(--jzc-paper); color:var(--jzc-accent) !important; border-color:var(--jzc-selected); box-shadow:inset 0 -2px var(--jzc-accent); }
body.jzc-start-fresh :is(.sfpbar,.sfsb-pct-bar) { background:var(--jzc-line); }
body.jzc-start-fresh :is(.sfpbar-fill,.sfsb-pct-fill,.sfsb-step.active::before) { background:var(--jzc-accent); }
body.jzc-start-fresh :is(.sfsb-step.active,.sfsb-step:hover,.sfsb-badge,.sf-tip,.sf-prefill) { background:var(--jzc-paper); }
body.jzc-start-fresh .sfsb-step.active .sfsb-num { background:var(--jzc-paper); color:var(--jzc-accent); border-color:var(--jzc-selected); }
body.jzc-start-fresh :is(.sfai-btn,.sfai-btn:hover,.sfbtn-back,.sfbtn-skip,.sfcomplete-btn.sec) { background:var(--jzc-paper); color:var(--jzc-accent); border:1px solid var(--jzc-line); box-shadow:none; }
body.jzc-start-fresh :is(.sfbtn-cont,.sfbtn-gen,.sfcomplete-btn.primary) { box-shadow:none; }
body.jzc-start-fresh :is(.sf-input,.sf-select) { border-color:var(--jzc-selected); }
body.jz-clean .cw-hero__badge { background:transparent; color:#fff; border:1px solid #A35178; }
body.jz-clean .cw-hero :is(.cw-hero__sub,.cw-hero__back) { color:#EDE5EB; }
body.jzc-start-fresh .sf-input.err { border-color:var(--err); }

/* Focus remains visible on every migrated control; progress dimensions and terminal
 * success/failure indicators retain their existing meaning and event handlers. */
body.jz-clean :is(.swal2-popup,dialog.jzg,#applyJob,.ic-page,.cw-body,.rp-toolbar,.rp-pdf-modal,.sfpanel,.sfsb) :is(a,button,input,select,textarea):focus-visible {
    outline:2px solid var(--jzc-accent) !important; outline-offset:3px;
}
@media (prefers-reduced-motion:reduce) {
    body.jz-clean :is(.ic-card-glow,.cw-panel,.saw-path-card,.sfcard,.sfpanel) { animation:none; transition:none; }
}
