:root{--ca-paper:#f4f1f3;--ca-panel:#e6e3e5;--ca-ink:#312b2e;--ca-pencil:#4a4045;--ca-control-border:#6d5f67;--ca-action:#86275d;--ca-on-action:#f4f1f3;--ca-wash:#d8d4d6;--ca-band:#312b2e;--ca-band-ink:#f4f1f3;--ca-band-action:#ce88af;--ca-band-rule:#978790}
:root[data-theme="dark"]{--ca-paper:#1d191b;--ca-panel:#2a2628;--ca-ink:#e5e2e4;--ca-pencil:#cbc3c7;--ca-control-border:#978790;--ca-action:#ce88af;--ca-on-action:#1d191b;--ca-wash:#353133;--ca-band:#353133;--ca-band-ink:#e5e2e4;--ca-band-action:#ce88af;--ca-band-rule:#978790}
@font-face{src:url(/fonts/alegreya.woff2) format("woff2");font-family:"Alegreya";font-weight:700;font-display:swap}
@font-face{src:url(/fonts/outfit.woff2) format("woff2");font-family:"Outfit";font-weight:400;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--ca-paper);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ca-paper);color:var(--ca-ink);font-family:"Outfit",sans-serif;font-weight:400;font-size:18px;line-height:1.6;overflow-wrap:break-word}
h1,h2,h3,.ca-mark{color:var(--ca-ink);font-family:"Alegreya",serif;font-weight:700;text-wrap:balance}
h1{margin:0;font-size:52px;line-height:1.1}
h2{margin:0 0 16px;font-size:28px;line-height:1.2}
h3{margin:0 0 8px;font-size:21px;line-height:1.25}
p,ul,ol,figure,blockquote,table{margin:0}
p+p{margin-top:16px}
small,figcaption,caption{font-size:15px;line-height:1.5}
small,figcaption,caption{color:var(--ca-pencil)}
strong,th{font-weight:700}
a{color:var(--ca-action);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration-thickness:3px}
a:focus-visible,summary:focus-visible,.ca-scroll:focus-visible,main:focus-visible{outline:3px solid var(--ca-action);outline-offset:3px}
footer a:focus-visible{outline:3px solid var(--ca-band-action);outline-offset:3px}
main:focus{outline:none}
time{white-space:nowrap}

.ca-skiphop{position:absolute;top:0;left:-9999px;padding:12px 16px;background:var(--ca-paper);color:var(--ca-action)}
.ca-skiphop:focus-visible{top:16px;left:16px;z-index:5}
.ca-cap{width:100%;max-width:1152px;margin:0 auto}
.ca-narrow{max-width:46rem}

.ca-mast{padding:32px;background:var(--ca-panel)}
.ca-mast .ca-cap{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.ca-mark{font-size:28px;line-height:1.1;text-decoration:none;white-space:nowrap}
.ca-mark::before,.ca-mark::after{display:inline-block;width:14px;height:14px;content:"";vertical-align:baseline}
.ca-mark::before{margin-right:12px;border-top:3px solid var(--ca-ink);border-left:3px solid var(--ca-ink)}
.ca-mark::after{margin-left:12px;border-bottom:3px solid var(--ca-ink);border-right:3px solid var(--ca-ink)}
.ca-lanes{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;font-size:15px}
.ca-lanes a[aria-current]{color:var(--ca-ink);text-decoration-thickness:3px}

.ca-stage{padding:48px 32px 80px;background:var(--ca-paper)}
.ca-trail{margin-bottom:24px;color:var(--ca-pencil);font-size:15px}
.ca-trail a+a::before,.ca-trail a+span::before{display:inline-block;margin:0 10px;content:"/";color:var(--ca-ink);text-decoration:none}
.ca-trail span[aria-current]{color:var(--ca-pencil)}

.ca-prelude{max-width:44rem;margin:0 auto 64px;text-align:center}
.ca-prelude p{max-width:34rem;margin:20px auto 28px}
.ca-go{display:inline-block;padding:12px 28px;border-radius:6px;background:var(--ca-action);color:var(--ca-on-action);text-decoration:none}
.ca-go:hover{text-decoration:underline;text-decoration-thickness:2px}

.ca-block{margin-top:64px}
.ca-block:first-child{margin-top:0}
.ca-block>p{max-width:42rem}
.ca-block>p+*{margin-top:24px}

.ca-map{display:grid;grid-template-columns:5fr 4fr 3fr;gap:4px}
.ca-zone{padding:32px;background:var(--ca-wash)}
.ca-zone ul{margin-top:16px;padding-left:20px}
.ca-zone li+li{margin-top:8px}
.ca-zone p{color:var(--ca-pencil);font-size:15px}
.ca-zone h3 a{color:var(--ca-action)}
.ca-tool{grid-column:1 / -1;padding:32px;background:var(--ca-wash)}
.ca-tool p{max-width:46rem}

.ca-scroll{overflow-x:auto;border:1px solid var(--ca-control-border)}
.ca-scroll table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5}
.ca-scroll caption{padding:12px 16px;text-align:left}
.ca-scroll th,.ca-scroll td{padding:10px 16px;border-top:1px solid var(--ca-control-border);vertical-align:top;text-align:left}
.ca-scroll thead th{border-top:0}
.ca-scroll tbody th{color:var(--ca-ink);font-weight:700}
.ca-fine{margin-top:12px}

.ca-finds,.ca-ladder,.ca-bare{padding:0;list-style:none}
.ca-finds li+li{margin-top:28px}
.ca-finds h3{margin-bottom:6px}
.ca-finds p{max-width:40rem}
.ca-ladder{counter-reset:ca-n}
.ca-ladder li{position:relative;padding-left:44px;counter-increment:ca-n}
.ca-ladder li::before{position:absolute;top:0;left:0;content:counter(ca-n) ".";color:var(--ca-ink)}
.ca-ladder li+li{margin-top:12px}
.ca-bare li+li{margin-top:10px}
.ca-picks{margin-bottom:40px;font-size:15px}
.ca-picks a+a,.ca-picks a+span,.ca-picks span+a{margin-left:20px}
.ca-picks span[aria-current]{color:var(--ca-ink);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:3px}

.ca-nextup{margin-top:64px;padding:32px;background:var(--ca-panel)}
.ca-nextup nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin:16px 0 20px;font-size:15px}
.ca-nextup p{max-width:40rem}
.ca-nextup .ca-go{margin-top:4px}

.ca-answer{margin-top:20px;font-size:18px}
.ca-lines{margin-top:12px}
.ca-triad{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:32px 0;padding:16px 0;list-style:none;border-top:1px solid var(--ca-control-border);border-bottom:1px solid var(--ca-control-border);font-size:15px;line-height:1.5}
.ca-triad strong{display:block;color:var(--ca-ink)}
.ca-toc{margin:0 0 40px;font-size:15px}
.ca-toc ol{margin-top:8px;padding-left:20px}
.ca-text{margin-top:8px}
.ca-text>p,.ca-text>ul,.ca-text>ol{margin-top:16px}
.ca-text .ca-part{margin-top:48px}
.ca-text .ca-part:first-child{margin-top:0}
.ca-part-body>*+*{margin-top:16px}
.ca-part-body ul,.ca-part-body ol{padding-left:24px}
.ca-part-body li+li{margin-top:8px}
.ca-part-body blockquote{padding-left:20px;border-left:3px solid var(--ca-control-border);color:var(--ca-ink)}
.ca-text .ca-scroll{margin:8px 0}
.ca-source ul{padding-left:24px}
.ca-source li+li{margin-top:8px}
.ca-source small{display:block;margin-top:16px}

.ca-lead{margin:24px 0 8px;padding-left:20px;border-left:3px solid var(--ca-control-border);color:var(--ca-ink)}
.ca-lost{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:24px}

.ca-tail{padding:48px 32px 40px;background:var(--ca-band);color:var(--ca-band-ink);font-size:15px;line-height:1.55}
.ca-tail a{color:var(--ca-band-action)}
.ca-tail-grid{display:grid;grid-template-columns:4fr 2fr 2fr 2fr;gap:32px}
.ca-tail-grid nav{display:flex;flex-direction:column;gap:8px}
.ca-tail-head{margin:0;color:var(--ca-band-ink);font-size:18px;line-height:1.3}
.ca-tail-name{color:var(--ca-band-ink);font-family:"Alegreya",serif;font-weight:700;font-size:21px;line-height:1.2}
.ca-tail-grid p{max-width:30rem}
.ca-tail-note{margin-top:32px;padding-top:20px;border-top:1px solid var(--ca-band-rule)}
.ca-tail small{color:var(--ca-band-ink);font-size:15px}

@media (max-width:900px){
h1{font-size:40px}
.ca-map{grid-template-columns:1fr}
.ca-tail-grid{grid-template-columns:1fr 1fr}
.ca-triad{grid-template-columns:1fr;gap:12px}
}
@media (max-width:640px){
h1{font-size:36px}
h2,.ca-mark{font-size:24px}
h3{font-size:20px}
.ca-mast{padding:20px}
.ca-stage{padding:32px 20px 56px}
.ca-prelude{margin-bottom:48px}
.ca-block{margin-top:48px}
.ca-zone,.ca-tool,.ca-nextup{padding:20px}
.ca-nextup{margin-top:48px}
.ca-tail{padding:40px 20px 32px}
.ca-tail-grid{grid-template-columns:1fr;gap:24px}
.ca-lanes{gap:8px 20px}
}
