/* Approved presentation refinements. Loaded only with the clean interface.
 * No document-body, template-artwork or behavioural selectors. */
body.jz-clean .rp-header {
    display:flex; flex-direction:column; align-items:stretch; gap:20px;
    padding:28px; margin-bottom:28px; border:1px solid var(--jzc-line);
    border-radius:16px; background:#fff; animation:none;
}
body.jz-clean .rp-header > div { min-width:0; width:100%; }
body.jz-clean .rp-header .rp-title { font-size:24px; line-height:1.3; color:var(--jzc-ink); }
body.jz-clean .rp-header .rp-subtitle { margin-top:8px; line-height:1.6; color:var(--jzc-muted); }
/* Keep the first-time website action visible, as a quiet row within the preview header. */
body.jz-clean .rp-header .jzw { display:block; margin:20px 0 0; padding:18px 0 0; border:0; border-top:1px solid var(--jzc-line); border-radius:0; background:#fff; font-family:inherit; }
body.jz-clean .rp-header .jzw-row { display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:start; gap:12px; }
body.jz-clean .rp-header .jzw-ic { width:24px; height:24px; background:none; border:0; border-radius:0; }
body.jz-clean .rp-header .jzw-txt { gap:5px; }
body.jz-clean .rp-header .jzw-txt b { color:var(--jzc-ink); }
body.jz-clean .rp-header .jzw-fine { margin:10px 0 0 36px; font-size:12px; line-height:1.6; }
body.jz-clean .rp-header .jzw-status:not(:empty) { margin:10px 0 0 36px; line-height:1.5; }
body.jz-clean .rp-header .jzw-btn { min-height:44px; border-radius:8px; padding:10px 14px; white-space:normal; }
@media(max-width:600px) {
    body.jz-clean .rp-header .jzw-row { grid-template-columns:24px minmax(0,1fr); }
    body.jz-clean .rp-header .jzw-btn { grid-column:2; justify-self:start; }
}
body.jz-clean .rp-header .jzw-txt { flex-basis:200px; }
body.jz-clean .rp-header .jzw-status:empty { min-height:0; margin:0; }
body.jz-clean .rp-header .rp-next { gap:10px; margin-top:20px; }
body.jz-clean .rp-header .rp-next-l { flex-basis:100%; color:var(--jzc-muted); }
body.jz-clean .rp-header .rp-actions { justify-content:flex-start; gap:10px; padding-top:20px; border-top:1px solid var(--jzc-line); }
body.jz-clean .rp-header :is(.rp-actions button,.rp-next-a) { min-height:44px; margin:0; padding:11px 18px; border-radius:9px; line-height:1.4; text-align:center; }
body.jz-clean .rp-header .rp-actions button { flex:1 1 150px; justify-content:center; }
body.jz-clean .rp-delta { border-color:var(--jzc-line) !important; border-radius:16px !important; padding:24px 28px !important; background:#fff !important; }
body.jz-clean .rp-delta-summary > p:first-child { font-size:15px !important; line-height:1.5; margin-bottom:18px !important; }
body.jz-clean .rp-delta-scores { display:grid !important; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:16px !important; }
body.jz-clean .rp-delta-score { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px; border:1px solid var(--jzc-line); border-radius:10px; }
body.jz-clean .rp-delta-score > span:first-child { color:var(--jzc-muted) !important; font-size:13px !important; }
body.jz-clean .rp-delta-score > span:last-child { font-size:28px !important; font-variant-numeric:tabular-nums; }
body.jz-clean .rp-delta-caption { grid-column:3; color:var(--jzc-muted) !important; }
body.jz-clean .rp-delta-summary > p:last-child { color:var(--jzc-muted) !important; font-size:13px !important; margin-top:18px !important; }

/* Dashboard search: the same GET form and native details disclosure. */
body.jz-clean .jz-v2 .jzs { padding:22px; border:1px solid var(--jzc-line); border-radius:14px; margin:0 0 22px; background:#fff; }
body.jz-clean .jzs-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; align-items:end; gap:12px; }
body.jz-clean .jzs-field-label { display:flex; flex-direction:column; gap:8px; font-size:13px; font-weight:600; color:var(--jzc-ink); min-width:0; }
body.jz-clean .jz-v2 .jzs .field { width:100%; min-width:0; min-height:46px; padding:11px 13px; background:#fff; border:1px solid var(--jzc-selected); border-radius:8px; font:inherit; font-size:14px; color:var(--jzc-ink); box-sizing:border-box; }
body.jz-clean .jzs .field::placeholder { color:var(--jzc-muted); opacity:1; }
body.jz-clean .jzs-field-label > .field { flex:none; }
body.jz-clean .jzs .btn { min-height:46px; padding:11px 20px; border-radius:8px; justify-content:center; }
body.jz-clean .jzs-more { margin-top:18px; border-top:1px solid var(--jzc-line); padding-top:14px; }
body.jz-clean .jzs-more summary { width:fit-content; padding:4px 0; color:var(--jzc-accent); font-weight:600; }
body.jz-clean .jzs-type-field { min-width:0; }
body.jz-clean .jzs-type-label { display:block; margin-bottom:8px; font-size:13px; font-weight:600; }
body.jz-clean .jzs-type-picker { position:relative; }
body.jz-clean .jzs-type-picker > summary { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-height:46px; padding:11px 13px; border:1px solid var(--jzc-selected); border-radius:8px; background:#fff; color:var(--jzc-ink); font-size:14px; font-weight:400; list-style:none; box-sizing:border-box; }
body.jz-clean .jzs-type-picker > summary::-webkit-details-marker { display:none; }
body.jz-clean .jzs-chevron { width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin:-4px 3px 0 0; }
body.jz-clean .jzs-type-picker[open] .jzs-chevron { transform:rotate(225deg); margin-top:4px; }
body.jz-clean .jzs-types { position:absolute; top:calc(100% + 6px); left:0; z-index:20; display:grid; grid-template-columns:minmax(0,1fr); gap:4px; width:max(100%,220px); max-height:320px; overflow:auto; margin:0; padding:12px; background:#fff; border:1px solid var(--jzc-line); border-radius:10px; box-shadow:0 8px 24px rgba(83,25,51,.08); box-sizing:border-box; }
body.jz-clean .jzs-types p { margin:0 4px 6px; font-size:12px; color:var(--jzc-muted); }
body.jz-clean .jzs-grid .jzs-types label { flex-direction:row; align-items:center; padding:8px; border:1px solid transparent; border-radius:6px; min-height:40px; background:#fff; font-weight:400; cursor:pointer; }
body.jz-clean .jzs-types label:has(input:checked) { border-color:var(--jzc-selected); color:var(--jzc-accent); }
body.jz-clean .jzs-types input { width:16px; height:16px; margin:0; accent-color:var(--jzc-accent); }
body.jz-clean .jzs-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; gap:16px; margin-top:18px; }
body.jz-clean .jzs-grid label { gap:8px; font-weight:600; min-width:0; }
body.jz-clean .jzs-grid .btn { grid-column:1 / -1; justify-self:end; }

/* Website management: status, visibility, customization, then advanced settings.
 * All existing state branches, forms, consent and publication handlers are retained. */
body.jz-clean .jz-website-settings .page-hd { margin-bottom:24px; }
body.jz-clean .jz-website-settings .page-hd p { max-width:68ch; line-height:1.65; }
body.jz-clean .jz-website-nav { display:flex; flex-wrap:wrap; gap:8px; margin:-6px 0 22px; }
body.jz-clean .jz-website-nav a { display:inline-flex; align-items:center; min-height:42px; padding:9px 13px; color:var(--jzc-accent); border:1px solid var(--jzc-line); border-radius:8px; font-size:13px; font-weight:600; text-decoration:none; }
body.jz-clean .jz-website-nav a:hover { border-color:var(--jzc-selected); }
body.jz-clean .jz-website-eyebrow { display:block; margin:0 0 10px; font-size:12px; font-weight:600; letter-spacing:.02em; color:var(--jzc-accent); }
body.jz-clean .jz-website-guidance { margin:0 0 16px; max-width:65ch; font-size:13px; line-height:1.6; color:var(--jzc-muted); }
body.jz-clean .jz-website-field-label { display:block; margin:0; font-size:13px; font-weight:600; color:var(--jzc-ink); }
body.jz-clean .jz-website-settings .setting { scroll-margin-top:100px; }
body.jz-clean .jz-website-settings .panel { padding:26px; border-radius:16px; box-shadow:none; }
body.jz-clean .jz-website-settings .setting { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; padding:24px 0; }
body.jz-clean .jz-website-settings .setting:first-child { padding-top:0; }
body.jz-clean .jz-website-settings .setting:last-child { padding-bottom:0; }
body.jz-clean .jz-website-settings .setting > :is(div,.v) { min-width:0; width:100%; }
body.jz-clean .jz-website-settings .setting .v { gap:8px; }
body.jz-clean .jz-website-settings .setting .v > :is(.meta,.jz-website-guidance) { margin:0; }
body.jz-clean .jz-website-settings .setting h4 { margin:0 0 8px; font-size:17px; line-height:1.4; }
body.jz-clean .jz-website-settings .setting .d { max-width:70ch; line-height:1.65; overflow-wrap:anywhere; }
body.jz-clean .jz-website-settings #jzPage > div:first-child { padding-bottom:20px; border-bottom:1px solid var(--jzc-line); }
body.jz-clean .jz-website-settings #jzPage > .v > .meta:first-child { font-size:14px; font-weight:600; color:var(--jzc-ink); margin:0; }
body.jz-clean .jz-website-settings .grid2 { gap:4px 18px; }
body.jz-clean .jz-website-settings .check { align-items:flex-start; min-width:0; line-height:1.55; }
body.jz-clean .jz-website-settings .check > i { flex:0 0 18px; margin-top:2px; }
body.jz-clean .jz-website-settings .check > span { min-width:0; overflow-wrap:anywhere; }
body.jz-clean .jz-website-settings .grid2 .check { padding:6px 0; }
body.jz-clean .jz-website-settings .check:has(#jzPageConsent) { margin-top:12px !important; padding:14px; border:1px solid var(--jzc-selected); border-radius:10px; }
body.jz-clean .jz-website-settings .line { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:12px 0; }
body.jz-clean .jz-website-settings .line > span { flex:1 1 180px; min-width:0; overflow-wrap:anywhere; }
body.jz-clean .jz-website-settings .line :is(.btn,.link) { flex-shrink:0; }
body.jz-clean .jz-website-settings .line .link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 16px; border:1px solid var(--jzc-line); border-radius:8px; background:#fff; color:var(--jzc-accent); font-size:14px; font-weight:600; text-decoration:none; }
body.jz-clean .jz-website-settings .line .link:hover { border-color:var(--jzc-selected); }
body.jz-clean .jz-website-settings .jz-website-unpublish { border-top:1px solid var(--jzc-line); margin-top:12px; padding-top:18px; font-size:13px; color:var(--jzc-muted); }
body.jz-clean .jz-website-settings .jz-website-unpublish .link { padding:8px 0; border-color:transparent; text-decoration:underline; text-underline-offset:3px; }
body.jz-clean .jz-website-settings .jz-website-address { padding:12px 14px; border:1px solid var(--jzc-line); border-radius:8px; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
body.jz-clean .jz-website-settings .jz-website-switch-hint { margin:0; }
body.jz-clean .jz-website-settings .btn { min-height:44px; padding:11px 18px; border-radius:9px; white-space:normal; text-align:center; }
body.jz-clean .jz-website-settings .btn:disabled { opacity:.55; cursor:not-allowed; }
body.jz-clean .jz-website-settings #jzPageStatus { margin:12px 0; line-height:1.6; overflow-wrap:anywhere; }
body.jz-clean .jz-website-settings #jzPageStatus:empty { margin:0; }
body.jz-clean .jz-website-settings .setting form .line { margin:0; }
body.jz-clean .jz-website-settings #jzPageSlug { flex:1 1 240px; min-width:0; min-height:46px; padding:12px 14px; border-radius:9px; }
body.jz-clean .jz-website-settings .powers { gap:18px; line-height:1.65; }
body.jz-clean .jz-website-settings .jz-website-more { margin:30px 0 14px; font-size:18px; }
body.jz-clean .jz-website-settings :is(.check:has(input:focus-visible),.toggle:focus-visible) { outline:2px solid var(--jzc-accent); outline-offset:4px; }

/* Public job cards only: search, navigation and the rest of the board stay intact. */
body.jz-clean .js5-card { display:grid; grid-template-columns:40px minmax(0,1fr); gap:0 12px; align-items:start; padding:16px; border-radius:12px; border-color:var(--jzc-line); box-shadow:inset 0 -2px var(--jzc-accent); animation:none; opacity:1; transform:none; }
body.jz-clean .js5-card:hover { transform:none; box-shadow:inset 0 -2px var(--jzc-accent),0 4px 16px rgba(83,25,51,.05); }
body.jz-clean .js5-card::before { content:none; }
body.jz-clean .js5-card .js5-logo { grid-column:1; grid-row:1; width:40px; height:40px; border-radius:9px; margin:0; }
body.jz-clean .js5-card:hover .js5-logo { transform:none; }
body.jz-clean .js5-card .js5-info { grid-column:2; grid-row:1; min-width:0; }
body.jz-clean .js5-card .js5-row1 { display:block; margin:0; padding-right:46px; }
body.jz-clean .js5-card .js5-title { display:block; font-size:18px; line-height:1.35; font-weight:600; letter-spacing:-.01em; }
body.jz-clean .js5-card .js5-title a { display:block; white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; font:inherit; }
body.jz-clean .js5-card .js5-byline { display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 12px; margin-top:4px; line-height:1.5; }
body.jz-clean .js5-card .js5-company { min-width:0; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
body.jz-clean .js5-card .js5-company a { font:inherit; }
body.jz-clean .js5-card .js5-posted { position:static; order:0; width:auto; margin:0; padding:0; border:0; gap:6px; justify-content:flex-start; flex-wrap:wrap; font-size:12px; line-height:1.5; color:var(--jzc-muted); }
body.jz-clean .js5-card .js5-newtag { padding:0; border:0; border-radius:0; background:transparent; color:var(--jzc-accent); font-size:12px; text-transform:none; }
body.jz-clean .js5-card .js5-facts { display:flex; align-items:center; flex-wrap:wrap; gap:5px 12px; margin-top:10px; }
body.jz-clean .js5-card :is(.js5-row2,.js5-tags) { display:contents; }
body.jz-clean .js5-card .js5-mdot { display:none; }
body.jz-clean .js5-card .js5-meta { white-space:normal; overflow-wrap:anywhere; font-size:13px; line-height:1.5; }
body.jz-clean .js5-card .js5-meta.salary { color:var(--jzc-ink); font-weight:600; }
body.jz-clean .js5-card .js5-tag { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:var(--jzc-muted); font-size:13px; font-weight:400; line-height:1.5; white-space:normal; max-width:100%; }
body.jz-clean .js5-card .js5-tag::before { content:'·'; margin-right:10px; }
body.jz-clean .js5-card .feed-attribution { margin:0 !important; min-height:23px; font-size:12px !important; color:var(--jzc-muted) !important; }
body.jz-clean .js5-card .feed-attribution > span { font-weight:400 !important; }
/* The score is a flexible sibling, never part of the delegated actions container. */
body.jz-clean .js5-card .js5-card-footer { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; min-width:0; margin-top:10px; padding-top:8px; border-top:1px solid var(--jzc-line); }
body.jz-clean .js5-card .js5-match { flex:1 1 260px; min-width:0; margin:0 !important; gap:3px 6px !important; }
body.jz-clean .js5-card .js5-match > span { padding:0 !important; border:0; border-radius:0 !important; background:transparent !important; font-size:12px !important; line-height:1.5; }
body.jz-clean .js5-card .js5-match > span:first-child { font-size:13px !important; }
/* Deepen the scorer's existing status hue; its band and meaning stay unchanged. */
body.jz-clean .js5-card .js5-match:not(.js5-match-indicative) > span:first-child { filter:brightness(.65); }
body.jz-clean .js5-card .js5-match > span:nth-child(2) { color:var(--jzc-muted) !important; font-weight:400 !important; }
body.jz-clean .js5-card .js5-match:not(.js5-match-indicative) > span:nth-child(3):not(.js5-match-authnote) { color:var(--jzc-accent) !important; }
body.jz-clean .js5-card .js5-match-indicative > span:first-child { color:var(--jzc-accent) !important; }
body.jz-clean .js5-card .js5-match > span + span::before { content:'·'; margin-right:6px; color:var(--jzc-muted); }
body.jz-clean .js5-card .js5-match-indicative > span:last-child { flex-basis:100%; font-size:11px !important; font-style:italic; line-height:1.3; color:var(--jzc-muted) !important; }
body.jz-clean .js5-card .js5-match-indicative > span:last-child::before { content:none; }
body.jz-clean .js5-card .js5-match-locked { margin:0 !important; font-size:12px !important; line-height:1.5; }
body.jz-clean .js5-card .js5-actions { position:static; width:auto; max-width:100%; justify-content:flex-end; flex-wrap:wrap; gap:14px; margin:0 0 0 auto; padding:0; border:0; }
body.jz-clean .js5-card .js5-actions :is(a,button) { min-height:28.6px; }
body.jz-clean .js5-card .js5-act.view { padding:4px 0; border:0; background:transparent; color:var(--jzc-accent); font-size:13px; line-height:18px; font-weight:400; text-decoration:none; }
body.jz-clean .js5-card .js5-act.apply { padding:3.3px 14px; border:1px solid var(--jzc-selected); border-radius:7px; background:var(--jzc-paper); color:var(--jzc-accent); font-size:13px; line-height:20px; font-weight:600; text-decoration:none; }
body.jz-clean .js5-card .js5-act.apply:hover { border-color:var(--jzc-accent); box-shadow:0 2px 8px rgba(83,25,51,.06); }
body.jz-clean .js5-card .js5-act.view:hover { text-decoration:underline; text-underline-offset:4px; }
body.jz-clean .js5-card .js5-save { position:absolute; top:16px; right:16px; width:40px; height:40px; min-height:40px; border:0; border-radius:8px; background:transparent; }
body.jz-clean .js5-card .js5-save:hover { box-shadow:inset 0 0 0 1px var(--jzc-line); }
/* Vendor link resets suppress the keyboard ring; restore it on every card action. */
body.jz-clean .js5-card a:focus-visible { outline:2px solid var(--jzc-accent) !important; outline-offset:3px; }

/* Cover-letter chrome and the specifically requested header rule/credit. */
body.jz-clean .clp-wrap { background:#fff; }
body.jz-clean .clp-header { gap:20px; }
body.jz-clean .clp-actions { gap:10px; }
body.jz-clean .clp-actions :is(button,a) { margin:0; }
body.jz-clean :is(.clp-accent-modern,.clp-accent-classic,.clp-accent-professional) { background:var(--jzc-line); }
body.jz-clean .clp-powered { border-color:var(--jzc-line); color:var(--jzc-muted); font-size:11px; line-height:1.6; }
body.jz-clean .clp-powered a { color:var(--jzc-accent); }
body.jz-clean :is(.jzs,.jz-website-settings,.js5-card,.rp-header) :is(a,button,input,select,summary):focus-visible { outline:2px solid var(--jzc-accent); outline-offset:3px; }

@media (max-width:767px) {
    body.jz-clean .rp-header { margin:0 16px 20px; padding:20px; gap:16px; }
    body.jz-clean .rp-header .rp-title { font-size:21px; }
    /* Keep the existing fixed mobile action bar and its handlers. */
    body.jz-clean .rp-header .rp-actions { display:none; }
    body.jz-clean .rp-header .rp-next-a { flex:1 1 220px; }
    body.jz-clean .rp-delta { padding:20px !important; }
    body.jz-clean .rp-delta-scores { gap:8px !important; }
    body.jz-clean .rp-delta-score { flex-direction:column; align-items:flex-start; gap:10px; padding:12px; }
    body.jz-clean .rp-delta-caption { grid-column:1 / -1; }
    body.jz-clean .jz-v2 .jzs { padding:18px; }
    body.jz-clean .jzs-row, body.jz-clean .jzs-grid { grid-template-columns:minmax(0,1fr); }
    body.jz-clean .jzs-grid .btn { justify-self:stretch; }
    body.jz-clean .jz-website-settings .panel { padding:20px; }
    body.jz-clean .jz-website-settings .grid2 { grid-template-columns:minmax(0,1fr); gap:4px; }
    body.jz-clean .jz-website-settings .line .btn { width:100%; }
    body.jz-clean .jz-website-settings .line .link { width:100%; }
    body.jz-clean .jzs-types { position:static; width:100%; margin-top:6px; box-shadow:none; }
    body.jz-clean .js5-card { padding:16px; grid-template-columns:36px minmax(0,1fr); gap:0 10px; }
    body.jz-clean .js5-card .js5-logo { width:36px; height:36px; }
    body.jz-clean .js5-card .js5-info { display:contents; }
    body.jz-clean .js5-card .js5-row1 { grid-column:2; grid-row:1; min-width:0; }
    body.jz-clean .js5-card .js5-title { font-size:17px; }
    body.jz-clean .js5-card .js5-facts { grid-column:1 / -1; grid-row:2; }
    body.jz-clean .js5-card .js5-card-footer { grid-row:3; }
    body.jz-clean .js5-card .js5-match { flex-basis:100%; }
    body.jz-clean .js5-card .js5-actions { width:100%; justify-content:space-between; gap:12px; margin-left:0; }
    body.jz-clean .js5-card .js5-save { top:10px; right:10px; width:44px; height:44px; }
}
