:root{--rt-color-bg:#0d1117;--rt-color-surface:#161b22;--rt-color-surface-2:#1c2330;--rt-color-fg:#e6edf3;--rt-color-fg-muted:#8b949e;--rt-color-accent:#4f9cf9;--rt-color-accent-fg:#06101f;--rt-color-border:#30363d;--rt-color-ok:#2ea043;--rt-color-warn:#d29922;--rt-color-error:#f85149;--rt-radius:10px;--rt-space:16px}@media (prefers-color-scheme:light){:root{--rt-color-bg:#fff;--rt-color-surface:#f6f8fa;--rt-color-surface-2:#eef1f5;--rt-color-fg:#1f2328;--rt-color-fg-muted:#59636e;--rt-color-accent:#0969da;--rt-color-accent-fg:#fff;--rt-color-border:#d1d9e0}}*{box-sizing:border-box}body{background:var(--rt-color-bg);color:var(--rt-color-fg);margin:0;font:16px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.page{max-width:880px;margin:0 auto;padding:48px 24px 96px}.header{margin-bottom:32px}.header-nav{align-items:center;gap:18px;display:flex}.page .header h1.tagline{margin-top:0}.header .subtagline{margin-top:10px}.brand{align-items:center;gap:12px;display:flex}.brand-mark{border-radius:var(--rt-radius);background:var(--rt-color-accent);width:40px;height:40px;color:var(--rt-color-accent-fg);letter-spacing:-.02em;place-items:center;font-weight:700;display:grid}.brand-name{letter-spacing:-.02em;font-size:22px;font-weight:650}.tagline{color:var(--rt-color-fg-muted);margin:12px 0 0;font-size:17px}.page-title{letter-spacing:-.02em;color:var(--rt-color-fg);margin:0;font-size:30px;line-height:1.2}.page-title+.subtagline{margin-top:10px}.dropzone{border:2px dashed var(--rt-color-border);background:var(--rt-color-surface);text-align:center;border-radius:14px;padding:44px 24px;transition:border-color .12s,background .12s}.dropzone-active{border-color:var(--rt-color-accent);background:var(--rt-color-surface-2)}.dropzone-inner h2{margin:0 0 8px;font-size:20px}.hidden-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.row{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.btn{appearance:none;border:1px solid var(--rt-color-border);background:var(--rt-color-surface-2);color:var(--rt-color-fg);cursor:pointer;border-radius:8px;padding:9px 16px;font-size:15px;font-weight:550;text-decoration:none}.btn:hover{border-color:var(--rt-color-accent)}.btn:focus-visible{outline:2px solid var(--rt-color-accent);outline-offset:2px}.btn-primary{background:var(--rt-color-accent);border-color:var(--rt-color-accent);color:var(--rt-color-accent-fg)}.btn-ghost{background:0 0}.card{border:1px solid var(--rt-color-border);background:var(--rt-color-surface);border-radius:14px;margin-top:24px;padding:20px 22px}.card-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.card-head h3{margin:0;font-size:17px}.muted{color:var(--rt-color-fg-muted);font-size:14px}.filelist{margin:8px 0 0;padding:0;list-style:none}.filelist li{border-bottom:1px solid var(--rt-color-border);justify-content:space-between;gap:16px;padding:6px 0;font-size:14px;display:flex}.path{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.bar{background:var(--rt-color-surface-2);border-radius:999px;height:8px;overflow:hidden}.bar-fill{background:var(--rt-color-accent);height:100%;transition:width .16s;position:relative;overflow:hidden}.bar-fill:after{content:"";background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%);animation:1.5s linear infinite bar-sheen;position:absolute;inset:0}@keyframes bar-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.bar-fill:after{animation:none}.bar-indeterminate{animation-duration:3s}}.stage{margin:12px 0 2px;font-size:15px}.failures{color:var(--rt-color-warn);margin:12px 0 0;padding-left:18px;font-size:14px}.stats{gap:28px;margin:4px 0 18px;display:flex}.stat{flex-direction:column;display:flex}.banner{border:1px solid var(--rt-color-border);border-left-width:3px;border-radius:8px;margin:14px 0;padding:12px 14px;font-size:14px}.banner ul{margin:8px 0 0;padding-left:18px}.banner-ok{border-left-color:var(--rt-color-ok)}.banner-warn{border-left-color:var(--rt-color-warn)}.banner-error{border-left-color:var(--rt-color-error);color:var(--rt-color-error)}.snippet{margin-top:18px}.snippet summary{cursor:pointer;font-size:15px;font-weight:550}.snippet pre{background:var(--rt-color-bg);border:1px solid var(--rt-color-border);border-radius:8px;padding:14px;font-size:13px;overflow-x:auto}.explainer{border-top:1px solid var(--rt-color-border);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:48px;padding-top:28px;display:grid}.explainer h4{margin:0 0 6px;font-size:15px}.explainer p{color:var(--rt-color-fg-muted);margin:0;font-size:14px}.bar-indeterminate{width:40%;animation:1.1s ease-in-out infinite bar-slide}@keyframes bar-slide{0%{width:20%;margin-left:0%}50%{width:45%;margin-left:40%}to{width:20%;margin-left:100%}}.working-note{color:var(--rt-color-fg-muted);margin-top:10px;font-size:13px}.footer{border-top:1px solid var(--rt-color-border);text-align:center;margin-top:64px;padding-top:36px}.footer-brand{margin-bottom:22px}.footer-mark{letter-spacing:.22em;text-indent:.22em;color:var(--rt-color-fg);font-size:26px;font-weight:700;display:inline-block}.footer-tagline{color:var(--rt-color-fg-muted);margin:6px 0 0;font-size:13px}.footer-lead{max-width:620px;color:var(--rt-color-fg-muted);margin:0 auto 30px;font-size:14px}.footer-lead a{color:var(--rt-color-accent)}.crate-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px 24px;max-width:860px;margin:0 auto;padding:0;list-style:none;display:grid}.crate-cell{flex-direction:column;gap:2px;display:flex}.crate-name{color:var(--rt-color-fg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.crate-role{color:var(--rt-color-fg-muted);font-size:12.5px;line-height:1.4}.subtagline{color:var(--rt-color-fg-muted);margin:6px 0 0;font-size:15px}.faq{border-top:1px solid var(--rt-color-border);margin-top:56px;padding-top:32px}.faq h2{margin:0 0 16px;font-size:19px}.faq-item{border-bottom:1px solid var(--rt-color-border);padding:12px 0}.faq-item summary{cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary h3{margin:0;font-size:15px;font-weight:550;display:inline}.faq-item summary:before{content:"+";width:18px;color:var(--rt-color-accent);font-weight:650;display:inline-block}.faq-item[open] summary:before{content:"−"}.faq-item p{color:var(--rt-color-fg-muted);margin:8px 0 2px 18px;font-size:14px}.tiers{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:28px;display:grid}.tier{border:1px solid var(--rt-color-border);background:var(--rt-color-surface);border-radius:14px;padding:22px}.tier-featured{border-color:var(--rt-color-accent)}.tier h2{margin:0 0 4px;font-size:17px}.tier-price{letter-spacing:-.02em;margin:0 0 4px;font-size:30px;font-weight:650}.tier-list{margin:16px 0 20px;padding:0;list-style:none}.tier-list li{padding:6px 0 6px 20px;font-size:14px;position:relative}.tier-list li:before{content:"✓";color:var(--rt-color-accent);position:absolute;left:0}.brand{color:inherit;text-decoration:none}.footer-tagline a{color:var(--rt-color-accent);text-decoration:none}.footer-tagline a:hover{text-decoration:underline}.banner-upsell{border-left-color:var(--rt-color-accent);background:var(--rt-color-surface-2)}.banner-upsell .row{justify-content:flex-start;margin-top:12px}.explainer a{color:var(--rt-color-accent);text-decoration:none}.explainer a:hover{text-decoration:underline}.article-list{margin:28px 0 0;padding:0;list-style:none}.article-card{border-bottom:1px solid var(--rt-color-border);padding:18px 0}.article-card h2{letter-spacing:-.01em;margin:0 0 6px;font-size:18px}.article-card h2 a{color:var(--rt-color-fg);text-decoration:none}.article-card h2 a:hover{color:var(--rt-color-accent)}.crumbs{color:var(--rt-color-fg-muted);margin-bottom:20px;font-size:13px}.crumbs a{color:var(--rt-color-accent);text-decoration:none}.article{max-width:68ch}.article h1{letter-spacing:-.02em;margin:0 0 14px;font-size:30px;line-height:1.2}.lede{color:var(--rt-color-fg);border-left:3px solid var(--rt-color-accent);margin:0 0 28px;padding-left:14px;font-size:18px;line-height:1.5}.article section{margin-bottom:24px}.article h2{letter-spacing:-.01em;margin:0 0 8px;font-size:19px}.article p{color:var(--rt-color-fg-muted);margin:0;line-height:1.6}.article-cta{border:1px solid var(--rt-color-accent);background:var(--rt-color-surface);border-radius:14px;max-width:68ch;margin-top:40px;padding:20px 22px}.article-cta h2{margin:0 0 6px;font-size:17px}.article-cta p{color:var(--rt-color-fg-muted);margin:0 0 14px;font-size:14px}.more-reading{max-width:68ch;margin-top:40px}.more-reading h2{margin:0 0 10px;font-size:15px}.more-reading ul{margin:0;padding-left:18px}.more-reading li{padding:4px 0;font-size:14px}.more-reading a{color:var(--rt-color-accent);text-decoration:none}.more-reading a:hover{text-decoration:underline}.footer-nav{justify-content:center;gap:20px;margin-bottom:20px;display:flex}.footer-nav a{color:var(--rt-color-accent);font-size:14px;text-decoration:none}.footer-nav a:hover{text-decoration:underline}.crate-name a{color:var(--rt-color-accent);text-decoration:none}.crate-name a:hover{text-decoration:underline}.crate-sep{color:var(--rt-color-fg-muted)}.page-head,.header-top{border-bottom:1px solid var(--rt-color-border);justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding-bottom:20px;display:flex}.page-head .brand{text-decoration:none}.page-head nav{align-items:center;gap:18px;display:flex}.page-head nav a{color:var(--rt-color-fg-muted);font-size:14px;text-decoration:none}.header-nav .cta{color:var(--rt-color-accent-fg);font-size:14px;text-decoration:none}.page-head nav a:hover{color:var(--rt-color-fg)}.page-head nav .cta,.header-nav .cta{color:var(--rt-color-accent-fg);background:var(--rt-color-accent);border-radius:8px;padding:7px 14px;font-weight:550}.page h1.tagline{white-space:normal;margin:0 0 8px;font-size:clamp(15px,2.45vw,23px);line-height:1.25}.prose{max-width:68ch}.footer{margin-top:72px}.modal-scrim{z-index:40;background:rgba(0,0,0,.62);position:fixed;inset:0}.modal{z-index:41;background:var(--rt-color-surface);border:1px solid var(--rt-color-border);border-radius:14px;width:min(420px,100vw - 32px);max-height:calc(100vh - 32px);padding:20px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.modal-signin{text-align:center;width:min(360px,100vw - 32px);padding:22px 22px 24px}.modal-signin:focus{outline:none}.modal-title{letter-spacing:-.01em;margin:0 0 4px;font-size:20px}.centred{text-align:center}.btn-signin{width:100%;margin-top:10px;padding:11px 16px;font-size:15px;display:block}.btn-google{background:var(--rt-color-surface-2);color:var(--rt-color-fg)}.gsi-slot:not(:empty){justify-content:center;margin-top:12px;display:flex}.promo{color:var(--rt-color-accent);justify-content:center;align-items:flex-start;gap:4px;margin:14px 0 -6px;display:flex}.promo-text{text-align:right;max-width:168px;padding-top:6px;font-size:13px;font-style:italic;line-height:1.25}.promo-arrow{flex:none;margin-bottom:-8px}.nonce{font-family:var(--rt-font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);word-break:break-all;background:var(--rt-color-surface-2);border:1px solid var(--rt-color-border);border-radius:8px;padding:8px 10px;font-size:12px}.assertion{box-sizing:border-box;width:100%;font-family:var(--rt-font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);background:var(--rt-color-surface-2);color:var(--rt-color-fg);border:1px solid var(--rt-color-border);resize:vertical;border-radius:8px;margin-bottom:10px;padding:8px 10px;font-size:12px}button.cta{appearance:none;cursor:pointer;font:inherit;line-height:inherit;border:0}.error{color:var(--rt-color-danger,#ff6b6b);margin-top:12px}.file-list{max-height:220px;color:var(--rt-color-fg-muted);margin:10px 0 0;padding:0;font-size:13px;list-style:none;overflow-y:auto}.file-list li{border-bottom:1px solid var(--rt-color-border);word-break:break-all;padding:3px 0}.two-ways{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:40px;display:grid}.way{border:1px solid var(--rt-color-border);background:var(--rt-color-surface);border-radius:14px;padding:20px}.way-featured{border-color:var(--rt-color-accent)}.way-tag{letter-spacing:.02em;color:var(--rt-color-fg-muted);margin-bottom:8px;font-size:12px;display:inline-block}.way h3{letter-spacing:-.01em;margin:0 0 8px;font-size:18px}.way p{color:var(--rt-color-fg-muted);margin:0 0 14px;line-height:1.6}.way-list{color:var(--rt-color-fg-muted);margin:0 0 16px;padding:0;font-size:14px;list-style:none}.way-list li{padding:4px 0}.way-list li:before{content:"✓";color:var(--rt-color-accent);margin-right:8px}.signed-in-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;font-size:14px;display:flex}.btn-small{padding:5px 12px;font-size:13px}.colophon{border-top:1px solid var(--rt-color-border);text-align:center;margin-top:40px;padding-top:24px}.colophon-line{color:var(--rt-color-fg-muted);margin:0 0 6px;font-size:13px}.colophon-line a{color:var(--rt-color-accent);text-decoration:none}.colophon-line a:hover{text-decoration:underline}.socials{justify-content:center;align-items:center;gap:18px;margin-top:14px;display:flex}.socials a{width:34px;height:34px;color:var(--rt-color-fg-muted);border-radius:8px;place-items:center;display:grid}.socials a:hover{color:var(--rt-color-fg);background:var(--rt-color-surface-2)}.small{font-size:13px}.cta-quiet{color:var(--rt-color-fg-muted);border:1px solid var(--rt-color-border);background:0 0}.cta-quiet:hover{color:var(--rt-color-fg)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:12px;display:grid}.stat{border:1px solid var(--rt-color-border);background:var(--rt-color-surface-2);border-radius:10px;flex-direction:column;gap:2px;padding:14px;display:flex}.stat-label{color:var(--rt-color-fg-muted);font-size:13px}.stat-value{letter-spacing:-.02em;font-size:24px;font-weight:600}.stat-note{color:var(--rt-color-fg-muted);font-size:12px}.stat-pending .stat-value{color:var(--rt-color-fg-muted);font-weight:400}.usage-block{margin:20px 0}.usage-head{justify-content:space-between;margin-bottom:8px;font-size:14px;display:flex}.keygen{border-top:1px solid var(--rt-color-border);margin-top:22px;padding-top:18px}.keygen h4,.billing-block h4{margin:0 0 6px;font-size:15px}.text-input{box-sizing:border-box;background:var(--rt-color-surface-2);width:100%;color:var(--rt-color-fg);border:1px solid var(--rt-color-border);font:inherit;border-radius:8px;margin:8px 0 10px;padding:9px 12px;font-size:14px}.key-reveal{border:1px solid var(--rt-color-accent);background:var(--rt-color-surface-2);border-radius:10px;margin-top:14px;padding:12px}.key-value{font-family:var(--rt-font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);word-break:break-all;color:var(--rt-color-fg);margin-top:6px;font-size:12px;display:block}.billing-block{border-top:1px solid var(--rt-color-border);margin-top:20px;padding-top:18px}.billing-block:first-of-type{border-top:0;margin-top:0;padding-top:0}.tiers-row{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.tier-btn{appearance:none;cursor:pointer;font:inherit;border:1px solid var(--rt-color-border);background:var(--rt-color-surface-2);min-width:84px;color:var(--rt-color-fg);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:12px 14px;display:flex}.tier-btn-on{border-color:var(--rt-color-accent);background:var(--rt-color-surface)}.tier-amount{font-size:17px;font-weight:600}.tier-bonus{color:var(--rt-color-accent);font-size:12px}.tier-bonus-none{color:var(--rt-color-fg-muted)}.runs-locally{border:1px solid var(--rt-color-border);background:var(--rt-color-surface);border-radius:12px;margin-bottom:16px;padding:16px 18px}.runs-locally h3{margin:0 0 10px;font-size:15px}.runs-list{margin:0;padding:0;list-style:none}.runs-list li{border-top:1px solid var(--rt-color-border);grid-template-columns:130px 1fr;gap:12px;padding:7px 0;font-size:13px;display:grid}.runs-list li:first-child{border-top:0}.runs-kind{color:var(--rt-color-fg);font-weight:550}.runs-what{color:var(--rt-color-fg-muted);line-height:1.5}.runs-pending .runs-kind{color:var(--rt-color-fg-muted);font-weight:400}.runs-toggles{flex-wrap:wrap;gap:6px 16px;margin-top:7px;display:flex}.engine-toggle{cursor:pointer;color:var(--rt-color-fg);align-items:center;gap:6px;font-size:12px;line-height:1.4;display:inline-flex}.engine-toggle input{accent-color:var(--rt-color-accent);cursor:pointer;flex:none;margin:0}.engine-name{font-weight:550}.engine-note{color:var(--rt-color-fg-muted)}.engine-toggle-locked,.engine-toggle-locked input{cursor:default}.engine-toggle-locked .engine-name{color:var(--rt-color-fg-muted);font-weight:400}.runs-warn{color:var(--rt-color-accent);margin:7px 0 0;font-size:12px}@media (width<=560px){.runs-list li{grid-template-columns:1fr;gap:2px}}.modal-reason{color:var(--rt-color-fg-muted);text-align:center;margin:0 0 16px;font-size:14px;line-height:1.55}.yield-list{margin:4px 0 14px;padding:0;list-style:none}.yield-list li{border-top:1px solid var(--rt-color-border);justify-content:space-between;align-items:baseline;gap:16px;padding:6px 0;font-size:14px;display:flex}.yield-list li:first-child{border-top:0}.yield-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yield-count{color:var(--rt-color-fg-muted);flex:none}.yield-none{color:var(--rt-color-warn);font-weight:550}.runs-elsewhere .runs-kind,.runs-elsewhere .engine-toggle-locked .engine-name{color:var(--rt-color-fg)}.stack{margin-top:4px}.stack-head,.stack-row{border-top:1px solid var(--rt-color-border);grid-template-columns:128px 1fr 1fr;gap:16px;padding:10px 0;font-size:13px;display:grid}.stack-head{text-transform:uppercase;letter-spacing:.04em;color:var(--rt-color-fg-muted);border-top:0;padding-bottom:4px;font-size:12px}.stack-col{font-weight:600}.stack-cell{color:var(--rt-color-fg-muted);line-height:1.55}.stack-api{border-left:2px solid var(--rt-color-border);padding-left:14px}.stack-lede{color:var(--rt-color-fg-muted);margin:0 0 14px;font-size:13px}.runs-note{color:var(--rt-color-fg-muted);margin:8px 0 0;font-size:12px}@media (width<=720px){.stack-head{display:none}.stack-row{grid-template-columns:1fr;gap:8px}.stack-api{border-left:0;padding-left:0}.stack-api:before{content:"On our API: ";color:var(--rt-color-fg);font-weight:600}}