:root{--paper:#f4f5f7;--card:#fff;--sunk:#eceef3;--ink:#171a23;--ink-2:#474e60;--rule:#d4d8e1;--rule-strong:#9aa1b2;--accent:#5536c4;--accent-ink:#fff;--accent-wash:#ebe7fb;--head-bg:#171a23;--head-ink:#fff;--col-bg:#e7e9f0;--focus:#5536c4;--hatch:#5536c4;--f-head:"Bricolage Grotesque Variable", "Avenir Next", "Segoe UI", system-ui, sans-serif;--f-body:"Figtree Variable", "Avenir Next", "Segoe UI", system-ui, sans-serif;--measure:44rem;--wide:74rem;--gutter:clamp(1rem, .5rem + 2.5vw, 2.5rem);--r-sm:4px;--r-md:8px;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--paper:#11131a;--card:#1a1d27;--sunk:#151821;--ink:#eceef4;--ink-2:#a7aebf;--rule:#323848;--rule-strong:#5c6478;--accent:#b3a3ff;--accent-ink:#14111f;--accent-wash:#262142;--head-bg:#e4e6ee;--head-ink:#14161d;--col-bg:#222634;--focus:#c9beff;--hatch:#8b77f0}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-feature-settings:"tnum" 0;overflow-wrap:break-word;margin:0;font-size:1.0625rem;line-height:1.6}h1,h2,h3,h4{font-family:var(--f-head);text-wrap:balance;margin:0;line-height:1.1}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}main:focus{outline:none}time,.num{font-variant-numeric:tabular-nums}.wrap{width:100%;max-width:var(--wide);padding-inline:var(--gutter);margin-inline:auto}.skip{z-index:10;background:var(--ink);color:var(--paper);border-radius:var(--r-sm);padding:.6rem 1rem;font-weight:650;position:absolute;top:-10rem;left:1rem}.skip:focus{top:1rem}.masthead{border-bottom:1px solid var(--rule);background:var(--card)}.masthead-in{grid-template-columns:1fr;gap:.25rem 2rem;padding-block:1rem .75rem;display:grid}.brand{font-family:var(--f-head);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:780;line-height:1.15}.brand a{color:var(--ink);align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.brand-mark{color:var(--ink);flex:none}.bm-head{fill:var(--card)}.bm-col{fill:var(--hatch)}.bm-cell{fill:var(--rule-strong)}.tagline{color:var(--ink-2);margin:0;font-size:.9375rem}.topnav ul{flex-wrap:wrap;gap:.25rem 1.25rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.topnav a{color:var(--ink);border-bottom:2px solid #0000;padding:.35rem 0;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.topnav a:hover{border-bottom-color:var(--rule-strong)}.topnav a[aria-current=page]{border-bottom-color:var(--accent)}@media (width>=56rem){.masthead-in{grid-template-columns:auto 1fr auto;align-items:center;padding-block:1.1rem}.tagline{border-left:1px solid var(--rule);padding-left:1.25rem}.topnav ul{justify-content:flex-end;margin:0}}.preface{gap:1rem;padding-top:1.25rem;display:grid}.crumbs ol{color:var(--ink-2);flex-wrap:wrap;gap:.25rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.crumbs li+li:before{content:"";border-top:1.5px solid var(--rule-strong);border-right:1.5px solid var(--rule-strong);width:.4em;height:.4em;margin:0 .6em .12em .2em;display:inline-block;transform:rotate(45deg)}.crumbs a{color:var(--ink-2)}.crumbs [aria-current]{color:var(--ink);font-weight:600}.disclosure{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-md);padding:.9rem 1.1rem .95rem 1.6rem;position:relative;overflow:hidden}.disclosure:before{content:"";background:repeating-linear-gradient(-45deg, var(--hatch) 0 3px, transparent 3px 7px);width:.5rem;position:absolute;inset:0 auto 0 0}.disclosure-head{font-family:var(--f-head);letter-spacing:-.005em;margin:0;font-size:1rem;font-weight:720}.disclosure-body{color:var(--ink-2);max-width:70ch;margin:.2rem 0 0;font-size:.9375rem}main{padding-block:2rem 4rem}.home-head,.doc-head{max-width:var(--measure)}.home-head h1,.review-head h1,.doc-head h1,.missing h1{letter-spacing:-.03em;font-size:clamp(2.1rem,1.5rem + 3vw,3.6rem);font-weight:760;line-height:1.02}.home-head h1{max-width:18ch;font-size:clamp(2.3rem,1.5rem + 3.8vw,4.1rem)}.dates{color:var(--ink-2);margin:.9rem 0 0;font-size:.875rem}.dates time{color:var(--ink);font-weight:600}.stamp{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:.15rem .45rem;margin:0;font-size:.8125rem;line-height:1.3;display:inline-flex}.stamp-icon{color:var(--accent);flex:none}.stamp-date{color:var(--ink);font-weight:700}.stamp-lg{border:1.5px solid var(--accent);background:var(--accent-wash);color:var(--ink);border-radius:999px;padding:.45rem .8rem .45rem .6rem;font-size:.9375rem}.stamp-lg .stamp-label{font-weight:600}.prose{max-width:var(--measure)}.prose>:first-child{margin-top:1.75rem}.prose p,.prose ul,.prose ol,.prose blockquote,.prose details,.prose .table-scroll{margin:1rem 0 0}.prose h2{letter-spacing:-.02em;margin-top:2.75rem;font-size:clamp(1.5rem,1.25rem + 1vw,1.9rem);font-weight:720}.prose h3{letter-spacing:-.01em;margin-top:2rem;font-size:1.25rem;font-weight:700}.prose h4{margin-top:1.5rem;font-size:1.0625rem;font-weight:700}.prose ul,.prose ol{padding-left:1.3rem}.prose li+li{margin-top:.35rem}.prose li::marker{color:var(--ink-2)}.prose blockquote{border-left:3px solid var(--rule-strong);color:var(--ink-2);margin-inline:0;padding:.25rem 0 .25rem 1.1rem}.prose code{background:var(--sunk);border:1px solid var(--rule);border-radius:3px;padding:.05em .3em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.875em}.prose abbr[title]{text-underline-offset:.2em;cursor:help;text-decoration:underline dotted}.prose details{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--card);padding:0 1rem}.prose summary{cursor:pointer;padding:.75rem 0;font-weight:650}.prose details[open]{padding-bottom:.9rem}.prose details>:not(summary){margin-top:0}.checklist{list-style:none;padding-left:0!important}.checklist .check{padding-left:1.9rem;position:relative}.checklist .check:before{content:"";border:1.5px solid var(--rule-strong);border-radius:var(--r-sm);background:var(--card);width:1.15rem;height:1.15rem;position:absolute;top:.2em;left:0}.checklist .check-done:before{background:var(--accent);border-color:var(--accent)}.checklist .check-done:after{content:"";border-right:2px solid var(--accent-ink);border-bottom:2px solid var(--accent-ink);width:.35rem;height:.65rem;position:absolute;top:.38em;left:.4rem;transform:rotate(45deg)}.table-scroll{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--card);overflow-x:auto}.table-scroll table{border-collapse:separate;border-spacing:0;width:100%;font-size:.9375rem;line-height:1.4}.table-scroll th,.table-scroll td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);padding:.6rem .8rem}.table-scroll tbody tr:last-child>*{border-bottom:0}.table-scroll th{background:var(--sunk);white-space:nowrap;font-weight:700}.table-scroll code{white-space:nowrap}.table-scroll td:first-child,.table-scroll th:first-child{z-index:1;background:var(--card);box-shadow:inset -1px 0 0 var(--rule);position:sticky;left:0}.table-scroll th:first-child{background:var(--sunk)}.table-scroll td{min-width:8rem}.glance .table-scroll{border:1.5px solid var(--ink);margin-top:1.25rem}.glance thead th{background:var(--head-bg);color:var(--head-ink);font-family:var(--f-head);white-space:normal;border-bottom:0;padding:.75rem .9rem;font-size:1.0625rem;font-weight:700}.glance thead th:first-child{background:var(--head-bg)}.glance td:first-child{box-shadow:none;width:32%;min-width:6.5rem;color:var(--ink-2);font-size:.875rem;position:static}.glance td{min-width:0;padding:.75rem .9rem}.glance td+td{font-weight:600}.glance tbody tr:nth-child(2n)>*{background:var(--sunk)}.compare{margin:2.5rem 0 0}.compare-cap{margin-bottom:.75rem}.compare .table-scroll{border:1.5px solid var(--ink);border-radius:var(--r-md);overscroll-behavior-x:contain;max-height:min(78vh,46rem);margin:0;overflow:auto}.compare table{min-width:100%;font-size:.9375rem}.compare thead th{z-index:2;background:var(--head-bg);color:var(--head-ink);font-family:var(--f-head);letter-spacing:-.01em;white-space:normal;border-bottom:0;min-width:12rem;padding:.85rem 1rem;font-size:1.0625rem;font-weight:700;position:sticky;top:0}.compare th:first-child,.compare td:first-child{z-index:1;background:var(--col-bg);border-right:1.5px solid var(--rule-strong);min-width:7.25rem;max-width:11rem;font-weight:650;position:sticky;left:0}.compare thead th:first-child{z-index:3;background:var(--head-bg);border-right-color:var(--rule-strong)}.compare td{min-width:12rem;padding:.85rem 1rem}.compare tbody tr:nth-child(2n) td:not(:first-child){background:var(--sunk)}.compare tbody tr:nth-child(odd) td:not(:first-child){background:var(--card)}.reviews-block{margin-top:3rem}.reviews-block h2{letter-spacing:-.02em;border-bottom:1.5px solid var(--ink);padding-bottom:.6rem;font-size:clamp(1.5rem,1.25rem + 1vw,1.9rem);font-weight:720}.review-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,16.5rem),1fr));gap:1rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.rcard{background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--ink);border-radius:var(--r-sm) var(--r-sm) var(--r-md) var(--r-md);flex-direction:column;gap:.7rem;padding:1.1rem 1.1rem 1rem;display:flex}.rcard-name{letter-spacing:-.02em;font-size:1.35rem;font-weight:740}.rcard-name a{color:var(--ink);text-decoration:none}.rcard-name a:hover{text-decoration:underline 2px}.rcard-desc{color:var(--ink-2);margin:0;font-size:.9375rem}.rcard-facts{border-top:1px solid var(--rule);margin:0;font-size:.875rem}.rcard-facts>div{border-bottom:1px solid var(--rule);justify-content:space-between;gap:.75rem;padding:.4rem 0;display:flex}.rcard-facts dt{color:var(--ink-2)}.rcard-facts dd{text-align:right;margin:0;font-weight:650}.rcard .stamp{margin-top:auto}.review{grid-template-columns:minmax(0,1fr);gap:0 3rem;display:grid}.review-head{max-width:var(--measure);flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.review-head .dates{margin:0}.scorecard{background:var(--card);border:1.5px solid var(--ink);border-radius:var(--r-md);margin-top:1.75rem;overflow:hidden}.scorecard h2{background:var(--head-bg);color:var(--head-ink);letter-spacing:-.01em;padding:.8rem 1.1rem;font-size:1.15rem;font-weight:720}.sc-rows{margin:0}.sc-row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:baseline;gap:.75rem;padding:.75rem 1.1rem;display:grid}.sc-row:nth-child(2n){background:var(--sunk)}.sc-row:last-child{border-bottom:0}.sc-row dt{color:var(--ink-2);font-size:.875rem}.sc-row dd{font-family:var(--f-head);margin:0;font-size:1.0625rem;font-weight:680;line-height:1.25}.sc-cta{border-top:1px solid var(--rule);margin:0;padding:.9rem 1.1rem 1.1rem}.sc-cta a,.cta a{background:var(--accent);color:var(--accent-ink);border-radius:var(--r-sm);padding:.7rem 1.15rem;font-weight:700;text-decoration:none;display:inline-block}.sc-cta a:hover,.cta a:hover{text-decoration:underline}@media (width>=62rem){.review-carded{grid-template-columns:minmax(0,1fr) 21rem}.review-head{grid-area:1/1}.scorecard{grid-area:1/2/span 2;align-self:start;margin-top:.4rem;position:sticky;top:1.25rem}.review-body{grid-area:2/1}}.doc-meta{flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;margin-top:1rem;display:flex}.doc-meta .dates{margin:0}.doc-facts{max-width:var(--measure);border:1px solid var(--rule);border-radius:var(--r-md);background:var(--card);margin-top:1.75rem;overflow:hidden}.block{max-width:var(--measure);margin-top:3rem}.block h2{letter-spacing:-.02em;border-bottom:1.5px solid var(--ink);padding-bottom:.6rem;font-size:1.5rem;font-weight:720}.faq{margin:0}.faq-item{border-bottom:1px solid var(--rule);padding:1rem 0}.faq dt{font-family:var(--f-head);font-size:1.125rem;font-weight:700;line-height:1.3}.faq dd{color:var(--ink-2);margin:.4rem 0 0}.cta{max-width:var(--measure);margin:2.5rem 0 0}.sources{counter-reset:src;margin:0;padding:0;list-style:none}.sources li{counter-increment:src;border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:.1rem .6rem;padding:.6rem 0 .6rem 2rem;display:flex;position:relative}.sources li:before{content:counter(src);font-variant-numeric:tabular-nums;color:var(--ink-2);font-size:.875rem;font-weight:700;position:absolute;top:.6rem;left:0}.sources .host{color:var(--ink-2);font-size:.875rem}.related{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.related li{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-md);flex-direction:column;gap:.3rem;padding:.9rem 1rem;display:flex}.related a{font-family:var(--f-head);font-size:1.0625rem;font-weight:700;line-height:1.25}.related-desc{color:var(--ink-2);font-size:.875rem}.cal{grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.4rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.cal-m{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--card);flex-direction:column;gap:.15rem;padding:.5rem .6rem;font-size:.8125rem;display:flex}.cal-name{font-size:.9375rem;font-weight:700}.cal-closed{background:var(--sunk)}.cal-busy{border-color:var(--accent)}.cal-full{background:var(--accent-wash);border-color:var(--accent)}.data-index,.data-rows{margin:0;padding:0;list-style:none}.data-index li,.data-rows li{border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:.2rem .9rem;padding:.55rem 0;display:flex}.data-rows span,.data-stamp{color:var(--ink-2);font-size:.875rem}.missing{max-width:var(--measure);padding-block:2rem}.missing p{color:var(--ink-2)}.foot{border-top:1px solid var(--rule);background:var(--card)}.foot-in{gap:.6rem;padding-block:2rem 2.5rem;font-size:.9375rem;display:grid}.foot-name{font-family:var(--f-head);letter-spacing:-.02em;margin:0;font-size:1.125rem;font-weight:760}.foot-disclosure{max-width:68ch;color:var(--ink-2);margin:0}.foot-links{flex-wrap:wrap;gap:.5rem 1.25rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.foot-links a{color:var(--ink)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
