@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root,[data-bs-theme=light]{--tap-font-sans:"Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--tap-font-mono:"JetBrains Mono", SFMono-Regular, Menlo, Consolas, monospace;--tap-accent:#0b7a60;--tap-accent-rgb:11, 122, 96;--tap-accent-ink:#0a7c61;--tap-accent-hover:#096a53;--tap-on-accent:#fff;--tap-accent-soft:#0d93731a;--tap-glow:#0d93731f;--tap-dot:#10182821;--bs-body-bg:#f7f9fc;--bs-body-bg-rgb:247, 249, 252;--bs-body-color:#101828;--bs-body-color-rgb:16, 24, 40;--bs-emphasis-color:#000a1e;--bs-emphasis-color-rgb:0, 10, 30;--bs-secondary-color:#1e293bb8;--bs-secondary-color-rgb:30, 41, 59;--bs-secondary-bg:#eef2f8;--bs-secondary-bg-rgb:238, 242, 248;--bs-tertiary-bg:#eef2f8;--bs-tertiary-bg-rgb:238, 242, 248;--bs-border-color:#e0e6ef;--bs-primary:var(--tap-accent);--bs-primary-rgb:var(--tap-accent-rgb);--bs-link-color:var(--tap-accent-ink);--bs-link-color-rgb:10, 124, 97;--bs-link-hover-color:#085c48;--bs-link-hover-color-rgb:8, 92, 72;--bs-body-font-family:var(--tap-font-sans);--bs-font-monospace:var(--tap-font-mono)}[data-bs-theme=dark]{--tap-accent:#2dd4a7;--tap-accent-rgb:45, 212, 167;--tap-accent-ink:#3ce0b4;--tap-accent-hover:#55e2bd;--tap-on-accent:#052e22;--tap-accent-soft:#2dd4a721;--tap-glow:#2dd4a721;--tap-dot:#94a3b833;--bs-body-bg:#0e1420;--bs-body-bg-rgb:14, 20, 32;--bs-body-color:#e8eef7;--bs-body-color-rgb:232, 238, 247;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255, 255, 255;--bs-secondary-color:#c8d4e5b8;--bs-secondary-color-rgb:200, 212, 229;--bs-secondary-bg:#161e2e;--bs-secondary-bg-rgb:22, 30, 46;--bs-tertiary-bg:#121a29;--bs-tertiary-bg-rgb:18, 26, 41;--bs-border-color:#243147;--bs-primary:var(--tap-accent);--bs-primary-rgb:var(--tap-accent-rgb);--bs-link-color:var(--tap-accent-ink);--bs-link-color-rgb:60, 224, 180;--bs-link-hover-color:#6fe9c8;--bs-link-hover-color-rgb:111, 233, 200}section[id],[id^=quick-]{scroll-margin-top:76px}h1,h2,h3,.display-1,.display-2,.display-3,.display-4,.display-5,.display-6{letter-spacing:-.02em}.fw-bold,h1,.display-5{font-weight:700}code,pre,kbd{font-family:var(--tap-font-mono)}::selection{background:rgba(var(--tap-accent-rgb), .25)}:focus-visible{outline:2px solid var(--tap-accent);outline-offset:2px}.btn-primary{--bs-btn-color:var(--tap-on-accent);--bs-btn-bg:var(--tap-accent);--bs-btn-border-color:var(--tap-accent);--bs-btn-hover-color:var(--tap-on-accent);--bs-btn-hover-bg:var(--tap-accent-hover);--bs-btn-hover-border-color:var(--tap-accent-hover);--bs-btn-active-color:var(--tap-on-accent);--bs-btn-active-bg:var(--tap-accent-hover);--bs-btn-active-border-color:var(--tap-accent-hover);--bs-btn-disabled-color:var(--tap-on-accent);--bs-btn-disabled-bg:var(--tap-accent);--bs-btn-disabled-border-color:var(--tap-accent);--bs-btn-focus-shadow-rgb:var(--tap-accent-rgb);font-weight:600}.btn-outline-primary{--bs-btn-color:var(--tap-accent-ink);--bs-btn-border-color:var(--tap-accent);--bs-btn-hover-color:var(--tap-on-accent);--bs-btn-hover-bg:var(--tap-accent);--bs-btn-hover-border-color:var(--tap-accent);--bs-btn-active-color:var(--tap-on-accent);--bs-btn-active-bg:var(--tap-accent);--bs-btn-active-border-color:var(--tap-accent);--bs-btn-focus-shadow-rgb:var(--tap-accent-rgb);font-weight:600}.tap-navbar{background-color:rgba(var(--bs-body-bg-rgb), .85);border-bottom:1px solid var(--bs-border-color);-webkit-backdrop-filter:blur(8px);padding:.65rem 0}.tap-brand-text{letter-spacing:-.02em;color:var(--bs-emphasis-color);font-size:1.25rem;font-weight:700}.tap-beta{font-family:var(--tap-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tap-accent-ink);border:1px solid var(--tap-accent);border-radius:999px;align-self:center;padding:.18rem .5rem;font-size:.62rem;font-weight:600}.tap-navbar .nav-link{color:var(--bs-secondary-color);font-weight:500}.tap-navbar .nav-link:hover,.tap-navbar .nav-link:focus{color:var(--bs-body-color)}.icon-badge{background:var(--tap-accent-soft);width:42px;height:42px;color:var(--tap-accent-ink);border-radius:10px;flex-shrink:0;place-items:center;font-size:1.05rem;display:inline-grid}[data-bs-theme=dark] .card{--bs-card-bg:var(--bs-secondary-bg);--bs-card-border-color:transparent}.tap-footer{border-top:1px solid var(--bs-border-color);font-size:.9rem}.tap-footer .tap-fh{letter-spacing:.08em;text-transform:uppercase;color:var(--bs-secondary-color);margin-bottom:.9rem;font-size:.78rem;font-weight:600}.tap-footer a{color:var(--bs-body-color);text-decoration:none}.tap-footer a:hover{color:var(--tap-accent-ink);text-decoration:underline}.tap-hero{background:radial-gradient(52rem 26rem at 74% 16%, var(--tap-glow), transparent 62%);position:relative;overflow:hidden}.tap-hero:before{content:"";background-image:radial-gradient(var(--tap-dot) 1px, transparent 1.4px);pointer-events:none;background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(46rem 30rem at 70% 30%,#000 25%,#0000 72%);mask-image:radial-gradient(46rem 30rem at 70% 30%,#000 25%,#0000 72%)}.tap-hero>.container{position:relative}.tap-eyebrow{font-family:var(--tap-font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--tap-accent-ink);margin-bottom:1rem;font-size:.72rem;font-weight:600}.tap-h1{letter-spacing:-.028em;text-wrap:balance}.tap-h1 em{color:var(--tap-accent-ink);font-style:normal}.tap-trust{color:var(--bs-secondary-color);gap:.35rem 1.15rem;font-size:.86rem}.tap-trust li:before{content:"✓";color:var(--tap-accent-ink);margin-right:.4rem;font-weight:700}.tap-code-win{font-family:var(--tap-font-mono);background:#0a0f1a;border:1px solid #94a3b82e;border-radius:13px;font-size:.8rem;line-height:1.62;overflow:hidden;box-shadow:0 22px 50px #05091273}.tap-cw-top{border-bottom:1px solid #94a3b821;align-items:center;gap:.45rem;padding:.65rem .95rem;display:flex}.tap-cw-dot{border-radius:50%;width:10px;height:10px}.tap-cw-dot:first-child{background:#f26d6d}.tap-cw-dot:nth-child(2){background:#f2c26d}.tap-cw-dot:nth-child(3){background:#59c98a}.tap-cw-tabs{gap:.25rem;margin-left:.8rem;display:flex}.tap-cw-tabs button{appearance:none;cursor:pointer;color:#8a97ad;font:600 .7rem/1 var(--tap-font-mono);background:0 0;border:0;border-radius:6px;padding:.38rem .7rem}.tap-cw-tabs button.active{background:rgba(var(--tap-accent-rgb), .15);color:var(--tap-accent)}.tap-cw-body{padding:1rem 1.15rem 1.15rem;overflow-x:auto}.tap-cw-body pre{font:inherit;color:#c9d5e8;white-space:pre;margin:0}.tap-cw-req[hidden]{display:none}.tap-cw-req .p{color:#8a97ad}.tap-cw-req .c{color:#e8eef7}.tap-cw-req .s{color:#8ecbff}.tap-cw-req .k{color:#34d9ac}.tap-cw-sep{color:#8a97ad;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.6rem;margin:.9rem 0 .55rem;font-size:.68rem;display:flex}.tap-cw-sep:after{content:"";background:#94a3b824;flex:1;height:1px}.tap-cw-sep .ok{color:#59c98a}.tap-cw-resp .k{color:#34d9ac}.tap-cw-resp .s{color:#8ecbff}.tap-cw-resp .n{color:#ffb454}.tap-caret{vertical-align:-2px;background:var(--tap-accent);width:7px;height:1em;animation:1.1s step-end infinite tap-blink;display:inline-block}@keyframes tap-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.tap-caret{animation:none}}.tap-stats{border-top:1px solid var(--bs-border-color);border-bottom:1px solid var(--bs-border-color);background:var(--bs-tertiary-bg)}.tap-stat-number{font-family:var(--tap-font-mono);font-variant-numeric:tabular-nums;color:var(--bs-emphasis-color);font-size:1.55rem;font-weight:700}.tap-stat-label{color:var(--bs-secondary-color);font-size:.82rem}.tap-api-card{transition:border-color .15s,transform .15s}.tap-api-card:hover{border-color:rgba(var(--tap-accent-rgb), .55);transform:translateY(-2px)}[data-bs-theme=dark] .tap-api-card:hover{--bs-card-border-color:rgba(var(--tap-accent-rgb), .55)}.tap-endpoint{font-family:var(--tap-font-mono);color:var(--bs-body-color);background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color);white-space:nowrap;border-radius:8px;padding:.45rem .65rem;font-size:.74rem;overflow-x:auto}.tap-try{color:var(--tap-accent-ink);font-size:.9rem;font-weight:600;text-decoration:none}.tap-try:hover{text-decoration:underline}.tap-playground{border:1px solid var(--bs-border-color);background:var(--bs-secondary-bg);border-radius:14px;overflow:hidden}.tap-pg-form{padding:1.4rem 1.4rem 1.6rem}.tap-pg-tabs .nav-link{color:var(--bs-secondary-color);padding:.45rem .8rem;font-size:.88rem;font-weight:600}.tap-pg-tabs .nav-link.active{background:var(--tap-accent-soft);color:var(--tap-accent-ink)}.tap-pg-resp{color:#c9d5e8;font-family:var(--tap-font-mono);background:#0a0f1a;flex-direction:column;font-size:.8rem;line-height:1.62;display:flex}.tap-pg-resp .tap-cw-top{border-bottom:1px solid #94a3b821}.tap-cw-label{color:#8a97ad;letter-spacing:.1em;text-transform:uppercase;margin-left:.8rem;font-size:.68rem;font-weight:600}.tap-pg-resp .tap-cw-body{flex-direction:column;flex:1;min-height:0;display:flex}.tap-pg-resp pre{font:inherit;color:inherit;white-space:pre;margin:0;overflow-x:auto}.tap-pg-req[hidden]{display:none}.tap-pg-response{color:#c9d5e8;flex:1;max-height:380px;overflow:auto}.tap-pg-resp code.hljs,.tap-pg-resp pre code{font-family:var(--tap-font-mono);background:0 0;padding:0}.tap-pg-live{letter-spacing:.08em;text-transform:uppercase}.tap-pg-live.ok,.tap-cw-sep .ok{color:#59c98a}.tap-pg-note{font-family:var(--tap-font-sans);color:#8a97ad;margin-top:.9rem;font-size:.78rem}.tap-pg-note a{color:#a9b6cc}@media (width<=991.98px){.tap-pg-resp{border-top:1px solid var(--bs-border-color)}.tap-pg-response{max-height:300px}}.tap-step-num{background:var(--tap-accent-soft);width:42px;height:42px;color:var(--tap-accent-ink);font-family:var(--tap-font-mono);border-radius:50%;flex-shrink:0;place-items:center;font-size:1.1rem;font-weight:700;display:inline-grid}.tap-cta{background:radial-gradient(40rem 18rem at 50% 0%, #ffffff24, transparent 60%), linear-gradient(135deg, var(--tap-accent), var(--tap-accent-hover));color:var(--tap-on-accent)}.tap-cta .display-6{color:var(--tap-on-accent)}.tap-cta-btn{background:var(--bs-body-bg);color:var(--bs-body-color);border:1px solid #0000;font-weight:650}.tap-cta-btn:hover{background:var(--bs-body-bg);color:var(--bs-body-color);filter:brightness(1.08)}.tap-cta-btn-ghost{color:var(--tap-on-accent);border:1px solid;font-weight:600}.tap-cta-btn-ghost:hover{color:var(--tap-on-accent);background:#ffffff1f}.tap-auth{background:radial-gradient(52rem 26rem at 50% -8%, var(--tap-glow), transparent 62%);justify-content:center;align-items:center;min-height:calc(100vh - 62px);padding:2.5rem 1rem 3.5rem;display:flex;position:relative;overflow:hidden}.tap-auth:before{content:"";background-image:radial-gradient(var(--tap-dot) 1px, transparent 1.4px);pointer-events:none;background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(40rem 26rem at 50% 12%,#000 20%,#0000 72%);mask-image:radial-gradient(40rem 26rem at 50% 12%,#000 20%,#0000 72%)}.tap-auth-card{background:var(--bs-secondary-bg);border:1px solid var(--bs-border-color);border-radius:16px;width:100%;max-width:34rem;padding:2.25rem 2.25rem 2rem;position:relative;box-shadow:0 22px 50px #0509122e}[data-bs-theme=dark] .tap-auth-card{box-shadow:0 22px 50px #05091273}.tap-auth-brand{align-items:center;gap:.55rem;margin-bottom:1.4rem;text-decoration:none;display:inline-flex}.tap-auth-brand .tap-brand-text{font-size:1.1rem}.tap-auth-title{letter-spacing:-.02em;color:var(--bs-emphasis-color);margin-bottom:.3rem;font-size:1.65rem;font-weight:700}.tap-auth-subtitle{color:var(--bs-secondary-color);margin-bottom:1.6rem;font-size:.95rem}.tap-auth-card .form-label{margin-bottom:.35rem;font-size:.86rem;font-weight:600}.tap-auth-card .form-control:focus{border-color:var(--tap-accent);box-shadow:0 0 0 .2rem rgba(var(--tap-accent-rgb), .2)}.tap-auth-card .form-check-input:checked{background-color:var(--tap-accent);border-color:var(--tap-accent)}.tap-auth-card .form-check-input:focus{border-color:var(--tap-accent);box-shadow:0 0 0 .2rem rgba(var(--tap-accent-rgb), .2)}.tap-auth-sep{color:var(--bs-secondary-color);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.85rem;margin:1.6rem 0 1.2rem;font-size:.78rem;display:flex}.tap-auth-sep:before,.tap-auth-sep:after{content:"";background:var(--bs-border-color);flex:1;height:1px}.tap-auth-foot{text-align:center;color:var(--bs-secondary-color);margin-top:1.4rem;margin-bottom:0;font-size:.9rem}@media (width<=575.98px){.tap-auth-card{padding:1.75rem 1.4rem 1.6rem}}.tap-error{text-align:center;max-width:34rem}.tap-error-code{font-family:var(--tap-font-mono);letter-spacing:-.04em;color:var(--tap-accent-ink);margin-bottom:.5rem;font-size:clamp(4.5rem,18vw,8.5rem);font-weight:700;line-height:1}.tap-error-title{letter-spacing:-.02em;color:var(--bs-emphasis-color);margin-bottom:.6rem;font-size:1.5rem;font-weight:700}.tap-error-detail{color:var(--bs-secondary-color);margin-bottom:1.8rem;font-size:.98rem}.tap-error-detail code{color:var(--tap-accent-ink);background:var(--tap-accent-soft);border-radius:6px;padding:.1rem .4rem;font-size:.9em}.font-mono{font-family:var(--tap-font-mono)}.text-accent{color:var(--tap-accent-ink)}