/* The maintained security archive uses each site's existing type and palette. */
.security-advisories-page {
  --sa-paper:#f3f3ef; --sa-ink:#101216; --sa-muted:#4a4f57;
  --sa-line:#d9dbd6; --sa-label:#ffe15a;
  background:var(--sa-paper); color:var(--sa-ink);
}
.security-advisories-page.sa-profile-move {
  --sa-paper:#f5f4ef; --sa-ink:#14171b; --sa-muted:#5f5f5f;
  --sa-line:#dedede; --sa-label:#bfddfb;
}
.sa-wrap { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.sa-main h1,.sa-main h2 { color:var(--sa-ink); }
.sa-main p { color:inherit; }
.sa-main a { text-decoration:underline; text-underline-offset:4px; }
.sa-main [hidden] { display:none!important; }
.sa-main :focus-visible,.sa-bottom :focus-visible { outline:3px solid var(--sa-ink); outline-offset:5px; }
.sa-main .sa-hero { padding:24px 0 32px; border-bottom:1px solid var(--sa-line); }
.sa-breadcrumb ol { display:flex; flex-wrap:wrap; gap:12px; list-style:none; padding:0; margin:0 0 34px; font:11px/1.7 var(--mono); color:var(--sa-muted); }
.sa-breadcrumb li+li:before { content:'/'; margin-right:12px; }
.sa-breadcrumb a { display:inline-flex; align-items:center; min-height:34px; }
.sa-heading { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:70px; align-items:end; }
.sa-eyebrow { margin:0 0 15px; font:11px/1.7 var(--mono); text-transform:uppercase; letter-spacing:.12em; }
.sa-heading h1 { margin:0; font-size:clamp(42px,5vw,68px); line-height:1.04; letter-spacing:-.05em; font-weight:800; }
.sa-intro { max-width:65ch; margin:21px 0 0; font-size:clamp(17px,1.4vw,19px); line-height:1.65; color:var(--sa-muted)!important; }
.sa-edition { border-left:1px solid var(--sa-line); padding-left:28px; font:11px/1.9 var(--mono); }
.sa-edition-count { margin:0; font:600 58px/1.05 var(--display,var(--font)); letter-spacing:-.05em; }
.sa-edition-count span { display:block; margin-top:8px; font:10px/1.8 var(--mono); letter-spacing:0; }
.sa-edition>p+p { margin-top:20px; }
.sa-edition>a { display:inline-flex; align-items:center; gap:16px; min-height:44px; margin-top:10px; font:600 13px/1.6 var(--font,var(--sans)); }
.sa-boundary { max-width:112ch; margin:28px 0 0; padding-top:21px; border-top:1px solid var(--sa-line); font-size:13px; line-height:1.7; color:var(--sa-muted)!important; }
.sa-main .sa-record { padding:28px 0 72px; scroll-margin-top:96px; }
.sa-find { display:grid; grid-template-columns:190px minmax(0,1fr); gap:9px 30px; padding:23px 26px; background:#fff; border:1px solid var(--sa-line); border-radius:8px; }
.sa-find label { align-self:center; font-size:16px; font-weight:750; letter-spacing:-.02em; }
.sa-search-field { display:flex; gap:10px; min-width:0; }
.sa-search-field input { display:block; min-width:0; width:100%; min-height:48px; margin:0; padding:10px 14px; border:1px solid var(--sa-ink); border-radius:4px; background:#fff; color:var(--sa-ink); font:400 16px/1.5 var(--font,var(--sans)); }
.sa-search-field input::placeholder { color:var(--sa-muted); opacity:1; }
.sa-search-clear { flex:none; min-height:48px; margin:0; padding:10px 15px; border:1px solid var(--sa-line); border-radius:4px; background:var(--sa-paper); color:var(--sa-ink); font:650 14px/1.5 var(--font,var(--sans)); cursor:pointer; }
.sa-search-clear:disabled { color:var(--sa-muted); cursor:default; }
.sa-find>p { grid-column:2; margin:0; font-size:12px; line-height:1.65; color:var(--sa-muted); }
.sa-record-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:14px 0; font:10px/1.8 var(--mono); color:var(--sa-muted); text-transform:uppercase; letter-spacing:.035em; }
.sa-record-heading p { margin:0; }
.sa-record-heading a { display:inline-flex; align-items:center; gap:9px; min-height:44px; color:var(--sa-muted); }
.sa-no-results { margin:0; padding:34px 0; border-top:1px solid var(--sa-line); font-size:17px; line-height:1.75; }
.sa-entry { display:grid; grid-template-columns:250px minmax(0,1fr); gap:50px; padding:38px 0 42px; border-top:1px solid var(--sa-line); scroll-margin-top:100px; }
.sa-brand { min-width:0; }
.sa-brand-with-mark { display:flex; align-items:center; gap:15px; }
.sa-brand-mark { display:flex; align-items:center; justify-content:center; flex:none; width:64px; height:64px; padding:9px; border:1px solid var(--sa-line); border-radius:8px; background:#fff; }
.sa-brand-mark.sa-brand-wordmark { width:100px; }
.sa-brand-mark img { display:block; width:100%; height:100%; object-fit:contain; }
.sa-entry-index .sa-product { margin:0; font-size:19px; line-height:1.3; font-weight:750; letter-spacing:-.025em; overflow-wrap:anywhere; }
.sa-layer { margin:7px 0 0; font-size:13px; line-height:1.55; color:var(--sa-muted)!important; }
.sa-entry-index>time { display:block; margin-top:22px; font:11px/1.8 var(--mono); color:var(--sa-muted); }
.sa-date-note { margin:8px 0 0; max-width:29ch; font-size:11px; line-height:1.75; color:var(--sa-muted)!important; }
.sa-evidence { display:inline-block; margin:0 0 15px; padding:5px 9px; background:#fff; border:1px solid var(--sa-line); font:10px/1.6 var(--mono); }
.sa-evidence-observed-exploitation,.sa-evidence-confirmed-compromise { background:var(--sa-label); border-color:var(--sa-label); }
.sa-entry-content { min-width:0; }
.sa-entry-content h2 { margin:0; max-width:32ch; font-size:clamp(25px,2.2vw,32px); line-height:1.2; font-weight:750; letter-spacing:-.03em; }
.sa-summary { max-width:77ch; margin:17px 0 0; font-size:16px; line-height:1.75; color:var(--sa-muted)!important; }
.sa-action { max-width:77ch; margin:18px 0 0; padding-left:17px; border-left:3px solid var(--sa-ink); font-size:15px; line-height:1.75; }
.sa-action strong { display:block; margin-bottom:3px; font-size:12px; font-weight:750; }
.sa-sources { display:flex; flex-wrap:wrap; gap:3px 24px; margin-top:18px; }
.sa-sources a { display:inline-flex; align-items:center; flex-wrap:wrap; column-gap:10px; row-gap:0; min-height:44px; padding-block:6px; font-size:13px; line-height:1.6; font-weight:650; }
.sa-sources time { font:9px/1.8 var(--mono); font-weight:400; }
.sa-entry-checked { margin:7px 0 0; font:10px/1.8 var(--mono); color:var(--sa-muted)!important; }
.sa-bottom { background:#fff; padding:40px 0; border-top:1px solid var(--sa-line); }
.sa-bottom>.sa-wrap { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:50px; align-items:center; }
.sa-bottom h2 { color:var(--sa-ink); font-size:25px; line-height:1.2; letter-spacing:-.025em; }
.sa-bottom p { max-width:68ch; margin-top:13px; color:var(--sa-muted); font-size:15px; line-height:1.75; }
.sa-bottom-links { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
.sa-bottom .sa-logo-credits { font-size:12px; font-weight:500; color:var(--sa-muted); }
.sa-bottom a { display:inline-flex; align-items:center; gap:16px; min-height:44px; font-size:13px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:950px) {
  .sa-heading { gap:35px; grid-template-columns:minmax(0,1fr) 180px; }
  .sa-entry { grid-template-columns:220px minmax(0,1fr); gap:35px; }
  .sa-brand-with-mark { gap:12px; }
  .sa-brand-mark { width:56px; height:56px; padding:8px; }
  .sa-entry-index .sa-product { font-size:18px; }
  .sa-find { grid-template-columns:150px minmax(0,1fr); gap:8px 24px; }
  .sa-bottom>.sa-wrap { grid-template-columns:1fr; gap:18px; }
}
@media(max-width:700px) {
  .sa-wrap { width:calc(100% - 40px); }
  .sa-main .sa-hero { padding:18px 0 28px; }
  .sa-breadcrumb ol { margin-bottom:27px; font-size:10px; gap:8px; }
  .sa-breadcrumb li+li:before { margin-right:8px; }
  .sa-heading { grid-template-columns:1fr; gap:25px; }
  .sa-heading h1 { font-size:clamp(39px,9.7vw,60px); line-height:1.05; }
  .sa-eyebrow { margin-bottom:14px; font-size:10px; }
  .sa-intro { margin-top:19px; font-size:17px; line-height:1.7; }
  .sa-edition { display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; border-left:0; border-top:1px solid var(--sa-line); padding:19px 0 0; }
  .sa-edition-count { font-size:42px; }
  .sa-edition-count span { margin-top:6px; font-size:9px; }
  .sa-edition>p+p { margin:0; padding-top:3px; font-size:10px; }
  .sa-edition>a { grid-column:1/-1; margin:0; font-size:12px; }
  .sa-boundary { margin-top:18px; padding-top:18px; font-size:12px; line-height:1.75; }
  .sa-main .sa-record { padding-top:20px; padding-bottom:30px; }
  .sa-find { grid-template-columns:1fr; gap:10px; padding:17px; }
  .sa-find label { font-size:15px; }
  .sa-find>p { grid-column:1; font-size:11px; }
  .sa-search-field { gap:8px; }
  .sa-search-field input { padding-inline:11px; font-size:16px; }
  .sa-search-clear { padding-inline:11px; font-size:12px; }
  .sa-record-heading { gap:14px; padding:12px 0; font-size:9px; }
  .sa-record-heading a { text-align:right; }
  .sa-entry { display:block; padding:28px 0 33px; }
  .sa-entry-index { margin-bottom:23px; }
  .sa-brand-with-mark { gap:15px; }
  .sa-brand-mark { width:60px; height:60px; padding:8px; }
  .sa-entry-index .sa-product { font-size:20px; }
  .sa-layer { margin-top:5px; font-size:13px; }
  .sa-entry-index>time { margin-top:15px; font-size:10px; }
  .sa-date-note { max-width:55ch; margin-top:7px; font-size:10px; }
  .sa-entry-content h2 { font-size:26px; line-height:1.2; }
  .sa-evidence { max-width:100%; font-size:9px; }
  .sa-summary { margin-top:15px; font-size:15px; }
  .sa-action { padding-left:14px; font-size:14px; }
  .sa-entry-checked { font-size:9px; }
  .sa-bottom { padding:30px 0; }
  .sa-bottom h2 { font-size:23px; }
  .sa-bottom p { font-size:14px; }
  .sa-bottom a { font-size:12px; }
}
