/* MAG-PAGES-1021 magazine kit (extends RANKINGS-HUB-1021 rk-*): ranking and list pages. Static HTML/CSS, no JS needed; the house sort kit (pd-visuals, data-vz-sort) enhances tables. House tokens and Inter only. Prefix mg-. */
/* ---- type scale ---- */
.mg{--mg-ink:var(--ink,#0C0C0B);--mg-mid:var(--mid,#56564F);--mg-faint:var(--faint,#717168);--mg-line:var(--line,#E4E4DD);--mg-band:var(--band,#F6F6F3);--mg-y:var(--yellow,#FFE01A);--mg-ys:var(--yellow-soft,#FFF7C4);--mg-c:var(--cobalt,#1D3BF0);--mg-cd:var(--cobalt-deep,#1226A8);--mg-mono:var(--mono,ui-monospace,monospace);--mg-sans:var(--sans,"Inter",sans-serif)}
.mg-cap,.mg-kick,.mg-asof,.mg-fig-src,.mg-tag{font-family:var(--mg-mono);font-size:11px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}
/* ---- hero: kicker, headline, finding-led dek, as-of line, lead figure ---- */
.mg-hero{padding:44px 0 0;border-bottom:2px solid var(--mg-ink)}
.mg-kick{margin:0;font-weight:800;letter-spacing:.2em;color:var(--mg-c);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.mg-kick a{color:inherit;text-decoration:none}
.mg-kick a:hover,.mg-kick a:focus-visible{text-decoration:underline;text-underline-offset:3px}
.mg-kick .mg-sep{color:var(--mg-faint);font-weight:400}
.mg-kick .mg-topic{color:var(--mg-ink)}
.mg-hero-g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px 64px;align-items:end;margin-top:18px}
.mg-hero h1{margin:0;font-weight:900;font-size:clamp(32px,4.7vw,60px);line-height:1.02;letter-spacing:-.038em;max-width:21ch;color:var(--mg-ink)}
.mg-dek{margin:22px 0 0;font-size:clamp(17px,1.65vw,20.5px);line-height:1.5;color:var(--mg-ink);max-width:56ch;font-weight:400}
.mg-dek b{font-weight:800;font-variant-numeric:tabular-nums}
.mg-dek a{color:inherit;text-decoration:underline;text-decoration-color:var(--mg-y);text-decoration-thickness:3px;text-underline-offset:3px}
.mg-asof{margin:26px 0 0;padding:12px 0 14px;border-top:1px solid var(--mg-line);color:var(--mg-mid);display:flex;flex-wrap:wrap;gap:4px 18px}
.mg-asof b{color:var(--mg-ink);font-weight:700}
.mg-asof span+span::before{content:"";display:inline-block;width:5px;height:5px;background:var(--mg-y);margin:0 12px 2px 0;vertical-align:middle;outline:1px solid var(--mg-ink)}
.mg-lead{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;padding:22px 24px 24px;background:var(--mg-ink);color:#fff;border-bottom:8px solid var(--mg-y);margin-bottom:-2px}
.mg-lead .mg-cap{color:var(--mg-y);font-weight:700}
.mg-lead-n{display:block;margin:14px 0 0;font-weight:900;font-size:clamp(48px,6.6vw,96px);line-height:.92;letter-spacing:-.05em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.mg-lead-n small{font-size:.42em;letter-spacing:-.02em;font-weight:800;margin-left:.12em}
.mg-lead-l{display:block;margin-top:12px;font-size:15px;line-height:1.45;color:#ECECE6;max-width:34ch}
.mg-lead-l b{color:#fff}
.mg-lead a{color:#fff;text-decoration:underline;text-decoration-color:var(--mg-y);text-decoration-thickness:2px;text-underline-offset:3px}
/* ---- pull figures strip ---- */
dl.mg-stats{margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--mg-line)}
dl.mg-stats>div{display:flex;flex-direction:column-reverse;justify-content:flex-end;padding:18px 20px 20px 0;margin-right:20px;border-right:1px solid var(--mg-line)}
dl.mg-stats>div:last-child{border-right:0;margin-right:0}
dl.mg-stats dd{margin:0;font-weight:900;font-size:clamp(24px,2.6vw,34px);line-height:1.02;letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--mg-ink)}
dl.mg-stats dt{margin-top:7px;font-size:13.5px;line-height:1.4;color:var(--mg-mid);max-width:26ch}
/* ---- in-page nav ---- */
nav.mg-toc{border-bottom:1px solid var(--mg-line)}
nav.mg-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 26px;counter-reset:mgtoc}
nav.mg-toc li{counter-increment:mgtoc}
nav.mg-toc a{display:inline-block;padding:13px 0 12px;font:700 12.5px/1.2 var(--mg-sans);letter-spacing:.02em;color:var(--mg-ink);text-decoration:none;border-bottom:3px solid transparent;min-height:20px}
nav.mg-toc a::before{content:counter(mgtoc,decimal-leading-zero) " ";font-family:var(--mg-mono);color:var(--mg-c);font-size:11px;margin-right:2px}
nav.mg-toc a:hover,nav.mg-toc a:focus-visible{border-bottom-color:var(--mg-y)}
/* ---- sections and headings ---- */
.mg-sec{padding:52px 0 8px;counter-increment:mgsec}
.mg-sec:last-of-type{padding-bottom:56px}
.mg-body{counter-reset:mgsec}
.mg-sec>.wrap>h2,.mg-h2{position:relative;margin:0 0 6px;font-weight:900;font-size:clamp(23px,2.5vw,32px);line-height:1.12;letter-spacing:-.03em;color:var(--mg-ink);max-width:30ch;padding-top:16px;border-top:4px solid var(--mg-ink)}
.mg-sec>.wrap>h2::before,.mg-h2::before{content:counter(mgsec,decimal-leading-zero);display:block;margin-bottom:8px;font:800 12px/1 var(--mg-mono);letter-spacing:.1em;color:var(--mg-c)}
.mg-sub{margin:4px 0 24px;font-size:15.5px;line-height:1.55;color:var(--mg-mid);max-width:66ch}
.mg-alt{background:var(--mg-band);border-top:1px solid var(--mg-line);border-bottom:1px solid var(--mg-line);padding-bottom:52px;margin-top:52px}
/* ---- figure frame ---- */
figure.mg-fig{margin:26px 0 0;padding:0;min-width:0}
.mg-fig-h{margin:0;font-weight:800;font-size:18px;line-height:1.3;letter-spacing:-.015em;color:var(--mg-ink)}
.mg-fig-h::before{content:"";display:block;width:40px;height:6px;background:var(--mg-y);margin-bottom:12px;outline:1px solid var(--mg-ink)}
.mg-fig-d{margin:6px 0 18px;font-size:14.5px;line-height:1.5;color:var(--mg-mid);max-width:70ch}
.mg-fig-src{margin:16px 0 0;padding-top:10px;border-top:1px solid var(--mg-line);color:var(--mg-faint);letter-spacing:.05em;text-transform:none;font-size:11.5px}
.mg-fig-src b{font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mg-mid);margin-right:4px}
.mg-fig-src a{color:var(--mg-mid)}
.mg-two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px 56px;align-items:start}
.mg-key{display:flex;flex-wrap:wrap;gap:6px 16px;margin:-6px 0 16px;font-size:12.5px;color:var(--mg-mid)}
.mg-key i{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px;background:var(--mg-c)}
.mg-key i.k2{background:#9AA8F5}.mg-key i.k3{background:var(--mg-ink)}.mg-key i.ky{background:var(--mg-y);outline:1px solid var(--mg-ink)}
.mg-key i.kl{width:18px;height:0;border-top:2px dashed var(--mg-ink);background:none;vertical-align:3px}
/* ---- annotated bar chart (HTML, direct labels) ---- */
ol.mg-bars{list-style:none;margin:0;padding:0}
ol.mg-bars li{display:grid;grid-template-columns:2.4em minmax(0,16em) minmax(0,1fr);gap:0 12px;align-items:center;padding:4px 0;min-width:0}
ol.mg-bars .mg-r{font:700 11.5px/1 var(--mg-mono);color:var(--mg-faint);text-align:right}
ol.mg-bars .mg-n{font-size:13.5px;line-height:1.3;font-weight:600;color:var(--mg-ink);min-width:0;overflow-wrap:anywhere}
ol.mg-bars .mg-n small{display:block;font-weight:400;font-size:12px;color:var(--mg-mid)}
ol.mg-bars .mg-n a{color:inherit;text-decoration:none;border-bottom:1px solid var(--mg-line)}
ol.mg-bars .mg-n a:hover{border-bottom-color:var(--mg-c)}
.mg-tr{position:relative;display:flex;align-items:center;min-height:20px;min-width:0}
.mg-fill{display:block;height:18px;width:var(--w);min-width:2px;background:var(--mg-c);flex:none}
.mg-v{flex:none;padding-left:8px;font:700 12px/1 var(--mg-mono);font-variant-numeric:tabular-nums;color:var(--mg-ink);white-space:nowrap}
.mg-tr.in .mg-v{position:absolute;right:calc(100% - var(--w) + 8px);padding:0;color:#fff}
ol.mg-bars li.c2 .mg-fill{background:#9AA8F5}
ol.mg-bars li.c3 .mg-fill{background:var(--mg-ink)}
ol.mg-bars li.hl .mg-fill{background:var(--mg-cd)}
ol.mg-bars li.hl .mg-n{font-weight:800}
ol.mg-bars li.hl .mg-r{color:var(--mg-ink)}
ol.mg-bars li.mg-ann{display:block;margin:2px 0 8px calc(2.4em + 12px);padding:6px 0 6px 12px;border-left:3px solid var(--mg-y);font-size:13px;line-height:1.45;color:var(--mg-ink);max-width:62ch}
ol.mg-bars li.mg-ann b{font-weight:800}
ol.mg-bars li.mg-brk{display:block;margin:10px 0 2px calc(2.4em + 12px);padding:7px 10px;background:var(--mg-ys);border-left:3px solid var(--mg-ink);font-size:13px;line-height:1.4}
ol.mg-bars li.mg-brk b{font-weight:800}
ol.mg-bars li.in-brk{border-left:3px solid var(--mg-ink);margin-left:calc(2.4em + 12px);grid-template-columns:0 minmax(0,calc(16em - 2.4em - 12px)) minmax(0,1fr);padding-left:12px}
ol.mg-bars li.in-brk .mg-r{visibility:hidden}
ol.mg-bars.mg-dark li .mg-n,ol.mg-bars.mg-dark .mg-v{color:#fff}
.mg-scale{display:grid;grid-template-columns:2.4em minmax(0,16em) minmax(0,1fr);gap:0 12px;margin-top:6px}
.mg-scale span{grid-column:3;font:400 11px/1.3 var(--mg-mono);color:var(--mg-faint);border-top:1px solid var(--mg-line);padding-top:5px}
/* ---- share strip (part of a whole) ---- */
.mg-share{display:flex;width:100%;height:34px;border:1.5px solid var(--mg-ink);background:var(--mg-band)}
.mg-share span{display:block;height:100%;width:var(--w);background:var(--mg-c);border-right:1.5px solid var(--mg-ink)}
.mg-share span.s2{background:#9AA8F5}.mg-share span.s3{background:repeating-linear-gradient(45deg,var(--mg-band) 0 4px,#D8D8D0 4px 6px)}
.mg-share span:last-child{border-right:0}
ul.mg-share-k{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 20px}
ul.mg-share-k li{font-size:13px;line-height:1.4;color:var(--mg-mid);border-top:3px solid var(--mg-c);padding-top:6px}
ul.mg-share-k li.s2{border-top-color:#9AA8F5}ul.mg-share-k li.s3{border-top-color:#C9C9C0}
ul.mg-share-k b{display:block;font-size:20px;font-weight:900;letter-spacing:-.02em;color:var(--mg-ink);font-variant-numeric:tabular-nums}
/* ---- dot strip / beeswarm with reference line ---- */
.mg-strip{position:relative;margin:34px 0 0;height:var(--h,150px);border-bottom:1.5px solid var(--mg-ink)}
.mg-dot{position:absolute;left:var(--x);bottom:var(--y);width:12px;height:12px;margin:0 0 3px -6px;border-radius:50%;background:var(--mg-c);border:1.5px solid #fff;box-sizing:border-box}
.mg-dot.hl{background:var(--mg-cd);width:14px;height:14px;margin-left:-7px}
.mg-dot.lo{background:#9AA8F5}
.mg-ref{position:absolute;left:var(--x);top:-26px;bottom:0;border-left:2px dashed var(--mg-ink)}
.mg-ref span{position:absolute;top:0;left:6px;white-space:nowrap;font:700 11px/1.3 var(--mg-mono);color:var(--mg-ink);background:var(--bg,#fff);padding:0 4px}
.mg-lab{position:absolute;left:var(--x);bottom:var(--y);transform:translateX(-50%);white-space:nowrap;font-size:12px;line-height:1.2;font-weight:700;color:var(--mg-ink);text-align:center}
.mg-lab small{display:block;font:400 11px/1.2 var(--mg-mono);color:var(--mg-mid)}
.mg-lab.r{transform:none;margin-left:10px;text-align:left}.mg-lab.l{transform:translateX(-100%);margin-left:-10px;text-align:right}
.mg-ticks{position:relative;height:22px}
.mg-ticks span{position:absolute;left:var(--x);top:5px;transform:translateX(-50%);font:400 11px/1 var(--mg-mono);color:var(--mg-faint)}
.mg-ticks span::before{content:"";position:absolute;left:50%;top:-6px;height:5px;border-left:1px solid var(--mg-ink)}
/* ---- tile-grid map (states and territories) ---- */
.mg-tmap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;max-width:760px}
.mg-tl{grid-column:var(--c);grid-row:var(--r);aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:space-between;padding:5px 6px;box-sizing:border-box;min-width:0;background:var(--mg-band);color:var(--mg-ink);border:1px solid rgba(12,12,11,.08)}
.mg-tl b{font:800 12.5px/1 var(--mg-sans);letter-spacing:.02em}
.mg-tl i{font:700 11px/1 var(--mg-mono);font-style:normal;font-variant-numeric:tabular-nums;align-self:flex-end}
.mg-tl.q1{background:#EEF0FE}.mg-tl.q2{background:#CDD4FB}.mg-tl.q3{background:#9AA8F5}.mg-tl.q4{background:#5C72F3;color:#fff}.mg-tl.q5{background:var(--mg-c);color:#fff}.mg-tl.q6{background:var(--mg-cd);color:#fff}
.mg-tl.na{background:repeating-linear-gradient(45deg,#fff 0 4px,var(--mg-line) 4px 6px);color:var(--mg-faint)}
.mg-tl.top{outline:3px solid var(--mg-y);outline-offset:-3px}
ul.mg-legend{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0;max-width:760px}
ul.mg-legend li{flex:1 1 0;min-width:56px;font:400 11px/1.3 var(--mg-mono);color:var(--mg-mid);padding-top:6px;border-top:12px solid var(--mg-band)}
ul.mg-legend li.q1{border-top-color:#EEF0FE}ul.mg-legend li.q2{border-top-color:#CDD4FB}ul.mg-legend li.q3{border-top-color:#9AA8F5}ul.mg-legend li.q4{border-top-color:#5C72F3}ul.mg-legend li.q5{border-top-color:var(--mg-c)}ul.mg-legend li.q6{border-top-color:var(--mg-cd)}
ul.mg-legend li.na{border-top-color:#D8D8D0;flex:0 1 auto;padding-left:12px}
/* ---- span timeline (first to most recent) ---- */
ol.mg-spans{list-style:none;margin:0;padding:0}
ol.mg-spans li{display:grid;grid-template-columns:minmax(0,12em) minmax(0,1fr);gap:0 14px;align-items:center;padding:3px 0;border-bottom:1px solid var(--mg-band)}
ol.mg-spans .mg-n{font-size:13px;font-weight:600;line-height:1.3}
ol.mg-spans .mg-trk{position:relative;height:16px}
ol.mg-spans .mg-ln{position:absolute;top:7px;left:var(--a);width:var(--b);height:2px;background:var(--mg-c)}
ol.mg-spans .mg-ln::before,ol.mg-spans .mg-ln::after{content:"";position:absolute;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--mg-c);box-sizing:border-box}
ol.mg-spans .mg-ln::before{left:-5px;background:#fff;border:2px solid var(--mg-c)}
ol.mg-spans .mg-ln::after{right:-5px}
ol.mg-spans li.hl .mg-ln,ol.mg-spans li.hl .mg-ln::after{background:var(--mg-ink)}
ol.mg-spans li.hl .mg-ln::before{border-color:var(--mg-ink)}
ol.mg-spans li.hl .mg-n{font-weight:800}
.mg-years{display:grid;grid-template-columns:minmax(0,12em) minmax(0,1fr);gap:0 14px}
.mg-years>div{position:relative;height:20px;border-bottom:1px solid var(--mg-ink)}
.mg-years span{position:absolute;left:var(--x);bottom:4px;transform:translateX(-50%);font:700 11px/1 var(--mg-mono);color:var(--mg-mid)}
.mg-years span::after{content:"";position:absolute;left:50%;bottom:-5px;height:4px;border-left:1px solid var(--mg-ink)}
/* ---- rank cards (top entries, annotated) ---- */
ol.mg-cards{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mg-card{position:relative;border:1.5px solid var(--mg-ink);background:var(--bg,#fff);padding:18px 20px 18px;display:flex;flex-direction:column;min-width:0}
.mg-card .mg-rk{font:900 64px/.8 var(--mg-sans);letter-spacing:-.06em;color:var(--mg-ink);font-variant-numeric:tabular-nums}
.mg-card .mg-rk::before{content:"No.";font:800 11px/1 var(--mg-mono);letter-spacing:.12em;vertical-align:top;margin-right:6px;color:var(--mg-c)}
.mg-card h3{margin:16px 0 0;font-weight:800;font-size:18px;line-height:1.25;letter-spacing:-.015em;overflow-wrap:anywhere}
.mg-card h3 a{color:inherit;text-decoration:none}
.mg-card h3 a::after{content:" \2192";color:var(--mg-c)}
.mg-card .mg-cv{display:block;margin-top:10px;font-weight:900;font-size:clamp(24px,2.4vw,30px);letter-spacing:-.035em;line-height:1.05;font-variant-numeric:tabular-nums}
.mg-card .mg-cv span{background:var(--mg-y);padding:0 .1em}
.mg-card .mg-cvl{display:block;margin-top:4px;font-size:13px;color:var(--mg-mid)}
.mg-card dl{margin:14px 0 0;padding-top:12px;border-top:1px dashed var(--mg-line);display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;font-size:13px;line-height:1.4}
.mg-card dt{font:700 10.5px/1.6 var(--mg-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mg-faint)}
.mg-card dd{margin:0;min-width:0;overflow-wrap:anywhere}
.mg-card .mg-note{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:var(--mg-ink)}
.mg-card .mg-cite{margin:auto 0 0;padding-top:14px;font:400 11.5px/1.45 var(--mg-mono);color:var(--mg-faint)}
.mg-card .mg-cite a{color:var(--mg-mid)}
.mg-card.n1{background:var(--mg-ink);color:#fff;border-color:var(--mg-ink)}
.mg-card.n1 .mg-rk{color:var(--mg-y)}.mg-card.n1 .mg-rk::before{color:#fff}
.mg-card.n1 .mg-cv span{color:var(--mg-ink)}
.mg-card.n1 .mg-cvl,.mg-card.n1 dt,.mg-card.n1 .mg-cite,.mg-card.n1 .mg-cite a{color:#B9B9B0}
.mg-card.n1 dl{border-top-color:#3A3A36}
.mg-card.n1 .mg-note{color:#ECECE6}
.mg-card.n1 h3 a::after{color:var(--mg-y)}
/* ---- sortable table skin (wraps the house table.dt.rk-ux; pd-visuals sort kit unchanged) ---- */
.mg-tw{margin-top:22px}
.mg-tbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 20px;align-items:baseline;padding:0 0 10px}
.mg-tbar p{margin:0;font-size:13px;color:var(--mg-mid)}
.mg-tbar p.mg-cap{color:var(--mg-faint)}
.mg-tw .tbl-wrap{border-top:3px solid var(--mg-ink)}
.mg-tw table.dt caption{caption-side:top;text-align:left;font:700 11px/1.4 var(--mg-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mg-faint);padding:10px 10px 8px}
.mg-tw table.dt tbody tr:hover td{background:var(--mg-ys)}
.mg-tw table.dt tbody tr.mg-top td{background:#FFFBE0}
.mg-tw table.dt tbody tr.mg-top:hover td{background:var(--mg-ys)}
.mg-tw table.dt td.rank{font:800 13px/1.5 var(--mg-mono);color:var(--mg-ink)}
.mg-tw table.dt td.num{font-variant-numeric:tabular-nums}
.mg-tw table.dt td.mg-bc{min-width:132px}
.mg-tw table.dt td.mg-bc .bar{display:block;height:6px;margin:6px 0 0 auto;background:var(--mg-c);min-width:2px}
.mg-tw table.dt td.mg-src{font:400 11.5px/1.45 var(--mg-mono);color:var(--mg-mid);white-space:normal;min-width:9em}
.mg-tw table.dt td.mg-src a{color:var(--mg-mid);text-decoration:underline;text-decoration-color:var(--mg-line);text-underline-offset:2px}
.mg-tw table.dt td.mg-src a:hover{color:var(--mg-c)}
.mg-tw table.dt td .mg-co{display:block;font-weight:400;font-size:12.5px;color:var(--mg-mid)}
.mg-tw table.dt tfoot td{font-size:12.5px;color:var(--mg-mid);border-top:2px solid var(--mg-ink);border-bottom:0}
.mg-tfoot{margin:10px 0 0;font-size:13px;line-height:1.5;color:var(--mg-mid);max-width:80ch}
/* ---- method box ---- */
.mg-method{margin-top:26px;border:2px solid var(--mg-ink);background:var(--bg,#fff);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.mg-method>.mg-tag{grid-column:1/-1;margin:0;padding:8px 14px;background:var(--mg-ink);color:#fff;font-weight:700;letter-spacing:.16em}
.mg-method dl{margin:0;padding:18px 20px 20px;border-right:1px solid var(--mg-line);background:var(--mg-band);display:grid;gap:14px;align-content:start}
.mg-method dl>div{min-width:0}
.mg-method dt{font:700 10.5px/1.4 var(--mg-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mg-c)}
.mg-method dd{margin:3px 0 0;font-size:14px;line-height:1.5;color:var(--mg-ink)}
.mg-method .mg-mbody{padding:18px 22px 20px;font-size:15px;line-height:1.65;color:var(--mg-mid);display:grid;gap:12px;align-content:start}
.mg-method .mg-mbody p{margin:0}
.mg-method .mg-mbody a,.mg-limits a,.mg-srcs a{color:var(--mg-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--mg-y);text-decoration-thickness:3px;text-underline-offset:3px}
/* ---- limits (read before citing) ---- */
.mg-limits{margin-top:22px;display:grid;gap:12px;max-width:72ch;padding:4px 0 4px 20px;border-left:6px solid var(--mg-y);font-size:15.5px;line-height:1.65;color:var(--mg-mid)}
.mg-limits p{margin:0}
.mg-limits p:first-child{color:var(--mg-ink);font-weight:600}
/* ---- sources ---- */
ol.mg-srcs{margin:22px 0 0;padding:0;list-style:none;counter-reset:mgsrc;display:grid;gap:10px;max-width:90ch}
ol.mg-srcs>li{counter-increment:mgsrc;position:relative;padding:0 0 10px 38px;border-bottom:1px solid var(--mg-line);font-size:14.5px;line-height:1.55;color:var(--mg-mid)}
ol.mg-srcs>li::before{content:counter(mgsrc);position:absolute;left:0;top:1px;width:24px;height:22px;background:var(--mg-ink);color:#fff;font:700 11px/22px var(--mg-mono);text-align:center}
ol.mg-srcs code{font-family:var(--mg-mono);font-size:12.5px;background:var(--mg-band);padding:1px 4px}
.mg-prose{max-width:72ch;display:grid;gap:14px;font-size:15.5px;line-height:1.65;color:var(--mg-mid)}
.mg-prose p{margin:0}
.mg-prose a{color:var(--mg-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--mg-y);text-decoration-thickness:3px;text-underline-offset:3px}
/* ---- responsive: 900 / 720 / 560 / 400 ---- */
@media(max-width:900px){.mg-hero-g,.mg-two{grid-template-columns:1fr}.mg-lead{margin-bottom:0}dl.mg-stats{grid-template-columns:repeat(2,minmax(0,1fr))}dl.mg-stats>div:nth-child(2n){border-right:0;margin-right:0}dl.mg-stats>div:nth-child(n+3){border-top:1px solid var(--mg-line)}ol.mg-cards{grid-template-columns:1fr}.mg-method{grid-template-columns:1fr}.mg-method dl{border-right:0;border-bottom:1px solid var(--mg-line);grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){ol.mg-bars li{grid-template-columns:2em minmax(0,1fr);row-gap:4px}ol.mg-bars .mg-tr{grid-column:2}ol.mg-bars li.mg-ann,ol.mg-bars li.mg-brk{margin-left:calc(2em + 12px)}ol.mg-bars li.in-brk{margin-left:calc(2em + 12px);grid-template-columns:0 minmax(0,1fr)}ol.mg-bars li.in-brk .mg-tr{grid-column:2}.mg-scale{grid-template-columns:2em minmax(0,1fr)}.mg-scale span{grid-column:2}ol.mg-spans li,.mg-years{grid-template-columns:minmax(0,8.5em) minmax(0,1fr);gap:0 10px}ul.mg-share-k{grid-template-columns:1fr}}
@media(max-width:560px){.mg-hero{padding-top:30px}.mg-hero h1{font-size:31px;letter-spacing:-.03em}.mg-dek{font-size:17px}.mg-lead{padding:18px 18px 20px;margin-left:-20px;margin-right:-20px}.mg-lead-n{font-size:56px}dl.mg-stats>div{padding:14px 12px 16px 0;margin-right:12px}dl.mg-stats dd{font-size:24px}dl.mg-stats dt{font-size:12.5px}nav.mg-toc ol{gap:0 16px}nav.mg-toc a{padding:12px 0 10px}.mg-sec{padding-top:40px}.mg-card{padding:16px 16px}.mg-card .mg-rk{font-size:52px}.mg-tl{padding:2px 3px}.mg-tl b{font-size:9.5px}.mg-tl i{display:none}.mg-tmap{gap:2px}.mg-method dl{grid-template-columns:1fr}.mg-method .mg-mbody{padding:16px}.mg-limits{padding-left:14px}.mg-fill{height:14px}}
@media(max-width:400px){.mg-hero h1{font-size:28px}.mg-lead-n{font-size:50px}}
/* table bar widths for the pd-visuals sort kit (it sets vz-wN on .bar) */
.mg-tw .vz-w0{width:0%}.mg-tw .vz-w1{width:1%}.mg-tw .vz-w2{width:2%}.mg-tw .vz-w3{width:3%}.mg-tw .vz-w4{width:4%}.mg-tw .vz-w5{width:5%}.mg-tw .vz-w6{width:6%}.mg-tw .vz-w7{width:7%}.mg-tw .vz-w8{width:8%}.mg-tw .vz-w9{width:9%}.mg-tw .vz-w10{width:10%}.mg-tw .vz-w11{width:11%}.mg-tw .vz-w12{width:12%}.mg-tw .vz-w13{width:13%}.mg-tw .vz-w14{width:14%}.mg-tw .vz-w15{width:15%}.mg-tw .vz-w16{width:16%}.mg-tw .vz-w17{width:17%}.mg-tw .vz-w18{width:18%}.mg-tw .vz-w19{width:19%}.mg-tw .vz-w20{width:20%}.mg-tw .vz-w21{width:21%}.mg-tw .vz-w22{width:22%}.mg-tw .vz-w23{width:23%}.mg-tw .vz-w24{width:24%}.mg-tw .vz-w25{width:25%}.mg-tw .vz-w26{width:26%}.mg-tw .vz-w27{width:27%}.mg-tw .vz-w28{width:28%}.mg-tw .vz-w29{width:29%}.mg-tw .vz-w30{width:30%}.mg-tw .vz-w31{width:31%}.mg-tw .vz-w32{width:32%}.mg-tw .vz-w33{width:33%}.mg-tw .vz-w34{width:34%}.mg-tw .vz-w35{width:35%}.mg-tw .vz-w36{width:36%}.mg-tw .vz-w37{width:37%}.mg-tw .vz-w38{width:38%}.mg-tw .vz-w39{width:39%}.mg-tw .vz-w40{width:40%}.mg-tw .vz-w41{width:41%}.mg-tw .vz-w42{width:42%}.mg-tw .vz-w43{width:43%}.mg-tw .vz-w44{width:44%}.mg-tw .vz-w45{width:45%}.mg-tw .vz-w46{width:46%}.mg-tw .vz-w47{width:47%}.mg-tw .vz-w48{width:48%}.mg-tw .vz-w49{width:49%}.mg-tw .vz-w50{width:50%}.mg-tw .vz-w51{width:51%}.mg-tw .vz-w52{width:52%}.mg-tw .vz-w53{width:53%}.mg-tw .vz-w54{width:54%}.mg-tw .vz-w55{width:55%}.mg-tw .vz-w56{width:56%}.mg-tw .vz-w57{width:57%}.mg-tw .vz-w58{width:58%}.mg-tw .vz-w59{width:59%}.mg-tw .vz-w60{width:60%}.mg-tw .vz-w61{width:61%}.mg-tw .vz-w62{width:62%}.mg-tw .vz-w63{width:63%}.mg-tw .vz-w64{width:64%}.mg-tw .vz-w65{width:65%}.mg-tw .vz-w66{width:66%}.mg-tw .vz-w67{width:67%}.mg-tw .vz-w68{width:68%}.mg-tw .vz-w69{width:69%}.mg-tw .vz-w70{width:70%}.mg-tw .vz-w71{width:71%}.mg-tw .vz-w72{width:72%}.mg-tw .vz-w73{width:73%}.mg-tw .vz-w74{width:74%}.mg-tw .vz-w75{width:75%}.mg-tw .vz-w76{width:76%}.mg-tw .vz-w77{width:77%}.mg-tw .vz-w78{width:78%}.mg-tw .vz-w79{width:79%}.mg-tw .vz-w80{width:80%}.mg-tw .vz-w81{width:81%}.mg-tw .vz-w82{width:82%}.mg-tw .vz-w83{width:83%}.mg-tw .vz-w84{width:84%}.mg-tw .vz-w85{width:85%}.mg-tw .vz-w86{width:86%}.mg-tw .vz-w87{width:87%}.mg-tw .vz-w88{width:88%}.mg-tw .vz-w89{width:89%}.mg-tw .vz-w90{width:90%}.mg-tw .vz-w91{width:91%}.mg-tw .vz-w92{width:92%}.mg-tw .vz-w93{width:93%}.mg-tw .vz-w94{width:94%}.mg-tw .vz-w95{width:95%}.mg-tw .vz-w96{width:96%}.mg-tw .vz-w97{width:97%}.mg-tw .vz-w98{width:98%}.mg-tw .vz-w99{width:99%}.mg-tw .vz-w100{width:100%}
