/* ===== premium layer (shared base, original CSS, 2026-10). Loaded AFTER each site's own stylesheet; per-site theme
   variables are prepended by premiumize.py. Font: Inter, SIL OFL 1.1 (/pz/fonts/Inter-LICENSE.txt). ===== */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/pz/fonts/inter-latin-var.woff2) format("woff2")}
:root{--r:16px;--sh:0 1px 2px rgba(16,24,40,.05),0 6px 20px -8px rgba(16,24,40,.12);--sh2:0 2px 4px rgba(16,24,40,.06),0 20px 40px -16px rgba(16,24,40,.25);color-scheme:light}
:root{--bg:var(--l-bg);--bg2:var(--l-bg2);--card:var(--l-card);--ink:var(--l-ink);--ink2:var(--l-ink2);--mut:var(--l-mut);--line:var(--l-line);--line2:var(--l-line2);--acc:var(--l-acc);--acc2:var(--l-acc2);--accs:var(--l-accs);--hl:var(--l-hl);--hls:var(--l-hls);--okc:#0b7a55;--oks:#e3f6ec;--wnc:#8a5a00;--wns:#fff6df;--wnl:#f1d58e;--bdc:#b4232c;--bds:#fdecec;--hdr:var(--l-hdr);--hero:var(--l-hero)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:var(--d-bg);--bg2:var(--d-bg2);--card:var(--d-card);--ink:var(--d-ink);--ink2:var(--d-ink2);--mut:var(--d-mut);--line:var(--d-line);--line2:var(--d-line2);--acc:var(--d-acc);--acc2:var(--d-acc2);--accs:var(--d-accs);--hl:var(--d-hl);--hls:var(--d-hls);--okc:#5fdca5;--oks:#10291f;--wnc:#f3c66b;--wns:#2a2213;--wnl:#4d3d18;--bdc:#ff8a8a;--bds:#2e1517;--hdr:var(--d-hdr);--hero:var(--d-hero);--sh:0 1px 2px rgba(0,0,0,.35);--sh2:0 20px 40px -16px rgba(0,0,0,.75);color-scheme:dark}}
:root[data-theme=dark]{--bg:var(--d-bg);--bg2:var(--d-bg2);--card:var(--d-card);--ink:var(--d-ink);--ink2:var(--d-ink2);--mut:var(--d-mut);--line:var(--d-line);--line2:var(--d-line2);--acc:var(--d-acc);--acc2:var(--d-acc2);--accs:var(--d-accs);--hl:var(--d-hl);--hls:var(--d-hls);--okc:#5fdca5;--oks:#10291f;--wnc:#f3c66b;--wns:#2a2213;--wnl:#4d3d18;--bdc:#ff8a8a;--bds:#2e1517;--hdr:var(--d-hdr);--hero:var(--d-hero);--sh:0 1px 2px rgba(0,0,0,.35);--sh2:0 20px 40px -16px rgba(0,0,0,.75);color-scheme:dark}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}
html body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink2);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01";overflow-x:clip;line-height:1.65}
body h1,body h2,body h3,body h4{color:var(--ink);letter-spacing:-.025em;line-height:1.2}
body h1{font-weight:800;letter-spacing:-.04em}
body h2{font-weight:750}
body a{color:var(--acc);text-underline-offset:3px;text-decoration-thickness:1px}body a:hover{color:var(--acc2)}
body :focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:4px}
body img{max-width:100%;height:auto}
.pz-i{width:1em;height:1em;flex:none;vertical-align:-.14em}
/* header */
body>header,body>.top,body .site-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--hdr) 86%,transparent);backdrop-filter:saturate(1.5) blur(14px);-webkit-backdrop-filter:saturate(1.5) blur(14px);border-bottom:1px solid var(--line);color:var(--ink);box-shadow:none}
body>header *,body>.top *,body .site-header *{color:inherit}
body .brand,body .logo{color:var(--ink);font-weight:800;letter-spacing:-.03em;text-decoration:none;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
body .brand:hover,body .logo:hover{color:var(--ink)}
body .brand span,body .logo span,body .brand small{color:var(--acc)}
body .brand:before,body .logo:not(:has(.mark)):before{content:"";flex:none;width:30px;height:30px;border-radius:10px;background:var(--pz-mark,linear-gradient(135deg,var(--acc),var(--hl)));box-shadow:0 6px 14px -6px color-mix(in srgb,var(--acc) 80%,transparent)}
body .brand:has(.mark):before,body .brand:has(.logo):before{display:none}
body .mark{background:linear-gradient(135deg,var(--acc),var(--hl))!important;color:#fff!important;border-radius:10px}
body>header nav a,body>.top nav a,body .site-header nav a,body .site-nav a,body .nav a{color:var(--mut);text-decoration:none;font-weight:560;font-size:14.5px;padding:7px 11px;border-radius:10px;transition:color .15s,background .15s;background:transparent}
body>header nav a:hover,body>.top nav a:hover,body .site-header nav a:hover,body nav a[aria-current],body nav a.on,body nav a.active{color:var(--ink);background:var(--bg2)}
.pz-tb{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;border:1px solid var(--line2);background:var(--card);color:var(--ink);cursor:pointer;font-size:17px;flex:none;margin-left:8px;transition:border-color .15s,transform .15s;padding:0}
.pz-tb:hover{border-color:var(--acc);transform:translateY(-1px)}
.pz-tb .i-sun{display:none}:root[data-theme=dark] .pz-tb .i-sun{display:block}:root[data-theme=dark] .pz-tb .i-moon{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .pz-tb .i-sun{display:block}:root:not([data-theme=light]) .pz-tb .i-moon{display:none}}
/* disclaimer strips */
body .disc:not(.site-footer .disc),body .risk-strip{background:var(--wns);border-bottom:1px solid var(--wnl);color:var(--wnc);font-size:13.5px}
body .risk-strip *{color:inherit}
/* hero band (wraps the first h1 + lead) */
.pz-hero{position:relative;isolation:isolate;padding:var(--pz-hero-pad,38px 0 34px);margin:var(--pz-hero-m,-22px 0 26px)}
.pz-hero:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);background:var(--hero);border-bottom:1px solid var(--line)}
.pz-hero:after{content:"";position:absolute;z-index:-1;width:560px;height:560px;right:calc(50% - 50vw);top:-300px;max-width:100vw;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--acc) 22%,transparent),transparent 65%);pointer-events:none}
.pz-hero h1{font-size:clamp(30px,4.4vw,50px);margin:10px 0 12px;max-width:900px}
.pz-hero.pz-home h1{font-size:clamp(34px,5.4vw,60px);line-height:1.04;letter-spacing:-.045em}
.pz-hero .lead,.pz-hero .lede,.pz-hero .sub,.pz-hero>p{font-size:18px;color:var(--mut);max-width:780px}
.pz-hero>p:last-child{margin-bottom:0}
/* text helpers */
body .lead,body .lede{color:var(--mut)}
body .muted{color:var(--mut)}
body .small{font-size:13.5px}
body .crumbs{font-size:13.5px;color:var(--mut)}body .crumbs a{color:var(--mut);text-decoration:none}body .crumbs a:hover{color:var(--acc)}
/* cards */
body .card,body .box,body .panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);transition:box-shadow .2s,transform .2s,border-color .2s}
body a.card:hover,body .card.link:hover,body .site:hover,body .job:hover{transform:translateY(-3px);box-shadow:var(--sh2)}
/* stat tiles */
body .keyd>div,body .stats>div,body .counts>div,body .stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:16px 18px}
body .keyd b,body .stats b,body .counts b{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
/* tables */
body .tblw,body .table-wrap,body .tablewrap,body .tbl-wrap{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);overflow-x:auto}
body table{border-collapse:collapse;border-color:var(--line)}
body th{background:var(--bg2);color:var(--mut);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;border-color:var(--line)!important}
body td{border-color:var(--line)!important}
body th,body td{padding:12px 14px}
body table tr:hover td{background:color-mix(in srgb,var(--accs) 50%,transparent)}
body td.num,body th.num,body .num{font-variant-numeric:tabular-nums}
/* tags, badges, chips */
body .tag,body .badge,body .pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;font-weight:650;font-size:12px;padding:3px 10px;line-height:1.5;background:var(--accs);color:var(--acc);border:0}
body .t-ok,body .badge.ok,body .b-conf,body .badge.up{background:var(--oks);color:var(--okc)}
body .t-warn,body .b-unc,body .badge.warn{background:var(--wns);color:var(--wnc)}
body .t-bad,body .badge-closed,body .t-recall{background:var(--bds);color:var(--bdc)}
body .t-info{background:var(--accs);color:var(--acc)}
body .chip,body .chipbtn{border-radius:999px;border:1px solid var(--line2);background:var(--card);color:var(--ink2);font-weight:560;transition:background .15s,border-color .15s,color .15s,transform .15s;cursor:pointer}
body .chip:hover,body .chipbtn:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-1px)}
body .chip.active,body .chip.on,body .chipbtn.on,body .chip[aria-pressed=true]{background:var(--acc);border-color:var(--acc);color:#fff}
/* callouts / notes */
body .callout,body .note,body .notice,body .partial{background:var(--wns);border:1px solid var(--wnl);border-left:4px solid var(--wnc);border-radius:12px;color:var(--ink2);padding:14px 16px}
body .callout.ok,body .note.ok,body .ok.note{background:var(--oks);border-color:color-mix(in srgb,var(--okc) 35%,transparent);border-left-color:var(--okc)}
body .callout.info{background:var(--accs);border-color:color-mix(in srgb,var(--acc) 30%,transparent);border-left-color:var(--acc)}
body .callout.bad{background:var(--bds);border-color:color-mix(in srgb,var(--bdc) 30%,transparent);border-left-color:var(--bdc)}
/* honest house sponsor slots */
body .slot,body .sponsor-slot,body .affiliate-slot,body .placeholder,body .sponsors{background:repeating-linear-gradient(135deg,var(--card) 0 14px,var(--bg2) 14px 28px);border:1.5px dashed var(--line2);border-radius:var(--r);color:var(--mut);box-shadow:none}
body .slot b,body .slot strong,body .sponsor-slot b,body .sponsor-slot strong{color:var(--ink)}
/* forms */
body input:not([type=checkbox]):not([type=radio]):not([type=range]),body select,body textarea{font:inherit;background:var(--card);color:var(--ink);border:1.5px solid var(--line2);border-radius:12px;transition:border-color .15s,box-shadow .15s}
body input:not([type=checkbox]):not([type=radio]):focus,body select:focus,body textarea:focus{outline:0;border-color:var(--acc);box-shadow:0 0 0 4px color-mix(in srgb,var(--acc) 16%,transparent)}
body button:not(.pz-tb):not(.chip):not(.chipbtn):not(.nav-toggle):not([class*=tab]),body .btn,body .button{font:inherit;font-weight:650;background:var(--acc);color:#fff;border:0;border-radius:12px;cursor:pointer;box-shadow:0 10px 22px -12px color-mix(in srgb,var(--acc) 90%,transparent);transition:transform .15s,box-shadow .15s,background .15s;text-decoration:none}
body button:not(.pz-tb):not(.chip):not(.chipbtn):not(.nav-toggle):hover,body .btn:hover,body .button:hover{transform:translateY(-1px);background:var(--acc2);color:#fff}
body .btn-secondary,body .btn.ghost,body button.sec{background:var(--card);color:var(--ink);border:1.5px solid var(--line2);box-shadow:none}
body .btn-secondary:hover,body .btn.ghost:hover,body button.sec:hover{background:var(--bg2);color:var(--acc);border-color:var(--acc)}
/* details */
body details{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh)}
body summary{cursor:pointer;font-weight:650;color:var(--ink)}
/* blockquote */
body blockquote{border-left:3px solid var(--acc);background:var(--bg2);border-radius:0 12px 12px 0;color:var(--ink2);margin-left:0;padding:12px 16px}
/* footer */
body>footer,body .site-footer,body footer.foot{background:var(--pz-foot,#0f172a);color:#a9b4c6;border-top:0;margin-top:40px}
body>footer a,body .site-footer a,body footer.foot a{color:#e2e8f0}body>footer a:hover,body .site-footer a:hover,body footer.foot a:hover{color:#fff}
body>footer b,body>footer strong,body .site-footer b,body .site-footer strong{color:#fff}
body>footer .muted,body .site-footer .muted,body>footer .small{color:#94a3b8}
body>footer .slot,body .site-footer .slot,body>footer .soon,body .site-footer .alerts,body .site-footer .newsletter,body footer .alerts,body .alerts-box{background:rgba(255,255,255,.05);border:1px dashed rgba(255,255,255,.18);border-radius:14px;color:#cbd5e1}
:root[data-theme=dark] body>footer,:root[data-theme=dark] body .site-footer,:root[data-theme=dark] body footer.foot{background:#05070c}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body>footer,:root:not([data-theme=light]) body .site-footer,:root:not([data-theme=light]) body footer.foot{background:#05070c}}
/* motion */
@media (prefers-reduced-motion:no-preference){.pz-hero>*{animation:pzup .6s cubic-bezier(.2,.7,.2,1) both}.pz-hero>*:nth-child(2){animation-delay:.05s}.pz-hero>*:nth-child(3){animation-delay:.1s}}
@keyframes pzup{from{opacity:0;transform:translateY(12px)}}
/* mobile */
@media (max-width:760px){
 body>header nav,body>.top nav,body .site-header nav{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:2px;max-width:100%;mask-image:linear-gradient(90deg,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}
 body>header nav::-webkit-scrollbar,body>.top nav::-webkit-scrollbar,body .site-header nav::-webkit-scrollbar{display:none}
 body>header nav a,body>.top nav a,body .site-header nav a{flex:none;white-space:nowrap;padding:6px 10px;font-size:14px}
 .pz-hero{padding:var(--pz-hero-pad-m,26px 0 24px)}
 .pz-hero h1{font-size:30px}.pz-hero.pz-home h1{font-size:34px}
 .pz-hero .lead,.pz-hero .lede,.pz-hero .sub,.pz-hero>p{font-size:16.5px}
 body .tblw table,body .table-wrap table,body .tablewrap table{font-size:13.5px}
 body th,body td{padding:10px 11px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
body code{overflow-wrap:anywhere;word-break:break-word;background:var(--bg2);border-radius:6px;padding:1px 5px;font-size:.9em}
body pre{max-width:100%;overflow-x:auto}
.pz-tb{margin-left:auto}
body>header nav~.pz-tb,body>.top nav~.pz-tb,body .site-header nav~.pz-tb{margin-left:10px}
@media (max-width:760px){
 body>header>div,body>.top>div,body .site-header>div{display:flex!important;flex-wrap:wrap!important;align-items:center;row-gap:6px}
 .pz-tb,body>header nav~.pz-tb,body>.top nav~.pz-tb,body .site-header nav~.pz-tb{order:1;margin-left:auto;width:36px;height:36px}
 body>header nav,body>.top nav,body .site-header nav{order:2;flex:1 0 100%!important;width:100%;margin:0!important}
}
body dd,body dt{min-width:0;overflow-wrap:anywhere}
/* shared header container layout (desktop) + brand helpers */
@media (min-width:761px){
 body>header>div:first-child,body>.top>div:first-child,body .site-header>div:first-child{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}
 body>header>div:first-child>nav,body>.top>div:first-child>nav,body .site-header>div:first-child>nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:2px}
}
body>header>.in,body>.top>.in,body>footer>.in{max-width:1180px;margin:0 auto;padding:12px 20px}
body .brand span:has(em),body .logo span:has(em){color:var(--ink)}body .brand em,body .logo em{font-style:normal;color:var(--acc)}
body .brand .mark,body .logo .mark,body .logo-mark{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 6px;font-size:13px;font-weight:800;border-radius:10px;background:linear-gradient(135deg,var(--acc),var(--hl))!important;color:#fff!important;-webkit-text-fill-color:#fff}
body .logo:has(.logo-mark):before,body .brand .logo:before,body .logo:has(svg):before,body .brand:has(svg):before{display:none}
body .brand .logo{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,var(--acc),var(--hl));color:#fff!important;font-size:13px}
body .brand svg.logo{background:none;color:var(--acc)!important;width:30px;height:30px}
body>header nav a,body>.top nav a,body .site-header nav a{white-space:nowrap}
@media (min-width:761px){body>header>div:first-child>nav,body>.top>div:first-child>nav,body .site-header>div:first-child>nav{flex:1 1 auto;justify-content:flex-end}}
body>header nav a,body>.top nav a,body .site-header nav a{margin-left:0!important;margin-right:0!important}
@media (max-width:760px){body main table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}body table.kv td,body table.kv th{overflow-wrap:anywhere}}
body>header,body>.top,body .site-header{background:color-mix(in srgb,var(--hdr) 88%,transparent)!important;color:var(--ink)!important;border-bottom:1px solid var(--line)!important}
body header nav a[aria-current],body header nav a.on,body header nav a.active,body header nav a:hover{color:var(--ink)!important;background:var(--bg2)!important}
body>header nav a,body>.top nav a,body .site-header nav a{color:var(--mut)}
@media (max-width:760px){body .site-header .nav-toggle{display:none!important}body .site-header .site-nav{flex-direction:row!important;padding-bottom:2px!important}}
body>header nav a,body>.top nav a,body .site-header nav a{color:var(--mut)!important}

/* ===== site theme ===== */
/* QualityRoles — visual direction from a best-selling job-board HTML template (bright royal-blue primary, white job rows
   with hover lift, soft category tiles, rounded search bar). Original CSS only. */
:root{--l-bg:#f7f8fc;--l-bg2:#eef1fa;--l-card:#fff;--l-ink:#161c2d;--l-ink2:#333b52;--l-mut:#6b7389;--l-line:#e6e9f2;--l-line2:#d8dcea;--l-acc:#2a41e8;--l-acc2:#4458f0;--l-accs:#eceffe;--l-hl:#13b5ea;--l-hls:#e3f6fd;--l-hdr:#fff;--l-hero:linear-gradient(120deg,#eef0ff 0%,#f7f8fc 55%,#e8f8fd 100%);
--d-bg:#0d111c;--d-bg2:#151a28;--d-card:#141a28;--d-ink:#eef1fb;--d-ink2:#c9cfe2;--d-mut:#8e97b0;--d-line:#222a3d;--d-line2:#2c3550;--d-acc:#6b7cff;--d-acc2:#8a97ff;--d-accs:#1b2145;--d-hl:#37c6f4;--d-hls:#0e2a36;--d-hdr:#0d111c;--d-hero:linear-gradient(120deg,#171d3d,#0d111c 60%);--pz-foot:#161c2d}
.wrap{max-width:1180px}
.search input,#q{border-radius:14px!important;padding:14px 16px!important;font-size:16px!important;border:1.5px solid var(--line2)!important;background:var(--card)!important;box-shadow:var(--sh)}
.search input:focus,#q:focus{border-color:var(--acc)!important;outline:none}
.tiles{gap:12px}.tile{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh);transition:transform .15s,border-color .15s,box-shadow .15s;text-decoration:none}
.tile:hover{transform:translateY(-2px);border-color:var(--acc);box-shadow:var(--sh2)}
.jobs{list-style:none;padding:0}
li.job{margin:0 0 10px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh);transition:transform .15s,border-color .15s,box-shadow .15s;border-left:3px solid transparent}
li.job:hover{transform:translateY(-1px);border-color:var(--line2);border-left-color:var(--acc);box-shadow:var(--sh2)}
li.job>a{display:block;padding:14px 16px;text-decoration:none;color:inherit}
.jt{font-weight:700;color:var(--ink);font-size:16px}li.job:hover .jt{color:var(--acc)}
.jm{color:var(--mut);font-size:13.5px;margin-top:4px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.co{font-weight:600;color:var(--ink2)}
.tag{background:var(--accs);color:var(--acc);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:650}
.sal{background:var(--oks)!important;color:var(--okc)!important;border-radius:999px;padding:2px 9px;font-weight:700;font-size:12px}
.rem{background:var(--hls)!important;color:var(--hl)!important}
.dt{color:var(--mut);font-size:12.5px}
