[hidden]{display:none!important}
img{max-width:100%}

/* Layout: instrument-panel. Answer strip up top, lifecycle "rail" timeline, branch ledger, model finder, notices. */
:root{
  --bg:#F3F5F7; --surface:#FFFFFF; --ink:#13202B; --muted:#5B6B78; --line:#DCE2E8; --soft:#E9EDF1;
  --accent:#0C6E8A; --accent-ink:#FFFFFF; --today:#E0791A;
  --ok:#1E8A55; --ok-bg:#E2F3EA; --info:#2463C7; --info-bg:#E4ECFA; --warn:#B26A00; --warn-bg:#FBEFD9; --dead:#8A939C; --dead-bg:#ECEEF0; --crit:#C23B3B;
  --bar-full:#0C6E8A; --bar-crit:#9CC6D3;
  --f-display:"Geist", "Segoe UI", system-ui, sans-serif;
  --f-body:"Geist", "Segoe UI", system-ui, sans-serif;
  --f-mono:"Geist Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --r:10px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0E1419; --surface:#151D24; --ink:#E6EDF2; --muted:#93A3B0; --line:#26323C; --soft:#1C2630;
  --accent:#45B4D3; --accent-ink:#06222B; --today:#F39A45;
  --ok:#4CC88A; --ok-bg:#16301F; --info:#7EA8F0; --info-bg:#18253D; --warn:#E8A93D; --warn-bg:#33270F; --dead:#7D8891; --dead-bg:#1E262D; --crit:#F07575;
  --bar-full:#3AA6C5; --bar-crit:#24505E}}
:root[data-theme="dark"]{
  --bg:#0E1419; --surface:#151D24; --ink:#E6EDF2; --muted:#93A3B0; --line:#26323C; --soft:#1C2630;
  --accent:#45B4D3; --accent-ink:#06222B; --today:#F39A45;
  --ok:#4CC88A; --ok-bg:#16301F; --info:#7EA8F0; --info-bg:#18253D; --warn:#E8A93D; --warn-bg:#33270F; --dead:#7D8891; --dead-bg:#1E262D; --crit:#F07575;
  --bar-full:#3AA6C5; --bar-crit:#24505E}

*{box-sizing:border-box}
body{color:var(--ink);font:15px/1.55 var(--f-body);margin:0}
.wrap{max-width:1120px;margin:0 auto;padding-inline:20px;display:grid}
h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0;letter-spacing:-.01em}
h1{font-size:clamp(30px,5vw,46px);font-weight:800}
h2{font-size:22px;font-weight:700}
.mono,.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.eyebrow{font:600 11.5px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
a{color:var(--accent)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

header{display:grid}
header .lede{color:var(--muted);margin:0}
.asof{display:inline-flex;gap:8px;align-items:center;font:500 13px var(--f-body);color:var(--muted);font-variant-numeric:tabular-nums}
.asof i{border-radius:50%;display:inline-block}

/* answer strip */
.answer{display:grid}
.answer>div{background:var(--surface);display:grid;gap:8px;align-content:start;min-width:0}
.answer .big{font:600 30px/1.1 var(--f-mono);font-variant-numeric:tabular-nums}
.answer .sub{color:var(--muted);font-size:13.5px}

/* product switch */
.bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.seg{display:inline-flex;background:var(--soft);border-radius:999px;padding:4px;gap:2px;flex-wrap:wrap}
.seg button{border:0;background:transparent;color:var(--muted);font:600 14px var(--f-body);padding:8px 16px;border-radius:999px;cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--muted)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.sw{width:18px;height:8px;border-radius:2px;display:inline-block}

section.panel{display:grid;min-width:0}
.panel-head{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline;justify-content:space-between}
.panel-head p{margin:0;color:var(--muted);font-size:14px}

/* timeline */
.tl-scroll{overflow-x:auto;margin-inline:-6px;padding-inline:6px}
.tl{min-width:680px;display:grid;grid-template-columns:56px 1fr;row-gap:10px;position:relative;padding-top:30px}
.tl .lab{font:600 14px var(--f-mono);align-self:stretch;display:flex;align-items:center;font-variant-numeric:tabular-nums;position:sticky;left:0;z-index:3;background:var(--surface)}
.plot{position:absolute;left:56px;right:0;top:30px;bottom:0;pointer-events:none}
.gl{position:absolute;top:0;bottom:0;width:1px;background:var(--line)}
.today{position:absolute;top:0;bottom:0;margin-left:-1px;background:var(--today);z-index:2}
.today-tag{position:absolute;top:-24px;transform:translateX(-50%);font:600 11px/1 var(--f-body);white-space:nowrap;border-radius:999px}
.axis{position:relative;height:18px;font:500 12px/18px var(--f-body);color:var(--muted);font-variant-numeric:tabular-nums}
.axis span{position:absolute;top:0;transform:translateX(-50%)}
.track{position:relative}
.seg-full,.seg-crit{position:absolute;box-sizing:border-box}
.seg-crit{background:var(--bar-crit)}

/* branch ledger */
.ledger{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{display:grid;align-content:start;background:var(--surface);min-width:0}
.card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.branch{font:600 28px/1 var(--f-mono);letter-spacing:-.02em}
.p-ok{background:var(--ok-bg)} .p-info{background:var(--info-bg);color:var(--info)} .p-warn{background:var(--warn-bg);color:var(--warn)} .p-dead{background:var(--dead-bg);color:var(--dead)}
dl.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:13.5px}
dl.kv dt{color:var(--muted)} dl.kv dd{margin:0;text-align:right;font-variant-numeric:tabular-nums} dl.kv dd.ver{font-family:var(--f-mono);font-weight:600}
dd.rec{font-weight:600}
.meter{background:var(--soft);overflow:hidden}
.meter i{display:block;height:100%}
.card.dead .meter i{background:var(--dead)}
.count{font-size:13px;color:var(--muted)}
.count b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.note{font-size:13px;color:var(--muted);margin:0}

/* finder */
.finder-ctl{display:flex;flex-wrap:wrap;align-items:center}
.finder-ctl input{flex:1 1 240px;min-width:0;font:15px var(--f-body);padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}
.chips{display:flex;flex-wrap:wrap}
.chips button{font:500 13px var(--f-body);background:transparent;cursor:pointer}
.chips button[aria-pressed="true"]{border-color:var(--accent)}
.tbl-wrap{overflow-x:auto;max-height:440px;overflow-y:auto;border:1px solid var(--line)}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{text-align:left;padding:9px 14px;border-bottom:1px solid var(--line);white-space:nowrap}
th{position:sticky;top:0;font:600 12px var(--f-body);text-transform:uppercase;z-index:1}
td.v{font-family:var(--f-mono);font-weight:600}
tr:last-child td{border-bottom:0}
.flag{display:inline-flex;align-items:center;gap:6px;font:500 13px var(--f-body);color:var(--muted);white-space:nowrap}
.flag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok)}
.flag.bad{color:var(--crit);background:color-mix(in srgb,var(--crit) 10%,transparent);padding:3px 9px 3px 8px;border-radius:999px;font-weight:600}
.flag.bad::before{background:var(--crit)}
.empty{padding:22px;color:var(--muted);text-align:center}

/* notices */
.notices{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.notice{display:grid;gap:6px;align-content:start}
.notice h3{font:600 16px/1.35 var(--f-body);letter-spacing:0}
.notice p{margin:0;font-size:14px;line-height:1.55;color:var(--muted)}
.tag.soft{color:var(--muted);background:var(--soft)}
.tag{justify-self:start;font:600 11px/1 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--crit);background:color-mix(in srgb,var(--crit) 10%,transparent);border-radius:999px}

footer{font-size:13px;color:var(--muted);display:grid;gap:10px;border-top:1px solid var(--line);padding-top:20px}
footer p{margin:0;max-width:80ch}
.sources{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline;max-width:none!important}
.sources span{font-weight:600;color:var(--ink)}
.sources a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line)}
.sources a:hover{color:var(--accent);border-color:var(--accent)}
@media (prefers-reduced-motion:no-preference){.seg-full,.seg-crit{transition:left .35s ease,width .35s ease}}
@media (max-width:520px){.wrap{padding-inline:16px}section.panel{padding:16px}.answer .big{font-size:26px}}
.meta{flex-wrap:wrap}
.changelog{color:var(--muted)}
.changelog summary{cursor:pointer;color:var(--accent);font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:4px}
.changelog summary::-webkit-details-marker{display:none}
.changelog summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px}
.changelog[open] summary::after{transform:rotate(-135deg) translateY(-1px)}
.changelog .changes{margin-top:10px;background:var(--surface);max-width:640px}
.changes{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.changes li{display:grid;grid-template-columns:110px 1fr;gap:12px;font-size:14px;align-items:baseline}
.changes time{font:500 13px var(--f-body);color:var(--muted);font-variant-numeric:tabular-nums}
@media (max-width:520px){.changes li{grid-template-columns:1fr;gap:2px}}
/* upgrade planner */
.route{display:flex;flex-wrap:wrap;align-items:center}
.hop{font:600 15px var(--f-mono)}
.hop.from{border-style:dashed}
.hop.to{border-color:var(--accent)}
.arrow{color:var(--muted);font:500 16px var(--f-body)}
/* sticky nav */
html{scroll-padding-top:72px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.topnav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.topnav-in{max-width:1120px;margin:0 auto;padding-inline:20px;display:flex;align-items:center}
.brand{font:700 15px var(--f-display);color:var(--ink);text-decoration:none;white-space:nowrap}
.navlinks{display:flex;gap:4px;scrollbar-width:none;min-width:0}
.navlinks::-webkit-scrollbar{display:none}
.navlinks a{font:500 13.5px var(--f-body);color:var(--muted);text-decoration:none;padding:6px 10px;border-radius:6px;white-space:nowrap}
.navlinks a:hover{color:var(--ink);background:var(--soft)}
@media (max-width:720px){.brand{display:none}.topnav-in{padding-inline:12px}}
/* planner inside model section */
.planner{display:grid;gap:16px;border-top:1px solid var(--line);margin-top:4px}
.planner h3{font:700 18px var(--f-display)}
#tbody tr[data-m]{cursor:pointer}
#tbody tr[data-m]:hover td{background:var(--soft)}
#tbody tr.sel td{background:var(--soft)}
#tbody tr.sel td:first-child{box-shadow:inset 3px 0 0 var(--accent)}
#tbody tr[data-m]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.legend{justify-content:flex-start}
/* out-of-support list */
.eol{display:grid;gap:8px}
.eol h3{font:600 12px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:6px 0 2px}

.eol-note{margin:12px 0 0;font-size:14px;color:var(--muted);max-width:68ch}
.eol-list{list-style:none;margin:0;padding:0;overflow:hidden}
.eol-list li{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.eol-list li:first-child{border-top:0}
.eol-list .v{font:600 15px var(--f-mono);color:var(--ink)}
.eol-list .when{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
@media (max-width:520px){.eol-list li{grid-template-columns:48px 1fr}.eol-list .when{grid-column:2;text-align:left}}
/* phone layout */
@media (max-width:640px){
  .answer .sub{line-height:1.4}
  .tbl-wrap{max-height:520px}
  .tbl-wrap table,.tbl-wrap tbody{display:block}
  .tbl-wrap thead{display:none}
  #tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 14px;padding:11px 14px;border-bottom:1px solid var(--line)}
  #tbody tr:last-child{border-bottom:0}
  #tbody td{padding:0;border:0;white-space:normal}
  #tbody td:nth-child(2){display:none}
  #tbody td:nth-child(1){font-weight:500;color:var(--ink);min-width:0}
  #tbody td.v{grid-column:3;grid-row:1;text-align:right}
  #tbody td:nth-child(4){grid-column:2;grid-row:1;font-size:13px}
  #tbody tr.grp{grid-template-columns:minmax(0,1fr) auto}
  #tbody tr.sel td:first-child{box-shadow:none}
  #tbody tr.sel{box-shadow:inset 3px 0 0 var(--accent)}
  #tbody tr[data-m]:hover td,#tbody tr.sel td{background:transparent}
  #tbody tr[data-m]:hover,#tbody tr.sel{background:var(--soft)}
  #tbody td.empty{grid-column:1/-1}
  .legend{gap:8px 14px;font-size:12.5px}
}

/* ===== Direction C: product-grade polish, pass 1 ===== */
:root{--faint:#8D99A7;--sh:0 1px 2px rgba(16,27,39,.05),0 8px 24px -12px rgba(16,27,39,.14);--sh-lift:0 1px 2px rgba(16,27,39,.06),0 16px 36px -16px rgba(16,27,39,.22);--panel-edge:transparent;--wash:#D7ECF3;--hero-a:#0E86A8;--hero-b:#0B6C8A;--hero-c:#07506A}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--faint:#6F7E8C;--sh:0 1px 2px rgba(0,0,0,.4),0 10px 28px -14px rgba(0,0,0,.7);--sh-lift:0 1px 2px rgba(0,0,0,.5),0 18px 40px -16px rgba(0,0,0,.8);--panel-edge:#222D38;--wash:#0F3442}}
:root[data-theme="dark"]{--faint:#6F7E8C;--sh:0 1px 2px rgba(0,0,0,.4),0 10px 28px -14px rgba(0,0,0,.7);--sh-lift:0 1px 2px rgba(0,0,0,.5),0 18px 40px -16px rgba(0,0,0,.8);--panel-edge:#222D38;--wash:#0F3442}
body{background:radial-gradient(1200px 520px at 12% -8%,var(--wash) 0,transparent 62%) no-repeat,var(--bg)}
.wrap{padding-block:36px 64px}
/* nav */
.brand{display:inline-flex;align-items:center;gap:10px}
.navlinks a.on{background:var(--surface);color:var(--ink);box-shadow:var(--sh)}
/* header */
header{gap:14px;padding-top:8px}
h1{font-size:clamp(34px,5.4vw,52px);line-height:1.02}
header .lede{max-width:none}
.meta{justify-self:start;display:inline-flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--panel-edge);border-radius:999px;padding:5px 14px 5px 11px;box-shadow:var(--sh);position:relative}
.asof{font-size:12.5px}
.asof i{width:7px;height:7px;background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 22%,transparent)}
.changelog{position:static;font-size:12.5px}
.changelog[open]{flex-basis:auto}
.changelog .changes{position:absolute;left:0;top:calc(100% + 10px);z-index:15;width:min(560px,calc(100vw - 40px));margin:0;box-shadow:var(--sh-lift);border-radius:14px;padding:14px 18px;border:1px solid var(--line)}
/* summary tiles */
.answer{grid-template-columns:1.25fr 1fr 1fr 1fr;gap:14px;background:transparent;border:0;border-radius:0;overflow:visible}
.answer>div{border-radius:16px;box-shadow:var(--sh);border:1px solid var(--panel-edge);position:relative;overflow:hidden}
.answer .eyebrow{color:var(--faint);letter-spacing:.09em}
.answer .big{font-size:32px;letter-spacing:-.03em}
@media (max-width:900px){.answer{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.answer>div{border-radius:14px}}

/* ===== Direction C pass 2: find your model ===== */
.finder-ctl{gap:12px}
.search{position:relative;flex:1 1 260px;min-width:0;display:flex}
.search-ico{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--faint);pointer-events:none}
.finder-ctl .search input{flex:1;width:100%;height:44px;padding:0 14px 0 40px;border-radius:12px;background:var(--soft);border:1px solid transparent;font-size:15px;transition:background .15s,border-color .15s,box-shadow .15s}
.finder-ctl .search input:hover{border-color:var(--line)}
.finder-ctl .search input:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.chips{border-radius:12px}
.chips button{border:0;border-radius:9px;padding:7px 12px;color:var(--muted);font-weight:500;transition:background .15s,color .15s}
.chips button:hover{color:var(--ink)}
.chips button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(16,27,39,.12),0 1px 1px rgba(16,27,39,.04)}
.tbl-wrap{border-radius:14px}
th{background:var(--soft);font-size:11.5px;letter-spacing:.08em;color:var(--faint);padding:11px 16px}
td{padding:12px 16px}
#tbody td:first-child{font-weight:500}
#tbody td:nth-child(2){color:var(--muted)}
td.v{font-size:14.5px}
#tbody tr{transition:background .12s}
#tbody tr.sel td{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}
.planner{border-top-color:var(--line);padding-top:22px}
.hop{border:0;background:var(--soft)}
.hop.from{background:transparent;box-shadow:inset 0 0 0 1px var(--line)}
.hop.to{box-shadow:var(--sh)}
@media (max-width:640px){#tbody tr.sel{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}}

/* ===== Direction C pass 3: timeline, branches, notes, footer ===== */
.track{height:28px}
.track::before{content:"";position:absolute;left:0;right:0;top:9px;height:10px;border-radius:5px;background:color-mix(in srgb,var(--soft) 70%,transparent)}
.seg-full,.seg-crit{top:8px;height:12px}
.seg-full{border-radius:6px 0 0 6px;background:linear-gradient(90deg,var(--hero-a),var(--bar-full))}
.seg-crit{border-radius:0 6px 6px 0}
.track:not(.row-dead) .seg-full{box-shadow:0 4px 12px -6px color-mix(in srgb,var(--bar-full) 70%,transparent)}
.row-dead .seg-full,.row-dead .seg-crit{background:var(--soft);border:0;box-shadow:inset 0 0 0 1px var(--line)}
.row-dead .seg-crit{border-left:0}
.tl .lab{color:var(--ink)}
.today{width:2px;box-shadow:0 0 10px color-mix(in srgb,var(--today) 55%,transparent)}
.today-tag{border:0;background:var(--today);padding:4px 8px;box-shadow:var(--sh)}
.legend .sw{border-radius:3px;height:6px}
/* branch cards */
.card{border:1px solid var(--line);border-radius:16px;padding:18px;gap:13px;transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:var(--sh-lift);transform:translateY(-1px)}
.card.is-rec{border-color:transparent}
.meter{height:5px;border-radius:3px}
.meter i{border-radius:3px;background:linear-gradient(90deg,var(--hero-a),var(--bar-full))}
.eol-list li{padding:12px 18px}
/* notes, glossary, footer */
.notices{gap:30px 36px}
.tag{font-size:10.5px;padding:4px 8px}
footer{border-top-color:var(--line)}
@media (prefers-reduced-motion:reduce){.card,.card:hover{transition:none;transform:none}}
/* ===== Jade palette (FortiGate GUI) ===== */
:root{--accent:#2F7D3D;--accent-ink:#FFFFFF;--bar-full:#2F7D3D;--bar-crit:#A8CDB0;--hero-a:#3F9A52;--hero-b:#2F7D3D;--hero-c:#215C2C;--wash:#DCEEDF;--ok:#2C6BC4;--ok-bg:#E3ECF9;--bg:#F3F5F4;--soft:#E9EEEA;--line:#DCE3DE}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--accent:#5DB872;--accent-ink:#0E1F12;--bar-full:#4FA963;--bar-crit:#2C4A33;--hero-a:#3F9A52;--hero-b:#2F7D3D;--hero-c:#1E5428;--wash:#173A20;--ok:#79A8F0;--ok-bg:#18253D;--bg:#16191C;--surface:#202428;--soft:#2A2F34;--line:#30363C;--panel-edge:#2C3238;color-scheme:dark}}
:root[data-theme="dark"]{--accent:#5DB872;--accent-ink:#0E1F12;--bar-full:#4FA963;--bar-crit:#2C4A33;--hero-a:#3F9A52;--hero-b:#2F7D3D;--hero-c:#1E5428;--wash:#173A20;--ok:#79A8F0;--ok-bg:#18253D;--bg:#16191C;--surface:#202428;--soft:#2A2F34;--line:#30363C;--panel-edge:#2C3238;color-scheme:dark}

/* ===== Layout 1: master and detail model finder ===== */
@media (min-width:1000px){
  #model{grid-template-columns:minmax(0,1.4fr) minmax(340px,1fr);column-gap:28px;align-items:start}
  #model>.panel-head,#model>.finder-ctl,#model>.tbl-wrap{grid-column:1}
  #model>.planner{grid-column:2;grid-row:1 / span 3;position:sticky;top:76px;margin:0;border:0;padding:22px;border-radius:16px;background:var(--soft);align-self:start}
  #model>.planner .panel-head{display:grid;gap:4px}
  #model>.planner .route{flex-wrap:wrap}
  #model .tbl-wrap{max-height:560px}
  #model .finder-ctl{flex-wrap:wrap}
  #model .finder-ctl .search{flex:1 1 100%}
  #model .chips{flex-wrap:nowrap;justify-self:start}
}
/* family column dropped: the filters already cover it */
.tbl-wrap th:nth-child(2),#tbody td:nth-child(2){display:none}

/* ===== Layout 2: grouped model list ===== */
#tbody tr.grp td{position:sticky;top:41px;z-index:2;background:var(--soft);box-shadow:0 1px 0 var(--line);padding:10px 16px 8px;border-bottom:1px solid var(--line);font:600 12.5px var(--f-body);color:var(--ink)}
#tbody tr.grp td{display:table-cell}
#tbody tr.grp td>span:first-child{font-family:var(--f-mono)}
#tbody tr.grp-eol td>span:first-child{font-family:var(--f-body)}
#tbody tr.grp td .grp-n{float:right;font:500 12px var(--f-body)}
#tbody tr.grp:hover td{background:var(--soft)}
@media (max-width:640px){#tbody tr.grp{display:block;padding:0;background:var(--soft)}#tbody tr.grp td{display:block;position:static;padding:9px 14px}}

/* ===== Layout 3: branches and lifecycle merged ===== */
.branch-detail{display:grid;gap:16px;border-top:1px solid var(--line);padding-top:22px;margin-top:6px}
.panel-head.sub h3{font:700 18px var(--f-display)}
.track[data-v]{cursor:pointer}
.track[data-v]:hover::before{background:color-mix(in srgb,var(--accent) 12%,var(--soft))}
.track[data-v]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
.tl .lab[data-v]{cursor:pointer}
@keyframes flash{0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 55%,transparent)}100%{box-shadow:0 0 0 3px transparent}}
.flash{animation:flash 1.2s ease-out}
.card.is-rec.flash{animation:flash 1.2s ease-out}
.eol-list li.flash{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
@media (prefers-reduced-motion:reduce){.flash{animation:none;outline:2px solid var(--accent)}}

dd.rec{color:var(--accent)}
.p-ok{background:color-mix(in srgb,var(--accent) 13%,var(--surface));color:var(--accent)}

/* ===== Layout 4: clamped card notes ===== */
.notes-wrap{display:grid;gap:6px;align-content:start}
.notes{display:grid;gap:8px;max-height:calc(13px * 1.55 * 3);overflow:hidden;position:relative}
.notes.clipped{-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}
.notes.open{max-height:none;-webkit-mask-image:none;mask-image:none}
.notes .note{line-height:1.55}
.more{justify-self:start;border:0;background:none;padding:0;font:600 13px var(--f-body);color:var(--accent);cursor:pointer}
.more:hover{text-decoration:underline}

/* ===== Layout 5: alert strip ===== */
.alerts{display:grid;gap:0;border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid color-mix(in srgb,var(--crit) 22%,var(--line));box-shadow:var(--sh)}
.alerts:empty{display:none}
.alert{align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:14px;border-top:1px solid var(--line);transition:background .15s}
.alert:first-child{border-top:0}
.alert:hover{background:color-mix(in srgb,var(--crit) 5%,var(--surface))}
.alert-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--crit);box-shadow:0 0 0 4px color-mix(in srgb,var(--crit) 16%,transparent)}
.alert-txt{flex:1;min-width:0;display:flex;gap:6px;flex-wrap:wrap;align-items:baseline}
.alert-txt b{font-weight:600}
.alert-txt span{color:var(--muted)}
@media (max-width:640px){.alert{padding:12px 14px;align-items:flex-start}.alert-dot{margin-top:6px}}

/* ===== Layout 6: inline term definitions ===== */
.term{text-decoration:none;border-bottom:1px dotted var(--faint);cursor:help;position:relative;outline:none}
.term:hover,.term:focus-visible{border-bottom-color:var(--accent);color:var(--ink)}
.term::after{content:attr(data-def);position:absolute;left:0;bottom:calc(100% + 8px);width:max-content;max-width:min(260px,70vw);background:var(--ink);color:var(--surface);font:500 12.5px/1.45 var(--f-body);letter-spacing:0;text-transform:none;padding:8px 11px;border-radius:9px;box-shadow:var(--sh-lift);pointer-events:none;z-index:40;white-space:normal;text-align:left;display:none}
.term:hover::after,.term:focus::after{display:block}
.term.flip::after{left:auto;right:0}
.notice h3 .term,.notice p .term{font-weight:inherit}

/* ===== Planner 1: route as the answer ===== */
.route{gap:10px}
.hop{font-size:16px;padding:10px 14px;border-radius:11px}
.hop.to{background:var(--accent);color:#fff;box-shadow:0 8px 20px -10px color-mix(in srgb,var(--accent) 80%,transparent);font-size:17px}

/* ===== Planner 2: tool button ===== */
.tool-btn{justify-self:start;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:10px;background:var(--surface);font:600 14px var(--f-body);text-decoration:none;white-space:nowrap;transition:background .15s,box-shadow .15s}
.tool-btn:hover{box-shadow:inset 0 0 0 1px var(--accent),0 1px 2px rgba(16,27,39,.05)}
.tool-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* ===== Planner 3: one-line caution rows ===== */
.chev{flex:none;color:var(--faint);transition:transform .15s}

/* ===== Planner 4: checklist line ===== */
.checklist{display:grid;gap:7px;margin-top:2px}
.checklist ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.checklist li{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);background:var(--surface);padding:5px 8px 5px 7px;border-radius:7px;box-shadow:inset 0 0 0 1px var(--line);white-space:nowrap}
.checklist li::before{content:"";width:11px;height:11px;border-radius:3px;box-shadow:inset 0 0 0 1.5px var(--faint)}

/* ===== Round 2, 1: expandable alerts ===== */
.alert{display:block;padding:0}
.alert summary{list-style:none;display:flex;align-items:center;gap:12px;padding:12px 18px;cursor:pointer}
.alert summary::-webkit-details-marker{display:none}
.alert summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.alert .chev{flex:none;color:var(--faint);transition:transform .15s}
.alert[open] .chev{transform:rotate(180deg)}
.alert p{margin:0;padding:0 18px 14px 38px;font-size:13.5px;line-height:1.55;color:var(--muted);max-width:80ch}
.alert-txt{white-space:nowrap;overflow:hidden}
.alert-txt span{overflow:hidden;text-overflow:ellipsis}
.notices{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1000px){.notices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.notices{grid-template-columns:1fr}}


/* No brand in nav */
.topnav .navlinks{margin-left:-10px}
@media (max-width:720px){.topnav .navlinks{margin-left:-6px}}
/* Round 2 step 3: phone polish */
.m-show{display:none}
@media (max-width:640px){
  .m-hide{display:none}.m-show{display:inline}
  .navlinks{-webkit-mask-image:none;mask-image:none;padding-right:0}
  h1{font-size:30px;letter-spacing:-.03em}
  .answer{grid-template-columns:1fr;gap:8px}
  .answer>div{grid-template-columns:1fr auto;grid-template-areas:"k v" "s s";align-items:baseline;gap:4px 12px;padding:14px 16px}
  .answer .eyebrow{grid-area:k}.answer .big{grid-area:v;font-size:24px}.answer .sub{grid-area:s;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #model .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%;justify-self:stretch}
  #model .chips::-webkit-scrollbar{display:none}
  #model .finder-ctl{min-width:0}
  #model .chips{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  #model .chips button{white-space:nowrap;flex:none}
  .checklist ul{flex-wrap:nowrap}
  .eol-list li{grid-template-columns:40px 1fr;gap:2px 12px;padding:12px 14px}
  .eol-list .when{grid-column:2;text-align:left;font-size:13px}
}
.changelog:not([open]) .changes{display:none}
/* Round 2 step 4: recommended label inside the bar */
.track.is-rec .seg-full,.track.is-rec .seg-crit{top:3px;height:22px;z-index:2}
.track.is-rec .seg-full{display:flex;align-items:center;overflow:clip}
.track.is-rec::before{top:6px;height:16px;border-radius:8px}
.seg-lbl{position:sticky;left:58px;font:600 11.5px/1 var(--f-mono);color:#fff;padding-left:9px;white-space:nowrap;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:6px}
.seg-lbl::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;opacity:.9}
/* Round 2 step 6: subtle motion */
@media (prefers-reduced-motion:no-preference){
  @keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  header,#answer,#alerts,#model{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}
  #answer{animation-delay:.08s}
  #alerts{animation-delay:.16s}
  #model{animation-delay:.24s}
  .anim #timeline .seg-full,.anim #timeline .seg-crit{transition:clip-path .9s cubic-bezier(.3,.7,.2,1),left .35s ease,width .35s ease}
  .anim #timeline .seg-full{transition-delay:calc(var(--i,0) * 70ms)}
  .anim #timeline .seg-crit{transition-delay:calc(var(--i,0) * 70ms + 450ms)}
  .anim #timeline:not(.in) .seg-full,.anim #timeline:not(.in) .seg-crit{clip-path:inset(0 100% 0 0)}
  .anim #timeline .track .seg-full,.anim #timeline .track .seg-crit{clip-path:inset(0 0 0 0)}
  .anim #timeline:not(.in) .track .seg-full,.anim #timeline:not(.in) .track .seg-crit{clip-path:inset(0 100% 0 0)}
  @keyframes flash2{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 0%,transparent)}18%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 45%,transparent)}100%{box-shadow:0 0 0 10px color-mix(in srgb,var(--accent) 0%,transparent)}}
  .flash,.card.is-rec.flash{animation:flash2 1.4s cubic-bezier(.2,.7,.2,1)}
  @keyframes flashbg{0%,30%{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}100%{background:transparent}}
  .eol-list li.flash{animation:flashbg 1.8s ease-out;background:transparent}
  .chev{transition:transform .2s ease}
  .chips button,.navlinks a,.tool-btn{transition:background .15s,color .15s,box-shadow .15s}
}
/* Round 2 step 7: dark mode pass */
.notice h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bar-crit:#3D6B48;--hero-a:#3A8E4C;--hero-b:#2C7139;--hero-c:#1C4D25;--muted:#9BA6B0;--faint:#7D8893}}
:root[data-theme="dark"]{--bar-crit:#3D6B48;--hero-a:#3A8E4C;--hero-b:#2C7139;--hero-c:#1C4D25;--muted:#9BA6B0;--faint:#7D8893}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .row-dead .seg-full,:root:not([data-theme="light"]) .row-dead .seg-crit{background:#2B3036;box-shadow:inset 0 0 0 1px #3A4148}
  :root:not([data-theme="light"]) .alerts{border-color:color-mix(in srgb,var(--crit) 35%,var(--line))}
}
:root[data-theme="dark"] .row-dead .seg-full,:root[data-theme="dark"] .row-dead .seg-crit{background:#2B3036;box-shadow:inset 0 0 0 1px #3A4148}
:root[data-theme="dark"] .alerts{border-color:color-mix(in srgb,var(--crit) 35%,var(--line))}
:root[data-theme="light"]{color-scheme:light}
/* Theme toggle */
.theme-btn{flex:none;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer}
.theme-btn:hover{background:var(--soft);color:var(--ink)}
.theme-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.theme-btn .i-sun{display:none}
:root[data-theme="dark"] .theme-btn .i-sun{display:block}:root[data-theme="dark"] .theme-btn .i-moon{display:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .theme-btn .i-sun{display:block}:root:not([data-theme="light"]) .theme-btn .i-moon{display:none}}
@media (prefers-reduced-motion:no-preference){html.theming,html.theming *{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease!important}}
@media (max-width:640px){.theme-btn{margin-right:-4px}}
/* Theme toggle with label */
.theme-btn{width:auto;padding:0 10px;grid-auto-flow:column;gap:7px;font:500 13.5px var(--f-body)}
.theme-btn svg{width:16px;height:16px}
.theme-btn span.i-sun{display:none}
:root[data-theme="dark"] .theme-btn span.i-sun{display:inline}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .theme-btn span.i-sun{display:inline}}
@media (max-width:440px){.theme-btn .tb-l{display:none!important}.theme-btn{padding:0 8px}}
@media (max-width:440px){.theme-btn{margin-right:-8px}}
/* Tablet pass */
.t-show{display:none}
@media (max-width:1100px){.t-hide{display:none}.t-show{display:inline}}
@media (max-width:1100px) and (min-width:641px){
  .answer{grid-template-columns:1.15fr 1fr 1fr 1fr;gap:12px}
  .answer>div{padding:16px 16px 18px}
  .answer .big{font-size:28px}
  .answer .sub{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .notices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ledger{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .ledger .card{padding:16px}
}
@media (max-width:900px) and (min-width:641px){.answer{grid-template-columns:1fr 1fr}.answer .big{font-size:30px}}
@media (max-width:860px) and (min-width:641px){
  .ledger{grid-template-columns:1fr}
  .ledger dl.kv{grid-template-columns:auto 1fr auto 1fr;column-gap:28px}
}
/* Split pages: overview and upgrade path */
:root[data-page="upgrade"] #answer,:root[data-page="upgrade"] #alerts,:root[data-page="upgrade"] #model,:root[data-page="upgrade"] #lifecycle,:root[data-page="upgrade"] #notes{display:none}
:root[data-page="home"] #upgrade{display:none}
#model{grid-template-columns:minmax(0,1fr)!important}
#model .finder-ctl{flex-wrap:nowrap}
#model .finder-ctl .search{flex:1 1 auto}
@media (min-width:1000px){.tbl-wrap th:nth-child(2),#tbody td:nth-child(2){display:table-cell}}
#upgrade .planner{border-top:0;padding-top:0;margin:0}
#upgrade .planner .panel-head{display:grid;gap:4px}
#upgrade .planner h2{font:700 22px var(--f-display);letter-spacing:-.01em;margin:0}
@media (min-width:900px){
  #upgrade .planner{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);column-gap:40px;row-gap:18px;align-items:start}
  #upgrade .planner .panel-head{grid-column:1}
}
.pick{display:flex;gap:16px;padding:12px 12px 12px 16px;border-radius:12px;background:color-mix(in srgb,var(--accent) 9%,var(--surface));box-shadow:inset 3px 0 0 var(--accent);margin-bottom:14px;position:relative}
.pick[hidden]{display:none}
.pick.bad{background:color-mix(in srgb,var(--crit) 8%,var(--surface));box-shadow:inset 3px 0 0 var(--crit)}
.pick p{margin:0;flex:1;min-width:0;font-size:14.5px}
.pick b{font-family:var(--f-mono);font-weight:600}
.pk-m{font-weight:600}
.pk-up{flex:none;font:600 13.5px var(--f-body);color:var(--accent);text-decoration:none;white-space:nowrap}
.pk-up:hover{text-decoration:underline}
.pk-x{flex:none;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}
.pk-x:hover{background:var(--soft);color:var(--ink)}
@media (max-width:640px){.pick{flex-wrap:wrap;gap:8px 12px;padding-right:44px}.pick p{flex:1 1 100%}.pk-x{position:absolute;right:8px;top:8px}}
#upgrade .planner>.panel-head{display:none}
@media (max-width:999px){#model .finder-ctl{flex-wrap:wrap}#model .finder-ctl .search{flex:1 1 100%}}
/* ===== Upgrade planner ===== */
.u-ctl{display:grid;gap:14px;margin-bottom:22px}
.u-ctl label{display:grid;gap:6px;font:600 11.5px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.u-ctl select{appearance:none;-webkit-appearance:none;padding:0 38px 0 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%238D99A7' stroke-width='1.6'%3E%3Cpath d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E") no-repeat right 14px center;font:500 15px var(--f-body);color:var(--ink);text-transform:none;letter-spacing:0;min-width:0;width:100%;cursor:pointer}
.u-ctl select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.u-route{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.u-cov{margin:0;font-size:13.5px;color:var(--muted)}
.u-link{font:600 13.5px var(--f-body);color:var(--accent);text-decoration:none}.u-link:hover{text-decoration:underline}
.u-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.u-stat{display:grid;gap:2px;padding:14px 16px;border-radius:14px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);text-decoration:none;color:var(--ink);border-top:3px solid var(--st,var(--line))}
.u-stat b{font:600 28px/1.1 var(--f-mono)}
.u-stat span{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.u-stat:hover{box-shadow:inset 0 0 0 1px var(--st,var(--line))}
.s-break{--st:var(--crit)}.s-act{--st:var(--warn)}.s-sec{--st:#7B4FD6}.s-issue{--st:#C2410C}.s-info{--st:var(--faint)}
.u-search{margin:0 0 6px}
.u-sec{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.u-sec>summary{list-style:none;cursor:pointer;display:grid;gap:2px}
.u-sec>summary::-webkit-details-marker{display:none}
.u-sec h3{display:flex;align-items:center;gap:10px;margin:0;font:700 18px var(--f-display)}
.u-sec h3::after{content:"";width:7px;height:7px;border-right:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);transform:rotate(45deg);margin-left:4px;transition:transform .2s}
.u-sec:not([open]) h3::after{transform:rotate(-45deg)}
.u-n{font:600 12px var(--f-mono);padding:2px 8px;border-radius:999px;background:var(--soft);color:var(--muted)}
.u-sub{font-size:13px;color:var(--muted)}
.u-list{list-style:none;margin:12px 0 0;padding:0;display:grid}
.u-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px}
.u-item.mine{background:color-mix(in srgb,var(--st) 6%,var(--surface))}
.u-v{font:600 13px var(--f-mono);color:var(--muted);padding-top:2px}
.u-body p{margin:0}
.u-t{font-weight:600;font-size:14.5px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.u-d{font-size:13.5px;color:var(--muted);margin-top:3px!important;line-height:1.5}
.u-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:6px!important;font-size:12.5px}
.u-meta a{color:var(--accent);text-decoration:none;font-weight:600}.u-meta a:hover{text-decoration:underline}
.u-chip{font:600 11px var(--f-body);padding:2px 8px;border-radius:999px;letter-spacing:.02em}
.u-chip.mine{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
.u-chip.exp{background:color-mix(in srgb,var(--crit) 14%,transparent);color:var(--crit)}.s-sec.exp{--st:var(--crit)}.s-sec.exp .u-v{color:var(--crit)}
.u-empty,.u-loading{padding:18px;border-radius:12px;background:var(--soft);color:var(--muted);margin:12px 0}
.u-foot{margin:22px 0 0;font-size:12.5px;color:var(--faint)}
@media (max-width:900px){.u-stats{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.u-item{grid-template-columns:1fr;gap:4px}.u-stat b{font-size:24px}}
.u-search input{flex:1;width:100%;height:44px;padding:0 14px 0 40px;border-radius:12px;background:var(--soft);border:1px solid transparent;font:15px var(--f-body);color:var(--ink)}
.u-search input:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.u-search{display:flex;max-width:520px}
@media (max-width:520px){.u-stat span{white-space:normal}}
/* Security, age and withdrawn flags */
dl.kv dd .age{font:400 11.5px var(--f-body);color:var(--faint);margin-right:8px;letter-spacing:0}
.card-flags{display:grid;gap:6px;margin-top:2px}
.card-flags p{margin:0;font-size:12.5px;line-height:1.4}
.sec-ok,.sec-bad,.wd{display:inline-flex;align-items:flex-start;gap:7px}
.sec-ok{color:var(--muted)}.sec-ok::before,.sec-bad::before,.wd::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;margin-top:5px;background:var(--ok)}
.sec-bad{color:var(--ink)}.sec-bad.exp::before,.wd::before{background:var(--crit)}
.wd{color:var(--ink)}
.u-warn{padding:12px 16px;border-radius:12px;background:color-mix(in srgb,var(--crit) 9%,var(--surface));box-shadow:inset 3px 0 0 var(--crit);font-size:14px;margin-bottom:16px}
.u-warn a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}
/* Hotspots, areas, config at risk */
.card-flags .hot{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px}
.card-flags .hot>span{color:var(--muted)}
.card-flags .hot a{font:500 12px var(--f-body);text-decoration:none;color:var(--ink);background:var(--soft);padding:2px 8px;border-radius:999px}
.card-flags .hot a b{font-family:var(--f-mono);margin-left:2px}
.card-flags .hot a:hover{background:color-mix(in srgb,var(--accent) 12%,var(--soft))}
.u-chip.risk{background:color-mix(in srgb,var(--crit) 14%,transparent);color:var(--crit)}
/* Model caps and auto-patch checker */
.pick{align-items:flex-start}
.pk-main{flex:1;min-width:0;display:grid;gap:8px}
.pk-caps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pk-caps li{font:500 12px var(--f-body);padding:3px 9px;border-radius:999px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}
.pk-caps li a{color:var(--ink);text-decoration:none}.pk-caps li a:hover{text-decoration:underline}
.pk-caps li.ram{background:var(--soft);box-shadow:none}
.pk-caps li.c-removed{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--crit) 45%,transparent)}
.pk-caps li.c-removed a{color:var(--crit)}
.ap-ctl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;margin-bottom:18px}
.ap-ctl label{display:grid;gap:6px;font:600 11.5px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.ap-ctl select{appearance:none;-webkit-appearance:none;height:44px;padding:0 36px 0 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%238D99A7' stroke-width='1.6'%3E%3Cpath d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E") no-repeat right 12px center;font:500 14.5px var(--f-body);color:var(--ink);text-transform:none;letter-spacing:0;min-width:0;width:100%;cursor:pointer}
.ap-ctl select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.ap-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ap-card{padding:16px 18px;border-radius:14px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line),inset 0 3px 0 var(--apc);display:grid;gap:4px}
.ap-card .ap-h{font:600 11.5px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.ap-card b{font:700 19px var(--f-display);color:var(--apc)}
.ap-card p{margin:0;font-size:14px;color:var(--muted)}
.ap-yes{--apc:var(--crit)}.ap-maybe{--apc:var(--warn)}.ap-no{--apc:var(--accent)}
.ap-more{margin-top:14px}
.ap-more summary{cursor:pointer;font:600 14px var(--f-body);color:var(--accent)}
.ap-cols{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-top:12px}
.ap-cols h4{margin:0 0 6px;font:600 12px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ap-cols ul{margin:0 0 4px;padding:0;list-style:none;display:grid;gap:6px;font-size:13px}
.ap-cols ul span{color:var(--muted)}
.ap-cols code,.ap-cols pre{font:500 12.5px var(--f-mono)}
.ap-cols pre{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--soft);white-space:pre-wrap}
.ap-cols p{font-size:13px;color:var(--muted);margin:0}
.ap-src{font-size:12px;color:var(--faint);margin:12px 0 0}.ap-src a{color:var(--muted)}
@media (max-width:900px){.ap-ctl{grid-template-columns:1fr 1fr}.ap-cards,.ap-cols{grid-template-columns:1fr}}
@media (max-width:520px){.ap-ctl{grid-template-columns:1fr}}
/* ===== End of support page ===== */
:root[data-page="eos"] #answer,:root[data-page="eos"] #alerts,:root[data-page="eos"] #model,:root[data-page="eos"] #lifecycle,:root[data-page="eos"] #notes,:root[data-page="eos"] #upgrade{display:none}
:root:not([data-page="eos"]) #eosPage{display:none}
.st-ended{--es:var(--crit)}.st-ending{--es:#C2410C}.st-norenew{--es:var(--warn)}.st-eoo{--es:var(--warn)}.st-ann{--es:#7B4FD6}.st-current{--es:var(--accent)}
.e-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.e-stat{display:grid;gap:2px;text-align:left;padding:14px 16px;border-radius:14px;border:0;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);border-top:3px solid var(--es);cursor:pointer;color:var(--ink);font:inherit}
.e-stat b{font:600 28px/1.1 var(--f-mono)}.e-stat span{font-size:12.5px;color:var(--muted)}
.e-stat.on{box-shadow:inset 0 0 0 2px var(--es)}
.e-ctl{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.e-search{display:flex}
.e-search input{flex:1;width:100%;height:44px;padding:0 14px 0 40px;border-radius:12px;background:var(--soft);border:1px solid transparent;font:15px var(--f-body);color:var(--ink)}
.e-search input:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.e-ctl select{appearance:none;-webkit-appearance:none;height:44px;padding:0 34px 0 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%238D99A7' stroke-width='1.6'%3E%3Cpath d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E") no-repeat right 12px center;font:500 14px var(--f-body);color:var(--ink);cursor:pointer}
.e-ctl .tool-btn{cursor:pointer;font:600 14px var(--f-body);height:44px}
.e-count{margin:4px 0 8px;font-size:13px;color:var(--muted)}
.e-tbl{border:1px solid var(--line);border-radius:14px;overflow:auto;max-height:720px}
.e-tbl table{width:100%;border-collapse:collapse;font-size:14px}
.e-tbl th{position:sticky;top:0;z-index:1;background:var(--soft);text-align:left;font:600 11.5px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:10px 14px;white-space:nowrap}
.e-tbl td{padding:11px 14px;border-top:1px solid var(--line);vertical-align:top;white-space:nowrap;font-variant-numeric:tabular-nums}
.e-row{cursor:pointer}.e-row:hover td{background:color-mix(in srgb,var(--soft) 60%,var(--surface))}
.e-row.open td{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}
.e-name b{display:block;font-weight:600}.e-name span{display:block;font-size:12px;color:var(--faint);white-space:normal;max-width:240px}
.e-eos span{display:block;font-size:12px;color:var(--muted)}
.e-pill{display:inline-block;font:600 11.5px var(--f-body);padding:3px 9px;border-radius:999px;color:var(--es);background:color-mix(in srgb,var(--es) 12%,transparent);white-space:nowrap}
.e-detail td{white-space:normal;background:color-mix(in srgb,var(--accent) 4%,var(--surface));border-top:0}
.e-d{display:grid;gap:12px;padding:4px 2px 8px}
.e-adv{margin:0;font-size:14.5px;max-width:90ch}
.e-note,.e-src{margin:0;font-size:12.5px;color:var(--muted)}.e-src a{color:var(--muted)}.e-sec{color:var(--faint)}
.e-links{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.e-links a,.e-share{font:600 13.5px var(--f-body);color:var(--accent);text-decoration:none;background:none;border:0;padding:0;cursor:pointer}
.e-tl{padding:30px 10px 34px}
.e-tl-bar{position:relative;height:8px;border-radius:4px;background:var(--soft)}
.e-seg{position:absolute;top:0;height:8px}.e-seg.s1{background:var(--warn);opacity:.55}.e-seg.s2{background:var(--crit);opacity:.6}
.e-pt{position:absolute;top:-4px;transform:translateX(-50%);display:grid;justify-items:center}
.e-pt i{width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 3px var(--ink)}
.e-pt b{position:absolute;top:-24px;font:600 11.5px var(--f-body);white-space:nowrap;color:var(--muted)}
.e-pt em{position:absolute;top:20px;font:500 12px var(--f-mono);font-style:normal;white-space:nowrap}
.e-today{position:absolute;top:-10px;bottom:-10px;width:2px;background:var(--today)}
.e-today b{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font:600 11px var(--f-body);color:var(--today)}
.e-none{margin:0;color:var(--muted)}
.e-est{margin-top:22px;padding-top:16px}
.e-est summary{list-style:none;display:grid;gap:2px}.e-est summary::-webkit-details-marker{display:none}
.e-est h3{margin:0;font:700 18px var(--f-display)}.e-est summary span{font-size:13px;color:var(--muted)}
.e-est-in{display:flex;gap:12px;align-items:flex-start;margin:12px 0}
.e-est textarea{flex:1;min-height:110px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:14px var(--f-mono);resize:vertical}
.e-est textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.e-est .tool-btn{cursor:pointer;font:600 14px var(--f-body)}
.e-est-sum{font-size:14px;margin:4px 0 10px}.e-est-sum .st-ended{color:var(--crit);font-weight:600}.e-est-sum .st-ending{color:#C2410C;font-weight:600}
.e-miss{color:var(--muted);white-space:normal}
.e-key{margin-top:24px;padding:16px 18px;border-radius:14px;background:var(--soft)}
.e-key h3{margin:0 0 10px;font:600 12px var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.e-key dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px;margin:0}
.e-key dt{font-weight:600;font-size:14px}.e-key dd{margin:2px 0 0;font-size:13px;color:var(--muted)}
.e-key p{margin:12px 0 0;font-size:12.5px;color:var(--muted)}.e-key a{color:var(--accent)}
@media (max-width:900px){.e-stats{grid-template-columns:1fr 1fr}.e-key dl{grid-template-columns:1fr}}
@media (max-width:640px){
  .e-tbl thead{display:none}.e-tbl table,.e-tbl tbody{display:block}
  .e-tbl tr.e-row{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:12px 14px;border-top:1px solid var(--line)}
  .e-tbl tr.e-row td{padding:0;border:0;white-space:normal}
  .e-tbl tr.e-row td:nth-child(3),.e-tbl tr.e-row td:nth-child(4),.e-tbl tr.e-row td:nth-child(6),.e-tbl tr.e-row td:nth-child(7){display:none}
  .e-tbl tr.e-row td:nth-child(5){grid-column:1 / -1}
  .e-tbl tr.e-detail{display:block}.e-tbl tr.e-detail td{display:block;padding:10px 14px}
  .e-est-in{flex-direction:column}.e-est-in .tool-btn{align-self:flex-start}
  .e-ctl select{flex:1 1 45%}
}
.navlinks{overflow-x:auto}
#eosPage{display:block}
#eosPage>*{min-width:0;max-width:100%}
.e-dates{display:none}
@media (max-width:640px){
  .e-tl{display:none}
  .e-dates{display:grid;gap:6px;margin:0}
  .e-dates div{display:flex;justify-content:space-between;gap:12px;font-size:13.5px}
  .e-dates dt{color:var(--muted)}.e-dates dd{margin:0;font-weight:600;text-align:right}
  .e-tbl tr.e-row.open{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}
  .e-tbl tr.e-row.open td,.e-tbl tr.e-row:hover td{background:transparent}
}
.pk-hw{color:inherit;font-weight:600;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:2px}
/* ===== Multi-page layout and navigation ===== */
:root[data-page="home"] #model,:root[data-page="home"] #lifecycle,:root[data-page="home"] #notes{display:none}
:root:not([data-page="home"]) #quick,:root:not([data-page="home"]) #qcards,:root:not([data-page="home"]) #answer,:root:not([data-page="home"]) #alerts{display:none}
:root[data-page="models"] #lifecycle,:root[data-page="models"] #notes,:root[data-page="models"] #upgrade,:root[data-page="models"] #eosPage{display:none}
:root[data-page="branches"] #model,:root[data-page="branches"] #upgrade,:root[data-page="branches"] #eosPage{display:none}
:root[data-page="models"] #model .panel-head h2,:root[data-page="branches"] #lifecycle>.panel-head h2{display:none}
:root[data-page="models"] #model .panel-head{justify-content:flex-start}
.topnav{background:var(--surface);border-bottom:1px solid var(--line);backdrop-filter:none;-webkit-backdrop-filter:none}
.topnav-in{height:64px;justify-content:space-between}
.site{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.site-name{font:800 19px var(--f-display);letter-spacing:-.01em;white-space:nowrap}
.tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--soft)}
.tabs a{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:9px;font:600 13.5px var(--f-body);color:var(--muted);text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.tabs a svg{width:17px;height:17px;flex:none}
.tabs a:hover{color:var(--ink);background:color-mix(in srgb,var(--surface) 70%,transparent)}
.tabs a.on{background:var(--accent);color:#fff;box-shadow:0 4px 12px -6px color-mix(in srgb,var(--accent) 80%,transparent)}
:root[data-theme="dark"] .tabs a.on{color:var(--accent-ink)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tabs a.on{color:var(--accent-ink)}}
.tabs .tab-s{display:none}
.theme-btn{margin-right:0}
@media (max-width:1180px){.tabs a .tab-l{display:none}.tabs a .tab-s{display:inline}}
@media (max-width:880px){.theme-btn .tb-l{display:none!important}}
@media (max-width:760px){
  .topnav-in{height:56px}
  .tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;border-radius:0;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 20px -14px rgba(16,27,39,.25);justify-content:space-around;gap:2px}
  .tabs a{flex:1;flex-direction:column;gap:3px;padding:6px 2px;font-size:11px;border-radius:10px}
  .tabs a svg{width:21px;height:21px}
  .tabs a.on{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);box-shadow:none}
  :root[data-theme="dark"] .tabs a.on{color:var(--accent)}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
}
/* home quick search */
#quick{display:grid;gap:14px}
.q-box{position:relative;max-width:640px}
.q-search{display:flex}
.q-search input{flex:1;width:100%;height:54px;padding:0 16px 0 46px;border-radius:14px;background:var(--soft);border:1px solid transparent;font:500 17px var(--f-body);color:var(--ink)}
.q-search .search-ico{left:16px}
.q-search input:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.q-sug{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;background:var(--surface);border-radius:14px;box-shadow:var(--sh-lift),0 0 0 1px var(--line);padding:6px;display:grid}
.q-sug[hidden]{display:none}
.q-sug button{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:0;border-radius:9px;background:transparent;font:500 15px var(--f-body);color:var(--ink);cursor:pointer;text-align:left}
.q-sug button b{font:600 14px var(--f-mono);color:var(--accent)}
.q-sug button:hover,.q-sug button.act{background:var(--soft)}
.q-none{margin:0;padding:10px 12px;color:var(--muted);font-size:14px}
#qpick{margin:0}
.q-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.q-card{display:grid;gap:6px;align-content:start;padding:18px 20px;border-radius:16px;background:var(--surface);box-shadow:var(--sh);border:1px solid var(--panel-edge);text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.q-card:hover{transform:translateY(-2px);box-shadow:var(--sh-lift)}
.q-k{font:600 11.5px var(--f-body);letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}
.q-card b{font:700 17px/1.25 var(--f-display)}
.q-s{font-size:13px;color:var(--muted)}
.q-card::after{content:"\2192";font:600 16px var(--f-body);color:var(--accent);margin-top:4px}
@media (max-width:1000px){.q-cards{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.q-cards{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.q-card{transition:none}.q-card:hover{transform:none}}
.sn-g{color:var(--accent)}
/* ===== Answer-first: home search hero and model answer page ===== */
:root[data-page="model"] #quick,:root[data-page="model"] #qcards,:root[data-page="model"] #answer,:root[data-page="model"] #alerts,:root[data-page="model"] #model,:root[data-page="model"] #lifecycle,:root[data-page="model"] #notes,:root[data-page="model"] #upgrade,:root[data-page="model"] #eosPage{display:none}
:root:not([data-page="model"]) #modelPage{display:none}
:root[data-page="model"] header h1,:root[data-page="model"] header .lede{display:none}
:root[data-page="model"] header{padding-bottom:6px}
:root[data-page="home"] header h1{font-size:clamp(34px,5vw,54px)}
:root[data-page="home"] .q-search input{padding-left:52px}
:root[data-page="home"] .q-search .search-ico{left:18px;width:20px;height:20px}
:root[data-page="home"] .answer{opacity:.96}
#modelPage{display:grid}
.s-ok{--stc:var(--accent)}.s-soon{--stc:#D97706}.s-out{--stc:var(--crit)}
.mp-why{font-size:15px;color:var(--muted)}
.mp-sec{border-top:1px solid var(--line)}.mp-sec:first-child{border-top:0}
.mp-sec>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer}
.mp-sec>summary::-webkit-details-marker{display:none}
.mp-sec>summary span{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.mp-sec>summary em{font-style:normal;color:var(--muted)}
.mp-sec>summary:hover{background:color-mix(in srgb,var(--soft) 50%,var(--surface))}
.mp-sec[open] .chev{transform:rotate(180deg)}
.mp-body{display:grid;gap:12px;font-size:14.5px;line-height:1.6}
.mp-body p{margin:0}
.mp-meta{color:var(--muted);font-size:13px}.mp-body a{color:var(--accent);font-weight:600;text-decoration:none}
.mp-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mp-list li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}
.mp-list p{color:var(--muted);font-size:14px;margin:2px 0 4px}
.mp-list.compact li{grid-template-columns:62px 1fr}
.mp-tag{font:600 11.5px var(--f-body);padding:3px 9px;border-radius:999px;white-space:nowrap;background:var(--soft);color:var(--muted)}
.mp-tag.t-out{background:color-mix(in srgb,var(--crit) 13%,transparent);color:color-mix(in srgb,var(--crit) 78%,var(--ink))}
.mp-tag.t-soon{background:color-mix(in srgb,#D97706 14%,transparent)}
.mp-bug{font-size:12px;color:var(--faint)}
.mp-dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.mp-dl dt{font-size:12.5px;color:var(--muted)}.mp-dl dd{margin:2px 0 0;font-weight:600}.mp-dl dd span{display:block;font-weight:400;font-size:12.5px;color:var(--muted)}
.mp-srcs{margin:0;padding-left:18px;display:grid;gap:6px}
@media (max-width:640px){.mp-dl{grid-template-columns:1fr}.mp-list li{grid-template-columns:1fr}}
/* ===== One status language + calm colour and type pass ===== */
:root{--ok:var(--accent);--ok-bg:color-mix(in srgb,var(--accent) 12%,var(--surface));--amber:#C2780A;--amber-ink:#9A5B00}
:root[data-theme="dark"]{--amber:#E3A33A;--amber-ink:#E9B65C}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--amber:#E3A33A;--amber-ink:#E9B65C}}
.sb{display:inline-flex;align-items:center;gap:6px;font:600 12.5px var(--f-body);padding:4px 10px 4px 7px;border-radius:999px;white-space:nowrap;color:var(--sbc);background:color-mix(in srgb,var(--sbc) 11%,transparent)}
.sb svg{width:15px;height:15px;flex:none}
.sb-ok{--sbc:var(--accent)}.sb-soon{--sbc:var(--amber-ink)}.sb-out{--sbc:var(--crit)}
.e-sub{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.b-tag{font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);vertical-align:middle}
.b-tag.n{color:var(--muted)}
/* status colours used elsewhere: green, amber, red and grey only */
.s-soon{--stc:var(--amber)}
.mp-tag.t-soon{background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber-ink)}
.st-ended{--es:var(--crit)}.st-ending{--es:var(--amber-ink)}.st-norenew{--es:var(--amber-ink)}.st-eoo{--es:var(--accent)}.st-ann{--es:var(--accent)}.st-current{--es:var(--accent)}
.s-break{--st:var(--crit)}.s-act{--st:var(--amber)}.s-sec{--st:var(--ink)}.s-sec.exp{--st:var(--crit)}.s-issue{--st:var(--amber)}.s-info{--st:var(--faint)}
.s-sec .u-v{color:var(--muted)}
.card-flags .hot a b{color:var(--amber-ink)}
.sec-bad::before{background:var(--amber)}
.ap-maybe{--apc:var(--amber-ink)}
/* type and spacing */
body{font-size:15.5px;line-height:1.6}
section.panel{gap:20px}
.panel-head h2{font:700 24px var(--f-display);letter-spacing:-.015em}
header .lede{font-size:17px;line-height:1.55}
.answer>div{padding:20px 22px 22px}
@media (max-width:640px){.wrap{gap:20px}}
.e-search{flex:1 1 220px}.e-ctl select{min-width:0}@media (min-width:1000px){.e-ctl{flex-wrap:nowrap}}
/* ===== Model page refinement ===== */
#modelPage{gap:16px}
.mp-sec>summary{padding:17px 26px}
.mp-sec>summary b{font:600 15.5px var(--f-body)}
.mp-sec>summary em{font-size:13px}
.mp-sec .chev{color:var(--faint);transition:transform .2s}
.mp-body{padding:0 26px 22px}
@media (max-width:640px){.mp-sec>summary{padding:15px 18px}.mp-body{padding:0 18px 18px}}
#mpOut{gap:16px}
/* ===== Type system (originally Archivo; Geist since Oct 2026) ===== */
body{font-feature-settings:"tnum" 1}
h1,h2,h3,.site-name{font-variation-settings:"wdth" 112}
h1{letter-spacing:-.02em}
code,pre,kbd{font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace}

/* ===== Model page v2 ===== */
:root[data-page="model"] body{background:var(--surface)}
:root[data-page="model"] header{display:none}
:root[data-page="model"] .wrap{padding-top:22px}
#mpOut{display:block}
.m2{--m2-rule:var(--line);color:var(--ink)}
.m2-crumb{font-size:14px;color:var(--muted)}
.m2-crumb a{color:var(--accent);text-decoration:none;font-weight:500}
.m2-head{justify-content:space-between}
.m2-name{margin:0;font:700 clamp(32px,5vw,46px)/1.04 var(--f-display);font-variation-settings:"wdth" 118;letter-spacing:-.02em}
.m2-sub{margin:10px 0 0;color:var(--muted);font-size:17px}
.m2-acts{display:flex;gap:8px;flex:none}
.m2-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 16px;border-radius:10px;font:600 15px var(--f-body);text-decoration:none;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--ink);white-space:nowrap}
.m2-btn:hover{border-color:var(--muted)}
.m2-btn svg{width:16px;height:16px;flex:none}
.m2-btn.go{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.m2-btn.go:hover{filter:brightness(1.06)}
.m2-btn:focus-visible,.m2-sel:focus-visible,.m2-more summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

.m2-verdict{margin-top:34px;display:grid;grid-template-columns:auto minmax(0,1fr)}
.m2-k{grid-column:1;color:var(--muted)}
.m2-num{grid-column:1;margin:0;font:760 clamp(84px,11vw,124px)/.86 var(--f-display);font-variation-settings:"wdth" 125;letter-spacing:-.035em;white-space:nowrap}
.m2-side{grid-column:2;grid-row:1/3;align-self:end;padding-bottom:6px;display:grid;gap:10px;max-width:50ch}
.m2-st{display:inline-flex;align-items:center;font-weight:600;color:var(--stc)}
.m2-st i{width:10px;height:10px;border-radius:50%;background:var(--stc);box-shadow:0 0 0 4px color-mix(in srgb,var(--stc) 16%,transparent);flex:none}
.st-ok{--stc:var(--accent)}.st-soon{--stc:var(--amber)}.st-out{--stc:var(--crit)}
.m2-why{margin:0;font-size:16.5px;line-height:1.55}
.m2-src{margin:0;font-size:14px;color:var(--muted)}
.m2-src a{color:var(--muted)}

.m2-run{margin-top:30px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px;border-radius:14px;background:var(--soft)}
.m2-run label{font-weight:600;font-size:15px}
.m2-sel{height:40px;padding:0 34px 0 14px;border-radius:9px;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16' fill='none' stroke='%238A96A0' stroke-width='1.8'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid var(--line);font:600 15px var(--f-body);color:var(--ink);appearance:none;-webkit-appearance:none;cursor:pointer}
.m2-run p{margin:0;font-size:15px;flex:1;min-width:260px}
.m2-run p b{font-weight:650}
.m2-run .m2-btn{height:40px}

.m2-line{margin-top:46px}
.m2-h{margin:0 0 4px;font:650 21px var(--f-display);font-variation-settings:"wdth" 112;letter-spacing:-.01em}
.m2-lede{margin:0;color:var(--muted);font-size:15px}
.m2-track{position:relative;margin-top:24px;display:grid;height:150px}
.m2-seg{position:relative;border-left:1px solid var(--line)}
.m2-seg:last-child{border-right:1px solid var(--line)}
.m2-seg .bn{position:absolute;top:0;left:12px;font:650 15px var(--f-display);font-variation-settings:"wdth" 112}
.m2-seg .bs{position:absolute;top:22px;left:12px;right:8px;font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m2-rail{position:absolute;left:0;right:0;top:74px;height:6px}
.g-out .m2-rail{height:4px;top:75px;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--muted) 45%,transparent) 0 8px,transparent 8px 14px)}
.g-soon .m2-rail{background:var(--amber)}
.g-ok .m2-rail{background:var(--accent)}
.g-new .m2-rail{background:color-mix(in srgb,var(--accent) 45%,var(--surface))}
.m2-dot{position:absolute;top:66px;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:var(--surface);border:4px solid var(--dc,var(--accent))}
.g-soon{--dc:var(--amber)}.g-out{--dc:var(--muted)}.g-new{--dc:color-mix(in srgb,var(--accent) 45%,var(--surface))}
.m2-dot.rec{width:30px;height:30px;margin-left:-15px;top:62px;background:var(--accent);border:5px solid var(--surface);box-shadow:0 0 0 2px var(--accent)}
.m2-dot.here{background:var(--ink);border-color:var(--ink);box-shadow:0 0 0 4px var(--surface)}
.m2-lab{position:absolute;top:100px;transform:translateX(-50%);text-align:center;white-space:nowrap;font-size:13px;color:var(--muted);line-height:1.3}
.m2-lab b{display:block;font-size:15px;color:var(--ink);font-weight:650}
.m2-lab.rec b{color:var(--accent)}
.m2-lab.end{transform:translateX(-78%)}
.g-no{border-left:3px solid var(--ink)!important}
.g-no .bn,.g-no .bs{color:var(--faint)}
.g-no .m2-rail{height:6px;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--muted) 30%,transparent) 0 4px,transparent 4px 8px)}

.m2-dates{margin:40px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.m2-dates>div{padding:18px 20px 18px 0}
.m2-dates>div+div{padding-left:20px;border-left:1px solid var(--line)}
.m2-dates dt{font-size:14px;color:var(--muted)}
.m2-dates dd{margin:4px 0 0;font:650 21px var(--f-display);font-variation-settings:"wdth" 112}
.m2-dates small{display:block;margin-top:2px;font:400 13.5px var(--f-body);color:var(--muted);font-variation-settings:normal}

.m2-sec{margin-top:44px}
.m2-need{list-style:none;margin:16px 0 0;padding:0}
.m2-need li{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:14px;align-items:baseline;padding:16px 0;border-top:1px solid var(--line)}
.m2-need li:last-child{border-bottom:1px solid var(--line)}
.m2-need .d{width:10px;height:10px;border-radius:50%;transform:translateY(-1px)}
.m2-need .d.out{background:var(--crit)}.m2-need .d.soon{background:var(--amber)}
.m2-need b{font-weight:650;font-size:16.5px}
.m2-need p{margin:3px 0 0;color:var(--muted);font-size:15px;max-width:72ch}
.m2-need a{font-size:14.5px;font-weight:600;color:var(--accent);text-decoration:none;white-space:nowrap}
.m2-need a:hover{text-decoration:underline}
.m2-calm{margin:14px 0 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted)}

.m2-more{margin-top:44px;border-top:1px solid var(--line)}
.m2-more details{border-bottom:1px solid var(--line)}
.m2-more summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:16px 0;cursor:pointer;font-weight:600;font-size:16px}
.m2-more summary::-webkit-details-marker{display:none}
.m2-more summary em{font-style:normal;font-weight:400;color:var(--muted);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m2-more summary svg{width:16px;height:16px;color:var(--faint);transition:transform .15s}
.m2-more details[open] summary svg{transform:rotate(180deg)}
.m2-more .mp-body{padding:0 0 20px;max-width:78ch}
.m2-miss{padding:40px 0}

@media (max-width:760px){
  .m2-head{flex-direction:column;gap:14px}
  .m2-sub{font-size:15.5px}
  .m2-acts{width:100%}
  .m2-verdict{grid-template-columns:minmax(0,1fr);margin-top:26px}
  .m2-side{grid-column:1;grid-row:auto}
  .m2-run{flex-direction:column;align-items:stretch}
  .m2-run p{min-width:0}
  .m2-seg .bs,.m2-lab.minor{display:none}
  .g-no .bs{display:block;white-space:normal;top:auto;bottom:10px;font-size:12px}
  .m2-lab{font-size:12px}.m2-lab b{font-size:13.5px}
  .m2-dates{grid-template-columns:minmax(0,1fr)}
  .m2-dates>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .m2-need li{grid-template-columns:18px minmax(0,1fr)}
  .m2-need a{grid-column:2}
}
@media (prefers-reduced-motion:reduce){.m2-more summary svg{transition:none}}
@media print{
  .topnav,footer,.m2-acts,.m2-run .m2-btn,.m2-crumb{display:none!important}
  :root[data-page="model"] body{background:#fff}
  .m2-run{background:none;padding:0}
  .m2-more summary svg{display:none}
}

/* ===== Home alignment pass ===== */
:root[data-page="home"] header{justify-items:center;text-align:center}
:root[data-page="home"] header .meta{justify-self:center}
@media (min-width:901px){:root[data-page="home"] header .lede{max-width:none}}
:root[data-page="home"] #quick{padding:0;background:transparent;box-shadow:none;border:0}
:root[data-page="home"] .q-box{width:100%;margin-inline:auto}
:root[data-page="home"] .q-search input{border:1px solid var(--panel-edge)}
footer{justify-items:center;text-align:center}
footer p{text-wrap:balance}
footer .sources{justify-content:center}
@media (min-width:901px){.answer>div{justify-items:center;text-align:center}}
.topnav .theme-btn{margin-right:-10px}
@media (min-width:901px){
  .answer{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .answer>div{padding:20px 24px 22px}
  .q-card{padding:20px 24px 22px}
  .alert summary{padding:13px 24px}
  .alert p{padding:0 24px 14px 44px}
}
/* ===== Home v2: calm, flat, one system with the model page ===== */
:root[data-page="home"] body{background:var(--surface)}
:root[data-page="home"] .wrap{gap:0}
:root[data-page="home"] header{padding-bottom:0}
:root[data-page="home"] header .meta{background:none;border:0;box-shadow:none;padding:0;margin-top:2px}
:root[data-page="home"] header h1{font-size:clamp(36px,5.4vw,58px);font-weight:760;font-variation-settings:"wdth" 118}
:root[data-page="home"] .q-search input{border:1.5px solid var(--line)}
:root[data-page="home"] .q-search input:hover{border-color:color-mix(in srgb,var(--muted) 55%,var(--line))}
:root[data-page="home"] .q-search input:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}
:root[data-page="home"] .answer{gap:0;background:none;border:0;border-radius:0;overflow:visible}
:root[data-page="home"] .answer>div{background:none;border:0;border-radius:0;box-shadow:none;padding:22px 16px 24px;color:var(--ink);gap:6px}
:root[data-page="home"] .answer>div+div{border-left:1px solid var(--line)}
:root[data-page="home"] .answer .eyebrow{text-transform:none;letter-spacing:0;font:500 14px var(--f-body);color:var(--muted);opacity:1}
:root[data-page="home"] .answer .big{font:700 36px/1.05 var(--f-display);font-variation-settings:"wdth" 118;letter-spacing:-.02em;color:var(--ink)}
:root[data-page="home"] .answer .sub{font-size:14px;color:var(--muted);opacity:1;white-space:normal}
:root[data-page="home"] .alerts{box-shadow:none;background:none;border-top:1px solid var(--line)}
:root[data-page="home"] .alert{border-top:0}
:root[data-page="home"] .alert:hover{background:none}
:root[data-page="home"] .alert summary:hover .alert-txt b{text-decoration:underline;text-underline-offset:3px}
:root[data-page="home"] .alert-dot{box-shadow:none}
:root[data-page="home"] #qcards{border-top:1px solid var(--line)}
:root[data-page="home"] .q-card{background:none;border:0;border-radius:0;box-shadow:none;padding:22px 20px 8px 0;gap:6px;transform:none!important}
:root[data-page="home"] .q-card+.q-card{padding-left:20px}
:root[data-page="home"] .q-k{text-transform:none;letter-spacing:0}
:root[data-page="home"] footer{margin-top:56px}
:root[data-page="home"] .alerts:empty{display:block;min-height:108px;border-top:0}
@media (max-width:900px){:root[data-page="home"] .answer{min-height:269px}}
@media (max-width:640px){:root[data-page="home"] .answer{min-height:320px}}
@media (max-width:440px){:root[data-page="home"] .alerts:empty{min-height:136px}}
@media (max-width:900px){
  :root[data-page="home"] .answer>div:nth-child(3){border-left:0}
  :root[data-page="home"] .answer>div:nth-child(n+3){border-top:1px solid var(--line)}
  :root[data-page="home"] .q-card:nth-child(3){padding-left:0;border-left:0}
  :root[data-page="home"] .q-card:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:640px){
  :root[data-page="home"] .answer{margin-top:32px}
  :root[data-page="home"] .answer>div{padding:14px 2px;border-left:0!important;border-top:1px solid var(--line)}
  :root[data-page="home"] .answer>div:first-child{border-top:0}
  :root[data-page="home"] .answer .big{font-size:24px}
  :root[data-page="home"] .q-card,:root[data-page="home"] .q-card+.q-card{border-left:0;border-top:1px solid var(--line)}
  :root[data-page="home"] .q-card:first-child{border-top:0}
}
/* ===== Visual system v2: every page ===== */
:root{--sh:none}
body,:root[data-page] body{background:var(--surface)}
.topnav{box-shadow:none}
header .meta{background:none;border:0;box-shadow:none;padding:0}
:root:not([data-page="home"]) header h1{font-weight:740;font-variation-settings:"wdth" 118}
:root:not([data-page="home"]) header .lede{font-size:17px;max-width:72ch}
.wrap{gap:40px}
section.panel{background:none;border:0;border-radius:0;box-shadow:none;padding:0}
@media (max-width:640px){section.panel{padding:0}}
/* labels: sentence case, no tracking */
.eyebrow,th,.tag,.eol h3,.u-ctl label,.ap-ctl label,.ap-card .ap-h,.ap-cols h4,.e-tbl th,.e-key h3,.q-k,.b-tag{text-transform:none;letter-spacing:0}
.u-ctl label,.ap-ctl label{font:600 14px var(--f-body);color:var(--ink)}
.eol h3,.e-key h3{font:650 16px var(--f-display);font-variation-settings:"wdth" 112;color:var(--ink)}
.b-tag{font:600 13px var(--f-body);margin-left:10px}
/* tables */
.tbl-wrap,.e-tbl{border:0;border-radius:0;box-shadow:none}
th,.e-tbl th{background:var(--surface);font:600 13px var(--f-body);color:var(--muted);border-bottom:1px solid var(--line)}
/* filter chips: quiet segmented control */
.chips{background:none;padding:0}
/* stat rows: hairlines, colour on the number only */
.u-stats,.e-stats{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.u-stat,.e-stat{border:0;border-radius:0;box-shadow:none;background:none;padding:16px 18px;border-top:0}
.u-stat+.u-stat,.e-stat+.e-stat{border-left:1px solid var(--line)}
.u-stat b,.e-stat b{font:700 30px/1.1 var(--f-display);font-variation-settings:"wdth" 118;color:var(--st,var(--es,var(--ink)))}
.e-stat:hover{background:var(--soft)}
.u-stat span,.e-stat span{font-size:13.5px}
@media (max-width:900px){.u-stat:nth-child(3),.e-stat:nth-child(3){border-left:0}.u-stat:nth-child(n+3),.e-stat:nth-child(n+3){border-top:1px solid var(--line)}}
/* callouts: tinted rows, no boxes */
.e-key{background:none;border-radius:0;padding:18px 0 0;border-top:1px solid var(--line)}
.u-warn{border-radius:0;background:color-mix(in srgb,var(--crit) 6%,transparent);box-shadow:inset 3px 0 0 var(--crit)}
/* upgrade items: rows with a thin severity mark */
.u-list{gap:0!important}
.u-item{border-radius:0;background:none;box-shadow:inset 3px 0 0 var(--st);border-bottom:1px solid var(--line);padding:16px 16px 16px 18px}
.u-item.mine{background:color-mix(in srgb,var(--st) 5%,transparent)}
/* branch cards: columns divided by rules */
.ledger{gap:0;border-top:1px solid var(--line)}
.card,.card.is-rec{border:0;border-radius:0;box-shadow:none;background:none;padding:20px 22px 22px;transform:none!important}
.card+.card{border-left:1px solid var(--line)}
.card.is-rec{box-shadow:inset 0 3px 0 var(--accent)}
.card.dead{background:none}
@media (max-width:900px){.card+.card{border-left:0;border-top:1px solid var(--line)}}
.eol-list{border:0;border-radius:0;border-top:1px solid var(--line)}
/* estate checker and changelog */
.search input{background:var(--surface);border:1px solid var(--line)}
.search input:hover{border-color:color-mix(in srgb,var(--muted) 55%,var(--line))}
.search input:focus{border-color:var(--accent)}
.finder-ctl input,.finder-ctl .search input,#q{background:var(--surface)!important;border:1px solid var(--line)!important}
.finder-ctl input:focus,#q:focus{border-color:var(--accent)!important}
.tool-btn{box-shadow:none!important;border:1px solid var(--line)!important;color:var(--ink)!important}
.tool-btn:hover{border-color:var(--muted)!important;background:var(--surface)!important}
.tbl-wrap,.e-tbl{max-height:none!important;overflow:visible!important}
th,.e-tbl th{top:64px}
@media (max-width:760px){th,.e-tbl th{top:56px}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) body{background:var(--surface)}}
/* ===== Upgrade planner v2 ===== */
.uv{display:grid;gap:12px;padding:6px 0 26px;border-bottom:1px solid var(--line)}
.uv-h{margin:0;font:720 clamp(26px,3.6vw,36px)/1.1 var(--f-display);font-variation-settings:"wdth" 118;letter-spacing:-.02em}
.uv-sum{margin:2px 0 0;font-size:17px;max-width:70ch}
.uv .u-cov{margin:0;color:var(--muted);font-size:14px}
.uv .u-link{margin-left:6px}
.uf{padding:26px 0;border-bottom:1px solid var(--line);display:grid;gap:8px}
.uf h3,.uc h3,.ud h3{margin:0;font:650 20px var(--f-display);font-variation-settings:"wdth" 112}
.uf p{margin:0;color:var(--muted);font-size:15px}
.uf-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.uf-chips button{padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 14.5px var(--f-body);cursor:pointer}
.uf-chips button:hover{border-color:var(--muted)}
.uf-chips button[aria-pressed="true"]::before{content:"\2713";margin-right:6px}
.uf-chips .uf-clear{border-style:dashed;color:var(--muted)}
.uf-chips button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.uf .uf-note{margin-top:6px;font-size:14px;color:var(--ink)}
.uf .uf-note.muted{margin-top:0;color:var(--muted)}
.uc{padding:26px 0 8px}
.uc-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.uc-list{list-style:none;margin:14px 0 0;padding:0;counter-reset:ck}
.uc-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline;padding:14px 0;border-top:1px solid var(--line)}
.uc-list li:last-child{border-bottom:1px solid var(--line)}
.uc-list label{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:baseline;cursor:pointer}
.uc-list input{width:18px;height:18px;margin:0;accent-color:var(--accent);transform:translateY(3px);cursor:pointer}
.uc-list b{font-weight:650;font-size:16px}
.uc-list em{display:block;font-style:normal;color:var(--muted);font-size:14.5px;margin-top:3px;max-width:78ch}
.uc-list .u-chip{margin-left:8px}
.uc-list li.done b{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}
.uc-list a{font-size:14px;font-weight:600;color:var(--accent);text-decoration:none;white-space:nowrap}
.uc-list a:hover{text-decoration:underline}
.uc-more{margin:12px 0 0;font-size:14px;color:var(--muted)}
.uv~.u-stats{margin:26px 0 0}
.ud{padding-top:30px}
.ud-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.ud-top .u-search{flex:0 1 360px}
.ud .u-sec{border-top:1px solid var(--line);margin:0}
.ud .u-sec>summary{padding:16px 0}
.ud .u-sec:last-of-type{border-bottom:1px solid var(--line)}
@media (max-width:640px){
  .uc-top{flex-direction:column;align-items:flex-start}
  .uc-list li{grid-template-columns:minmax(0,1fr)}
  .uc-list a{padding-left:34px}
  .ud-top .u-search{flex:1 1 100%}
}
/* ===== Stable loading: nothing jumps ===== */
html:not(.ready) .wrap > section,html:not(.ready) .wrap > div:not(.meta),html:not(.ready) footer{visibility:hidden}
html.e-wait #eOut{min-height:100vh}
html.e-wait #eEstWrap,html.e-wait .e-key,html.e-wait footer{visibility:hidden}
.e-stat.ph b{color:transparent}
#uOut:has(> .u-loading){min-height:100vh}
html:has(#uOut > .u-loading) footer{visibility:hidden}
/* ===== Shell v3: nav, search dialog, data status, contrast ===== */
:root{--faint:#6B7884;--amber:#A35F06}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--faint:#8593A0;--amber:#E3A33A}}
:root[data-theme="dark"]{--faint:#8593A0;--amber:#E3A33A}
.topnav-in{gap:14px}
@media (min-width:761px){
.tabs{background:none!important;padding:0!important;gap:2px}
.tabs a{background:none!important;box-shadow:none!important;color:var(--muted)!important;font:550 15px var(--f-body)!important;padding:8px 12px!important;border-radius:8px;position:relative}
.tabs a svg{display:none}
.tabs a:hover{color:var(--ink)!important;background:var(--soft)!important}
.tabs a.on{color:var(--ink)!important}
.tabs a.on::after{content:"";position:absolute;left:12px;right:12px;bottom:-13px;height:2px;border-radius:2px;background:var(--accent)}
}
.tabs a:focus-visible,.gs-btn:focus-visible,.theme-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.gs-btn{margin-left:auto;display:inline-flex;align-items:center;gap:10px;height:38px;padding:0 8px 0 12px;min-width:220px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--faint);font:400 14.5px var(--f-body);cursor:pointer}
.gs-btn:hover{border-color:color-mix(in srgb,var(--muted) 55%,var(--line));color:var(--muted)}
.gs-btn svg{width:16px;height:16px;flex:none}
.gs-btn kbd,.gs-foot kbd,.gs-esc{font:500 12px var(--f-body);border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--muted);background:var(--surface)}
.gs-btn kbd{margin-left:auto}
.theme-btn{margin-left:0!important}
.gs{border:0;padding:0;background:none;max-width:none;max-height:none;width:100%;height:100%;margin:0}
.gs::backdrop{background:color-mix(in srgb,#0B1220 45%,transparent)}
.gs[open]{display:grid;justify-items:center;align-items:start;padding:12vh 16px 16px}
.gs-box{width:min(620px,100%);background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px -20px rgba(11,18,32,.45);overflow:hidden;display:grid}
.gs-field{display:flex;align-items:center;gap:12px;padding:0 14px 0 18px;border-bottom:1px solid var(--line)}
.gs-field svg{width:18px;height:18px;color:var(--faint);flex:none}
.gs-field input{flex:1;min-width:0;height:58px;border:0;background:none;font:450 18px var(--f-body);color:var(--ink);outline:none}
.gs-field input::-webkit-search-cancel-button{display:none}
.gs-esc{cursor:pointer}
.gs-list{max-height:min(420px,56vh);overflow-y:auto;padding:8px}
.gs-h{margin:8px 10px 4px;font:600 13px var(--f-body);color:var(--muted)}
.gs-opt{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--ink)}
.gs-opt[aria-selected="true"]{background:var(--soft)}
.gs-n{font-weight:600;font-size:15.5px}
.gs-s{grid-column:1;font-size:13.5px;color:var(--muted)}
.gs-tag{grid-row:1/3;grid-column:2;font-size:12.5px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px}
.gs-none{margin:0;padding:18px 12px;color:var(--muted)}
.gs-foot{margin:0;display:flex;gap:18px;padding:10px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.gs-foot kbd{margin-right:4px}
@media (max-width:760px){.gs-btn{min-width:0;width:38px;padding:0;justify-content:center;border-color:transparent;margin-left:auto}.gs-btn .gs-l,.gs-btn kbd{display:none}.gs-foot{display:none}.gs[open]{padding-top:8px}}
/* data status */
header .meta{z-index:30}
.fr summary{display:inline-flex;align-items:center;gap:12px;cursor:pointer;list-style:none}
.fr summary::-webkit-details-marker{display:none}
.fr-more{font:600 13px var(--f-body);color:var(--accent)}
.fr-panel{position:absolute;left:0;top:calc(100% + 10px);z-index:15;width:min(560px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px -18px rgba(11,18,32,.35);padding:16px 18px;display:grid;gap:12px;text-align:left}
.fr:not([open]) .fr-panel{display:none}
:root[data-page="home"] .fr-panel{left:50%;transform:translateX(-50%)}
.fr-state{margin:0;font-size:14px;line-height:1.5}
.fr-src{margin:0;display:grid;gap:10px}
.fr-src div{display:grid;gap:2px;padding-top:10px;border-top:1px solid var(--line)}
.fr-src dt{font-weight:600;font-size:14px}
.fr-src dd{margin:0;font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap}
.fr-src a{color:var(--accent);text-decoration:none;font-weight:500}
.fr-panel h4{margin:4px 0 0;font:650 14px var(--f-body)}
.fr-panel .changes{position:static;width:auto;box-shadow:none;border:0;padding:0;margin:0;max-width:none;background:none}
.fr-note{margin:0;font-size:12.5px;color:var(--muted)}
/* ===== Home v3: three pathways ===== */
.fr summary{color:inherit;font-weight:inherit}
:root[data-page="home"] header h1{font-size:clamp(30px,5vw,56px);margin-inline:auto}
:root[data-page="home"] header .lede{margin-inline:auto}
:root[data-page="home"] header .meta{order:3}
:root[data-page="home"] #qcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
:root[data-page="home"] .q-card,:root[data-page="home"] .q-card+.q-card{display:grid;grid-template-columns:36px minmax(0,1fr)}
:root[data-page="home"] .q-card+.q-card{border-left:1px solid var(--line)}
.q-ico{grid-row:1/4;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}
.q-ico svg{width:20px;height:20px}
:root[data-page="home"] .q-k{font:600 13.5px var(--f-body);color:var(--accent)}
:root[data-page="home"] .q-card b{font:650 17.5px/1.25 var(--f-display);font-variation-settings:"wdth" 112;color:var(--ink)}
.h-now{display:none}
:root[data-page="home"] .h-now{display:block;margin:52px 0 0;font:650 15px var(--f-body);color:var(--muted);text-align:center}
@media (max-width:900px){:root[data-page="home"] #qcards{grid-template-columns:minmax(0,1fr)}:root[data-page="home"] .q-card+.q-card{border-left:0;border-top:1px solid var(--line)}}
@media (max-width:640px){:root[data-page="home"] .h-now{margin-top:36px}}
/* ===== Model page v3 ===== */
.m2-trio{margin:30px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.m2-trio>div{padding:16px 20px 4px 0}
.m2-trio>div+div{padding-left:20px;border-left:1px solid var(--line)}
.m2-trio dt{font-size:14px;color:var(--muted)}
.m2-trio dd{margin:2px 0 0;font:700 26px/1.15 var(--f-display);font-variation-settings:"wdth" 118}
.m2-trio>div:first-child dd{color:var(--accent)}
.m2-trio p{margin:4px 0 0;font-size:13.5px;color:var(--muted);max-width:36ch}
.m2-trio+.m2-run{margin-top:22px}
.m2-acts{flex-wrap:wrap;justify-content:flex-end}
.mp-paths{list-style:none;margin:0;padding:0;display:grid}
.mp-paths li{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 0;border-top:1px solid var(--line)}
.mp-paths li:first-child{border-top:0}
.mp-paths a{font-weight:600;color:var(--accent);text-decoration:none;font-size:14px}
@media (max-width:760px){.m2-trio{grid-template-columns:minmax(0,1fr)}.m2-trio>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}.m2-trio>div{padding-bottom:12px}.mp-paths li{grid-template-columns:minmax(0,1fr)}.m2-acts .m2-btn{flex:1 1 30%;padding:0 10px}}
/* ===== Firmware releases table and lifecycle switch ===== */
#releases,#fwtl,#lcSwitch{display:none}
:root[data-page="branches"] #releases{display:grid;grid-template-columns:minmax(0,1fr);min-width:0}
.rel-wrap{min-width:0}
@media (max-width:1100px) and (min-width:761px){.rel-wrap,.e-tbl,.tbl-wrap{overflow-x:auto!important}.rel-tbl thead th,.e-tbl th{position:static}}
#fwtl{grid-template-columns:minmax(0,1fr);min-width:0}
:root[data-page="branches"] .wrap>header{order:0}
:root[data-page="branches"] #lifecycle{order:1}
:root[data-page="branches"] #releases{order:2}
:root[data-page="branches"] #notes{order:3}
:root[data-page="branches"] .wrap>footer{order:9}
:root[data-page="eos"] #lcSwitch{display:inline-flex}
:root[data-page="eos"][data-lc="fortios"] #eosPage{display:none}
:root[data-page="eos"][data-lc="fortios"] #fwtl{display:grid;gap:20px}
.lc-switch{justify-self:start;gap:4px;padding:4px;border-radius:12px;background:var(--soft);margin-bottom:-12px}
.lc-switch button{height:38px;padding:0 16px;border:0;border-radius:9px;background:none;font:600 15px var(--f-body);color:var(--muted);cursor:pointer}
.lc-switch button[aria-selected="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(11,18,32,.12)}
.lc-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.lc-intro h2{margin:0;font:650 22px var(--f-display);font-variation-settings:"wdth" 112}
.lc-intro p{margin:6px 0 0;color:var(--muted);max-width:72ch}
.lc-mean{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.lc-mean div{padding:16px 20px 0 0}
.lc-mean div+div{padding-left:20px;border-left:1px solid var(--line)}
.lc-mean dt{font-weight:650}
.lc-mean dd{margin:4px 0 0;font-size:14.5px;color:var(--muted)}
.lc-src{margin:0;font-size:14px;color:var(--muted)}
.lc-src a,.panel-head.sub p a{color:var(--accent)}
@media (max-width:760px){.lc-mean{grid-template-columns:minmax(0,1fr)}.lc-mean div+div{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:12px}}
.rel-head h2{margin:0;font:650 22px var(--f-display);font-variation-settings:"wdth" 112}
.rel-head p{margin:6px 0 0;color:var(--muted)}
.rel-ctl{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.rel-search{flex:1 1 300px;max-width:420px}
.rel-br{display:flex;flex-wrap:wrap;gap:6px}
.rel-br button{height:36px;min-width:44px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font:550 14px var(--f-body);color:var(--ink);cursor:pointer}
.rel-br button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--surface)}
.rel-br button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.rel-only{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;cursor:pointer}
.rel-only input{width:18px;height:18px;accent-color:var(--accent)}
.rel-count{margin:0;font-size:14px;color:var(--muted)}
.rel-tbl{width:100%;border-collapse:collapse;font-size:14.5px}
.rel-tbl thead th{position:sticky;top:64px;z-index:2;background:var(--surface);text-align:left;font:600 13px var(--f-body);color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}
.rel-tbl thead th button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.rel-tbl thead th button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.rel-tbl thead th button::after{content:"";width:0;height:0;border:4px solid transparent;opacity:.35;border-top-color:currentColor;transform:translateY(2px)}
.rel-tbl thead th button[data-dir="up"]::after{border-top-color:transparent;border-bottom-color:currentColor;transform:translateY(-2px);opacity:1}
.rel-tbl thead th button[data-dir="down"]::after{opacity:1}
.rel-tbl tbody th{position:static;background:none;color:var(--ink)}
.rel-tbl tbody td,.rel-tbl tbody th{padding:12px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;font-weight:400}
.rel-tbl small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.rel-tbl .rel-v{all:unset;cursor:pointer;font:700 16px var(--f-display);font-variation-settings:"wdth" 112;display:inline-flex;align-items:center;gap:8px}
.rel-v::before{content:"";width:6px;height:6px;border-right:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);transform:rotate(-45deg);transition:transform .15s}
.rel-row.open .rel-v::before{transform:rotate(45deg)}
.rel-v:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.rel-row:hover td,.rel-row:hover th{background:color-mix(in srgb,var(--soft) 55%,transparent)}
.rel-st{font-size:13px;font-weight:600;white-space:nowrap}
.rel-st.st-ok{color:var(--accent)}.rel-st.st-out{color:var(--crit)}.rel-st.st-new{color:var(--ink)}
.rel-n{font-weight:650}.rel-n.hot{color:var(--crit)}
.rel-none{color:var(--muted)}
.rel-c{display:inline-block;font-size:12.5px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--soft);margin:0 6px 4px 0;white-space:nowrap}
.rel-c.brk{background:color-mix(in srgb,var(--crit) 12%,transparent);color:var(--crit)}
.rel-links a{color:var(--accent);text-decoration:none;font-weight:600;font-size:13.5px;white-space:nowrap}
.rel-links a{display:block}.rel-links a+a{margin-top:4px}
.rel-detail td{background:color-mix(in srgb,var(--soft) 45%,transparent)}
.rel-d{display:grid;gap:14px;padding:4px 4px 8px 22px;max-width:90ch}
.rel-d h4{margin:0 0 6px;font:650 14px var(--f-body)}
.rel-d ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.rel-d li{font-size:14px}
.rel-d a{color:var(--accent)}
.rel-wd{margin:0;color:var(--crit)}
.rel-go{margin:0}.rel-go a{font-weight:600;color:var(--accent);text-decoration:none}
.rel-empty{padding:28px 12px!important;color:var(--muted)}
.linkish{all:unset;cursor:pointer;color:var(--accent);font-weight:600;text-decoration:underline}
@media (max-width:760px){
  .rel-tbl thead{display:none}
  .rel-tbl,.rel-tbl tbody,.rel-tbl tr,.rel-tbl td,.rel-tbl tbody th{display:block}
  .rel-row td,.rel-row th{min-width:0}
  .rel-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:14px 0;border-bottom:1px solid var(--line)}
  .rel-row td,.rel-row th{border:0!important;padding:0!important}
  .rel-row td:nth-child(2){grid-column:2;grid-row:1;text-align:right}
  .rel-row td:nth-child(3){grid-column:1/3}
  .rel-row td:nth-child(4)::before{content:"Open advisories: ";color:var(--muted)}
  .rel-row td:nth-child(5)::before{content:"Known issues: ";color:var(--muted)}
  .rel-row td:nth-child(4) small,.rel-row td:nth-child(2) small{display:inline;margin-left:6px}
  .rel-row td:nth-child(6),.rel-row td:nth-child(7){grid-column:1/3}
  .rel-d{padding-left:0}
}
.lc-tbl{width:100%;border-collapse:collapse;font-size:14.5px}
.lc-tbl thead th{position:static;background:none;text-align:left;font:600 13px var(--f-body);color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line)}
.lc-tbl tbody th,.lc-tbl td{position:static;background:none;text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);font-weight:400;vertical-align:top}
.lc-tbl tbody th{font:inherit}
.lc-tbl tbody th a{font-weight:650;color:var(--ink);text-decoration:none}
.lc-tbl tbody th a:hover{text-decoration:underline}
.lc-tbl small{display:block;color:var(--muted);font-size:12.5px}
.lc-st{display:inline-flex;align-items:center;gap:8px;font-weight:550;white-space:nowrap}
.lc-st i{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.lc-st.st-soon i{background:var(--amber)}.lc-st.st-out i{background:var(--crit)}
@media (max-width:760px){.lc-tbl thead{display:none}.lc-tbl,.lc-tbl tbody,.lc-tbl tr,.lc-tbl td,.lc-tbl tbody th{display:block}.lc-tbl tr{padding:12px 0;border-bottom:1px solid var(--line)}.lc-tbl td,.lc-tbl tbody th{border:0;padding:2px 0}.lc-tbl td:nth-child(3)::before{content:"Released ";color:var(--muted)}.lc-tbl td:nth-child(4)::before{content:"Bug fixes end ";color:var(--muted)}.lc-tbl td:nth-child(5)::before{content:"Support ends ";color:var(--muted)}.lc-tbl td small{display:inline;margin-left:6px}}
.uc-acts{display:flex;flex-wrap:wrap;gap:8px}
.uv-cap{margin:0;font-size:14.5px;color:var(--ink);padding-left:12px;border-left:3px solid var(--amber)}
.lc-intro a{color:var(--accent)}
.e-est{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:4px 0}
.e-est summary{padding:12px 0}
.e-est-acts{display:flex;gap:8px;flex-wrap:wrap}
.e-est-sum{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
.e-est-sum .st-miss{color:var(--crit)}
.e-est-empty{margin:0;color:var(--muted);font-size:14px}
.e-na{color:var(--muted)}
.e-bad td{background:color-mix(in srgb,var(--crit) 5%,transparent)}
#eosPage>.lc-intro{margin-bottom:14px}
#eEst{line-height:1.55;padding:12px 14px;font:15px var(--f-body)}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible,input[type="checkbox"]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
input[type="search"]:focus-visible,input[type="text"]:focus-visible{outline:none}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.rel-v::before,.m2-more summary svg{transition:none}}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--surface);padding:10px 14px;border-radius:8px;font-weight:600;text-decoration:none}
.skip:focus{top:10px}
main.wrap:focus{outline:none}
:root[data-page="branches"] #lifecycle>.panel-head{display:none}
/* ===== Home refinement pass ===== */
:root[data-page="home"] header h1{font-size:clamp(28px,4.2vw,46px)}
:root[data-page="home"] .q-box{max-width:700px}
:root[data-page="home"] .q-search input{height:62px;border-radius:14px;border:1.5px solid color-mix(in srgb,var(--muted) 30%,var(--line));background:var(--surface);font-size:18px}
:root[data-page="home"] .q-search input:hover{border-color:color-mix(in srgb,var(--muted) 55%,var(--line))}
:root[data-page="home"] .q-search input:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 15%,transparent),0 10px 28px -18px rgba(11,18,32,.22)}
:root[data-page="home"] .q-search input::placeholder{color:var(--faint)}
.meta.meta-home{justify-self:center;margin:10px auto 0;display:flex;justify-content:center;font-size:13px}
.meta.meta-home .fr-panel{left:50%;transform:translateX(-50%)}
:root[data-page="home"] .q-sug{top:calc(100% + 8px);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px -18px rgba(11,18,32,.38);padding:6px;gap:2px;background:var(--surface)}
:root[data-page="home"] .q-sug button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 14px;border-radius:10px;text-align:left}
.qs-n{font:550 16px var(--f-body);color:var(--ink)}
.qs-n mark{background:none;color:inherit;font-weight:750}
.qs-s{font-size:13.5px;color:var(--muted);white-space:nowrap}
:root[data-page="home"] .q-sug button.act,:root[data-page="home"] .q-sug button:hover{background:var(--soft)}
:root[data-page="home"] .q-sug button.act .qs-s::after{content:"\21B5";margin-left:10px;color:var(--faint)}
:root[data-page="home"] .q-none{padding:14px}
/* pathways */
:root[data-page="home"] .q-s{color:var(--muted)}
.q-stat{grid-column:2;margin-top:12px;font-size:13px;color:var(--faint)}
:root:not([data-page="home"]) .q-stat{display:none}
/* section headings */
:root[data-page="home"] .h-now,.h-imp{display:none}
:root[data-page="home"] .h-now,:root[data-page="home"] .h-imp{display:block;margin:44px 0 0;font:650 18px var(--f-display);font-variation-settings:"wdth" 112;color:var(--ink);text-align:left}
:root[data-page="home"] .h-imp:has(+ .alerts:empty){visibility:hidden}
/* recommended releases block */
:root[data-page="home"] .answer{margin-top:12px;display:block;border-top:0;border-bottom:0;min-height:0}
:root[data-page="home"] .answer>.g2{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:0;padding:0;border:1px solid var(--line);border-radius:14px;text-align:left;justify-items:stretch}
.g-main{display:grid;align-content:start;gap:6px;padding:24px 28px;border-right:1px solid var(--line)}
.g-k{font:600 14px var(--f-body);color:var(--accent)}
.g-v{font:760 64px/1 var(--f-display);font-variation-settings:"wdth" 125;letter-spacing:-.03em;color:var(--ink)}
.g-q{margin:6px 0 0;font-size:14.5px;color:var(--muted);max-width:46ch;line-height:1.5}
.g-link:hover{text-underline-offset:3px}
.g-side{margin:0;display:grid}
.g-side>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;align-items:baseline;padding:16px 24px;border-top:1px solid var(--line)}
.g-side>div:first-child{border-top:0}
.g-side dt{font-size:14px;color:var(--ink);font-weight:550}
.g-side dd{margin:0;grid-row:1/3;grid-column:2;align-self:center;font:700 22px var(--f-display);font-variation-settings:"wdth" 118}
.g-side small{font-size:13px;color:var(--muted)}
/* important changes */
:root[data-page="home"] .alerts{margin-top:12px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
:root[data-page="home"] .alert{border-bottom:1px solid var(--line)}
:root[data-page="home"] .alert:last-child{border-bottom:0}
:root[data-page="home"] .alert summary{padding:14px 18px;gap:12px}
:root[data-page="home"] .alert p{padding:0 18px 16px 44px;font-size:14px}
:root[data-page="home"] .alert p a{color:var(--accent);font-weight:600;text-decoration:none;white-space:nowrap}
.alert-tag{flex:none;font:600 12.5px var(--f-body);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 9px}
.alert.k-rem .alert-dot{background:var(--amber);box-shadow:none}
:root[data-page="home"] .alert-txt{white-space:normal;flex-wrap:wrap;gap:2px 10px}
:root[data-page="home"] .alert-txt span{color:var(--muted)}
:root[data-page="home"] .alert summary:hover{background:color-mix(in srgb,var(--soft) 55%,transparent)}
/* footer */
footer.ft{margin-top:48px;padding:22px 0 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;gap:16px 40px;flex-wrap:wrap;text-align:left!important;justify-items:start!important}
.ft-l{display:grid;gap:4px;max-width:62ch}
.ft-brand{font:700 15px var(--f-display);font-variation-settings:"wdth" 112;text-decoration:none;color:var(--ink)}
.ft-l p{margin:0;font-size:13px;color:var(--muted);text-wrap:pretty}
.ft-nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:13.5px}
.ft-nav a,.ft-src{color:var(--muted);text-decoration:none;background:none;border:0;padding:0;font:inherit;cursor:pointer}
.ft-nav a:hover,.ft-src:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){:root[data-page="home"] .answer>.g2{grid-template-columns:minmax(0,1fr)}.g-main{border-right:0;border-bottom:1px solid var(--line)}}
@media (max-width:640px){
  :root[data-page="home"] .q-search input{height:56px;font-size:17px}
  .g-main{padding:18px}.g-side>div{padding:14px 18px}
  :root[data-page="home"] .alert summary{flex-wrap:wrap;padding:14px}
  footer.ft{flex-direction:column}
}
@media (max-width:900px){:root[data-page="home"] .answer>.g2{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:none!important;padding:0!important;gap:0!important;align-items:stretch}:root[data-page="home"] .answer>.g2>*{grid-area:auto!important}}
@media (max-width:640px){
  :root[data-page="home"] .alert summary{display:grid!important;grid-template-columns:10px minmax(0,1fr) 14px;grid-template-areas:"dot tag chev" ". txt .";gap:6px 12px;align-items:center}
  :root[data-page="home"] .alert-dot{grid-area:dot}
  :root[data-page="home"] .alert-tag{grid-area:tag;justify-self:start}
  :root[data-page="home"] .alert-txt{grid-area:txt;display:grid;gap:2px}
  :root[data-page="home"] .alert .chev{grid-area:chev}
  :root[data-page="home"] .alert p{padding:0 14px 14px 36px}
}
/* ===== Model page: compatibility and hardware ===== */
.m2-cb{margin-top:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.m2-cb>div{padding:22px 28px 6px 0}
.m2-cb>div+div{padding-left:28px;padding-right:0;border-left:1px solid var(--line)}
.m2-comp{list-style:none;margin:12px 0 0;padding:0;display:grid}
.m2-comp li{display:grid;gap:2px;padding:10px 0;border-top:1px solid var(--line)}
.m2-comp li:first-child{border-top:0;padding-top:0}
.m2-comp b{font-weight:650;font-size:15px}
.m2-comp span{font-size:14px;color:var(--muted)}
.m2-comp a{color:var(--accent);font-weight:600;text-decoration:none}
.m2-cb-note{margin:12px 0 0;font-size:14px;color:var(--muted)}
.m2-hs{margin:12px 0 4px}
.m2-hw{margin:0;display:grid}
.m2-hw>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:0 14px;padding:10px 0;border-top:1px solid var(--line)}
.m2-hw>div:first-child{border-top:0}
.m2-hw dt{font-size:14px;color:var(--muted);grid-row:1/3}
.m2-hw dd{margin:0;font:650 16px var(--f-display);font-variation-settings:"wdth" 112}
.m2-hw p{margin:2px 0 0;font-size:13.5px;color:var(--muted);grid-column:2}
.m2-cb-src{margin:10px 0 0;font-size:13px;color:var(--muted)}
.m2-cb-src a{color:var(--accent)}
.m2-fos{margin-top:40px}
.m2-fos .m2-dates{margin-top:12px}
@media (max-width:760px){.m2-cb{grid-template-columns:minmax(0,1fr)}.m2-cb>div,.m2-cb>div+div{padding:18px 0 4px;border-left:0}.m2-cb>div+div{border-top:1px solid var(--line)}.m2-hw>div{grid-template-columns:110px minmax(0,1fr)}}
/* ===== Consistency pass ===== */
.chips{gap:6px!important}
.chips button,.rel-br button{height:36px;padding:0 14px!important;border-radius:999px!important;border:1px solid var(--line)!important;background:var(--surface)!important;color:var(--ink)!important;font:550 14px var(--f-body)!important;box-shadow:none!important}
.chips button:hover,.rel-br button:hover,.uf-chips button:hover{border-color:var(--muted)!important}
.chips button[aria-pressed="true"],.rel-br button[aria-pressed="true"]{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--surface)!important}
.uf-chips button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--surface)}
.uf-chips button{height:36px;font-weight:550;font-size:14px}
.chips button:focus-visible,.rel-br button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.tool-btn,.m2-btn{height:40px!important;border-radius:10px!important;font:600 14.5px var(--f-body)!important}
.m2-run .m2-btn.go{height:40px}
/* ===== Hero refinement (Oct 2026) ===== */
:root{--hl:#247B3A}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--hl:var(--accent)}}
:root[data-theme="dark"]{--hl:var(--accent)}
:root[data-page="home"] header{gap:16px}
:root[data-page="home"] header h1{font-size:clamp(32px,4.4vw,52px);line-height:1.05;letter-spacing:-.025em;max-width:none;text-wrap:balance}
:root[data-page="home"] header h1 .h-a{color:var(--ink)}
:root[data-page="home"] header h1 .h-b{color:var(--hl)}
:root[data-page="home"] header h1 span{display:inline-block;white-space:nowrap}
:root[data-page="home"] header .lede{max-width:650px;font-size:18px;line-height:1.5;color:var(--muted);text-wrap:balance}
:root[data-page="home"] #quick{margin-top:32px}
@media (max-width:640px){
  :root[data-page="home"] header{gap:12px}
  :root[data-page="home"] header .lede{font-size:16.5px}
  :root[data-page="home"] #quick{margin-top:24px}
}
/* header search: compact on narrow tablets so the nav never overflows */
@media (min-width:761px) and (max-width:960px){.gs-btn{min-width:0;width:38px;padding:0;justify-content:center}.gs-btn .gs-l,.gs-btn kbd{display:none}}
/* ===== Final homepage polish ===== */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* search */
:root[data-page="home"] .q-search input{border:1.5px solid color-mix(in srgb,var(--muted) 42%,var(--line));box-shadow:0 1px 2px rgba(11,18,32,.05);transition:border-color .15s,box-shadow .15s}
:root[data-page="home"] .q-search input:hover{border-color:color-mix(in srgb,var(--muted) 62%,var(--line))}
:root[data-page="home"] .q-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}
:root[data-page="home"] .q-search .search-ico{color:var(--muted)}
.q-search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:18px;height:18px;margin-right:2px;cursor:pointer;background:var(--muted);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 5.5l9 9m0-9l-9 9' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 5.5l9 9m0-9l-9 9' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
.q-search input::-webkit-search-cancel-button:hover{background:var(--ink)}
:root[data-page="home"] .q-sug:not([hidden]){animation:qsIn .14s ease-out}
@keyframes qsIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
:root[data-page="home"] .q-sug button{transition:background .12s}
:root[data-page="home"] .q-sug button.act{outline:none}
/* pathway panels */
:root[data-page="home"] .q-card{position:relative;transition:background .15s}
:root[data-page="home"] .q-card::after{content:"";display:block;position:absolute;width:16px;height:16px;margin:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E") center/contain no-repeat;transition:opacity .15s,transform .15s}
:root[data-page="home"] .q-stat{font-variant-numeric:tabular-nums}
:root[data-page="home"] .q-card b{text-wrap:balance}
@media (hover:none){:root[data-page="home"] .q-card::after{transform:none}}
/* guidance */
.g-v,.g-side dd,.g-side small{font-variant-numeric:tabular-nums}
.g-src{margin:2px 0 0;font-size:13px;color:var(--muted)}
.g-src a{color:var(--muted);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--muted) 45%,transparent);text-underline-offset:3px}
.g-src a::after{content:" \2197";font-size:12px}
.g-src a:hover{color:var(--ink);text-decoration-color:currentColor}
.g-link::after{transition:transform .15s}
.g-link:hover::after,.g-link:focus-visible::after{transform:translateX(3px)}
.g-pre{font:600 15px var(--f-body);color:var(--muted);margin-right:2px}
/* freshness */
.meta.meta-home .asof{gap:8px}
@media (prefers-reduced-motion:reduce){:root[data-page="home"] .q-sug:not([hidden]){animation:none}:root[data-page="home"] .q-card::after,.g-link::after{transition:none;transform:none}}
/* ===== Homepage refinements: independent cards, button, freshness ===== */
:root[data-page="home"] #qcards{border:0;border-radius:0;overflow:visible}
:root[data-page="home"] .q-card,:root[data-page="home"] .q-card+.q-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 1px 2px rgba(11,18,32,.04);transition:border-color .15s,background .15s,box-shadow .15s}
:root[data-page="home"] .q-card:focus-visible{background:var(--surface)}
:root[data-page="home"] .q-card::after{top:auto;background:var(--faint);opacity:1;transform:none}
@media (hover:none){:root[data-page="home"] .q-card::after{opacity:1}}
@media (max-width:900px){:root[data-page="home"] #qcards{gap:12px}}
@media (max-width:640px){:root[data-page="home"] .q-card::after{right:18px}}
@media (prefers-reduced-motion:reduce){:root[data-page="home"] .q-card,:root[data-page="home"] .q-card::after{transition:none}}
.q-h{margin:0;padding:8px 14px 4px;font:600 12.5px var(--f-body);color:var(--muted)}
/* model-check button */
.g-link{display:inline-flex;align-items:center;gap:7px;justify-self:start;margin-top:14px;height:38px;padding:0 14px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font:550 14.5px var(--f-body);text-decoration:none;transition:background .15s}
.g-link:hover{background:color-mix(in srgb,var(--accent) 86%,#000);text-decoration:none}
.g-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.g-link::after{content:"\2192";font-size:15px}
/* freshness: neutral when current, amber only when overdue */
.meta.is-stale .asof i{background:var(--amber);box-shadow:none}
/* ===== Four pathway cards ===== */
:root[data-page="home"] #qcards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
:root[data-page="home"] .q-card,:root[data-page="home"] .q-card+.q-card{grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto auto 1fr auto;column-gap:10px;row-gap:0}
:root[data-page="home"] .q-ico{grid-row:1;grid-column:1;width:32px;height:32px;border-radius:9px}
:root[data-page="home"] .q-ico svg{width:18px;height:18px}
:root[data-page="home"] .q-k{grid-row:1;grid-column:2;align-self:center}
:root[data-page="home"] .q-card b{grid-column:1/-1;font-size:17px;line-height:1.3}
:root[data-page="home"] .q-s{grid-column:1/-1;font-size:14.5px;line-height:1.5}
:root[data-page="home"] .q-stat{grid-row:5;grid-column:1/-1;padding-right:26px}
:root[data-page="home"] .q-card::after{right:18px}
@media (max-width:1120px){:root[data-page="home"] #qcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){:root[data-page="home"] #qcards{grid-template-columns:minmax(0,1fr);gap:12px}}
/* recommended version size */
.g-v{font-size:clamp(40px,5.3vw,54px);line-height:1;margin-top:2px}
:root[data-page="home"] .g-main .g-q{margin-top:6px}
@media (max-width:640px){.g-v{font-size:40px}}
/* ===== Cards: compact spacing and one interaction model ===== */
:root[data-page="home"] .q-card,:root[data-page="home"] .q-card+.q-card{padding:18px 20px 16px}
:root[data-page="home"] .q-card b{margin-top:12px;text-decoration:none!important}
:root[data-page="home"] .q-s{margin-top:4px}
:root[data-page="home"] .q-stat{margin-top:14px}
:root[data-page="home"] .q-card::after{bottom:18px}
:root[data-page="home"] .q-card:hover{transform:none;box-shadow:0 1px 2px rgba(11,18,32,.04)}
:root[data-page="home"] .q-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
:root[data-page="home"] .q-card:focus-visible::after{background:var(--accent);transform:translateX(3px)}
@media (hover:hover){
  :root[data-page="home"] .q-card:hover{border-color:color-mix(in srgb,var(--muted) 38%,var(--line));background:color-mix(in srgb,var(--soft) 35%,var(--surface))}
  :root[data-page="home"] .q-card:hover::after{background:var(--accent);transform:translateX(3px)}
}
:root[data-page="home"] .q-card:active{background:color-mix(in srgb,var(--soft) 55%,var(--surface))}
@media (prefers-reduced-motion:reduce){:root[data-page="home"] .q-card:hover::after,:root[data-page="home"] .q-card:focus-visible::after{transform:none}}
@media (max-width:640px){:root[data-page="home"] .q-card,:root[data-page="home"] .q-card+.q-card{padding:16px 18px 14px}:root[data-page="home"] .q-card b{margin-top:10px}:root[data-page="home"] .q-stat{margin-top:12px}:root[data-page="home"] .q-card::after{bottom:16px}}
/* freshness status levels */
.meta .asof i{background:var(--faint);box-shadow:none}
.meta.fr-ok .asof i{background:var(--accent)}
.meta.fr-warn .asof i{background:var(--amber)}
.meta.fr-bad .asof i{background:var(--crit)}
.fr-st{font-weight:600;color:var(--ink)}
.fr-sep{color:var(--faint)}
/* homepage vertical rhythm */
:root[data-page="home"] .wrap{padding-top:24px}
.meta.meta-home{margin-top:6px}
:root[data-page="home"] #qcards{margin-top:28px}
:root[data-page="home"] .h-now{margin-top:36px}
@media (max-width:640px){:root[data-page="home"] .wrap{padding-top:20px}:root[data-page="home"] #qcards{margin-top:24px}:root[data-page="home"] .h-now,:root[data-page="home"] .h-imp{margin-top:32px}}
/* homepage: central search only */
:root[data-page="home"] .gs-btn{display:none}
:root[data-page="home"] .theme-btn{margin-left:auto!important}
/* ===== Inner pages polish ===== */
/* compact page headers */
:root:not([data-page="home"]):not([data-page="model"]) .wrap{padding-top:28px}
:root:not([data-page="home"]):not([data-page="model"]) header{gap:10px}
:root:not([data-page="home"]):not([data-page="model"]) header h1{font-size:clamp(30px,3.4vw,40px);line-height:1.08;letter-spacing:-.022em;margin:4px 0 0}
:root:not([data-page="home"]):not([data-page="model"]) header .lede{font-size:16.5px;line-height:1.55;max-width:68ch;margin:0}
@media (max-width:640px){:root:not([data-page="home"]):not([data-page="model"]) .wrap{padding-top:20px}:root:not([data-page="home"]):not([data-page="model"]) header h1{font-size:30px}:root:not([data-page="home"]):not([data-page="model"]) header .lede{font-size:15.5px}}
/* one section heading size */
#lifecycle>.panel-head h2,.rel-head h2,.lc-intro h2,#model>.panel-head h2{font:650 22px var(--f-display);font-variation-settings:"wdth" 112;letter-spacing:-.01em}
/* release search box */
.rel-search input{flex:1;width:100%;height:40px;padding:0 12px 0 38px;border-radius:10px;font:15px var(--f-body);color:var(--ink);background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 35%,var(--line))}
.rel-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}
.rel-search .search-ico{left:13px}
/* models list */
#finderNote{margin:0;font-size:14px;color:var(--muted)}
#tbody .m-a{color:inherit;text-decoration:none}
@media (min-width:761px){
  #tbody tr[data-m] td:last-child{position:relative;padding-right:36px}
  #tbody tr[data-m] td:last-child::after{content:"\2192";position:absolute;right:14px;top:50%;transform:translate(-4px,-50%);color:var(--accent);opacity:0;transition:opacity .15s,transform .15s}
  #tbody tr[data-m]:hover td:last-child::after,#tbody tr[data-m]:focus-visible td:last-child::after{opacity:1;transform:translate(0,-50%)}
  #tbody tr[data-m]:hover .m-a{text-decoration:underline;text-underline-offset:3px}
}
@media (prefers-reduced-motion:reduce){#tbody tr[data-m] td:last-child::after{transition:none}}
/* model page: calmer version number */
.m2-num{font-size:clamp(60px,7.4vw,92px);line-height:.9}
.m2-verdict{align-items:end;gap:6px 44px}
.m2-k{font-size:15px}
@media (max-width:760px){.m2-num{font-size:64px}}
/* lifecycle: make the list checker read as expandable */
.e-est summary{cursor:pointer}
.e-est-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.e-est-cta{display:inline-flex;align-items:center;gap:6px;flex:none;height:34px;padding:0 12px;border:1px solid var(--line);border-radius:9px;font:600 14px var(--f-body);color:var(--ink);background:var(--surface)}
.e-est-cta::after{content:"";width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.e-est[open] .e-est-cta::after{transform:translateY(1px) rotate(-135deg)}
.e-est summary:hover .e-est-cta{border-color:color-mix(in srgb,var(--muted) 45%,var(--line))}
.e-est[open] .e-est-cta{font-size:0;gap:0;padding:0 11px}.e-est[open] .e-est-cta::before{content:"Close";font-size:14px;margin-right:6px}
@media (max-width:760px){.e-tbl tr.e-row td:nth-child(5)::before{content:"End of support ";color:var(--muted)}}
.m2-verdict{grid-template-rows:1fr auto}
.m2-k{align-self:end}
@media (min-width:761px){#tbody tr[data-m] td{padding-top:8px;padding-bottom:8px;vertical-align:middle}}
#model>.panel-head{margin-bottom:-6px}
:root[data-page="models"] .wrap{gap:28px}
:root[data-page="branches"] #lifecycle .panel-head.sub h3{font:650 22px var(--f-display);font-variation-settings:"wdth" 112;letter-spacing:-.01em}
.e-est summary .e-est-h{font-size:inherit;color:var(--ink)}
.e-est summary .e-est-cta{font-size:14px;color:var(--ink)}
.e-est[open] summary .e-est-cta{font-size:0}
.e-more{display:flex;justify-content:center;padding:18px 0 4px;border-top:1px solid var(--line)}
/* planner: accordion headings sit below the section heading in size */
.ud .u-sec h3{font:650 17px var(--f-display);font-variation-settings:"wdth" 112}
/* freshness panel: per-source status */
.fr-src dt{display:flex;align-items:center;justify-content:space-between;gap:10px}
.fr-chip{flex:none;font:600 12px var(--f-body);padding:2px 8px;border-radius:999px;background:var(--soft);color:var(--muted)}
.fr-c-ok{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}
.fr-c-late{background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber)}
.fr-c-fail{background:color-mix(in srgb,var(--crit) 12%,transparent);color:var(--crit)}
.fr-src dd{flex-direction:column;align-items:flex-start;gap:3px}
/* recommendation: source sits under the action, as supporting detail */
:root[data-page="home"] .g-main .g-link{margin-top:14px}
.g-main .g-src{margin-top:8px;font-size:12.5px;color:var(--faint)}
.g-main .g-src a{color:var(--muted);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--muted) 40%,transparent);text-underline-offset:3px;border-radius:3px}
.g-main .g-src a:hover{color:var(--ink);text-decoration-color:currentColor}
.g-main .g-src a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;color:var(--ink)}
/* cards: restrained lift on hover, focus stays a distinct green outline */
@media (hover:hover){:root[data-page="home"] .q-card:hover{box-shadow:0 1px 2px rgba(11,18,32,.05),0 6px 16px -12px rgba(11,18,32,.28)}}
:root[data-page="home"] .q-card:focus-visible{border-color:var(--line)}
@media (min-width:1121px){.q-long{display:none}}
/* model page: two facts under the verdict, type tags on upgrade notes */
.m2-trio.m2-duo{grid-template-columns:repeat(2,minmax(0,1fr))}
.m2-trio.m2-duo>div:first-child dd{color:var(--ink)}
@media (max-width:760px){.m2-trio.m2-duo{grid-template-columns:minmax(0,1fr)}}
.m2-tag{display:inline-block;margin:0 10px 4px 0;font:600 12.5px var(--f-body);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 9px;vertical-align:2px}
.m2-need .d{background:var(--faint)}
.m2-trio.m2-duo p{max-width:54ch}
@media (max-width:760px){.m2-tag{display:table;margin:0 0 6px}}
/* ===== Model header: identity left, image and actions right ===== */
.m2-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px 32px}
.m2-id{min-width:0}
.m2-sub{margin-top:8px;max-width:62ch}
.m2-life{display:inline-flex;align-items:center;gap:8px;margin:12px 0 0;font:550 14px var(--f-body);color:var(--ink)}
.m2-life i{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}
.m2-life.l-info i{background:var(--faint)}.m2-life.l-soon i{background:var(--amber)}.m2-life.l-out i{background:var(--crit)}
.m2-life-sep{color:var(--faint)}
.m2-side-r{display:grid;justify-items:end;gap:14px}
.m2-fig{margin:0;display:flex;align-items:flex-end;justify-content:flex-end;width:260px;height:120px}
.m2-fig img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
:root[data-theme="dark"] .m2-fig img{filter:brightness(.92)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .m2-fig img{filter:brightness(.92)}}
@media (max-width:1024px){.m2-fig{width:210px;height:100px}}
@media (max-width:760px){.m2-head{grid-template-columns:minmax(0,1fr);align-items:start}.m2-side-r{justify-items:stretch}.m2-fig{display:none}}
@media print{.m2-fig{width:180px;height:84px}}
/* utility actions share the breadcrumb row */
.m2-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.m2-top .m2-acts{width:auto;flex-wrap:nowrap;justify-content:flex-end}
.m2-top .m2-btn{padding:0 11px;font:600 13.5px var(--f-body)!important;border-radius:9px!important;gap:6px}
.m2-top .m2-btn svg{width:15px;height:15px}
.m2-head{margin-top:10px}
@media (max-width:760px){
  .m2-top .m2-acts{width:auto}.m2-top .m2-acts .m2-btn{flex:none;width:36px;padding:0;justify-content:center}
  .m2-top .m2-btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}
/* photos supplied on white: give them a soft light tile in dark mode instead of a harsh block */
:root[data-theme="dark"] .m2-fig.bg-white{background:#F1F3F2;border-radius:12px;padding:10px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .m2-fig.bg-white{background:#F1F3F2;border-radius:12px;padding:10px}}
:root[data-theme="dark"] .m2-fig.bg-white img{filter:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .m2-fig.bg-white img{filter:none}}
/* front-panel drawings: wide and thin, so a wider slot keeps ports legible */
.m2-fig.m2-panel{width:420px;height:auto;max-height:90px}
.m2-fig.m2-panel img{width:auto;max-width:100%;height:auto;max-height:90px}
@media (max-width:1100px){.m2-fig.m2-panel{width:340px}}
@media (max-width:900px){.m2-fig.m2-panel{width:280px}}
/* audit fixes: contrast, list markup, freshness chips */
.fr-c-ok{color:color-mix(in srgb,var(--accent) 78%,#000)}
.fr-c-late{color:color-mix(in srgb,var(--amber) 78%,#000)}
.fr-c-manual{background:var(--soft);color:var(--ink)}
:root[data-theme="dark"] .fr-c-ok{color:var(--accent)}:root[data-theme="dark"] .fr-c-late{color:var(--amber)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .fr-c-ok{color:var(--accent)}:root:not([data-theme="light"]) .fr-c-late{color:var(--amber)}}
.g-side dt small{display:block;margin-top:2px;font-weight:400;color:var(--muted)}
/* ===== Planner: model search, start state, grouped results ===== */
.u-ctl{grid-template-columns:1.4fr 1fr 1fr;align-items:end}
.u-ctl .u-mp{position:relative;display:grid;gap:6px}
.u-ctl .u-lab{font:600 14px var(--f-body);color:var(--ink)}
.u-mp-box{position:relative;display:flex}
.u-mp-box input{flex:1;width:100%;height:44px;padding:0 12px 0 38px;border-radius:12px;border:1px solid color-mix(in srgb,var(--muted) 35%,var(--line));background:var(--surface);font:15px var(--f-body);color:var(--ink)}
.u-mp-box input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}
.u-mp-box .search-ico{left:13px}
.u-mp-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:25;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 44px -18px rgba(11,18,32,.38);padding:6px;gap:2px;background:var(--surface);max-height:360px;overflow:auto}
.u-mp-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:10px 12px;border:0;border-radius:9px;background:none;text-align:left;cursor:pointer}
.u-mp-list button.act,.u-mp-list button:hover{background:var(--soft)}
.u-ctl select{height:44px}
.u-ctl select:disabled{opacity:.6;cursor:not-allowed}
@media (max-width:900px){.u-ctl{grid-template-columns:1fr 1fr}.u-ctl .u-mp{grid-column:1/-1}}
@media (max-width:420px){.u-ctl{grid-template-columns:1fr}}
/* ===== Shared status style (H4): coloured dot + ink label everywhere ===== */
.sb,.rel-st,.m2-st{display:inline-flex;align-items:center;gap:8px;padding:0;border-radius:0;background:none;color:var(--ink);font:600 14px var(--f-body);letter-spacing:0;white-space:nowrap;max-width:100%}
@media (max-width:520px){.m2-st{white-space:normal}}
.sb svg,.m2-st i{display:none}
.sb::before,.rel-st::before,.m2-st::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--stc,var(--accent))}
.sb-ok,.rel-st.st-ok,.m2-st.st-ok{--stc:var(--accent)}
.sb-soon,.m2-st.st-soon{--stc:var(--amber)}
.sb-out,.rel-st.st-out,.m2-st.st-out{--stc:var(--crit)}
.sb-mid{--stc:var(--faint)}
.rel-st.st-ok,.rel-st.st-out,.rel-st.st-new{color:var(--ink)}
.rel-st.st-new{--stc:var(--muted)}
.rel-st.st-dead{color:var(--muted);--stc:var(--faint)}
.m2-st{font-size:15px;gap:9px}
.m2-st::before{width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in srgb,var(--stc) 16%,transparent)}
/* Category tags: neutral outline; risk shown by a small dot, not a coloured fill */
.u-chip,.rel-c{display:inline-flex;align-items:center;gap:6px;font:600 12.5px var(--f-body);letter-spacing:0;color:var(--muted);background:none;border:1px solid var(--line);border-radius:999px;padding:1px 9px;white-space:nowrap;vertical-align:1px}
.u-chip.mine,.u-chip.exp,.u-chip.risk,.rel-c.brk{color:var(--ink);background:none}
.u-chip.mine::before,.u-chip.exp::before,.u-chip.risk::before,.rel-c.brk::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--crit)}
.u-chip.mine::before{background:var(--accent)}
.u-t .u-chip{margin-left:8px}
/* H5: contrast */
#tbody tr.grp td .grp-n{color:var(--muted)}
.today-tag{color:#1B1206}
/* H5: notes inside description lists are dd, styled as before */
.m2-trio dd.m2-note{margin:4px 0 0;font:400 13.5px/1.5 var(--f-body);font-variation-settings:normal;letter-spacing:0;color:var(--muted);max-width:36ch}
.m2-trio.m2-duo dd.m2-note,.m2-trio.m2-duo>div:first-child dd.m2-note{max-width:54ch;color:var(--muted)}
.m2-hw dd.m2-note{margin:2px 0 0;font:400 13.5px/1.5 var(--f-body);font-variation-settings:normal;color:var(--muted);grid-column:2}
/* M2: one control and heading scale on inner pages */
#relQ,#mpRun{height:44px;border-radius:12px}
.m2-top .m2-btn{height:36px!important}
.uv-h{font-size:clamp(24px,3vw,30px)}
:root:not([data-page="home"]) .panel-head h2,#lh{font:650 22px var(--f-display);font-variation-settings:"wdth" 112;letter-spacing:-.01em}
.m2-h{font-size:22px}
/* M3: aligned figures in tables and version lists */
#tbody td,.rel-row td,.lc-tbl td,.e-tbl td,.kv dd,.m2-hw dd,.m2-trio dd{font-variant-numeric:tabular-nums}
/* M5: Lifecycle family pills */
.e-fam{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
/* L2: branch card link to Lifecycle, and the highlighted branch there */
.card-lc{margin-left:6px;font-weight:600;color:var(--accent);text-decoration:none}
.card-lc:hover{text-decoration:underline}
.lc-tbl tr.hl th,.lc-tbl tr.hl td{background:color-mix(in srgb,var(--accent) 9%,transparent)}
.lc-tbl tbody tr:last-child th,.lc-tbl tbody tr:last-child td{border-bottom:0}
/* Contrast: planner captions on tinted rows, and the active phone tab label */
.u-meta{color:var(--muted)}
/* Keep the footer out of view while the plan loads, so it doesn't jump */
#uOut:has(.u-loading){min-height:calc(100vh - 120px)}
#tbody tr.grp-eol td>span:first-child{color:var(--ink);display:inline-flex;align-items:center;gap:8px}
#tbody tr.grp-eol td>span:first-child::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--crit);flex:none}
@media (max-width:760px){:root:not([data-theme="dark"]) .tabs a.on{color:#25632F!important}}
@media (max-width:760px) and (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tabs a.on{color:var(--accent)!important}}
.u-start{padding:28px 0 8px;max-width:72ch}
.u-start-h{margin:0;font:650 22px var(--f-display);font-variation-settings:"wdth" 112}
.u-start p{margin:8px 0 0;color:var(--muted);font-size:15.5px;line-height:1.55}
.u-start p b{color:var(--ink)}
.u-miss{color:var(--crit)!important;font-weight:600}
.u-pop{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px!important}
.u-pop span{font-size:14px;color:var(--muted)}
.u-pop-b{height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font:550 14px var(--f-body);color:var(--ink);cursor:pointer}
.u-pop-b:hover{border-color:var(--muted)}
.ud-group{margin:22px 0 2px;font:600 13px var(--f-body);color:var(--muted);text-transform:none}
.ud-group:first-of-type{margin-top:10px}

/* ===== Modern Technical Editorial (design B, approved Oct 2026) =====
   Scoped to :root[data-ed], which the head script sets on every page.
   Homepage-only rules carry [data-page="home"]. */
@font-face{font-family:"Geist";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono.woff2) format("woff2")}

/* Tokens: light */
:root[data-ed]{
  --bg:#F7F8F5;--surface:#FFFFFF;--ink:#172925;--muted:#5E6D66;--faint:#606E67;--line:#DCE4DD;--soft:#EEF2EE;
  --accent:#287D46;--accent-ink:#FFFFFF;--hl:#287D46;--wash:transparent;--panel-edge:transparent;
  --band:#EEF1EC;--field-edge:#AEBBB3;--amber-ink:#8A5100;--link-strong:#22703C;
  --sig:#172C29;--sig-ink:#F2F7F4;--sig-muted:#AFC3BA;--sig-line:rgba(165,217,182,.16);--sig-edge:transparent;--mint:#A5D9B6;--mint-ink:#0F2620;
  --f-display:"Geist","Segoe UI",system-ui,sans-serif;--f-body:"Geist","Segoe UI",system-ui,sans-serif;--f-mono:"Geist Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --lift:0 1px 2px rgba(23,41,37,.05);--lift-h:0 1px 2px rgba(23,41,37,.06),0 12px 28px -18px rgba(23,41,37,.28);
}
/* Tokens: dark (not an inversion: neutral near-black page, greener and lighter signature panel) */
@media (prefers-color-scheme: dark){:root[data-ed]:not([data-theme="light"]){
  --bg:#0E1311;--surface:#151C19;--ink:#E6EDE9;--muted:#9BA9A2;--faint:#7D8B85;--line:#26312D;--soft:#1C2522;
  --accent:#6CC08A;--accent-ink:#0B1F13;--hl:#7ACB95;--band:#121815;--field-edge:#4A5A53;--amber-ink:#E9B65C;--link-strong:#6CC08A;
  --sig:#18392F;--sig-ink:#F0F7F3;--sig-muted:#B4CBC0;--sig-line:rgba(165,217,182,.18);--sig-edge:rgba(165,217,182,.24);--mint:#A5D9B6;--mint-ink:#0F2620;
  --lift:0 0 0 1px #1E2824;--lift-h:0 0 0 1px #2C3833;color-scheme:dark}}
:root[data-ed][data-theme="dark"]{
  --bg:#0E1311;--surface:#151C19;--ink:#E6EDE9;--muted:#9BA9A2;--faint:#7D8B85;--line:#26312D;--soft:#1C2522;
  --accent:#6CC08A;--accent-ink:#0B1F13;--hl:#7ACB95;--band:#121815;--field-edge:#4A5A53;--amber-ink:#E9B65C;--link-strong:#6CC08A;
  --sig:#18392F;--sig-ink:#F0F7F3;--sig-muted:#B4CBC0;--sig-line:rgba(165,217,182,.18);--sig-edge:rgba(165,217,182,.24);--mint:#A5D9B6;--mint-ink:#0F2620;
  --lift:0 0 0 1px #1E2824;--lift-h:0 0 0 1px #2C3833;color-scheme:dark}

/* Base */
:root[data-ed] body{background:var(--bg);font-family:var(--f-body);font-feature-settings:"ss01" 0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:root[data-ed] .topnav{background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-bottom:1px solid var(--line)}
:root[data-ed] .site-name{font-family:var(--f-display);font-weight:650;letter-spacing:-.02em;font-variation-settings:normal}
:root[data-ed] .tabs a{font-weight:500}

/* Hero: same structure, refined type */
:root[data-ed][data-page="home"] .wrap{padding-top:44px}
:root[data-ed][data-page="home"] header h1{font:620 clamp(36px,4.8vw,60px)/1.02 var(--f-display);font-variation-settings:normal;letter-spacing:-.045em}
:root[data-ed][data-page="home"] header .lede{font-size:18px;line-height:1.5;letter-spacing:-.005em;color:var(--muted)}
:root[data-ed][data-page="home"] #quick{margin-top:34px}
:root[data-ed][data-page="home"] .q-search input{height:60px;border-radius:14px;border:1px solid var(--field-edge);background:var(--surface);box-shadow:0 1px 2px rgba(23,41,37,.05),0 14px 34px -22px rgba(23,41,37,.35);font:450 18px var(--f-body);letter-spacing:-.01em}
:root[data-ed][data-page="home"] .q-search input:hover{border-color:color-mix(in srgb,var(--ink) 40%,var(--field-edge))}
:root[data-ed][data-page="home"] .q-search input:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent),0 14px 34px -22px rgba(23,41,37,.35)}
:root[data-ed] .q-sug{border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px -22px rgba(23,41,37,.4)}
:root[data-ed] .q-sug button b{font:500 14px var(--f-mono);letter-spacing:-.02em}

/* Feature cards: quiet surfaces, no frames */
:root[data-ed] #qcards{margin-top:40px;gap:12px}
:root[data-ed] .q-card,:root[data-ed] .q-card+.q-card{background:var(--surface);border:1px solid transparent;border-radius:16px;box-shadow:var(--lift);padding:20px 20px 16px;transition:border-color .15s,box-shadow .15s}
:root[data-ed] .q-card b{font:600 17px/1.3 var(--f-display);letter-spacing:-.018em}
:root[data-ed] .q-k{font:550 13px var(--f-body);letter-spacing:-.005em;white-space:nowrap}
:root[data-ed] .q-s{color:var(--muted);font-size:14.5px;line-height:1.5}
:root[data-ed] .q-stat{margin-top:16px;padding-top:12px;border-top:1px solid var(--soft);font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
:root[data-ed] .q-card::after{bottom:17px}
@media (hover:hover){:root[data-ed] .q-card:hover{border-color:var(--line);box-shadow:var(--lift-h);background:var(--surface)}}
:root[data-ed] .q-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-color:var(--line)}

/* Section headings: editorial rule and title */
:root[data-ed] .h-now,:root[data-ed] .h-imp{margin:64px 0 0;padding-top:18px;border-top:1px solid var(--line);font:600 20px/1.3 var(--f-display);font-variation-settings:normal;letter-spacing:-.02em}
:root[data-ed] .answer,:root[data-ed] .alerts{margin-top:18px}

/* Firmware version: one component everywhere on the page */
:root[data-ed] .g-v,:root[data-ed] .g-side dd{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-variation-settings:normal}
:root[data-ed] .g-v{font-weight:500;font-size:clamp(44px,4.6vw,58px);line-height:1;letter-spacing:-.105em;margin:6px 0 2px;padding-right:.1em}
:root[data-ed] .g-side dd{font-weight:500;font-size:22px;letter-spacing:-.08em;white-space:nowrap}
:root[data-ed] .g-pre{font:500 13px var(--f-body);letter-spacing:0;margin-right:6px;vertical-align:2px}

/* Signature panel: shared structure */
:root[data-ed] .answer>.g2{border:0;border-radius:20px;overflow:hidden;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
:root[data-ed] .g-main{padding:32px 36px 30px;gap:6px;background:var(--sig);color:var(--sig-ink);border-right:0}
:root[data-ed] .g-k{font:550 14px var(--f-body);color:var(--mint);letter-spacing:0}
:root[data-ed] .g-main .g-v{color:var(--sig-ink)}
:root[data-ed] .g-q{color:var(--sig-muted);font-size:15px;line-height:1.55;max-width:44ch;margin-top:8px}
:root[data-ed] .g-main .g-link{margin-top:18px;height:40px;padding:0 16px;border-radius:10px;background:var(--mint);color:var(--mint-ink);font:600 14.5px var(--f-body)}
:root[data-ed] .g-main .g-link:hover{background:#BCE5C9}
:root[data-ed] .g-main .g-link:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
:root[data-ed] .g-main .g-src{margin-top:12px;font-size:13px;color:var(--sig-muted)}
:root[data-ed] .g-main .g-src a{color:var(--sig-ink);text-decoration-color:color-mix(in srgb,var(--mint) 55%,transparent)}
:root[data-ed] .g-main .g-src a:hover{color:#fff;text-decoration-color:var(--mint)}
:root[data-ed] .g-main .g-src a:focus-visible{outline:2px solid var(--mint);color:#fff}
:root[data-ed] .g-side>div{padding:20px 28px;gap:3px 20px}
:root[data-ed] .g-side dt{font:550 14.5px var(--f-body);letter-spacing:-.005em}
:root[data-ed] .g-side small{font-size:13px;line-height:1.45}


/* Dark signature on the left, light reference on the right */
:root[data-ed] .answer>.g2{background:var(--surface);box-shadow:var(--lift),0 0 0 1px var(--line)}
:root[data-ed] .g-main{box-shadow:0 0 0 1px var(--sig-edge)}
:root[data-ed] .g-side>div{border-top:1px solid var(--soft)}
:root[data-ed] .g-side>div:first-child{border-top:0}
:root[data-ed] .g-side dt,:root[data-ed] .g-side dd{color:var(--ink)}
:root[data-ed] .g-side small,:root[data-ed] .g-pre{color:var(--muted)}

/* Important changes: same accordion, quieter frame */
:root[data-ed] .alerts{border:0;border-radius:16px;background:var(--surface);box-shadow:var(--lift)}
:root[data-ed] .alert{border-bottom:1px solid var(--soft)}
:root[data-ed] .alert:last-child{border-bottom:0}
:root[data-ed] .alert summary{padding:16px 20px}
:root[data-ed] .alert summary:hover{background:color-mix(in srgb,var(--soft) 60%,transparent)}
:root[data-ed] .alert-tag{border:0;padding:0;min-width:7.6em;font:550 13px var(--f-body);color:var(--muted)}
:root[data-ed] .alert-txt b{font-weight:600;letter-spacing:-.01em}
:root[data-ed] .alert p{padding:0 20px 18px 46px;color:var(--muted);line-height:1.6}

/* Footer: a quiet band that closes the page */
:root[data-ed] footer.ft{margin-top:88px;padding:30px 0 40px;border-top:0;background:var(--band);box-shadow:0 0 0 100vmax var(--band);clip-path:inset(0 -100vmax -100vmax)}
:root[data-ed] .ft-brand{font-family:var(--f-display);font-weight:650;letter-spacing:-.02em;font-variation-settings:normal}
:root[data-ed] .ft-l p{font-size:13px;line-height:1.6}
:root[data-ed]:not([data-theme="dark"]) .ft-brand .sn-g{color:#22703C}
@media (prefers-color-scheme: dark){:root[data-ed]:not([data-theme="light"]) .ft-brand .sn-g{color:var(--accent)}}
:root[data-ed] .ft-nav{gap:6px 22px;font-size:13.5px}

/* Responsive */
@media (max-width:900px){
  :root[data-ed] .answer>.g2{grid-template-columns:minmax(0,1fr)!important}
  :root[data-ed] .g-main{border-bottom:0}
}
@media (max-width:640px){
  :root[data-ed][data-page="home"] .wrap{padding-top:26px}
  :root[data-ed][data-page="home"] header h1{font-size:clamp(32px,9vw,40px);letter-spacing:-.04em}
  :root[data-ed][data-page="home"] header .lede{font-size:16.5px}
  :root[data-ed][data-page="home"] .q-search input{height:56px;font-size:17px}
  :root[data-ed] #qcards{margin-top:28px;gap:10px}
  :root[data-ed] .h-now,:root[data-ed] .h-imp{margin-top:44px;padding-top:14px;font-size:18px}
  :root[data-ed] .answer>.g2{border-radius:16px}
  :root[data-ed] .g-main{padding:22px 20px}
  :root[data-ed] .g-v{font-size:44px}
  :root[data-ed] .g-side>div{padding:16px 20px}
  :root[data-ed] .alert summary{padding:14px 16px}
  :root[data-ed] .alert-tag{min-width:0}
  :root[data-ed] .alert p{padding:0 16px 16px}
  :root[data-ed] footer.ft{margin-top:56px;padding:24px 0 28px}
}
@media (prefers-reduced-motion:reduce){:root[data-ed] .q-card{transition:none}}


/* ===== Inner pages ===== */
/* Page titles and section headings */
:root[data-ed]:not([data-page="home"]) header h1,:root[data-ed] .m2-name{font-weight:620;letter-spacing:-.04em;font-variation-settings:normal}
:root[data-ed]:not([data-page="home"]) header .lede{color:var(--muted)}
:root[data-ed] .panel-head h2,:root[data-ed] #lh,:root[data-ed] .lc-intro h2,:root[data-ed] .m2-h,:root[data-ed] .rel-head h2{font-weight:600;letter-spacing:-.02em;font-variation-settings:normal}
:root[data-ed] .eol h3,:root[data-ed] #eol h3{font-weight:600;letter-spacing:-.015em}

/* Firmware versions: Geist Mono wherever a version stands on its own */
:root[data-ed] td.v,:root[data-ed] dl.kv dd.ver,:root[data-ed] .branch,:root[data-ed] .hop,:root[data-ed] .u-v,:root[data-ed] .rel-v,:root[data-ed] .tl .lab,:root[data-ed] .eol-list .v,:root[data-ed] .m2-num,:root[data-ed] .m2-trio dd:not(.m2-note){font-family:var(--f-mono);font-weight:500;letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-variation-settings:normal}
:root[data-ed] .branch{font-size:28px;letter-spacing:-.075em}
:root[data-ed] .m2-num{letter-spacing:-.1em;padding-right:.08em}
:root[data-ed] .m2-trio dd:not(.m2-note){font-size:26px;letter-spacing:-.07em}
:root[data-ed] .rel-v{font-size:15.5px}
/* Counts and labels stay in the sans */
:root[data-ed] .u-stat b,:root[data-ed] .e-stat b,:root[data-ed] .u-n,:root[data-ed] .card-flags .hot a b,:root[data-ed] #tbody tr.grp td>span:first-child{font-family:var(--f-body);letter-spacing:-.01em}

/* Data on white surfaces, no frames */
:root[data-ed] .tbl-wrap,:root[data-ed] .rel-wrap,:root[data-ed] .e-tbl,:root[data-ed] #lcDates,:root[data-ed] .eol-list{background:var(--surface);border:0;border-radius:16px;box-shadow:var(--lift)}
:root[data-ed] :is(.tbl-wrap,.rel-wrap,.e-tbl,#lcDates) :is(th,td):first-child{padding-left:20px}
:root[data-ed] :is(.tbl-wrap,.rel-wrap,.e-tbl,#lcDates) :is(th,td):last-child{padding-right:20px}
:root[data-ed] :is(.tbl-wrap,.rel-wrap,.e-tbl,#lcDates) thead th{background:var(--surface)}
:root[data-ed] .eol-list li{border-top-color:var(--soft)}
:root[data-ed] .eol-list li{padding-left:20px;padding-right:20px}

:root[data-ed] .u-meta a{color:var(--link-strong)}
:root[data-ed] #lcDates{overflow-x:auto}
@media (max-width:900px){:root[data-ed] #lcDates :is(th,td):first-child{padding-left:14px}:root[data-ed] #lcDates :is(th,td):last-child{padding-right:14px}}
/* Signature panel tokens: re-theme everything inside the dark surface */
:root[data-ed] .card.is-rec,:root[data-ed] .m2-verdict,:root[data-ed] .uv{
  --surface:var(--sig);--ink:var(--sig-ink);--muted:var(--sig-muted);--faint:var(--sig-muted);--line:var(--sig-line);--soft:rgba(255,255,255,.08);
  --accent:var(--mint);--accent-ink:var(--mint-ink);--hl:var(--mint);--amber:#E3A33A;--amber-ink:#EDBE6A;--crit:#F29191;--dead:#8FA59B;
  background:var(--sig);color:var(--sig-ink);box-shadow:0 0 0 1px var(--sig-edge)}

/* Firmware: three branch cards, the recommended one is the signature */
:root[data-ed] .ledger{gap:12px;border-top:0}
:root[data-ed] .card,:root[data-ed] .card.dead{background:var(--surface);border-radius:16px;box-shadow:var(--lift);padding:22px 22px 20px}
:root[data-ed] .card+.card{border-left:0}
:root[data-ed] .card.is-rec{background:var(--sig);box-shadow:0 0 0 1px var(--sig-edge)}
:root[data-ed] .card.is-rec .b-tag{color:var(--mint)}
:root[data-ed] .card.is-rec dl.kv dd.ver.rec{color:var(--mint)}
:root[data-ed] .card.is-rec .meter{background:rgba(255,255,255,.12)}
:root[data-ed] .card.is-rec .meter i{background:var(--mint)}
:root[data-ed] .card.is-rec .card-flags .hot a:hover{background:rgba(255,255,255,.14)}
@media (max-width:900px){:root[data-ed] .card+.card{border-top:0}:root[data-ed] .card.is-rec{order:-1}}

/* Model page: dark recommendation, light reference joined underneath */
:root[data-ed] .m2-verdict{margin-top:30px;padding:30px 32px 28px;border-radius:20px 20px 0 0}
:root[data-ed] .m2-verdict .m2-k{color:var(--mint)}
:root[data-ed] .m2-verdict .m2-src a{text-decoration-color:color-mix(in srgb,var(--mint) 55%,transparent)}
:root[data-ed] .m2-verdict a:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
:root[data-ed] .m2-verdict + .m2-trio{margin-top:0;border-top:0;background:var(--surface);border-radius:0 0 20px 20px;box-shadow:var(--lift),0 0 0 1px var(--line);padding:0 32px}
:root[data-ed] .m2-verdict + .m2-trio>div{padding-top:18px;padding-bottom:16px}
:root[data-ed] .m2-run{margin-top:22px}

/* Planner: the verdict is the signature */
:root[data-ed] .uv{padding:28px 32px 26px;border-radius:20px;margin-bottom:8px}
:root[data-ed] .uv .uv-h{color:var(--sig-ink)}
:root[data-ed] .uv .hop{background:rgba(255,255,255,.07);border-color:var(--sig-line);box-shadow:inset 0 0 0 1px var(--sig-line);color:var(--sig-ink)}
:root[data-ed] .uv .hop.from{background:transparent}
:root[data-ed] .uv .hop.to{background:var(--mint);color:var(--mint-ink);box-shadow:none}
:root[data-ed] .uv a{color:var(--mint)}
:root[data-ed] .uv a:focus-visible{outline:2px solid var(--mint);outline-offset:2px}

@media (max-width:640px){
  :root[data-ed] .m2-verdict{padding:22px 20px;border-radius:16px 16px 0 0}
  :root[data-ed] .m2-verdict + .m2-trio{padding:0 20px;border-radius:0 0 16px 16px}
  :root[data-ed] .uv{padding:22px 20px;border-radius:16px}
  :root[data-ed] .card,:root[data-ed] .card.dead{padding:18px}
  :root[data-ed] :is(.tbl-wrap,.rel-wrap,.e-tbl,#lcDates) :is(th,td):first-child{padding-left:14px}
}

/* Print: signature panels print light, page prints white */
@media print{
  :root[data-ed] body{background:#fff}
  :root[data-ed] :is(.card.is-rec,.m2-verdict,.uv,.g-main){--surface:#fff;--ink:#111;--muted:#444;--faint:#555;--line:#bbb;--soft:#eee;--accent:#1F5F33;--mint:#1F5F33;--sig-ink:#111;--sig-muted:#444;background:#fff!important;color:#111;box-shadow:inset 0 0 0 1px #bbb!important}
  :root[data-ed] footer.ft{background:none;box-shadow:none;clip-path:none}
}

/* Page not found */
#nf{display:none}
:root[data-page="notfound"] main.wrap>:not(header):not(footer):not(#nf):not(script){display:none!important}
:root[data-page="notfound"] #nf{display:grid;gap:22px;margin-top:28px;max-width:640px}
.nf-search{display:flex;align-items:center;gap:10px;height:52px;padding:0 18px;border-radius:14px;border:1px solid var(--field-edge,var(--line));background:var(--surface);color:var(--muted);font:450 16px var(--f-body);cursor:pointer;text-align:left}
.nf-search:hover{border-color:var(--muted);color:var(--ink)}
.nf-search:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nf-links{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:16px;box-shadow:var(--lift,0 0 0 1px var(--line))}
.nf-links li{display:grid;gap:2px;padding:14px 20px;border-top:1px solid var(--soft)}
.nf-links li:first-child{border-top:0}
.nf-links a{font-weight:600;color:var(--ink);text-decoration:none}
.nf-links a:hover{text-decoration:underline;text-underline-offset:3px}
.nf-links span{font-size:14px;color:var(--muted)}
/* Model page: models capped below the tracked builds */
.m2-run.m2-run-none{display:block;margin-top:22px;padding:14px 18px;border-radius:14px;background:var(--surface);box-shadow:var(--lift,0 0 0 1px var(--line));color:var(--muted);font-size:14.5px;line-height:1.55;max-width:72ch}
/* Timeline labels sit on the page, not a card */
:root[data-ed] .tl .lab{background:var(--bg)}
/* Footer band ends where the footer content does */
:root[data-ed] main.wrap{padding-bottom:0}
:root[data-ed] footer.ft{padding-bottom:28px}

/* ===== Homepage final refinements (Oct 2026) ===== */
/* Dark panel: three tiers. Version (primary), explanation (secondary), source (tertiary) */
:root[data-ed]{--sig-2:#D2DFD8;--sig-3:#B3C6BD;--copy:#4A5952}
@media (prefers-color-scheme: dark){:root[data-ed]:not([data-theme="light"]){--sig-2:#D6E3DC;--sig-3:#B9CEC4;--copy:#B1BEB7}}
:root[data-ed][data-theme="dark"]{--sig-2:#D6E3DC;--sig-3:#B9CEC4;--copy:#B1BEB7}
:root[data-ed][data-page="home"] .g-q{color:var(--sig-2)}
:root[data-ed][data-page="home"] .g-main .g-src{color:var(--sig-3)}
:root[data-ed][data-page="home"] .g-main .g-src a{color:var(--sig-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--mint) 75%,transparent)}
:root[data-ed][data-page="home"] .g-main .g-src a:hover{color:#fff;text-decoration-color:var(--mint);text-decoration-thickness:2px}
:root[data-ed][data-page="home"] .g-main .g-link:focus-visible{outline:2px solid #fff;outline-offset:3px}
/* Version: a touch more presence */
:root[data-ed][data-page="home"] .g-v{font-size:clamp(46px,4.95vw,62px)}
/* Feature cards: firmer text, same sizes */
:root[data-ed][data-page="home"] .q-s{color:var(--copy)}
:root[data-ed][data-page="home"] .q-stat{color:var(--muted);font-weight:500}
:root[data-ed][data-page="home"] .q-card b{font-weight:620}
/* One section rule only: between navigation (cards) and content. Important changes is separated by space and its own surface */
:root[data-ed][data-page="home"] .h-imp{border-top:0;padding-top:0;margin-top:56px}
@media (max-width:640px){:root[data-ed][data-page="home"] .h-imp{margin-top:40px}}
/* Supporting releases: descriptions a step firmer */
:root[data-ed][data-page="home"] .g-side dt small{color:var(--copy)}

/* ===== Model pages and planner: finishing pass (Oct 2026) ===== */
/* Dark panels: same three tiers as the homepage */
:root[data-ed] .m2-verdict .m2-why,:root[data-ed] .uv>p:not(.u-cov):not(.uv-cap){color:var(--sig-2)}
:root[data-ed] .m2-verdict .m2-src,:root[data-ed] .uv .u-cov,:root[data-ed] .uv .uv-cap{color:var(--sig-3)}
:root[data-ed] .m2-verdict .m2-src a{color:var(--sig-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--mint) 75%,transparent)}
:root[data-ed] .m2-verdict .m2-src a:hover{color:#fff;text-decoration-color:var(--mint);text-decoration-thickness:2px}
/* Running copy one step firmer; small labels and metadata stay muted */
:root[data-ed] .m2-trio.m2-duo dd.m2-note,:root[data-ed] .m2-trio.m2-duo>div:first-child dd.m2-note{color:var(--copy)}
:root[data-ed] :is(.m2-sub,.m2-lede,.m2-trio dd.m2-note,.m2-hw dd.m2-note,.mp-list p,.m2-need p,.u-d,.u-sub,.u-stat span,.u-start p){color:var(--copy)}

/* How we check */
#how,#about{display:none}
:root[data-page="about"] main.wrap>:not(header):not(footer):not(#about):not(script){display:none!important}
:root[data-page="about"] #about{display:block;margin-top:28px}
.ab-p{margin:0;font-size:15.5px;line-height:1.6;color:var(--copy,var(--muted));max-width:62ch}
.ab-p+.ab-p{margin-top:-4px}
.ab-opt{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.ab-opt .tool-btn{box-shadow:inset 0 0 0 1px var(--field-edge,var(--line))}
.ab-what li{gap:6px}
.ab-what .ab-q{font-size:13px;font-weight:600;color:var(--muted)}
.ab-what b{font:600 16px/1.3 var(--f-display);letter-spacing:-.01em;color:var(--ink)}
.ab-what a,.ab-links a,.ab-p a,.hw-list a{color:var(--link-strong,var(--accent));font-weight:600;text-decoration:none}
.ab-what a:hover,.ab-links a:hover,.ab-p a:hover,.hw-list a:hover{text-decoration:underline;text-underline-offset:3px}
.ab-links li{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 16px}
.ab-links li span{font-size:13.5px;color:var(--muted)}
@media (max-width:560px){.ab-links li{grid-template-columns:minmax(0,1fr)}}
:root[data-page="method"] main.wrap>:not(header):not(footer):not(#how):not(script){display:none!important}
:root[data-page="method"] #how{display:block;margin-top:28px}
.hw-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:start}
.hw-col{display:grid;gap:16px;align-content:start;min-width:0}
.hw-h{margin:20px 0 0;padding-top:16px;border-top:1px solid var(--line);font:600 20px/1.3 var(--f-display);letter-spacing:-.02em}
.hw-col>.hw-h:first-child{margin-top:0}
.hw-lede{margin:0;color:var(--copy,var(--muted));font-size:15px;max-width:60ch}
.hw-src,.hw-list,.hw-log{list-style:none;margin:0;padding:0}
.hw-src{background:var(--surface);border-radius:16px;box-shadow:var(--lift,0 0 0 1px var(--line))}
.hw-src li{padding:14px 20px;border-top:1px solid var(--soft);display:grid;gap:4px}
.hw-src li:first-child{border-top:0}
.hw-src-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.hw-src-h span{font-size:13px;color:var(--muted)}
.hw-src p{margin:0;font-size:14.5px;color:var(--copy,var(--muted));line-height:1.5}
.hw-src p.hw-src-m{font-size:13px;color:var(--muted)}
.hw-src a,.hw-log a,.hw-live a{color:var(--link-strong,var(--accent));font-weight:600;text-decoration:none}
.hw-src a:hover,.hw-log a:hover{text-decoration:underline;text-underline-offset:3px}
.hw-st{margin:0;display:grid;background:var(--surface);border-radius:16px;box-shadow:var(--lift,0 0 0 1px var(--line))}
.hw-st>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;padding:13px 20px;border-top:1px solid var(--soft);align-items:baseline}
.hw-st>div:first-child{border-top:0}
.hw-st dd{margin:0;font-size:14.5px;color:var(--copy,var(--muted));line-height:1.5}
.hw-live{margin:0;font-size:14px;color:var(--muted)}
.hw-list{display:grid;gap:10px;font-size:14.5px;color:var(--copy,var(--muted));line-height:1.55}
.hw-list li{padding-left:18px;position:relative}
.hw-list li::before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--line)}
.hw-f{display:flex;flex-wrap:wrap;gap:8px}
.hw-log{background:var(--surface);border-radius:16px;box-shadow:var(--lift,0 0 0 1px var(--line))}
.hw-log li{display:grid;grid-template-columns:104px 78px minmax(0,1fr);gap:4px 14px;padding:12px 20px;border-top:1px solid var(--soft);align-items:baseline;font-size:14.5px;line-height:1.5}
.hw-log li:first-child{border-top:0}
.hw-log time{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.hw-k{font-size:12.5px;font-weight:600;color:var(--muted);white-space:nowrap}
.hw-t{min-width:0;overflow-wrap:anywhere}
.hw-log .k-advisory .hw-k{color:var(--crit)}
.hw-log .k-build .hw-k{color:var(--link-strong,var(--accent))}
.hw-more:empty{display:none}
.hw-log.hw-wait{min-height:1250px}
@media (max-width:560px){.hw-log.hw-wait{min-height:2200px}}
@media (max-width:900px){.hw-grid{grid-template-columns:minmax(0,1fr);gap:8px}.hw-col+.hw-col>.hw-h:first-child{margin-top:20px}}
@media (max-width:560px){.hw-log li{grid-template-columns:auto minmax(0,1fr)}.hw-log .hw-t{grid-column:1/-1}.hw-st>div{grid-template-columns:minmax(0,1fr);gap:6px}.hw-src li,.hw-log li,.hw-st>div{padding-left:16px;padding-right:16px}}
/* Build pages and advisories */
#buildPage,#advPage,#advIndex{display:none}
:root[data-page="build"] main.wrap>:not(header):not(footer):not(#buildPage):not(script){display:none!important}
:root[data-page="advisory"] main.wrap>:not(header):not(footer):not(#advPage):not(script){display:none!important}
:root[data-page="advisories"] main.wrap>:not(header):not(footer):not(#advIndex):not(script){display:none!important}
:root[data-page="build"] #buildPage,:root[data-page="advisory"] #advPage,:root[data-page="advisories"] #advIndex{display:block;margin-top:24px}
.bp-sum{gap:14px}
.bp-lead{margin:0;font:600 clamp(19px,2.3vw,24px)/1.35 var(--f-display);color:var(--sig-ink);max-width:56ch;text-wrap:balance}
:root[data-ed] .bp-sum>p.bp-rec{color:var(--sig-ink);margin:0;font-size:15px;line-height:1.55;max-width:80ch}
.bp-rec b{font-weight:600}
.bp-links{margin:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px}
.bp-links a{font-weight:600;text-decoration:none}
:root[data-ed] .bp-sum>p.bp-nav{margin:0;display:flex;justify-content:space-between;gap:12px;font:500 14px var(--f-mono);letter-spacing:-.03em;padding-top:12px;border-top:1px solid var(--sig-line,rgba(255,255,255,.14))}
.bp-nav a{text-decoration:none}
.bp-grid{margin-top:28px}
.bp-sec{display:grid;gap:12px;align-content:start}
.bp-sec .hw-h{display:flex;align-items:baseline;gap:8px}
.as-n{font:500 13px var(--f-mono);color:var(--muted);background:var(--soft);border-radius:6px;padding:1px 7px;letter-spacing:-.02em}
.bp-list,.ai-list{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:14px;box-shadow:var(--lift,0 0 0 1px var(--line))}
.bp-i,.bp-a,.ai-list li{padding:13px 18px;border-top:1px solid var(--soft);display:grid;gap:6px;min-width:0}
.bp-i:first-child,.bp-a:first-child,.ai-list li:first-child{border-top:0}
.bp-i-h{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.bp-i-h b{font-weight:600;font-size:15px;min-width:0;overflow-wrap:anywhere}
.bp-i-h span{font:500 12.5px var(--f-mono);color:var(--muted);white-space:nowrap}
.bp-i>p,.bp-a>p,.ai-t{margin:0;font-size:14.5px;line-height:1.55;color:var(--copy,var(--muted));overflow-wrap:anywhere}
.ai-t{color:var(--ink);font-weight:600}
.bp-i-m{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted)}
.bp-a-id,.ai-h a{font:500 14px var(--f-mono);letter-spacing:-.03em}
.bp-a-sev{font-size:12.5px;font-weight:600;color:var(--muted)}
.bp-a-sev.s-critical,.bp-a-sev.s-high{color:var(--crit)}
.bp-a{grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:12px}
.bp-a>p{grid-column:1/-1}
.bp-sec a,.ai-list a,.ai-sum a,.ad-res a,.bp-miss a,.ad-tbl a,.bp-foot a{color:var(--link-strong,var(--accent));font-weight:600;text-decoration:none}
.bp-sec a:hover,.ai-list a:hover,.ai-sum a:hover,.ad-res a:hover,.ad-tbl a:hover{text-decoration:underline;text-underline-offset:3px}
.bp-foot{margin:28px 0 0;font-size:13.5px;color:var(--muted);max-width:80ch}
.bp-miss{margin:0;font-size:15px}
.as-more>summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--link-strong,var(--accent));padding:6px 0;width:max-content;max-width:100%}
.as-more>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.as-more[open]>summary{margin-bottom:8px}
.as-none{margin:0;font-size:14.5px;color:var(--muted)}
.ad-chk{display:grid;gap:6px}
.ad-chk label{font-size:13.5px;font-weight:600}
.ad-chk>div{display:flex;gap:8px}
.ad-chk input,.ai-f input{height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 15px var(--f-body);min-width:0}
.ad-chk input{flex:1 1 auto;max-width:220px;font-family:var(--f-mono)}
.ad-chk input:focus-visible,.ai-f input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.ad-res{margin:0;padding:12px 16px;border-radius:12px;font-size:15px;line-height:1.5;background:var(--surface);box-shadow:var(--lift,0 0 0 1px var(--line));border-left:4px solid var(--line)}
.ad-res.ad-yes{border-left-color:var(--crit)}
.ad-res.ad-no{border-left-color:var(--accent)}
.ad-res.ad-unv{border-left-color:var(--amber,#A35F06)}
.ai-list .ad-yes{color:var(--crit);font-weight:600}
.ad-tbl-wrap{overflow-x:auto;border-radius:14px}
.ad-tbl{width:100%;border-collapse:collapse;background:var(--surface);border-radius:14px;box-shadow:var(--lift,0 0 0 1px var(--line));overflow:hidden;font-size:14.5px}
.ad-tbl th,.ad-tbl td{text-align:left;padding:11px 16px;border-top:1px solid var(--soft)}
.ad-tbl th{position:static;background:none;text-transform:none;letter-spacing:0;font:600 14.5px var(--f-body);color:var(--ink);white-space:normal}
.ad-tbl thead th{border-top:0;font-size:12.5px;color:var(--muted);font-weight:600}
.ad-tbl td{font-family:var(--f-mono);letter-spacing:-.03em}
.ai-ctl{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px 16px;align-items:end}
.ai-f{display:grid;gap:6px;font-size:13.5px;font-weight:600}
.ai-b input{font-family:var(--f-mono)}
.ai-chips{grid-column:1/-1}
.ai-sum{margin:20px 0 0;padding:14px 18px;border-radius:14px;background:var(--surface);box-shadow:var(--lift,0 0 0 1px var(--line));display:grid;gap:6px;font-size:15px;line-height:1.5}
.ai-sum p{margin:0}
.ai-n{margin:20px 0 10px;font-size:13.5px;color:var(--muted)}
.ai-h{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.ai-h time{margin-left:auto;font-size:13px;color:var(--muted);white-space:nowrap}
@media (max-width:560px){.ai-ctl{grid-template-columns:minmax(0,1fr)}.bp-i,.bp-a,.ai-list li{padding-left:14px;padding-right:14px}.ad-tbl th,.ad-tbl td{padding:10px 10px}.ai-h time{margin-left:0;width:100%}}
/* Model page: answer first */
.m2-pos{margin:4px 0 0;display:grid;gap:6px}
.m2-pos>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:baseline}
.m2-pos>div{background:none!important;box-shadow:none!important;border:0!important;padding:0!important;border-radius:0!important}
:root[data-ed] .m2-verdict.m2-ans{border-radius:20px}
.m2-ans .m2-side{max-width:62ch}
@media (max-width:560px){:root[data-ed] .m2-verdict.m2-ans{border-radius:16px}}
.m2-pos dt{font-size:13px;font-weight:600;color:var(--sig-3,var(--sig-muted))}
.m2-pos dd{margin:0;font-size:15.5px;font-weight:600;color:var(--sig-ink);line-height:1.4}
.m2-pos dd span{font-weight:400;color:var(--sig-2,var(--sig-muted))}
.m2-pos dd i{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 8px 2px 0;background:var(--mint)}
.m2-pos .p-soon dd i{background:#F2C14E}
.m2-pos .p-out dd i{background:#F08A7E}
.m2-pos .p-info dd i{background:var(--sig-3,#9fb5ab)}
.m2-cta-row{margin:8px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px}
.m2-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:11px;background:var(--mint);color:var(--mint-ink)!important;font-weight:650;font-size:15px;text-decoration:none!important}
.m2-cta:hover{filter:brightness(1.06)}
.m2-cta:focus-visible,.m2-cta2:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.m2-cta2{color:var(--mint)!important;font-weight:600;font-size:15px;text-decoration:none}
.m2-cta2:hover{text-decoration:underline;text-underline-offset:3px}
.m2-know{margin-top:40px}
.m2-run [hidden]{display:none!important}
.m2-know .m2-tag{border:0!important;background:none!important;padding:0!important;margin-right:8px;font-size:12.5px;font-weight:600;color:var(--muted);box-shadow:none!important}
.m2-more>.m2-h{margin:0;padding:18px 0 4px}
.m2-more>details:first-of-type{border-top:1px solid var(--line)}
@media (max-width:560px){.m2-pos>div{grid-template-columns:minmax(0,1fr);gap:2px}.m2-cta{flex:1 1 100%;justify-content:center}}

/* Firmware page: answer first, one card per branch */
#fwPage{display:none}
:root[data-page="branches"] main.wrap>:not(header):not(footer):not(#fwPage):not(script){display:none!important}
:root[data-page="branches"] #fwPage{display:block;margin-top:0}
.fw-look{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0}
.fw-look label{font-size:14px;color:var(--sig-3,var(--sig-muted))}
.fw-look input{height:44px;width:150px;padding:0 12px;border-radius:10px;border:0;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px var(--sig-line,rgba(255,255,255,.2));color:var(--sig-ink);font:500 15px var(--f-mono);letter-spacing:-.02em}
.fw-look input::placeholder{color:var(--sig-3,var(--sig-muted));opacity:.85}
.fw-look input:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.fw-look button{height:44px;padding:0 14px;border-radius:10px;border:0;background:transparent;color:var(--mint);font:600 15px var(--f-body);cursor:pointer}
.fw-look button:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.fw-msg{margin:0;font-size:14px;color:var(--sig-ink)}
.fw-msg:empty{display:none}
.fw-why2{margin:2px 0 0;font-size:15px;line-height:1.5;color:var(--sig-2,var(--sig-muted))}
.fw-why2 b{color:var(--sig-ink);font:600 15px var(--f-mono);letter-spacing:-.02em}
.fw-br{margin-top:28px;display:grid;gap:18px}
.fw-card{background:var(--surface);border-radius:16px;box-shadow:var(--lift,0 0 0 1px var(--line));padding:22px 24px;min-width:0;scroll-margin-top:90px}
.fw-card.is-main{box-shadow:inset 4px 0 0 var(--accent),var(--lift,0 0 0 1px var(--line))}
.fw-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px}
.fw-h h2{margin:0;font-size:22px;letter-spacing:-.02em}
.fw-st{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--ink)}
.fw-st::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--muted)}
.fw-st.g-ok::before{background:var(--accent)}.fw-st.g-new::before{background:#8DBF9F}
.fw-st.g-soon{color:var(--amber-ink,#8A5100)}.fw-st.g-soon::before{background:var(--amber,#A35F06)}
.fw-st.g-out{color:var(--muted)}
.fw-facts{margin:16px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px}
.fw-facts>div{display:grid;gap:2px;align-content:start;min-width:0}
.fw-facts dt{font-size:12.5px;font-weight:600;color:var(--muted)}
.fw-facts dd{margin:0}
.fw-facts .fv{font:600 21px var(--f-mono);letter-spacing:-.04em;color:var(--ink);text-decoration:none}
.fw-facts a.fv:hover{text-decoration:underline;text-underline-offset:4px}
.fw-facts .fd{font-size:20px;font-weight:600;letter-spacing:-.02em}
.fw-facts .fn{font-size:13px;color:var(--muted);line-height:1.4}
.fw-notes{margin:14px 0 0;display:grid;gap:6px;max-width:75ch}
.fw-notes p{margin:0;font-size:14.5px;line-height:1.55;color:var(--copy,var(--muted))}
.fw-notes p.fw-bad{color:var(--crit);font-weight:600}
.fw-notes p.fw-warn{color:var(--amber-ink,#8A5100);font-weight:600}
.fw-card details{margin-top:14px}
.fw-card summary{cursor:pointer;color:var(--link-strong,var(--accent));font-weight:600;font-size:14.5px;width:max-content;max-width:100%;padding:4px 0}
.fw-card summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.fw-bl{list-style:none;margin:10px 0 0;padding:0;border-top:1px solid var(--soft)}
.fw-bl li{display:grid;grid-template-columns:90px 120px minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--soft);font-size:14px}
.fw-bl a{font:500 14.5px var(--f-mono);letter-spacing:-.03em;color:var(--link-strong,var(--accent));text-decoration:none}
.fw-bl a:hover{text-decoration:underline;text-underline-offset:3px}
.fw-bl .d,.fw-bl .a{color:var(--muted)}
.fw-bl .a.bad{color:var(--crit);font-weight:600}
.fw-bl .t{font-weight:600}.fw-bl .t.wd{color:var(--crit)}
.fw-bl-h{margin:16px 0 0;font-size:13px;font-weight:600;color:var(--muted)}
.fw-dead{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--soft)}
.fw-dead li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--soft);font-size:14.5px;scroll-margin-top:90px}
.fw-dead .v{font:600 16px var(--f-mono);letter-spacing:-.03em}
.fw-dead a{color:var(--link-strong,var(--accent));font-weight:600;text-decoration:none}
.fw-dead .e{color:var(--muted);font-size:13.5px;white-space:nowrap}
.fw-foot{margin:12px 0 0;font-size:14px;color:var(--copy,var(--muted));max-width:75ch}
.fw-know{margin-top:40px}
.fw-know>h2{margin:0 0 14px;font-size:22px;letter-spacing:-.02em}
.fw-know .notices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 36px}
.fw-know .notice{background:none!important;box-shadow:none!important;border:0!important;padding:0!important}
.fw-know .notice.fw-first h3{color:var(--amber-ink,#8A5100)}
@media (max-width:760px){.fw-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.fw-know .notices{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.fw-card{padding:18px 16px}.fw-bl li{grid-template-columns:80px minmax(0,1fr) auto}.fw-bl .d{display:none}.fw-dead li{grid-template-columns:44px minmax(0,1fr)}.fw-dead .e{grid-column:2;white-space:normal}.fw-look{width:100%;flex-wrap:wrap}.fw-look label{flex:1 1 100%}.fw-look input{flex:1 1 0;width:0;min-width:0}.fw-look button{flex:0 0 auto}}

/* Lifecycle page: look up one model first */
:root[data-page="eos"] #fwtl{display:none!important}
:root[data-page="branches"] #fwtl{display:grid;gap:16px;margin-top:40px;scroll-margin-top:90px}
:root[data-page="branches"] #fwtl .lc-intro h2{font-size:22px;letter-spacing:-.02em;margin:0 0 6px}
.lc-find{background:var(--surface);border-radius:16px;box-shadow:var(--lift,0 0 0 1px var(--line));padding:20px 22px;display:grid;gap:10px}
.lc-find label{font-weight:650;font-size:17px}
.lc-find input{height:50px;padding:0 14px;border-radius:12px;border:1px solid var(--field-edge,var(--line));background:var(--surface);color:var(--ink);font:500 16px var(--f-body);min-width:0}
.lc-find input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
#lcPick:empty{display:none}
.lc-pick{margin:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.lc-pick p{margin:0;font-size:14px;color:var(--muted);flex:1 1 100%}
.lc-pick button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 12px;font:600 14px var(--f-body);cursor:pointer}
.lc-pick button:hover{border-color:var(--accent)}
.lc-copy{border:0;background:none;padding:0;cursor:pointer;font:inherit}
.lc-pick button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#lcAns:empty{display:none}
#lcAns .m2-verdict{margin-top:18px}
.lc-ans{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:start}
.lc-ans .lc-big{margin:6px 0 4px;font-size:34px;font-weight:650;letter-spacing:-.02em;line-height:1.1;color:var(--sig-ink)}
.lc-ans .lc-big.b-soon{color:#E3A33A}.lc-ans .lc-big.b-out{color:#F29191}
.lc-ans .m2-pos>div{grid-template-columns:96px minmax(0,1fr)}
.lc-ans .m2-pos dd a{color:var(--sig-ink);text-decoration:underline;text-underline-offset:3px}
.lc-tlw{min-width:0}
.lc-ans .e-pt-lsed b,.lc-ans .e-pt-lsed em{right:0}
.lc-ans .e-pt-eos b,.lc-ans .e-pt-eos em,.lc-ans .e-pt-eoo b,.lc-ans .e-pt-eoo em{left:0}
.lc-ans .e-today b{bottom:-40px}
.lc-dl{display:none;margin:12px 0 0;gap:6px}
.lc-dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;border-top:1px solid var(--sig-line,rgba(255,255,255,.14));padding-top:6px}
.lc-dl dt{color:var(--sig-3,var(--sig-muted));font-size:13.5px}.lc-dl dd{margin:0;color:var(--sig-ink);font:500 14px var(--f-mono);letter-spacing:-.02em}
@media (max-width:640px){.lc-dl{display:grid}}
#eEstWrap.lc-tool>summary{display:flex;padding:0}
#eEstWrap.lc-tool>summary .lc-sum-h{font-size:16px;color:var(--ink);font-weight:650}
#eEstWrap.lc-tool>summary .lc-sum-s{font-size:14px}
.lc-ans .e-tl{margin-top:30px;padding-bottom:58px}
.lc-ans .e-tl .e-pt b,.lc-ans .e-tl .e-today b{color:var(--sig-3,var(--sig-muted))}
.lc-ans .e-tl .e-pt em{color:var(--sig-ink)}
.lc-ans .e-tl .e-pt i{background:var(--sig);box-shadow:0 0 0 3px var(--sig-ink)}
.lc-ans .e-tl-bar{background:rgba(255,255,255,.12)}
.lc-ans .e-none{color:var(--sig-2,var(--sig-muted));margin:28px 0 0}
.lc-soon{margin-top:36px}
.lc-soon:empty{display:none}
.lc-soon h2{margin:0;font-size:22px;letter-spacing:-.02em}
.lc-soon>p{margin:4px 0 12px;font-size:14.5px;color:var(--muted)}
.lc-sl{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:14px;box-shadow:var(--lift,0 0 0 1px var(--line))}
.lc-sl li{border-top:1px solid var(--soft)}.lc-sl li:first-child{border-top:0}
.lc-sl button{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 120px 110px;gap:12px;align-items:baseline;padding:12px 18px;font-size:14.5px}
.lc-sl button:hover{background:var(--soft)}
.lc-sl button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:14px}
.lc-sl b{font-weight:600}.lc-sl .al{color:var(--muted);font-size:13.5px}.lc-sl .w{color:var(--amber-ink,#8A5100);font-weight:600;text-align:right}
.lc-more{margin:12px 0 0;border:0;background:none;padding:4px 0;color:var(--link-strong,var(--accent));font:600 14.5px var(--f-body);cursor:pointer}
.lc-more:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.lc-tool{margin-top:14px;background:var(--surface);border-radius:14px;box-shadow:var(--lift,0 0 0 1px var(--line));padding:16px 20px}
#eEstWrap.lc-tool{margin-top:36px}
.lc-tool>summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;list-style:none}
.lc-tool>summary::-webkit-details-marker{display:none}
.lc-tool>summary::before{content:"";width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);margin-right:4px;align-self:center;transition:transform .15s}
.lc-tool[open]>summary::before{transform:rotate(45deg)}
.lc-tool>summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}
.lc-sum-h{font-weight:650;font-size:16px;color:var(--ink)}.lc-sum-s{font-size:14px;color:var(--muted)}
.lc-tool[open]>summary{margin-bottom:14px}
.e-est-lead{margin:0 0 8px;font-size:15.5px;font-weight:600}
.e-est-lead.bad{color:var(--crit)}.e-est-lead.warn{color:var(--amber-ink,#8A5100)}
:root[data-page="eos"] .e-key{margin-top:40px}
@media (max-width:760px){.lc-ans{grid-template-columns:minmax(0,1fr)!important}.lc-ans .lc-big{font-size:28px}}
@media (max-width:560px){.lc-sl button{grid-template-columns:minmax(0,1fr) auto;padding:12px 14px}.lc-sl .al,.lc-sl .d{display:none}.lc-find{padding:16px}.lc-ans .m2-pos>div{grid-template-columns:minmax(0,1fr);gap:2px}}
