:root{
  --wsr-ink:#0E1E33;
  --wsr-muted:#3D4854;
  --wsr-green:#C8A568;
  --wsr-deep:#0E1E33;
  --wsr-line:#F4EFE7;
  --wsr-paper:#F6F1E9;
  --wsr-orange:#C8A568;
}
.wsr-page{background:#F6F1E9;color:var(--wsr-ink)}
.wsr-page *{box-sizing:border-box}
.wsr-hero{position:relative;overflow:hidden;padding:142px 5% 72px;background:linear-gradient(132deg,#0E1E33 0%,#0E1E33 56%,#272513 100%);color:#fff}
.wsr-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,rgba(200, 165, 104, .22),transparent 28%),radial-gradient(circle at 15% 90%,rgba(200, 165, 104, .18),transparent 30%);pointer-events:none}
.wsr-shell{position:relative;z-index:1;width:min(1180px,100%);margin:0 auto}
.wsr-eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 20px;color:#D9C28F;font:700 12px/1.4 'JetBrains Mono',monospace;letter-spacing:2px;text-transform:uppercase}
.wsr-eyebrow:before{content:"";width:32px;height:2px;background:currentColor}
.wsr-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:54px;align-items:end}
.wsr-title{max-width:760px;margin:0;font:800 clamp(43px,6.2vw,82px)/.96 'Bricolage Grotesque',sans-serif;letter-spacing:-3px}
.wsr-title span{color:#C8A568}
.wsr-lede{max-width:760px;margin:28px 0 0;color:rgba(255,255,255,.79);font-size:clamp(16px,1.6vw,20px);line-height:1.7}
.wsr-hero-note{padding:27px;border:1px solid rgba(255,255,255,.15);border-radius:24px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}
.wsr-hero-note strong{display:block;margin-bottom:9px;font:800 18px/1.2 'Bricolage Grotesque',sans-serif}
.wsr-hero-note p{margin:0;color:rgba(255,255,255,.75);font-size:13px;line-height:1.65}
.wsr-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.wsr-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 20px;border:1px solid transparent;border-radius:14px;text-decoration:none;font-weight:800}
.wsr-button-primary{background:var(--wsr-orange);color:#fff;box-shadow:0 14px 34px rgba(200, 165, 104, .22)}
.wsr-button-secondary{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff}
.wsr-stats{margin-top:-28px;padding:0 5%;position:relative;z-index:2}
.wsr-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(1180px,100%);margin:0 auto;border:1px solid var(--wsr-line);border-radius:24px;background:#fff;box-shadow:0 22px 55px rgba(14, 30, 51, .12);overflow:hidden}
.wsr-stat{min-height:112px;padding:24px;border-left:1px solid var(--wsr-line)}
.wsr-stat:first-child{border-left:0}
.wsr-stat strong{display:block;color:#1B3554;font:800 28px/1 'Bricolage Grotesque',sans-serif}
.wsr-stat span{display:block;margin-top:9px;color:var(--wsr-muted);font-size:13px;line-height:1.4}
.wsr-section{padding:74px 5%}
.wsr-section-white{background:#fff}
.wsr-section-title{max-width:780px;margin:0;font:800 clamp(32px,4.5vw,56px)/1 'Bricolage Grotesque',sans-serif;letter-spacing:-1.8px}
.wsr-section-sub{max-width:800px;margin:20px 0 0;color:var(--wsr-muted);font-size:16px;line-height:1.75}
.wsr-notice{display:grid;grid-template-columns:auto 1fr;gap:14px;margin:28px 0 0;padding:18px 20px;border:1px solid #CFC8BD;border-radius:16px;background:#F6F1E9;color:#1B3554}
.wsr-notice b{font-size:17px}
.wsr-notice p{margin:3px 0 0;font-size:13px;line-height:1.6}
.wsr-toolbar{position:sticky;top:72px;z-index:12;margin-top:34px;padding:16px;border:1px solid var(--wsr-line);border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 14px 36px rgba(61, 72, 84, .10);backdrop-filter:blur(12px)}
.wsr-toolbar-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px}
.wsr-search{width:100%;min-height:48px;padding:0 16px;border:1px solid #CFC8BD;border-radius:13px;background:#fff;color:var(--wsr-ink);font:600 14px 'DM Sans',sans-serif}
.wsr-filter-list{display:flex;flex-wrap:wrap;gap:8px}
.wsr-filter{min-height:44px;padding:0 14px;border:1px solid #CFC8BD;border-radius:999px;background:#fff;color:#3D4854;font:700 12px 'DM Sans',sans-serif;cursor:pointer}
.wsr-filter[aria-pressed="true"]{border-color:#1B3554;background:#0E1E33;color:#fff}
.wsr-result-count{margin:12px 2px 0;color:#3D4854;font:600 12px 'JetBrains Mono',monospace}
.wsr-list{display:grid;gap:18px;margin-top:26px}
.wsr-card{scroll-margin-top:150px;display:grid;grid-template-columns:180px minmax(0,1fr);border:1px solid var(--wsr-line);border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(61, 72, 84, .06)}
.wsr-card-side{padding:26px;background:linear-gradient(145deg,#0E1E33,#1B3554);color:#fff}
.wsr-code{color:#D9C28F;font:800 13px 'JetBrains Mono',monospace;letter-spacing:2px}
.wsr-jurisdiction{margin:10px 0 0;font:800 25px/1.03 'Bricolage Grotesque',sans-serif}
.wsr-anchor{display:inline-block;margin-top:18px;color:rgba(255,255,255,.7);font-size:12px;text-decoration:none}
.wsr-card-main{padding:26px}
.wsr-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.wsr-classification{font:800 22px/1.2 'Bricolage Grotesque',sans-serif}
.wsr-status{flex:0 0 auto;display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#F6F1E9;color:#1B3554;font-size:11px;font-weight:800}
.wsr-status[data-level="pending"]{background:#F6F1E9;color:#806331}
.wsr-duty{margin:14px 0 0;color:#3D4854;font-size:14px;line-height:1.65}
.wsr-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:19px}
.wsr-detail{min-width:0;padding:15px;border:1px solid #F4EFE7;border-radius:14px;background:var(--wsr-paper)}
.wsr-detail-label{display:block;margin-bottom:7px;color:#70757A;font:700 10px 'JetBrains Mono',monospace;letter-spacing:1.2px;text-transform:uppercase}
.wsr-detail p{margin:0;color:#3D4854;font-size:12.5px;line-height:1.55;overflow-wrap:anywhere}
.wsr-sources{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:17px;border-top:1px solid #F4EFE7}
.wsr-source{display:inline-flex;align-items:center;gap:7px;color:#1B3554;font-size:12px;font-weight:800;text-decoration:none}
.wsr-source:hover{text-decoration:underline}
.wsr-source-meta{margin-left:auto;color:#70757A;font:600 11px 'JetBrains Mono',monospace}
.wsr-empty{padding:42px;border:1px dashed #D9C28F;border-radius:20px;background:#fff;text-align:center;color:#3D4854}
.wsr-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:36px}
.wsr-method-card{padding:24px;border:1px solid var(--wsr-line);border-radius:20px;background:#fff}
.wsr-method-card strong{display:block;margin-bottom:9px;font:800 18px 'Bricolage Grotesque',sans-serif}
.wsr-method-card p,.wsr-method-card li{color:var(--wsr-muted);font-size:13px;line-height:1.65}
.wsr-method-card ul{margin:0;padding-left:20px}
.wsr-changelog{margin-top:30px;border-left:3px solid var(--wsr-green);padding-left:22px}
.wsr-changelog h3{margin:0 0 6px;font:800 20px 'Bricolage Grotesque',sans-serif}
.wsr-changelog p{margin:0;color:var(--wsr-muted);font-size:13px;line-height:1.65}
.wsr-crosslink{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:32px;border-radius:24px;background:linear-gradient(130deg,#0E1E33,#1B3554);color:#fff}
.wsr-crosslink h2{margin:0;font:800 clamp(28px,4vw,44px)/1 'Bricolage Grotesque',sans-serif}
.wsr-crosslink p{max-width:720px;margin:12px 0 0;color:rgba(255,255,255,.72);line-height:1.65}
.wsr-media-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
.wsr-media-item{padding:22px;border:1px solid var(--wsr-line);border-radius:18px;background:#fff}
.wsr-media-item h2{margin:0 0 10px;font:800 20px 'Bricolage Grotesque',sans-serif}
.wsr-media-item p,.wsr-media-item li{color:var(--wsr-muted);font-size:13px;line-height:1.65}
.wsr-media-item ul{margin:0;padding-left:20px}
.wsr-print-only{display:none}
@media(min-width:1100px){
  .wsr-page .footer-top{grid-template-columns:1.7fr repeat(5,minmax(0,1fr));gap:34px 26px}
}
@media(min-width:768px) and (max-width:1099px){
  .wsr-page .footer-top{grid-template-columns:repeat(3,minmax(0,1fr))}
  .wsr-page .footer-top>div:first-child{grid-column:1/-1}
}
@media(max-width:920px){
  .wsr-hero-grid{grid-template-columns:1fr;gap:30px}
  .wsr-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wsr-stat:nth-child(3){border-left:0;border-top:1px solid var(--wsr-line)}
  .wsr-stat:nth-child(4){border-top:1px solid var(--wsr-line)}
  .wsr-toolbar{top:64px}
  .wsr-toolbar-row{grid-template-columns:1fr}
  .wsr-card{grid-template-columns:1fr}
  .wsr-card-side{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px}
  .wsr-jurisdiction{margin:0;font-size:22px}
  .wsr-anchor{margin:0}
  .wsr-detail-grid,.wsr-method-grid{grid-template-columns:1fr}
  .wsr-crosslink{grid-template-columns:1fr}
}
@media(max-width:640px){
  .wsr-hero{padding:112px 5% 58px}
  .wsr-title{letter-spacing:-1.9px}
  .wsr-stats{margin-top:-20px}
  .wsr-stat{min-height:96px;padding:18px}
  .wsr-stat strong{font-size:24px}
  .wsr-section{padding:58px 5%}
  .wsr-toolbar{position:relative;top:auto}
  .wsr-filter-list{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
  .wsr-filter{white-space:nowrap}
  .wsr-card-main{padding:21px}
  .wsr-card-top{display:block}
  .wsr-status{margin-top:10px}
  .wsr-detail-grid{grid-template-columns:1fr}
  .wsr-source-meta{width:100%;margin-left:0}
  .wsr-media-list{grid-template-columns:1fr}
}
@media print{
  #main-nav,.ps-drawer,.app-tabbar,.site-footer,.wsr-toolbar,.wsr-hero-actions{display:none!important}
  .wsr-hero{padding:30px;background:#fff;color:#111}
  .wsr-hero:before{display:none}
  .wsr-title span{color:#1B3554}
  .wsr-lede,.wsr-hero-note p{color:#333}
  .wsr-hero-note{border-color:#ccc;background:#fff}
  .wsr-stats{margin:0}
  .wsr-card{break-inside:avoid}
  .wsr-print-only{display:block}
}

/* 2026-08-11 interaction fix: author display:grid otherwise overrides the
   browser's native [hidden] presentation, making search/filter state appear
   not to work even when JavaScript sets card.hidden correctly. */
.wsr-card[hidden],
.wsr-empty[hidden]{display:none!important}
.wsr-filter{transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}
.wsr-filter:hover{border-color:#C8A568;background:#F6F1E9;color:#1B3554;transform:translateY(-1px)}
.wsr-filter[aria-pressed="true"]:hover{border-color:#1B3554;background:#0E1E33;color:#fff}
.wsr-filter:focus-visible,.wsr-search:focus-visible{outline:3px solid rgba(200, 165, 104, .28);outline-offset:2px}

/* Canada resource hero contrast closeout — deliberately scoped so the
   Canadian red theme cannot wash the content into the page background. */
body.wsr-page .wsr-hero{
  background:linear-gradient(124deg,#24080B 0%,#721017 49%,#D71920 100%)!important;
  color:#fff!important;
  isolation:isolate;
}
body.wsr-page .wsr-hero::before{
  z-index:-1;
  background:radial-gradient(circle at 78% 18%,rgba(255,255,255,.16),transparent 30%),radial-gradient(circle at 14% 92%,rgba(14, 30, 51, .34),transparent 32%)!important;
  opacity:1!important;
}
body.wsr-page .wsr-title,
body.wsr-page .wsr-title span{color:#fff!important;text-shadow:0 2px 18px rgba(34,0,3,.28)}
body.wsr-page .wsr-title span{color:#FFD9DB!important}
body.wsr-page .wsr-eyebrow{color:#FFD1D4!important}
body.wsr-page .wsr-lede{color:rgba(255,255,255,.9)!important}
body.wsr-page .wsr-hero-note{
  border-color:rgba(255,255,255,.3)!important;
  background:rgba(35,4,8,.48)!important;
  color:#fff!important;
  box-shadow:0 18px 45px rgba(34,0,3,.2);
}
body.wsr-page .wsr-hero-note strong{color:#fff!important}
body.wsr-page .wsr-hero-note p{color:rgba(255,255,255,.86)!important}
body.wsr-page .wsr-button-primary{background:#fff!important;color:#A70D14!important;box-shadow:0 14px 34px rgba(38,0,3,.22)}
body.wsr-page .wsr-button-secondary{border-color:rgba(255,255,255,.55)!important;background:rgba(39,0,4,.28)!important;color:#fff!important}

@media print{
  body.wsr-page .wsr-hero{background:#fff!important;color:#111!important}
  body.wsr-page .wsr-title,body.wsr-page .wsr-title span{color:#111!important;text-shadow:none}
  body.wsr-page .wsr-lede,body.wsr-page .wsr-hero-note p{color:#333!important}
}

/* ==================================================================
   U.S. wage-statement hero theme correction — 2026-08-28
   Scope: U.S. resource page only. The Canada page retains its existing
   red theme through .ca-page. This is a visual overlay only.
   ================================================================== */
@media screen {
  body.wsr-page:not(.ca-page) .wsr-hero {
    background: linear-gradient(124deg, #0E1E33 0%, #1B3554 49%, #1B3554 100%) !important;
    color: #FFFFFF !important;
    isolation: isolate;
  }
  body.wsr-page:not(.ca-page) .wsr-hero::before {
    z-index: -1;
    background:
      radial-gradient(circle at 78% 18%, rgba(255,255,255,.14), transparent 30%),
      radial-gradient(circle at 14% 92%, rgba(14, 30, 51, .36), transparent 32%) !important;
    opacity: 1 !important;
  }
  body.wsr-page:not(.ca-page) .wsr-title {
    color: #FFFFFF !important;
    text-shadow: 0 2px 18px rgba(14, 30, 51, .24);
  }
  body.wsr-page:not(.ca-page) .wsr-title span,
  body.wsr-page:not(.ca-page) .wsr-eyebrow {
    color: #F1E8D8 !important;
  }
  body.wsr-page:not(.ca-page) .wsr-lede {
    color: rgba(255,255,255,.90) !important;
  }
  body.wsr-page:not(.ca-page) .wsr-hero-note {
    border-color: rgba(255,255,255,.28) !important;
    background: rgba(14, 30, 51, .42) !important;
    color: #FFFFFF !important;
    box-shadow: 0 18px 45px rgba(14, 30, 51, .18);
  }
  body.wsr-page:not(.ca-page) .wsr-hero-note strong {
    color: #FFFFFF !important;
  }
  body.wsr-page:not(.ca-page) .wsr-hero-note p {
    color: rgba(255,255,255,.86) !important;
  }
  body.wsr-page:not(.ca-page) .wsr-button-primary {
    background: #FFFFFF !important;
    color: #1B3554 !important;
    box-shadow: 0 14px 34px rgba(14, 30, 51, .20);
  }
  body.wsr-page:not(.ca-page) .wsr-button-secondary {
    border-color: rgba(255,255,255,.55) !important;
    background: rgba(14, 30, 51, .28) !important;
    color: #FFFFFF !important;
  }
}
