.ftg-hub{--hub-navy:#102a43;--hub-blue:#0f5f99;--hub-ink:#18364f;--hub-muted:#46586a;--hub-mist:#eef5f8;--hub-cyan:#398ca7;color:var(--hub-ink);max-width:1680px;margin:0 auto;padding:max(clamp(16px,2.2vw,32px),env(safe-area-inset-top)) max(clamp(16px,2.2vw,32px),env(safe-area-inset-right)) max(clamp(16px,2.2vw,32px),env(safe-area-inset-bottom)) max(clamp(16px,2.2vw,32px),env(safe-area-inset-left))}
[data-theme="dark"] .ftg-hub{--hub-navy:#e5f1f7;--hub-ink:#e5f1f7;--hub-muted:#bdcad6;--hub-mist:#172b3b;--hub-blue:#79c5ef;--hub-cyan:#79c5ef}
.hub-nav-section svg{width:16px;height:16px;fill:currentColor;display:block}
.hub-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid var(--border-primary);border-radius:10px;background:var(--card-bg);box-shadow:none}
.hub-hero-copy{min-width:0}.hub-eyebrow{display:block;margin-bottom:3px;color:var(--hub-blue);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hub-hero h2,.hub-hero h1:where(.ftg-page-title){font-size:clamp(18px,1.8vw,22px);line-height:1.2;margin:0;letter-spacing:-.02em;color:var(--text-primary)}.hub-hero p,.hub-hero p:where(.ftg-page-subtitle){margin:4px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.4}
.hub-primary-action{position:relative;z-index:1;display:flex;align-items:center;gap:16px;min-width:max-content;padding:11px 15px;border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#f4f8fa!important;text-decoration:none;font-size:13px;font-weight:700;background:rgba(255,255,255,.08)}.hub-primary-action:hover{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.hub-body{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);gap:16px;margin-top:16px}.hub-panel{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;padding:20px;box-shadow:var(--elevation-1)}.hub-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:14px}.hub-panel h3{font-size:18px;margin-top:3px}.hub-kicker{color:var(--hub-blue)}.hub-panel-note{font-size:11px;color:var(--text-tertiary)}
.hub-shortcut-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.hub-shortcut-grid button,.hub-directory button,.hub-platform-link{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-primary)!important;border-radius:8px;padding:13px;cursor:pointer;box-shadow:none;text-decoration:none}.hub-shortcut-grid button:hover,.hub-directory button:hover,.hub-platform-link:hover{transform:translateY(-1px);border-color:var(--hub-blue);background:var(--hub-mist)}.hub-shortcut-grid button[hidden],.hub-directory button[hidden]{display:none}.hub-icon{width:20px;height:20px;flex:0 0 20px;color:var(--hub-blue)}.hub-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hub-shortcut-grid button span:nth-child(2),.hub-directory button span:nth-child(2),.hub-platform-link span:nth-child(2){display:grid;gap:2px;flex:1}.ftg-hub strong{font-size:13px}.ftg-hub small{font-size:11px;color:var(--text-secondary);font-weight:500}.hub-directory{display:grid;align-content:start;gap:8px}.hub-directory .hub-panel-heading{margin-bottom:6px}.hub-boundary{margin-top:8px;padding:12px;border-left:3px solid var(--hub-cyan);background:var(--hub-mist);display:grid;gap:3px}.hub-boundary span{font-size:11px;color:var(--text-secondary)}
.hub-search-wrap{display:flex;align-items:center;flex:0 1 390px;width:min(390px,100%);border:1px solid var(--border-primary);background:var(--bg-primary);border-radius:9px;padding:0 12px;color:var(--hub-blue);transition:border-color .15s ease,box-shadow .15s ease}.hub-search-wrap:focus-within{border-color:var(--hub-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--hub-blue) 16%,transparent)}.hub-search-wrap input{width:100%;border:0!important;background:transparent!important;color:var(--text-primary)!important;min-height:42px;outline:0!important;box-shadow:none!important}.hub-report-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 4px 10px;color:var(--text-secondary);font-size:12px}.hub-report-meta button{border:0;background:transparent;color:var(--hub-blue);font-weight:750;cursor:pointer;padding:7px;border-radius:6px}.hub-report-meta button:hover{background:color-mix(in srgb,var(--hub-blue) 10%,transparent)}
.hub-report-catalog{column-count:1;column-gap:16px}.hub-report-group{--group-accent:#1769a8;display:grid;width:100%;min-width:0;margin:0 0 16px 0;break-inside:avoid-column;background:linear-gradient(145deg,color-mix(in srgb,var(--group-accent) 6%,var(--card-bg)),var(--card-bg) 62%);border:1px solid color-mix(in srgb,var(--group-accent) 42%,var(--border-primary));border-top:4px solid var(--group-accent);border-radius:12px;padding:12px 14px 8px;box-shadow:0 3px 10px rgba(16,42,67,.09)}.hub-report-group[data-hub-group="jobs"]{--group-accent:#287f69}.hub-report-group[data-hub-group="company"]{--group-accent:#996515}.hub-report-group[data-hub-group="gmr"]{--group-accent:#6d5aa8}.hub-report-group[data-hub-group="admin"]{--group-accent:#a64560}[data-theme="dark"] .hub-report-group{--group-accent:#62b5e5}[data-theme="dark"] .hub-report-group[data-hub-group="jobs"]{--group-accent:#59b89f}[data-theme="dark"] .hub-report-group[data-hub-group="company"]{--group-accent:#d6a84c}[data-theme="dark"] .hub-report-group[data-hub-group="gmr"]{--group-accent:#a995e3}[data-theme="dark"] .hub-report-group[data-hub-group="admin"]{--group-accent:#df7f99}
.hub-report-heading{display:flex;align-items:center;gap:9px;margin-bottom:8px;padding-bottom:11px;border-bottom:1px solid var(--border-primary)}.hub-report-heading h3{margin:0;font-size:14px;line-height:1.3;letter-spacing:-.01em;color:var(--text-primary);min-width:0}.hub-report-heading span{font-size:10px;font-weight:800;color:var(--text-primary);background:color-mix(in srgb,var(--group-accent) 11%,transparent);border-radius:999px;padding:3px 7px}.hub-report-list{display:grid;grid-template-columns:1fr;column-gap:18px}.hub-report-card{position:relative;min-width:0;border-bottom:1px solid color-mix(in srgb,var(--border-primary) 72%,transparent)}.hub-report-card:last-child{border-bottom-color:transparent}

.hub-report-link{display:flex;width:100%;min-width:0;min-height:56px;align-items:center;gap:10px;padding:6px 36px 6px 6px;border:0;border-radius:7px;background:transparent;color:var(--text-primary)!important;text-align:left;cursor:pointer;box-shadow:none;transition:background-color .15s ease,color .15s ease}.hub-report-link:hover{background:color-mix(in srgb,var(--group-accent) 8%,transparent)}.hub-report-link:hover .hub-report-arrow{opacity:1;transform:translateX(2px);color:var(--group-accent)}.hub-report-link:active{background:color-mix(in srgb,var(--group-accent) 14%,transparent)}.hub-report-copy{display:grid;gap:2px;min-width:0;flex:1}.hub-report-copy strong{font-size:13px;line-height:1.2;font-weight:720;color:var(--text-primary);overflow-wrap:anywhere}.hub-report-copy small{display:block;font-size:10.5px;line-height:1.3;color:var(--hub-muted)}.hub-report-arrow{flex:0 0 auto;font-size:16px;opacity:.48;transition:opacity .15s ease,transform .15s ease}
.hub-empty{padding:58px 24px;text-align:center;background:var(--card-bg);border:1px dashed var(--border-secondary);border-radius:12px}.hub-empty strong{font-size:15px}.hub-empty span{display:block;color:var(--text-secondary);font-size:12px;margin-top:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}



@media(min-width:1220px){.hub-report-group{padding:12px 14px 8px}.hub-report-list{grid-template-columns:1fr}.hub-report-card:last-child{border-bottom-color:transparent}}
@media(max-width:860px){.hub-report-catalog{column-count:1}.hub-report-group{display:block;padding:12px 14px 8px}}
@media(max-width:560px){.ftg-hub{padding:24px 10px 10px}.hub-hero{align-items:stretch;flex-direction:column;gap:14px;padding:17px 15px}.hub-hero p,.hub-hero p:where(.ftg-page-subtitle){font-size:12px}.hub-search-wrap{width:100%;flex-basis:auto}.hub-report-meta{padding-inline:2px}.hub-report-group{padding:14px 11px 9px}.hub-report-list{grid-template-columns:1fr}.hub-report-card:last-child{border-bottom-color:transparent}.hub-report-link{min-height:64px;padding-left:7px;padding-right:50px}.hub-report-copy strong{font-size:13px}.hub-report-copy small{font-size:10.5px}.hub-panel{padding:15px}}
@media(hover:none){.hub-report-link:hover{background:transparent}.hub-report-link:active{background:color-mix(in srgb,var(--group-accent) 14%,transparent)}.hub-report-arrow{opacity:.55}}
@media(prefers-reduced-motion:reduce){.ftg-hub *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.ftg-hub button:focus-visible,.ftg-hub a:focus-visible,.ftg-hub input:focus-visible,.ftg-hub select:focus-visible{outline:3px solid var(--hub-blue);outline-offset:2px}
@media(min-width:561px){.hub-hero{gap:20px;padding:18px 20px}.hub-report-meta{padding:8px 4px 6px}}

/* Compact Reporting Hub listings: pastel category cards, white text rows. */
.ftg-hub{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ftg-hub .hub-hero{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;gap:14px}
.ftg-hub .hub-report-meta{padding:8px 2px 6px}
.hub-report-catalog{column-count:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}
.hub-report-catalog[data-hub-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.hub-report-catalog[data-hub-columns="1"]{grid-template-columns:minmax(0,1fr)}
.hub-report-column{display:grid;gap:12px;align-content:start;min-width:0}
.hub-report-catalog > .hub-empty{grid-column:1 / -1;margin:0}
.hub-report-catalog .hub-report-group{
  --group-tint:#f0f7ff;--group-line:#c9e0f5;--group-accent:#275876;
  display:block;break-inside:avoid;min-width:0;margin:0;
  padding:10px;border:1px solid var(--group-line);border-radius:10px;
  background:var(--group-tint);box-shadow:0 1px 4px rgba(26,48,62,.08)
}
.hub-report-catalog .hub-report-group[data-hub-group="jobs"]{--group-tint:#eaf6f5;--group-line:#b9dfd9;--group-accent:#276a60}
.hub-report-catalog .hub-report-group[data-hub-group="company"]{--group-tint:#fff0f1;--group-line:#f1d5d7;--group-accent:#865161}
.hub-report-catalog .hub-report-group[data-hub-group="gmr"]{--group-tint:#edf0fc;--group-line:#d4dcf7;--group-accent:#595c99}
.hub-report-catalog .hub-report-group[data-hub-group="admin"]{--group-tint:#fff7ed;--group-line:#eddcc7;--group-accent:#886043}
.hub-report-catalog .hub-report-heading{gap:6px;min-height:22px;margin:0 2px 8px;padding-bottom:7px;border-bottom:1px solid color-mix(in srgb,var(--group-line) 60%,var(--border-primary))}
.hub-report-catalog .hub-report-heading h3{font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
.hub-report-catalog .hub-report-heading span{padding:0;background:none;color:var(--group-accent);font-size:10px}
.hub-report-catalog .hub-report-artwork,.hub-report-catalog .hub-report-link::before{display:none!important;content:none}
.hub-report-catalog .hub-report-list{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
.hub-report-catalog .hub-report-list[hidden]{display:none}
.hub-report-catalog .hub-report-card{
  position:relative;display:block;min-width:0;padding:0;
  border:1px solid color-mix(in srgb,var(--group-line) 70%,var(--border-primary));border-radius:7px;
  background:var(--card-bg);box-shadow:none;transition:border-color .15s ease,background-color .15s ease
}
.hub-report-catalog .hub-report-card:last-child{border-bottom-color:color-mix(in srgb,var(--group-line) 70%,var(--border-primary))}
.hub-report-catalog .hub-report-card:hover{border-color:var(--group-accent)}
.hub-report-catalog .hub-report-link{
  display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;
  width:100%;min-height:44px;padding:6px 40px 6px 10px;background:transparent;text-align:left;border-radius:7px
}
.hub-report-catalog .hub-report-link:hover{background:color-mix(in srgb,var(--group-accent) 5%,transparent)}
.hub-report-catalog .hub-report-copy{display:flex;align-items:baseline;gap:10px;min-width:0;flex:1;width:auto}
.hub-report-catalog .hub-report-copy strong{flex:0 1 auto;max-width:60%;font-size:13px;line-height:1.25;font-weight:650;overflow-wrap:break-word}
.hub-report-catalog .hub-report-copy small{display:block;flex:1 1 0;min-width:0;font-size:11.5px;line-height:1.3;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-report-catalog .hub-report-arrow{display:none}
.hub-report-catalog .hub-favorite-button{
  position:absolute;top:50%;right:0;z-index:2;transform:translateY(-50%);display:grid;place-items:center;
  width:40px;height:44px;padding:0;border:0;border-radius:7px;
  background:transparent;color:var(--text-tertiary);font-size:18px;line-height:1;cursor:pointer
}
.hub-report-catalog .hub-favorite-button:hover{background:var(--group-tint);color:#b78017}
.hub-report-catalog .hub-favorite-button[aria-pressed="true"]{color:#b78017}
.hub-report-catalog .hub-favorite-button:disabled{opacity:.48;cursor:not-allowed}
.hub-report-catalog .hub-favorite-button:focus-visible,.hub-report-catalog .hub-report-link:focus-visible,.hub-report-category-toggle:focus-visible{outline:2px solid var(--group-accent);outline-offset:2px}
[data-theme="dark"] .hub-report-catalog .hub-report-group{--group-tint:#182e3f;--group-line:#32536b;--group-accent:#a9d4ec}
[data-theme="dark"] .hub-report-catalog .hub-report-group[data-hub-group="jobs"]{--group-tint:#17312f;--group-line:#32635c;--group-accent:#9ed8c5}
[data-theme="dark"] .hub-report-catalog .hub-report-group[data-hub-group="company"]{--group-tint:#39282e;--group-line:#69434c;--group-accent:#efb5c3}
[data-theme="dark"] .hub-report-catalog .hub-report-group[data-hub-group="gmr"]{--group-tint:#292d46;--group-line:#505b88;--group-accent:#c0c7f4}
[data-theme="dark"] .hub-report-catalog .hub-report-group[data-hub-group="admin"]{--group-tint:#382e26;--group-line:#6a5039;--group-accent:#efd0a8}
@media(max-width:960px){.hub-report-catalog,.hub-report-catalog[data-hub-columns="2"]{grid-template-columns:minmax(0,1fr)}.hub-report-column{display:contents}}
@media(max-width:640px){.hub-report-catalog .hub-report-copy{flex-direction:column;align-items:stretch;gap:1px}.hub-report-catalog .hub-report-copy strong{max-width:none}.hub-report-catalog .hub-report-copy small{flex:none;font-size:11px}}

/* FTG style-guide polish (scoped to .ftg-hub; reports/print untouched).
   Focus: semantic primary ring 2px + 2px offset; Inter weights within the
   loaded 400-700 range; no hover lift on controls. */
.ftg-hub{--hub-ring:hsl(144 38% 23%)}
.ftg-hub .hub-eyebrow,.ftg-hub .hub-report-catalog .hub-report-heading h3,.ftg-hub .hub-report-catalog .hub-report-heading span{font-weight:600}
.ftg-hub .hub-report-catalog .hub-report-copy strong{font-weight:600}
.ftg-hub .hub-report-meta button{font-weight:600}
.ftg-hub .hub-shortcut-grid button:hover,.ftg-hub .hub-directory button:hover,.ftg-hub .hub-platform-link:hover,.ftg-hub .hub-primary-action:hover{transform:none}
.ftg-hub .hub-search-wrap:focus-within{border-color:var(--hub-ring);box-shadow:0 0 0 2px color-mix(in srgb,var(--hub-ring) 22%,transparent)}
.ftg-hub button:focus-visible,.ftg-hub a:focus-visible,.ftg-hub select:focus-visible,
.ftg-hub .hub-report-catalog .hub-report-link:focus-visible,.ftg-hub .hub-report-catalog .hub-favorite-button:focus-visible,.ftg-hub .hub-report-category-toggle:focus-visible{outline:2px solid var(--hub-ring)!important;outline-offset:2px!important}
.ftg-hub .hub-search-wrap input:focus-visible{outline:0!important}

/* Portal-style page heading, not a separate report card. */
html body .ftg-hub #reportingHubTitle{font:600 16px/20px Inter,sans-serif;letter-spacing:.08em}
.ftg-hub .hub-hero p,.hub-hero p:where(.ftg-page-subtitle){margin-top:2px;font:400 13px/18px Inter,sans-serif;color:hsl(90 8% 42%)}
.ftg-hub .hub-hero .hub-search-wrap{background:var(--card-bg)}
@media(min-width:640px){
  html body .ftg-hub #reportingHubTitle{font-size:18px;line-height:22px}
  .ftg-hub .hub-hero p,.hub-hero p:where(.ftg-page-subtitle){font-size:14px;line-height:20px}
}
