:root{
  --bg:#ffffff; --bg-2:#f3f4f6; --line:#d3d8de;
  --text:#111418; --text-2:#3b444d; --text-3:#5c6873;
  --accent:#1d5fa8; --focus:#ffbf47;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#121417; --bg-2:#1b1f24; --line:#353c44;
  --text:#e9ecef; --text-2:#c3c9d0; --text-3:#98a3ae;
  --accent:#8fbcf3}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:18px;line-height:1.6}
main{max-width:44rem;margin:0 auto;padding:.75rem 1rem 4rem;display:flex;flex-direction:column;gap:2.5rem}
@media (min-width:40rem){main{padding:1.25rem 1.5rem 5rem}}
p,li,h1,h2{max-width:65ch}
h1,h2{font-weight:700;line-height:1.2;margin:0;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(1.8rem,5.5vw,2.5rem);margin-top:1.5rem}
h1 .plain{display:block;font-size:1.125rem;font-weight:400;line-height:1.5;color:var(--text-2);margin-top:.6rem;text-wrap:pretty}
h2{font-size:clamp(1.35rem,4vw,1.65rem)}
p{margin:0 0 1rem} p:last-child{margin-bottom:0}
ul{margin:0;padding-left:1.4rem;display:flex;flex-direction:column;gap:.65rem}
section{display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--line)}
a{color:var(--accent);text-decoration:underline;text-underline-offset:.15em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}
.page-head{display:flex;flex-direction:column}
.kicker{font-size:1rem;color:var(--text-3);margin:1.25rem 0 0}
.meta{font-size:1rem;color:var(--text-3);margin:.75rem 0 0}
.lede{font-size:1.2rem;color:var(--text-2);margin:1rem 0 0}
.callout{padding:1rem 1.1rem;background:var(--bg-2);border-left:4px solid var(--accent);border-radius:0 6px 6px 0}
.tabs{display:flex;flex-wrap:wrap;gap:0 .25rem;margin:0;padding:0 0 .5rem;border-bottom:1px solid var(--line);font-size:1rem}
.tabs .t{display:inline-flex;align-items:center;min-height:2.75rem;padding:.4rem .6rem;color:var(--text-2);text-decoration:none;border-radius:4px;white-space:nowrap}
.tabs .t:hover{background:var(--bg-2);color:var(--text)}
.tabs details.t{padding:0;position:relative}
.tabs details.t summary{cursor:pointer;list-style:none;display:flex;align-items:center;min-height:2.75rem;padding:.4rem .6rem;border-radius:4px;white-space:nowrap;max-width:none}
.tabs details.t summary::-webkit-details-marker{display:none}
.tabs details.t summary::after{content:"";display:inline-block;width:.45em;height:.45em;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);margin:0 0 .25em .5em}
.tabs details.t[open] summary{background:var(--bg-2);color:var(--text)}
.tabs details.t div{position:absolute;left:0;top:100%;z-index:5;min-width:16rem;max-width:min(92vw,34rem);columns:2;column-gap:1.5rem;padding:.75rem 1rem;background:var(--bg);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px rgba(0,0,0,.14)}
.tabs details.t div a{display:block;padding:.45rem 0;text-decoration:none;break-inside:avoid;min-height:2.5rem}
.tabs details.t div a:hover{text-decoration:underline}
footer{margin-top:1rem;padding-top:1.25rem;border-top:1px solid var(--line);font-size:1rem;color:var(--text-3);display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
footer a{color:var(--text-3)}
.skip{position:absolute;left:-999px;top:.5rem;padding:.5rem .8rem;background:var(--bg);color:inherit;border:2px solid currentColor;font-size:1rem;z-index:10}
.skip:focus{left:.5rem;outline:none}
@media (max-width:480px){.tabs details.t div{columns:1;max-height:60vh;overflow:auto}}
@media print{.tabs,.skip{display:none}body{background:#fff;color:#000;font-size:11pt}main{padding:0;gap:1.2rem;max-width:none}a{color:#000}}
