:root{--ink:#14192b;--ink-soft:#4a5169;--ink-faint:#7b8199;--paper:#f1f2f5;--paper-2:#e9ebf0;--card:#fff;--line:#14192b24;--line-strong:#14192b4d;--accent:#c8890f;--accent-deep:#a06f0b;--hi:#e0a62c52;--cited:#2f8f63;--cited-soft:#2f8f631f;--absent:#14192b47;--serif:"Charter","Iowan Old Style","Palatino Linotype","Georgia",serif;--mono:"SF Mono","SFMono-Regular","Menlo","Consolas",ui-monospace,monospace;--wrap:1140px;--prose:66ch;--r:4px}@media (prefers-color-scheme:dark){:root{--ink:#e9ebf1;--ink-soft:#b0b6c8;--ink-faint:#7e879e;--paper:#0d111d;--paper-2:#131829;--card:#161c2e;--line:#e9ebf124;--line-strong:#e9ebf147;--accent:#e6b647;--accent-deep:#d7a634;--hi:#e6b6473d;--cited:#4bb583;--cited-soft:#4bb58329;--absent:#e9ebf13d}}:root[data-theme=light]{--ink:#14192b;--ink-soft:#4a5169;--ink-faint:#7b8199;--paper:#f1f2f5;--paper-2:#e9ebf0;--card:#fff;--line:#14192b24;--line-strong:#14192b4d;--accent:#c8890f;--accent-deep:#a06f0b;--hi:#e0a62c52;--cited:#2f8f63;--cited-soft:#2f8f631f;--absent:#14192b47}:root[data-theme=dark]{--ink:#e9ebf1;--ink-soft:#b0b6c8;--ink-faint:#7e879e;--paper:#0d111d;--paper-2:#131829;--card:#161c2e;--line:#e9ebf124;--line-strong:#e9ebf147;--accent:#e6b647;--accent-deep:#d7a634;--hi:#e6b6473d;--cited:#4bb583;--cited-soft:#4bb58329;--absent:#e9ebf13d}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1;margin:0;font-size:19px;line-height:1.62}::selection{background:var(--hi);color:var(--ink)}a{color:inherit;text-decoration-color:var(--line-strong);text-underline-offset:3px}a:hover{text-decoration-color:var(--accent)}h1,h2,h3{text-wrap:balance;letter-spacing:-.012em;margin:0;font-weight:600;line-height:1.08}p{margin:0}.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}.prose{max-width:var(--prose)}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;font-weight:500}.mono{font-family:var(--mono)}.mark{background:linear-gradient(var(--hi),var(--hi));background-position:0 78%;background-repeat:no-repeat;background-size:100% 44%;padding:0 .04em}.lead{color:var(--ink-soft);font-size:clamp(19px,2.1vw,22px);line-height:1.55}.nav{z-index:40;background:color-mix(in srgb, var(--paper) 86%, transparent);backdrop-filter:saturate(1.2)blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-in{justify-content:space-between;align-items:center;height:60px;display:flex}.brand{align-items:baseline;gap:9px;text-decoration:none;display:flex}.brand b{font-family:var(--serif);letter-spacing:-.02em;font-size:23px;font-weight:600}.brand .by{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-size:10.5px}.nav-links{font-family:var(--mono);letter-spacing:.01em;align-items:center;gap:26px;font-size:13px;display:flex}.nav-links a{color:var(--ink-soft);text-decoration:none}.nav-links a:hover{color:var(--ink)}.nav-links .btn{margin-left:4px}@media (width<=760px){.nav-links a:not(.btn){display:none}}.btn{font-family:var(--mono);letter-spacing:.02em;border-radius:var(--r);background:var(--ink);color:var(--paper);border:1px solid var(--ink);cursor:pointer;align-items:center;gap:8px;padding:11px 18px;font-size:13px;text-decoration:none;transition:transform .12s,background .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn.alt{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn.alt:hover{border-color:var(--accent);color:var(--ink)}.btn .arw{transition:transform .15s}.btn:hover .arw{transform:translate(3px)}section{border-top:1px solid var(--line)}.pad{padding-block:clamp(56px,8vw,104px)}.kicker{align-items:center;gap:12px;margin-bottom:22px;display:flex}.kicker .num{font-family:var(--mono);color:var(--accent-deep);letter-spacing:.1em;font-size:12px}.kicker:after{content:"";background:var(--line);flex:1;height:1px}.hero{border-top:none;padding-top:clamp(48px,7vw,88px);padding-bottom:0}.hero h1{margin:0 0 26px;font-size:clamp(38px,6.4vw,74px);font-weight:600}.hero .lead{max-width:36ch}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.hero-meta{border-top:1px solid var(--line);font-family:var(--mono);color:var(--ink-faint);letter-spacing:.02em;flex-wrap:wrap;gap:26px;margin-top:40px;padding-top:22px;font-size:12.5px;display:flex}.hero-meta b{color:var(--ink);font-weight:600}.demo{margin-top:clamp(44px,6vw,72px)}.demo-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.demo-head h2{font-size:clamp(23px,3vw,30px)}.demo-head p{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.01em;max-width:34ch;font-size:12.5px}.qtabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.qtab{font-family:var(--mono);letter-spacing:.01em;border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border-radius:99px;padding:8px 13px;font-size:12.5px;transition:all .14s}.qtab:hover{border-color:var(--line-strong);color:var(--ink)}.qtab[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.matrix-card{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}.matrix-scroll{overflow-x:auto}table.matrix{border-collapse:collapse;width:100%;min-width:640px;font-family:var(--mono)}table.matrix th,table.matrix td{text-align:center;padding:0}table.matrix thead th{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line);vertical-align:bottom;white-space:nowrap;padding:14px 6px 12px;font-size:11px;font-weight:500}table.matrix thead th.rowhead{text-align:left;width:150px;padding-left:18px}.frow td{border-bottom:1px solid var(--line);height:52px}.frow:last-child td{border-bottom:none}.fname{text-align:left;font-family:var(--serif);color:var(--ink);white-space:nowrap;padding-left:18px;font-size:16px}.fname .ftag{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.02em;margin-top:1px;font-size:10.5px;display:block}.cell{width:14.2%}.chip{background:var(--cited-soft);min-width:34px;height:26px;color:var(--cited);border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:500;transition:transform .18s,opacity .18s;display:inline-flex}.chip.top{background:var(--cited);color:#fff;box-shadow:0 1px #0000000f}:root[data-theme=dark] .chip.top{color:#08110c}@media (prefers-color-scheme:dark){.chip.top{color:#08110c}}.dash{color:var(--absent);font-size:14px}.frow.hot{background:color-mix(in srgb, var(--accent) 9%, transparent)}.frow.hot .fname{color:var(--accent-deep)}:root[data-theme=dark] .frow.hot .fname{color:var(--accent)}@media (prefers-color-scheme:dark){.frow.hot .fname{color:var(--accent)}}.frow.dim{opacity:.4}.frow{cursor:default;transition:background .15s,opacity .15s}.readout{border-top:1px solid var(--line);background:var(--paper-2);font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:14px;padding:16px 18px;font-size:13px;line-height:1.45;display:flex}.readout .dot{background:var(--accent);border-radius:99px;flex:none;align-self:flex-start;width:8px;height:8px;margin-top:5px}.readout b{color:var(--ink);font-weight:600}.demo-foot{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.01em;margin-top:12px;font-size:11.5px}.h2big{max-width:20ch;font-size:clamp(27px,4vw,42px)}.cols4{background:var(--line);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:34px;display:grid;overflow:hidden}.cols4>div{background:var(--paper);padding:24px 22px}.cols4 h3{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px;font-size:12px;font-weight:500}.cols4 p{color:var(--ink-soft);font-size:16.5px;line-height:1.5}.cols4 .us{background:var(--card)}.cols4 .us h3{color:var(--accent-deep)}:root[data-theme=dark] .cols4 .us h3{color:var(--accent)}@media (prefers-color-scheme:dark){.cols4 .us h3{color:var(--accent)}}.cols4 .us p{color:var(--ink)}@media (width<=860px){.cols4{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.cols4{grid-template-columns:1fr}}.split{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(32px,5vw,72px);display:grid}@media (width<=820px){.split{grid-template-columns:1fr;gap:36px}}.statbox{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:30px}.statbox .big{font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(52px,9vw,84px);font-weight:600;line-height:.95}.statbox .cap{font-family:var(--mono);color:var(--ink-soft);margin-top:14px;font-size:12.5px;line-height:1.5}.statbox .src{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.02em;margin-top:14px;font-size:10.5px}ul.spec{gap:14px;margin:26px 0 0;padding:0;list-style:none;display:grid}ul.spec li{color:var(--ink-soft);padding-left:26px;font-size:17px;line-height:1.5;position:relative}ul.spec li:before{content:"";border:1.5px solid var(--accent);border-radius:2px;width:9px;height:9px;position:absolute;top:11px;left:2px}ul.spec b{color:var(--ink);font-weight:600}.steps{grid-template-columns:repeat(3,1fr);gap:28px;margin-top:36px;display:grid}@media (width<=820px){.steps{grid-template-columns:1fr}}.step .sn{font-family:var(--mono);color:var(--accent-deep);letter-spacing:.1em;font-size:12px}:root[data-theme=dark] .step .sn{color:var(--accent)}@media (prefers-color-scheme:dark){.step .sn{color:var(--accent)}}.step h3{margin:10px 0 8px;font-size:21px}.step p{color:var(--ink-soft);font-size:16.5px;line-height:1.5}.tiers{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px;display:grid}@media (width<=820px){.tiers{grid-template-columns:1fr}}.tier{border:1px solid var(--line);background:var(--card);border-radius:8px;flex-direction:column;padding:26px 24px;display:flex}.tier.feat{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.tier .tn{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:12px}.tier .tp{font-family:var(--serif);letter-spacing:-.02em;margin:12px 0 4px;font-size:34px;font-weight:600}.tier .tp small{font-family:var(--mono);color:var(--ink-faint);letter-spacing:0;font-size:13px;font-weight:400}.tier p{color:var(--ink-soft);flex:1;margin-top:6px;font-size:16px;line-height:1.5}.tier .flag{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);margin-top:16px;font-size:10.5px}:root[data-theme=dark] .tier .flag{color:var(--accent)}@media (prefers-color-scheme:dark){.tier .flag{color:var(--accent)}}.band{background:var(--ink);color:var(--paper);border-top:1px solid var(--ink)}:root[data-theme=dark] .band{background:var(--paper-2)}@media (prefers-color-scheme:dark){.band{background:var(--paper-2)}}.band h2{max-width:18ch;color:var(--paper);font-size:clamp(28px,4.4vw,46px)}:root[data-theme=dark] .band h2{color:var(--ink)}@media (prefers-color-scheme:dark){.band h2{color:var(--ink)}}.band .lead{color:color-mix(in srgb, var(--paper) 74%, transparent)}:root[data-theme=dark] .band .lead{color:var(--ink-soft)}@media (prefers-color-scheme:dark){.band .lead{color:var(--ink-soft)}}.band .btn{background:var(--accent);border-color:var(--accent);color:#1a1200}.band .btn:hover{background:var(--accent-deep)}footer{border-top:1px solid var(--line);font-family:var(--mono);color:var(--ink-faint);letter-spacing:.01em;padding-block:44px;font-size:12.5px}.foot-top{flex-wrap:wrap;justify-content:space-between;gap:24px;margin-bottom:26px;display:flex}.foot-links{flex-wrap:wrap;gap:22px;display:flex}.foot-links a{color:var(--ink-soft);text-decoration:none}.foot-links a:hover{color:var(--ink)}.foot-fine{max-width:70ch;color:var(--ink-faint);line-height:1.6}.foot-fine a{color:var(--ink-soft)}@keyframes reveal-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}html.js .reveal{opacity:0;animation:.7s forwards reveal-up}html.js .reveal:nth-of-type(2){animation-delay:60ms}html.js .reveal:nth-of-type(3){animation-delay:.12s}html.js .reveal:nth-of-type(4){animation-delay:.18s}html.js .reveal:nth-of-type(n+5){animation-delay:.24s}@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1;animation:none}.btn,.chip,.frow,.qtab{transition:none}}a:focus-visible,.btn:focus-visible,.qtab:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.breadcrumb{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-faint);padding-top:26px;font-size:12px}.breadcrumb a{color:var(--ink-soft);text-decoration:none}.breadcrumb a:hover{color:var(--accent-deep)}.breadcrumb .sep{opacity:.5;margin:0 8px}.doc-head{border-bottom:1px solid var(--line);padding-block:clamp(24px,4vw,40px) clamp(22px,3vw,30px)}.doc-head h1{margin:14px 0 0;font-size:clamp(31px,5vw,54px)}.doc-head .lead{max-width:54ch;margin-top:20px}.doc-meta{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.03em;flex-wrap:wrap;gap:20px;margin-top:22px;font-size:12px;display:flex}.doc-meta b{color:var(--ink-soft);font-weight:500}.article{max-width:70ch;padding-block:clamp(34px,5vw,52px)}.article>*+*{margin-top:22px}.article h2{letter-spacing:-.01em;margin-top:48px;font-size:clamp(22px,3vw,30px)}.article h2+p{margin-top:14px}.article h3{font-size:18px;font-family:var(--mono);letter-spacing:.01em;color:var(--ink);margin-top:32px;font-weight:600}.article p{color:var(--ink);line-height:1.64}.article .lede{color:var(--ink);font-size:clamp(19px,2vw,22px);line-height:1.55}.article a{color:var(--accent-deep);text-decoration-color:var(--hi)}:root[data-theme=dark] .article a{color:var(--accent)}@media (prefers-color-scheme:dark){.article a{color:var(--accent)}}.article ul,.article ol{color:var(--ink-soft);gap:11px;margin:0;padding-left:22px;display:grid}.article li{line-height:1.55}.article li b{color:var(--ink)}.article blockquote{border-left:2px solid var(--accent);color:var(--ink-soft);margin:0;padding:6px 0 6px 22px;font-style:italic}.note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);color:var(--ink-soft);border-radius:6px;padding:18px 20px;font-size:16px;line-height:1.55}.note b{color:var(--ink)}.faq{border-top:1px solid var(--line);margin-top:22px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--serif);color:var(--ink);justify-content:space-between;align-items:baseline;gap:16px;padding:20px 0;font-size:19px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--mono);color:var(--accent-deep);flex:none;font-size:20px;line-height:1}:root[data-theme=dark] .faq summary:after{color:var(--accent)}@media (prefers-color-scheme:dark){.faq summary:after{color:var(--accent)}}.faq details[open] summary:after{content:"–"}.faq .fa{color:var(--ink-soft);max-width:66ch;padding:0 0 22px;font-size:17px;line-height:1.62}.faq .fa a{color:var(--accent-deep)}.ctable-wrap{border:1px solid var(--line);border-radius:8px;margin-top:10px;overflow-x:auto}.ctable{border-collapse:collapse;width:100%;min-width:520px;font-size:14.5px}.ctable th,.ctable td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:13px 15px}.ctable thead th{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);white-space:nowrap;font-size:11px;font-weight:500}.ctable tbody tr:last-child td{border-bottom:none}.ctable td{color:var(--ink-soft)}.ctable td:first-child,.ctable th:first-child{font-family:var(--mono);color:var(--ink)}.ctable tbody tr:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}.cards{background:var(--line);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:28px;display:grid;overflow:hidden}@media (width<=720px){.cards{grid-template-columns:1fr}}.card{background:var(--paper);color:inherit;flex-direction:column;gap:11px;padding:26px 24px;text-decoration:none;transition:background .15s;display:flex}.card:hover{background:var(--card)}.card .ct{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);font-size:11px}:root[data-theme=dark] .card .ct{color:var(--accent)}@media (prefers-color-scheme:dark){.card .ct{color:var(--accent)}}.card h3{font-size:21px;line-height:1.16}.card p{color:var(--ink-soft);flex:1;font-size:15.5px;line-height:1.5}.card .go{font-family:var(--mono);color:var(--ink-faint);font-size:12px}.card:hover .go{color:var(--accent-deep)}.two{background:var(--line);border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;gap:1px;margin-top:26px;display:grid;overflow:hidden}@media (width<=720px){.two{grid-template-columns:1fr}}.two>div{background:var(--paper);padding:24px}.two h3{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px;font-size:12px}.two p{color:var(--ink-soft);font-size:16px;line-height:1.52}.two p+p{margin-top:10px}.form{gap:20px;max-width:64ch;margin-top:10px;display:grid}.field{gap:8px;display:grid}.field label{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-size:12px}.field input,.field textarea,.field select{font-family:var(--serif);color:var(--ink);background:var(--card);border:1px solid var(--line-strong);border-radius:6px;width:100%;padding:13px 14px;font-size:17px}.field textarea{resize:vertical;min-height:96px}.field .hint{font-family:var(--mono);color:var(--ink-faint);font-size:11px}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=620px){.form-row{grid-template-columns:1fr}}.runs{flex-wrap:wrap;gap:8px;margin:24px 0 12px;display:flex}.runbox{background:var(--card);border:1px solid var(--line);font-family:var(--mono);color:var(--ink-soft);border-radius:8px;min-height:118px;padding:20px 22px;font-size:13.5px;line-height:1.75}.runbox .win{color:var(--cited);font-weight:600}.runbox .miss{color:var(--absent)}.article table{border-collapse:collapse;width:100%;margin:10px 0 4px;font-size:14.5px;display:block;overflow-x:auto}.article thead th{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:13px 14px;font-size:11px;font-weight:500}.article tbody td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-soft);padding:13px 14px}.article tbody td:first-child{font-family:var(--mono);color:var(--ink)}.article tbody tr:last-child td{border-bottom:none}.article tbody tr:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}
