@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_8c25df{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_8c25df{--font-mono:"Geist Mono","Geist Mono Fallback"}:root{--bg:#08090c;--surface:#0e1014;--surface-2:#14171c;--line:rgba(255,255,255,.075);--line-2:rgba(255,255,255,.13);--fg:#eef0f4;--muted:#9aa0ab;--faint:#8a909b;--accent:#38d6ff;--accent-ink:#031219;--good:#4fd09b;--bad:#f2555a;--warn:#e6b450;color-scheme:dark;--sans:var(--font-sans),system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-mono),ui-monospace,Menlo,Consolas,monospace;--ease:cubic-bezier(.16,1,.3,1);--maxw:1120px;--r:10px;--eye:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z' fill='none' stroke='%23eef0f4' stroke-width='1.8' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='3.2' fill='%2338d6ff'/%3E%3C/svg%3E");--check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#2a2e36 var(--bg)}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:color-mix(in srgb,var(--accent) 32%,transparent);color:#fff}h1,h2,h3{font-family:var(--sans);font-weight:600;line-height:1.08;letter-spacing:-.03em;text-wrap:balance;margin:0}p{margin:0;text-wrap:pretty}a{color:inherit;text-decoration:none}input,select,textarea{caret-color:var(--accent)}.mono{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.js-ready [data-reveal]{opacity:0;transform:translateY(14px);filter:blur(4px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}.js-ready [data-reveal].in{opacity:1;transform:none;filter:none}.band{width:100%;position:relative}.wrap{max-width:var(--maxw);margin:0 auto;padding:80px 24px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)}.topbar .row{max-width:var(--maxw);margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:22px}.logo{display:inline-flex;align-items:center;gap:0;font-weight:700;font-size:1.05rem;letter-spacing:-.03em;color:var(--fg)}.logo:before{content:"";width:22px;height:22px;margin-right:8px;background:var(--eye) center /contain no-repeat;flex:none}.logo .dot{color:var(--accent)}.spacer{flex:1 1}.topbar .nav,.topbar a.nav{color:var(--muted);font-size:.875rem;transition:color .2s ease}.topbar a.nav:hover{color:var(--fg)}.hide-sm{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-family:var(--sans);font-weight:500;font-size:.9rem;line-height:1;padding:11px 16px;border-radius:8px;border:1px solid transparent;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .12s ease;white-space:nowrap}.btn:active{transform:scale(.98)}.btn-primary{color:var(--accent-ink);background:var(--accent);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 24px -10px rgba(56,214,255,.55)}.btn-primary:hover{background:#6be2ff}.btn-ghost{color:var(--fg);border-color:var(--line-2);background:rgba(255,255,255,.03)}.btn-ghost:hover{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.06)}.btn.sm{padding:8px 13px;font-size:.84rem}.btn:disabled{opacity:.5;cursor:default}.btn.danger{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 38%,transparent);background:transparent}.btn.danger:hover{background:color-mix(in srgb,var(--bad) 10%,transparent)}.cta-row{display:flex;flex-wrap:wrap;gap:10px}.linkbtn{background:none;border:none;color:var(--muted);font-family:var(--sans);font-size:.875rem;cursor:pointer;padding:0}.linkbtn:hover{color:var(--fg)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.hero{overflow:hidden;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 50% at 50% 0,rgba(56,214,255,.16),transparent 70%)}.hero .wrap{position:relative;padding-top:64px;padding-bottom:56px}.hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center}.hero h1{font-size:clamp(2.2rem,5vw,3.5rem);font-weight:600;letter-spacing:-.04em;line-height:1.02;max-width:14ch;background:none;color:var(--fg)}.hero .sub{color:var(--muted);font-size:clamp(.95rem,1.3vw,1.05rem);max-width:54ch;margin-top:18px}.hero .cta-row,.hero-stat{justify-content:center;margin-top:26px}.hero-stat{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:.84rem;color:var(--faint)}.hero-stat span{display:inline-flex;align-items:center;gap:8px}.hero-stat span:before{content:"";width:14px;height:14px;background:var(--accent);-webkit-mask:var(--check) center /contain no-repeat;mask:var(--check) center /contain no-repeat}.stage{margin:44px auto 0;max-width:880px;position:relative}.stage-note{max-width:880px;margin:12px auto 0;text-align:right;font-size:.75rem;color:var(--faint)}.term{background:#0a0c0f;border:1px solid var(--line-2);border-radius:12px;overflow:hidden;min-width:0;box-shadow:0 30px 80px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.4)}.term .head{display:flex;align-items:center;gap:6px;padding:11px 14px;border-bottom:1px solid var(--line);background:#0d1014}.term .head i{width:9px;height:9px;border-radius:50%;background:#262a31;display:block}.term .head .t{font-family:var(--mono);font-size:.72rem;color:var(--faint);margin-left:8px}.term .head .live{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:.72rem;color:var(--good)}.term .head .live:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 20%,transparent)}.term pre{margin:0;font-family:var(--mono);font-size:clamp(.66rem,1vw,.76rem);line-height:1.7;padding:16px 18px;color:#c8ccd4;white-space:pre}.console{min-height:21em;overflow-x:auto;overflow-y:hidden}.console>div>div{min-height:1.75em}.c-violet{color:#d7d9de}.c-cyan{color:var(--accent)}.c-dim{color:#7d838e}.c-green{color:var(--good)}.c-red{color:var(--bad)}.c-amber{color:var(--accent)}.c-yellow{color:var(--warn)}.c-white{color:#f1f3f6}.c-grey{color:#a3a9b3}.cursor{display:inline-block;width:7px;height:1em;background:var(--accent);vertical-align:-1px;animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}h2.sec{font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:-.04em;max-width:20ch}.lead{color:var(--muted);margin-top:12px;max-width:58ch;font-size:1rem}.catch{margin-top:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:56px;column-gap:56px;border-top:1px solid var(--line)}.catch-row{padding:22px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.catch-row h3{font-size:1.05rem;letter-spacing:-.015em}.catch-row p{color:var(--muted);font-size:.95rem}.methods{margin-top:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.method{padding:26px;display:flex;flex-direction:column;gap:10px;border-color:var(--line);border-style:solid;border-width:0}.method:nth-child(odd){border-right-width:1px}.method:nth-child(-n+2){border-bottom-width:1px}.method h3{font-size:1.05rem;letter-spacing:-.015em}.method p{color:var(--muted);font-size:.94rem}.flow{margin-top:40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:32px;gap:32px}.flow-step{display:flex;flex-direction:column;gap:14px;padding-top:24px;border-top:1px solid var(--line-2)}.flow-step .t{display:flex;gap:12px;align-items:center}.flow-step .num{font-family:var(--mono);font-size:.75rem;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-weight:500;flex:none}.flow-step h3{font-size:1.1rem;letter-spacing:-.02em}.flow-step p{color:var(--muted);font-size:.94rem}.flow-art{white-space:pre-wrap;margin:auto 0 0;font-family:var(--mono);font-size:.76rem;line-height:1.75;color:#c8ccd4;background:#0a0c0f;border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto}.flow-art .muted{color:var(--faint)}.flow-art .ac{color:var(--good)}.flow-art .rd{color:var(--bad)}.flow-art .wh{color:#fff}.get{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(50% 80% at 50% 100%,rgba(56,214,255,.1),transparent 70%),var(--surface)}.get .wrap{display:flex;flex-direction:column;align-items:center;text-align:center}.get h2.sec{max-width:none}.get .lead{margin-inline:auto}.get .cta-row{justify-content:center;margin-top:30px}.faq{max-width:780px}.faq h2.sec{margin-bottom:32px}details{border-bottom:1px solid var(--line)}details:first-of-type{border-top:1px solid var(--line)}details summary{cursor:pointer;padding:20px 0;font-weight:500;font-size:1rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:color .2s ease}details summary:hover{color:#fff}details summary::-webkit-details-marker{display:none}details summary .plus{width:12px;height:12px;flex:none;position:relative}details summary .plus:after,details summary .plus:before{content:"";position:absolute;background:var(--muted);left:0;top:5px;width:12px;height:2px;transition:transform .3s var(--ease)}details summary .plus:after{transform:rotate(90deg)}details[open] summary .plus:after{transform:rotate(0)}details .ans{padding:0 0 22px;color:var(--muted);font-size:.95rem;max-width:64ch}footer{border-top:1px solid var(--line)}footer .wrap{padding:40px 24px;display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}footer .muted{color:var(--muted);font-size:.85rem}footer a.muted:hover{color:var(--fg)}.note{font-family:var(--mono);font-size:.74rem;color:var(--muted);border:1px dashed var(--line-2);border-radius:6px;padding:7px 11px}@keyframes rise{0%{opacity:0;transform:translateY(14px);filter:blur(6px)}}.hero-copy>*{animation:rise .8s var(--ease) both}.hero-copy>:nth-child(2){animation-delay:.07s}.hero-copy>:nth-child(3){animation-delay:.14s}.hero-copy>:nth-child(4){animation-delay:.21s}.console>div>div{animation:line-in .3s var(--ease) both}@keyframes line-in{0%{opacity:0;transform:translateX(-6px)}}.term{position:relative;transition:border-color .6s ease,box-shadow .6s ease}.term:after{content:"";position:absolute;inset:0 0 auto;height:40%;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent,rgba(56,214,255,.08) 75%,rgba(56,214,255,.5) calc(100% - 1px),transparent)}.term.scan:after{animation:sweep 1.2s cubic-bezier(.4,0,.2,1) both}@keyframes sweep{0%{opacity:1;transform:translateY(-100%)}85%{opacity:1}to{opacity:0;transform:translateY(250%)}}.term.kick{border-color:color-mix(in srgb,var(--bad) 55%,transparent);box-shadow:0 30px 80px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.4),0 0 48px -10px rgba(242,85,90,.4)}.term .head .live:before{animation:ping 2.4s ease-out infinite}@keyframes ping{0%{box-shadow:0 0 0 0 rgba(79,208,155,.45)}to{box-shadow:0 0 0 7px rgba(79,208,155,0)}}@keyframes draw{0%{transform:scaleX(0);opacity:.9}60%{transform:scaleX(1);opacity:.9}to{transform:scaleX(1);opacity:0}}.catch-row{position:relative}.catch-row:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--accent);transform-origin:left;transform:scaleX(0);opacity:0}.catch-row:nth-child(2){--d:.06s}.catch-row:nth-child(3){--d:.12s}.catch-row:nth-child(4){--d:.18s}.catch-row:nth-child(5){--d:.24s}.catch-row:nth-child(6){--d:.3s}.js-ready .catch[data-fx] .catch-row{opacity:0;transform:translateY(10px);transition:opacity .6s var(--ease) var(--d,0s),transform .6s var(--ease) var(--d,0s)}.js-ready .catch[data-fx].in .catch-row{opacity:1;transform:none}.js-ready .catch[data-fx].in .catch-row:after{animation:draw 1.2s var(--ease) var(--d,0s) both}.methods{position:relative}.methods:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transform:translateY(-100%);background:linear-gradient(180deg,transparent calc(100% - 90px),rgba(56,214,255,.07) calc(100% - 1px),rgba(56,214,255,.75) calc(100% - 1px))}.js-ready .methods[data-fx].in:after{animation:sweep-block 1.5s cubic-bezier(.4,0,.2,1) .15s both}@keyframes sweep-block{0%{opacity:1;transform:translateY(-100%)}90%{opacity:1}to{opacity:0;transform:translateY(0)}}.method,.method>*{position:relative}.method:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s ease;background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(56,214,255,.08),transparent 70%)}.method:hover:before{opacity:1}.flow-step{position:relative}.flow-step:before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;background:var(--accent);transform-origin:left;transform:scaleX(0);opacity:0}.flow-step:nth-child(2){--d:.3s}.flow-step:nth-child(3){--d:.6s}.js-ready .flow[data-fx] .flow-step{opacity:0;transform:translateY(10px);transition:opacity .6s var(--ease) var(--d,0s),transform .6s var(--ease) var(--d,0s)}.js-ready .flow[data-fx].in .flow-step{opacity:1;transform:none}.js-ready .flow[data-fx].in .flow-step:before{animation:draw 1s var(--ease) var(--d,0s) both}.js-ready .flow[data-fx].in .flow-step .num{animation:ring .7s ease-out calc(var(--d, 0s) + .35s) both}@keyframes ring{0%{box-shadow:0 0 0 0 rgba(56,214,255,.5)}to{box-shadow:0 0 0 9px rgba(56,214,255,0)}}.btn-primary{position:relative;overflow:hidden}.btn-primary:after{content:"";position:absolute;inset:0;pointer-events:none;transform:translateX(-120%);background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);transition:transform .7s var(--ease)}.btn-primary:hover:after{transform:translateX(120%)}:root{interpolate-size:allow-keywords}details::details-content{block-size:0;overflow:hidden;transition:block-size .35s var(--ease),content-visibility .35s allow-discrete}details[open]::details-content{block-size:auto}@media (min-width:820px){.hide-sm{display:inline}}@media (max-width:900px){.flow{grid-template-columns:1fr;gap:8px}.flow-step{padding-bottom:24px}}@media (max-width:680px){.wrap{padding:80px 16px}.topbar .row{padding:12px 16px}.hero .wrap{padding-top:64px}.catch,.methods{grid-template-columns:1fr}.method{border-right-width:0!important;border-bottom-width:1px}.method:last-child{border-bottom-width:0}.method{padding:24px}.term pre{white-space:pre-wrap;font-size:11px}.console{min-height:0}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}.auth-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;position:relative;overflow:hidden}.auth-wrap:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(50% 40% at 50% 0,rgba(56,214,255,.12),transparent 70%)}.auth-card{position:relative;width:100%;max-width:380px;background:var(--surface);border:1px solid var(--line-2);border-radius:14px;padding:32px 28px;display:flex;flex-direction:column;gap:6px;box-shadow:0 30px 80px -30px rgba(0,0,0,.9)}.auth-h{font-size:1.5rem;margin-top:22px}.auth-sub{color:var(--muted);font-size:.92rem}.auth-btns{display:flex;flex-direction:column;gap:10px;margin-top:22px}.btn.oauth{width:100%;background:var(--surface-2);border:1px solid var(--line-2);color:var(--fg);padding:13px 18px}.btn.oauth:hover:not(:disabled){border-color:rgba(255,255,255,.24)}.auth-foot{color:var(--muted);font-size:.8rem;margin-top:18px}.dash{padding-top:48px;padding-bottom:96px;display:flex;flex-direction:column;gap:16px;max-width:880px}.dash-h{font-size:1.75rem;letter-spacing:-.035em;margin-bottom:8px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:14px}.panel-h{font-weight:600;font-size:.95rem;letter-spacing:-.01em;color:var(--fg)}.kv{display:flex;gap:16px;align-items:center;min-height:28px}.kv .k{color:var(--muted);font-size:.86rem;width:110px;flex:none}.kv .v{font-size:.92rem}.keyreveal{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0}.keyreveal .mono{overflow-wrap:anywhere}.hint{font-size:.86rem}.hint,.install{color:var(--muted)}.install{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:.9rem}.install li::marker{color:var(--accent);font-family:var(--mono)}.install b{font-weight:500}.install .mono,.install b{color:var(--fg)}.admin-form,.linkform{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.input{background:var(--bg);border:1px solid var(--line-2);border-radius:8px;padding:11px 13px;color:var(--fg);font-size:.9rem;font-family:var(--sans);min-width:0;flex:1 1;transition:border-color .2s ease,box-shadow .2s ease}.input::placeholder{color:var(--faint)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}textarea.input{resize:vertical}select.input{flex:0 0 auto}.badge{font-family:var(--mono);font-size:.7rem;font-weight:500;padding:3px 9px;border-radius:5px;text-transform:uppercase;letter-spacing:.06em;display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.05);color:var(--muted)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.s-active{color:var(--good);background:color-mix(in srgb,var(--good) 12%,transparent)}.badge.s-expired,.badge.s-revoked,.badge.s-unknown{color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,transparent)}.badge.s-unverified{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.banner{border-radius:8px;padding:12px 14px;font-size:.9rem;border:1px solid var(--line-2)}.banner.good{color:var(--good);border-color:color-mix(in srgb,var(--good) 35%,transparent);background:color-mix(in srgb,var(--good) 7%,transparent)}.banner.bad{color:#ff8a8d;border-color:color-mix(in srgb,var(--bad) 35%,transparent);background:color-mix(in srgb,var(--bad) 7%,transparent)}.builds{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}.build{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface-2)}.build:last-child{border-bottom:0}.build-info{display:flex;flex-direction:column;gap:3px;min-width:0}.build-name{font-size:.9rem;font-weight:500;word-break:break-all}.build-meta{color:var(--muted);font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.build-notes{color:var(--muted);font-size:.82rem;white-space:pre-line;margin-top:4px}.row-actions{flex-wrap:wrap;margin-top:10px}.beta,.row-actions{display:flex;gap:10px}.beta{border-top:1px solid var(--line);padding-top:12px;flex-direction:column}.beta,.beta details{border-bottom:0}.beta summary{cursor:pointer;color:var(--fg);font-size:.9rem;padding:4px 0}.beta[open] summary{margin-bottom:8px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.stat{padding:18px 20px;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat-v{font-size:1.6rem;font-weight:600;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-k{color:var(--muted);font-size:.8rem}@media (max-width:720px){.stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}.customer{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:8px}.customer .row-actions{margin-top:6px}.v.small{font-size:.78rem;color:var(--muted);word-break:break-all}.build.edit{flex-wrap:wrap;align-items:flex-start}.build.edit .build-info{flex:1 1 220px}.build.is-hidden{opacity:.55}.build-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex:2 1 320px}.build-form textarea{flex-basis:100%}.check{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.86rem}.check input{accent-color:var(--accent)}.legal{max-width:720px;padding-top:64px;padding-bottom:96px}.legal h1{font-size:clamp(2rem,5vw,2.75rem);letter-spacing:-.04em}.legal .updated{color:var(--faint);font-size:.82rem;margin-top:12px}.legal h2{font-size:1.15rem;letter-spacing:-.02em;margin:44px 0 10px}.legal li,.legal p{color:var(--muted);font-size:.96rem;line-height:1.75}.legal strong{color:var(--fg);font-weight:500}.legal p{margin-top:10px}.legal ul{margin:10px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.legal a.inline{color:var(--accent);text-decoration:underline;text-underline-offset:3px;-webkit-text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent)}.legal .back{color:var(--muted);font-size:.9rem}.legal .back:hover{color:var(--fg)}.legal .note{display:inline-block;margin-top:28px}