
:root{
  --ds-official-purple:#3040cd;--ds-primary-dark:#2a379e;--ds-accent:#e163b8;--ds-neutral-dark:#1e293b;--ds-primary-light:#e1dfff;--ds-primary-lighter:#e3e7ff;--ds-neutral-medium:#7e84bf;--ds-neutral-soft:#a1a5c9;--ds-c-text-muted-inv:#c7cae8;--ds-white:#ffffff;--ds-success:#2a7052;--ds-warning:#96570a;--ds-danger:#b5342b;--ds-info:#3040cd;--ds-text-muted:#5a6275;--ds-hairline:#e6e8f2;--ds-success-tint:#e4f2ea;--ds-warning-tint:#f8eddc;--ds-danger-tint:#fbe9e7;--ds-space-1:4px;--ds-space-2:8px;--ds-space-3:12px;--ds-space-4:16px;--ds-space-6:24px;--ds-space-8:32px;--ds-space-12:48px;--ds-radius-sm:8px;--ds-radius-md:12px;--ds-radius-lg:20px;--font-display:"Readex Pro", "Segoe UI", system-ui, sans-serif;--font-sans:Roboto, "Helvetica Neue", Arial, system-ui, sans-serif;
  --paper:var(--ds-white); --panel:var(--ds-primary-lighter); --ink:var(--ds-neutral-dark); --muted:var(--ds-text-muted); --line:var(--ds-hairline);
  --accent:var(--ds-official-purple); --link:var(--ds-official-purple);
  --live-bg:var(--ds-success-tint); --live-ink:var(--ds-success);
  --build-bg:var(--ds-warning-tint); --build-ink:var(--ds-warning);
  --research-bg:var(--ds-primary-light); --research-ink:var(--ds-neutral-dark); --research-line:var(--ds-neutral-medium);
  --evolve-bg:var(--ds-primary-lighter); --evolve-ink:var(--ds-official-purple);
  --bad-bg:var(--ds-danger-tint); --bad-ink:var(--ds-danger);
  color-scheme: light;
}
@font-face{font-family:'Readex Pro';font-style:normal;font-weight:400 500;font-display:swap;src:url(fonts/ReadexPro-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Readex Pro';font-style:normal;font-weight:400 500;font-display:swap;src:url(fonts/ReadexPro-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/Roboto-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/Roboto-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/Roboto-math.woff2) format('woff2');unicode-range:U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/Roboto-symbols.woff2) format('woff2');unicode-range:U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);
  font:400 16px/1.65 var(--font-sans);}
h1,h2,h3,h4,.brand,.hubcard b,.stephead b,.tl-item .ttl{font-family:var(--font-display)}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--panel);padding:6px 10px;z-index:9}
.top{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;padding:14px 22px;border-bottom:1px solid var(--line);
  font-family:var(--font-sans)}
.brand{color:var(--ink);font-weight:500;font-size:15.5px}
.brand .mark{display:inline-block;width:19px;height:21px;margin-right:8px;vertical-align:-4px}
.brand .mark svg{display:block;width:100%;height:100%}
.tabs{display:flex;gap:4px;font-size:13.5px}
.tabs a{padding:4px 10px;border-radius:8px;color:var(--ink)}
.tabs a:hover{background:var(--panel);text-decoration:none}
.tabs a.here{background:var(--panel);font-weight:600;color:var(--accent)}
.ver{margin-left:auto;color:var(--muted);font-size:12.5px}
.frame{display:grid;grid-template-columns:230px minmax(0,1fr);max-width:1080px;margin:0 auto;gap:34px;padding:0 22px}
.frame.nosidebar{display:block;max-width:820px}
.frame.wide{max-width:1280px}
.frame.wide main{max-width:60rem}
td.nw{white-space:nowrap}
.side{border-right:1px solid var(--line);padding:26px 18px 40px 0;
  font-family:var(--font-sans);font-size:13.5px}
.side nav{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow:auto}
.navgroup h3{margin:16px 0 4px;font-size:12px;color:var(--muted);font-weight:500;font-family:var(--font-sans)}
.navgroup a{display:block;padding:3px 8px;margin-left:-8px;border-radius:6px;color:var(--ink)}
.navgroup a:hover{background:var(--panel);text-decoration:none}
.navgroup a.here,.navgroup a[aria-current="page"]{background:var(--panel);font-weight:600;color:var(--accent)}
.mnav{display:none}
main{padding:30px 0 46px;max-width:46rem}
.nosidebar main{max-width:none}
h1{font-size:30px;line-height:1.25;margin:6px 0 14px;font-weight:500}
h2{font-size:22px;line-height:1.35;margin:30px 0 10px;font-weight:500}
.crumbs{font-family:var(--font-sans);font-size:12.5px;color:var(--muted)}
.crumbs span{margin:0 4px}
p{margin:0 0 14px}
ul{margin:0 0 14px;padding-left:22px}
li{margin-bottom:6px}
.kicker{font-family:var(--font-sans);font-size:13px;color:var(--muted);margin:0 0 2px}
.kicker+h1{margin-top:0;font-size:34px}
.subtitle{font-family:var(--font-display);font-size:19px;line-height:1.4;font-weight:400;color:var(--ink);margin:-6px 0 18px}
.pdfrow{margin:0 0 20px}
.pdfbtn{display:inline-block;background:var(--accent);color:#fff;border-radius:var(--ds-radius-md);padding:9px 18px;font-family:var(--font-sans);font-size:14px;font-weight:600}
.pdfbtn:hover{text-decoration:none;opacity:.9}
.navgroup a.pdfnav{margin-top:10px;color:var(--accent);font-weight:600}
.navgroup a.on{background:var(--panel);font-weight:600;color:var(--accent)}
.edition{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:0 0 18px;font-family:var(--font-sans);font-size:13.5px;color:var(--muted)}
.edition>span{font-weight:600;color:var(--ink)}
.cite summary{cursor:pointer;color:var(--link)}
.cite p{margin:8px 0 0;padding:10px 14px;border:1px solid var(--line);border-radius:var(--ds-radius-md);color:var(--ink);font-size:13.5px;line-height:1.6;user-select:all}
.more{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:-4px 0 14px;font-family:var(--font-sans);font-size:13.5px}
.more>span{color:var(--muted)}
.more>span::after{content:":"}
.more a{font-weight:600}
.more a::after{content:" →"}
.tagkey{border:1px solid var(--line);border-radius:var(--ds-radius-md);padding:10px 14px;margin:0 0 24px;font-family:var(--font-sans);font-size:13.5px;line-height:1.9;color:var(--muted)}
.tagkey>b{color:var(--ink);font-weight:600}
.lead{background:var(--ds-primary-light);border-radius:var(--ds-radius-lg);padding:14px 18px;color:var(--ink);margin-bottom:22px}
.status{margin-top:26px;background:var(--panel);border-radius:var(--ds-radius-lg);
  padding:14px 18px;font-size:15px}
.chip{display:inline;border-radius:var(--ds-radius-sm);padding:1px 7px;font-family:var(--font-sans);
  font-size:.82em;font-style:normal;white-space:normal}
.chip b{font-weight:600}
.chip-live{background:var(--live-bg);color:var(--live-ink)}
.chip-build{background:var(--build-bg);color:var(--build-ink)}
.chip-research{background:var(--research-bg);color:var(--research-ink)}
.chip-evolve{background:var(--evolve-bg);color:var(--evolve-ink)}
a.chip{text-decoration:none}
a.chip:hover{text-decoration:none;box-shadow:inset 0 0 0 1px currentColor}
.seealso{margin-top:20px;padding-top:14px;border-top:1px solid var(--line);
  font-family:var(--font-sans);font-size:13.5px}
.seealso span{color:var(--muted);margin-right:6px;font-size:12px}
.pager{display:flex;justify-content:space-between;gap:12px;margin-top:26px;
  font-family:var(--font-sans);font-size:14px}
.pager a{border:1px solid var(--line);border-radius:10px;padding:8px 14px;color:var(--ink);min-width:130px}
.pager a:hover{background:var(--panel);text-decoration:none}
.pager small{display:block;color:var(--muted);font-size:12px}
.pager .next{text-align:right;margin-left:auto}
li.inv{list-style:none;margin:0 0 10px -22px;border-radius:var(--ds-radius-md);padding:10px 14px;background:var(--panel)}
.invhead{font-family:var(--font-sans);font-size:15px;font-weight:600;
  display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.invdesc{font-size:15px;color:var(--muted);margin-top:2px}
.tblwrap{overflow-x:auto;margin:0 0 16px}
table{border-collapse:collapse;font-size:14.5px;min-width:100%;
  font-family:var(--font-sans)}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{background:var(--panel);font-weight:600}
h3{font-size:19px;line-height:1.4;margin:24px 0 8px;font-weight:500}
h4{font-size:16px;margin:18px 0 6px;font-weight:500}
.confid{display:inline-block;border:1px solid var(--build-ink);color:var(--build-ink);border-radius:6px;
  padding:2px 10px;font-family:var(--font-sans);font-size:11.5px;letter-spacing:.08em}
.figcap{font-family:var(--font-sans);font-size:13px;color:var(--muted);margin:18px 0 6px}
.fig{margin:22px 0 26px;display:flex;flex-direction:column;gap:10px;font-family:var(--font-sans)}
.fighead{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between}
.figno{font-size:12px;color:var(--muted);font-weight:500}
.figtoggle{display:inline-flex;border:1px solid var(--ds-neutral-soft);border-radius:var(--ds-radius-md);overflow:hidden;background:var(--paper)}
.figtoggle button{border:0;background:transparent;color:var(--ink);font:inherit;font-size:12.5px;font-weight:600;padding:6px 14px;cursor:pointer}
.figtoggle button.on{background:var(--accent);color:#fff}
.figtoggle button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.figwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--ds-radius-lg);background:var(--paper);padding:8px}
.figwrap svg{display:block;width:100%;min-width:880px;height:auto;color:var(--ink);
  /* the print edition's palette: its figures are these renders with the two lavender tints
     (primary-lighter panels, primary-light "later" fills, and the hairline) replaced by one neutral grey; the rest of
     the palette is untouched, so the web edition follows and the two editions show the same figures */
  --panel:#f5f6fa;--research-bg:#f5f6fa;--line:#f5f6fa}
.fig svg text{font-family:var(--font-sans);fill:var(--ink)}
.fig svg .t{font-size:13px;font-weight:500;font-family:var(--font-display)}
.fig svg .l{font-size:11.5px}
.fig svg .lbl{font-size:10px;fill:var(--muted);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round}
.fig svg .muted{fill:var(--muted)}
.fig svg .box{fill:var(--paper);stroke:currentColor;stroke-width:1.2}
.fig svg .box.soft{fill:var(--panel)}
.fig svg .ln{stroke:currentColor;stroke-width:1.3;fill:none}
.fig svg .later{stroke:var(--research-line);stroke-dasharray:5 4}
.fig svg rect.later{fill:var(--research-bg)}
.fig svg .retired{stroke:var(--muted);stroke-dasharray:4 4}
.fig svg .big{font-size:15px;font-weight:600}
.fig svg .ico{fill:var(--paper);stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}
.fig svg .icof{fill:currentColor;stroke:none}
.fig svg .okf{fill:var(--live-bg);stroke:var(--live-ink);stroke-width:1.2}
.fig svg .okl{stroke:var(--live-ink);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.fig svg .okt{fill:var(--live-ink)}
.fig svg .badf{fill:var(--bad-bg);stroke:var(--bad-ink);stroke-width:1.2}
.fig svg .badl{stroke:var(--bad-ink);stroke-width:2;fill:none;stroke-linecap:round}
.fig svg .badt{fill:var(--bad-ink)}
.fig svg .badbox{fill:var(--bad-bg);stroke:var(--bad-ink);stroke-width:1.2;stroke-dasharray:4 3}
.fig svg .dot{stroke:currentColor;stroke-width:1.3;fill:none;stroke-dasharray:2 4;stroke-linecap:round}
.fig svg .dotbad{stroke:var(--bad-ink);stroke-width:1.3;fill:none;stroke-dasharray:2 4;stroke-linecap:round}
.fig svg .accf{fill:var(--accent);stroke:none}
.fig svg .accl{stroke:var(--accent);fill:none;stroke-linecap:round}
.fig svg .money{fill:var(--accent);font-weight:700}
.fig svg .pale{fill:var(--panel);stroke:var(--line);stroke-width:1}
.fig svg [data-v]{display:none}
.fig.v-now svg [data-v="now"]{display:inline}
.fig.v-later svg [data-v="later"]{display:inline}
.fig figcaption{font-size:14px;line-height:1.5;color:var(--ink);font-family:var(--font-sans);max-width:60rem}
.shots{display:flex;gap:14px;overflow-x:auto;padding:4px 2px 14px;margin:12px 0 24px;scroll-snap-type:x proximity;font-family:var(--font-sans)}
.shot{flex:0 0 164px;margin:0;scroll-snap-align:start}
.shot img{display:block;width:164px;height:auto;border:1px solid var(--line);border-radius:16px;background:#fff}
.shot a{display:block;text-decoration:none}
.shot figcaption{font-size:12px;line-height:1.45;color:var(--muted);margin-top:8px}
.shots.wide .shot{flex:0 0 440px}
.shots.wide .shot img{width:440px;border-radius:10px}
@media (max-width:600px){.shots.wide .shot{flex:0 0 300px}.shots.wide .shot img{width:300px}}
@media print{.shots{flex-wrap:wrap;overflow:visible}.shot{flex:0 0 150px}.shot img{width:150px}.shots.wide .shot{flex:0 0 300px}.shots.wide .shot img{width:300px}}
.story{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px 16px;margin:12px 0 26px;font-family:var(--font-sans)}
.story.wide{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}
.step{border-radius:var(--ds-radius-lg);background:var(--panel);padding:14px 16px 15px}
.stephead{display:flex;align-items:center;gap:9px;margin-bottom:9px;font-size:15px;line-height:1.3;color:var(--ink)}
.stephead b{font-weight:500}
.stepno{flex:0 0 24px;height:24px;border-radius:12px;background:var(--accent);color:#fff;font-size:12.5px;font-weight:700;text-align:center;line-height:24px}
.stepnext{margin-left:auto;color:var(--muted);font-size:17px}
.stepbody{display:flex;gap:12px;align-items:flex-start}
.stepbody p{margin:0;font-size:14px;line-height:1.45;color:var(--ink)}
.stepimg{flex:0 0 84px;display:block}
.stepimg img{display:block;width:84px;height:auto;border:1px solid var(--line);border-radius:9px;background:#fff}
.story.wide .stepimg{flex:0 0 150px}
.story.wide .stepimg img{width:150px;border-radius:6px}
@media print{.story{grid-template-columns:repeat(3,1fr)}.story.wide{grid-template-columns:repeat(2,1fr)}.step{break-inside:avoid}}
.figbox{border:1.5px dashed var(--line);border-radius:12px;background:var(--panel);color:var(--muted);
  padding:34px 18px;text-align:center;margin:0 0 16px;font-family:var(--font-sans);font-size:14px}
.qrcard{display:block;border:1px solid var(--line);border-radius:var(--ds-radius-lg);background:var(--panel);
  padding:14px 18px;margin:6px 0 16px;color:var(--ink);font-family:var(--font-sans)}
.qrcard b{display:block;margin-bottom:2px}
.qrcard span{color:var(--muted);font-size:14px}
.qrcard:hover{text-decoration:none;background:var(--paper)}
.dl{margin-top:18px;color:var(--muted);font-family:var(--font-sans);font-size:13.5px}
.hubgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:8px}
.hubcard{border:1px solid var(--line);border-radius:var(--ds-radius-lg);background:var(--panel);padding:18px;color:var(--ink);
  font-family:var(--font-sans)}
.hubcard b{display:block;font-size:18px;font-weight:500;margin-bottom:6px;color:var(--accent)}
.hubcard span{color:var(--muted);font-size:14px;line-height:1.5}
.hubcard:hover{text-decoration:none;background:var(--paper)}
.gl-filter{position:sticky;top:0;z-index:2;background:var(--paper);padding:10px 0 12px;font-family:var(--font-sans)}
.gl-filter input{width:100%;max-width:28rem;font-size:15px;padding:10px 12px;border:1px solid var(--ds-neutral-soft);border-radius:var(--ds-radius-md);background:var(--paper);color:var(--ink)}
#gl-n{margin-left:10px;color:var(--muted);font-size:13px}
h2.gl-cat{font-size:13px;font-weight:500;color:var(--muted);margin:24px 0 6px;font-family:var(--font-sans)}
.gl-term[hidden],.gl-cat[hidden]{display:none}
.tl-filter{display:flex;gap:6px;margin:4px 0 18px;font-family:var(--font-sans)}
.tl-filter button{border:1px solid var(--ds-neutral-soft);background:var(--paper);color:var(--ink);border-radius:var(--ds-radius-md);
  padding:5px 14px;font-size:13px;cursor:pointer}
.tl-filter button.on{background:var(--accent);border-color:var(--accent);color:#fff}
.tl{position:relative;padding-left:22px}
.tl::before{content:'';position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:var(--line)}
.tl-month{font-family:var(--font-sans);font-size:13px;font-weight:500;color:var(--muted);margin:22px 0 8px}
.tl-item{margin:0 0 8px;border-radius:var(--ds-radius-md);background:var(--panel)}
.tl-item summary{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;cursor:pointer;padding:10px 14px;
  font-family:var(--font-sans);font-size:15px;list-style:none}
.tl-item summary::-webkit-details-marker{display:none}
.tl-item .dot{position:absolute;left:0;width:12px;height:12px;border-radius:50%;border:2px solid var(--paper);margin-top:3px}
.lane-done .dot{background:var(--live-ink)}
.lane-progress .dot{background:var(--build-ink)}
.lane-planned .dot{background:var(--research-line)}
.tl-item .when{color:var(--muted);font-size:13px;min-width:92px}
.tl-item .ttl{font-weight:600}
.tl-item .chip{margin-left:auto}
.tl-body{padding:0 14px 12px;border-top:1px dashed var(--line)}
.tl-body p{margin:10px 0 6px;font-size:15.5px}
.tl-more{font-family:var(--font-sans);font-size:13.5px}
.foot{border-top:1px solid var(--line);margin-top:10px;padding:16px 22px;color:var(--muted);
  font-family:var(--font-sans);font-size:12.5px}
.foot p{max-width:1036px;margin:0 auto}
@media (max-width:900px){
  .frame{display:block;padding:0 16px}
  .side{display:none}
  .mnav{display:block;margin:14px 0 0;border:1px solid var(--line);border-radius:10px;background:var(--panel);
    font-family:var(--font-sans);font-size:14px}
  .mnav summary{padding:10px 14px;cursor:pointer;font-weight:600}
  .mnav nav{padding:0 14px 12px}
  main{padding-top:20px}
  h1{font-size:25px}
  .tl-item .chip{margin-left:0}
}
