.cf{color-scheme:dark;--cf-bg:#130D24;--cf-bg-2:#170F2D;--cf-surface:#1D1535;--cf-deep:#140E27;--cf-raise:#241A42;--cf-line:#2C2250;--cf-line-2:#3A2D66;--cf-ink:#EEEAFB;--cf-ink-2:#BDB3E0;--cf-ink-3:#9A8FC4;--cf-ink-4:#7E71AE;--cf-cyan:#2ED6E6;--cf-cyan-soft:rgba(46,214,230,.1);--cf-cyan-line:rgba(46,214,230,.45);--cf-violet:#7A52E6;--cf-lav:#B7A9F0;--cf-warn:#F2A96B;--cf-display:var(--cf-f-display),ui-sans-serif,system-ui,sans-serif;--cf-sans:var(--cf-f-sans),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--cf-mono:var(--cf-f-mono),ui-monospace,"SF Mono",Menlo,monospace;--cf-ease:cubic-bezier(.2,.8,.2,1);background:var(--cf-bg);color:var(--cf-ink);font-family:var(--cf-sans);font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}.cf *{box-sizing:border-box}.cf img{max-width:100%;height:auto;display:block}.cf a,.cf button{color:inherit}.cf button{font:inherit;cursor:pointer}.cf :focus-visible{outline:2px solid var(--cf-cyan);outline-offset:3px;border-radius:6px}.cf h1,.cf h2,.cf h3{text-wrap:balance;margin:0}.cf p{margin:0}.cf .cf-wrap{max-width:1200px;margin-inline:auto;padding-inline:24px}.cf .cf-rel{position:relative}.cf .cf-mono{font-family:var(--cf-mono)}.cf .cf-dim{color:var(--cf-ink-4)}.cf .cf-kicker{font-family:var(--cf-mono);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--cf-ink-3);display:flex;align-items:center;gap:12px}.cf .cf-kicker b{color:var(--cf-cyan);font-weight:700}.cf .cf-kicker .cf-mk{width:28px;height:28px;border-radius:8px;background:var(--cf-cyan);color:var(--cf-bg);display:grid;place-items:center;font-size:13px;letter-spacing:0;flex:none}.cf .cf-eyebrow{font-family:var(--cf-mono);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--cf-ink-3)}.cf h1{font-family:var(--cf-display);font-weight:700;font-size:clamp(36px,4.5vw,64px);line-height:1;letter-spacing:-.02em;margin-top:26px}.cf h1 em{font-style:normal;color:var(--cf-cyan);white-space:nowrap}.cf .cf-motto{margin-top:22px;font-family:var(--cf-display);font-weight:600;font-size:clamp(19px,1.8vw,24px);color:var(--cf-ink-2);letter-spacing:-.005em}.cf .cf-motto s{text-decoration:none;color:var(--cf-ink-4);position:relative}.cf .cf-motto s:after{content:"";position:absolute;left:-3px;right:-3px;top:52%;height:3px;border-radius:2px;background:var(--cf-cyan);transform:rotate(-3deg)}.cf .cf-h2{font-family:var(--cf-display);font-weight:700;font-size:clamp(28px,3.6vw,46px);line-height:1.06;letter-spacing:-.02em;margin-top:16px;max-width:20ch}.cf .cf-lede{font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:var(--cf-ink-2);max-width:56ch;margin-top:22px}.cf .cf-body{color:var(--cf-ink-2);max-width:60ch;margin-top:14px}.cf .cf-body.cf-first{margin-top:20px}.cf .cf-body strong{color:var(--cf-ink);font-weight:600}.cf .cf-fine{margin-top:12px;font-size:12.5px;color:var(--cf-ink-4);line-height:1.45}.cf section{padding-block:clamp(72px,9vw,124px);position:relative}.cf section.cf-rule{border-top:1px solid var(--cf-line)}.cf .cf-split{display:grid;gap:48px;align-items:start;grid-template-columns:minmax(0,1fr)}.cf .cf-split>*{min-width:0}@media(min-width:980px){.cf .cf-split{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px}.cf .cf-split.cf-flip{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.cf .cf-split.cf-flip>:first-child{order:2}.cf .cf-split.cf-hero-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.cf .cf-split.cf-head-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.cf .cf-sticky{position:sticky;top:104px}}.cf .cf-stage{display:inline-flex;align-items:center;gap:12px;font-family:var(--cf-mono);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--cf-cyan)}.cf .cf-stage i{font-style:normal;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;border:1.5px solid var(--cf-cyan-line);background:var(--cf-cyan-soft);font-size:13px;letter-spacing:0}.cf .cf-hero{padding-top:140px;padding-bottom:80px;overflow:hidden}.cf .cf-hero:before{content:"";background:radial-gradient(46% 58% at 76% 45%,rgba(122,82,230,.28),transparent 70%),radial-gradient(30% 40% at 95% 95%,rgba(46,214,230,.1),transparent 72%),radial-gradient(40% 50% at 0 100%,rgba(122,82,230,.12),transparent 72%)}.cf .cf-dots,.cf .cf-hero:before{position:absolute;inset:0;pointer-events:none}.cf .cf-dots{opacity:.55;background-image:radial-gradient(#3A2D66 1.2px,transparent 1.5px);background-size:32px 32px;mask-image:radial-gradient(60% 70% at 75% 45%,#000 25%,transparent 80%)}.cf .cf-hero-split{margin-top:34px}.cf .cf-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--cf-line);border:1px solid var(--cf-line);border-radius:14px;overflow:hidden;margin:56px 0 0}@media(min-width:760px){.cf .cf-facts{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,2fr)}}.cf .cf-facts>div{background:var(--cf-bg-2);padding:16px 18px;min-width:0}.cf .cf-facts .cf-wide{grid-column:1/-1}@media(min-width:760px){.cf .cf-facts .cf-wide{grid-column:auto}}.cf .cf-facts dt{font-family:var(--cf-mono);font-weight:700;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--cf-ink-4)}.cf .cf-facts dd{margin:6px 0 0;font-size:15px;color:var(--cf-ink)}.cf .cf-facts a{color:var(--cf-cyan);text-decoration:none}.cf .cf-facts a:hover{text-decoration:underline}.cf .cf-live{display:inline-flex;margin-top:18px;color:var(--cf-cyan);text-decoration:none;font-family:var(--cf-mono)}.cf .cf-grade{background:var(--cf-surface);border:1.5px solid var(--cf-line-2);border-radius:22px;padding:24px;box-shadow:0 40px 90px -30px rgba(0,0,0,.85),0 0 90px -40px rgba(46,214,230,.45);min-width:0}.cf .cf-gh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cf .cf-gt{font-weight:600;font-size:19px;line-height:1.2;color:#F2EFFC}.cf .cf-gt span{display:block;font:400 14px/1.2 var(--cf-mono);color:var(--cf-ink-3);margin-top:4px;letter-spacing:.04em}.cf .cf-status{display:inline-flex;align-items:center;gap:8px;font:700 12.5px/1 var(--cf-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cf-lav);background:rgba(183,169,240,.08);box-shadow:inset 0 0 0 1.5px rgba(183,169,240,.3);border-radius:999px;padding:8px 12px;white-space:nowrap;transition:color .3s,background .3s,box-shadow .3s}.cf .cf-status.cf-done{color:var(--cf-cyan);background:var(--cf-cyan-soft);box-shadow:inset 0 0 0 1.5px var(--cf-cyan-line)}.cf .cf-pulse{width:7px;height:7px;border-radius:50%;background:currentColor;animation:cf-pulse 1s ease-in-out infinite}@keyframes cf-pulse{50%{opacity:.25}}.cf .cf-mini{margin-top:18px;border-radius:12px;background:var(--cf-deep);box-shadow:inset 0 0 0 1.5px #33285A;overflow:hidden}.cf .cf-mini-bar{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid #2a2049;font-size:13px;color:var(--cf-ink-2)}.cf .cf-mini-bar .cf-dim{font-size:12px}.cf .cf-mini .cf-code{font-size:13px;padding:8px 0}.cf .cf-cx{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:14px}.cf .cf-cx>div{background:var(--cf-deep);border-radius:14px;padding:14px 16px;box-shadow:inset 0 0 0 1.5px #33285A;transition:box-shadow .4s var(--cf-ease);min-width:0}.cf .cf-cx>div.cf-on{box-shadow:inset 0 0 0 1.5px rgba(46,214,230,.35)}.cf .cf-cx small{display:block;font:700 11.5px/1 var(--cf-mono);letter-spacing:.14em;color:var(--cf-ink-3);text-transform:uppercase}.cf .cf-cx b{display:block;font:700 clamp(24px,2.6vw,32px)/1.05 var(--cf-display);color:#F2EFFC;margin-top:10px;letter-spacing:-.01em;white-space:nowrap}.cf .cf-cx>div.cf-on b{animation:cf-rise .45s var(--cf-ease) both}.cf .cf-dev{margin-top:18px;border-top:1.5px dashed var(--cf-line-2);padding-top:14px}.cf .cf-dh{display:flex;justify-content:space-between;gap:10px;font:700 11.5px/1.2 var(--cf-mono);letter-spacing:.14em;color:var(--cf-ink-3);text-transform:uppercase}.cf .cf-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:12px;color:var(--cf-lav)}.cf .cf-row .cf-n{font-weight:500;font-size:16px;color:var(--cf-ink)}.cf .cf-row .cf-g{font:700 15px/1 var(--cf-mono);color:var(--cf-ink-4);letter-spacing:.02em;white-space:nowrap;transition:color .3s}.cf .cf-row.cf-on .cf-g{color:var(--cf-cyan)}@media(max-width:420px){.cf .cf-hide-sm{display:none}.cf .cf-grade{padding:18px}.cf .cf-row .cf-g{font-size:13.5px}}.cf .cf-code{margin:0;font-family:var(--cf-mono);font-variant-ligatures:none;font-size:14px;line-height:1.55;color:#D9D3F2;padding:12px 0;overflow:visible;white-space:normal}.cf .cf-code code{display:block}.cf .cf-code .cf-ln{display:grid;grid-template-columns:34px minmax(0,1fr);padding-inline-end:12px;transition:background .3s}.cf .cf-code .cf-ln.cf-hot{background:rgba(46,214,230,.08);box-shadow:inset 2px 0 0 var(--cf-cyan)}.cf .cf-code .cf-no{color:#5B4F8A;text-align:end;padding-inline-end:12px;user-select:none}.cf .cf-code .cf-tx{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;padding-inline-start:4ch;text-indent:-4ch}.cf .cf-code .cf-kw{color:#C4A6FF}.cf .cf-code .cf-fn{color:var(--cf-cyan)}.cf .cf-code .cf-pr{color:#8FE3EC}.cf .cf-code .cf-nu{color:#F2A96B}.cf .cf-code .cf-st{color:#9FE3A8}.cf .cf-code .cf-cm{color:#6E6399}.cf .cf-code .cf-pu{color:#9A8FC4}.cf .cf-panel{background:var(--cf-surface);border:1.5px solid var(--cf-line-2);border-radius:20px;padding:22px;min-width:0;box-shadow:0 30px 70px -30px rgba(0,0,0,.7)}.cf .cf-panel-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px}.cf .cf-panel-head>*{min-width:0}.cf .cf-panel-title{font-family:var(--cf-display);font-weight:700;font-size:21px;line-height:1.2;margin-top:6px;letter-spacing:-.01em}.cf .cf-seg{display:inline-flex;flex-wrap:wrap;max-width:100%;gap:2px;padding:3px;border-radius:10px;background:var(--cf-deep);box-shadow:inset 0 0 0 1.5px #33285A}.cf .cf-seg button{border:0;background:transparent;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:500;color:var(--cf-ink-2);transition:background .15s,color .15s}.cf .cf-seg button:hover{color:var(--cf-ink)}.cf .cf-seg button[aria-pressed=true]{background:var(--cf-cyan);color:var(--cf-bg)}.cf .cf-standings{list-style:none;margin:20px 0 0;padding:0;position:relative}.cf .cf-entry{position:absolute;left:0;right:0;top:0;display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,38%);align-items:center;gap:12px;padding:0 14px;border-radius:12px;background:var(--cf-deep);box-shadow:inset 0 0 0 1.5px #2E2454;transition:transform .6s var(--cf-ease),box-shadow .3s}.cf .cf-entry.cf-top{box-shadow:inset 0 0 0 1.5px var(--cf-cyan-line)}.cf .cf-place{font-size:20px;font-weight:700;color:var(--cf-ink-3);text-align:center}.cf .cf-entry.cf-top .cf-place{color:var(--cf-cyan)}.cf .cf-who{min-width:0}.cf .cf-who b{display:block;font-weight:600;font-size:15px}.cf .cf-who small{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;font-size:12.5px;line-height:1.35;color:var(--cf-ink-3);margin-top:2px}.cf .cf-who small svg{flex:none;color:var(--cf-lav)}.cf .cf-metric{justify-self:stretch;min-width:0}.cf .cf-bar{height:10px;background:#241A42;overflow:hidden}.cf .cf-bar,.cf .cf-bar i{display:block;border-radius:6px}.cf .cf-bar i{height:100%;background:linear-gradient(90deg,#5B45B8,var(--cf-lav));animation:cf-grow .6s var(--cf-ease) both}.cf .cf-cx-tag{justify-self:end;font-size:17px;font-weight:700;color:var(--cf-cyan);white-space:nowrap;animation:cf-rise .4s var(--cf-ease) both}.cf .cf-cx-tag em{font-style:normal;color:var(--cf-ink-3);font-weight:400}.cf .cf-board-note{margin-top:18px;font-size:14.5px;color:var(--cf-ink-2);line-height:1.55;animation:cf-rise .4s var(--cf-ease) both}.cf .cf-board-note b{color:var(--cf-ink)}@media(max-width:480px){.cf .cf-entry{grid-template-columns:28px minmax(0,1fr) minmax(0,34%);padding:0 10px;gap:8px}.cf .cf-who small{font-size:11.5px}.cf .cf-cx-tag{font-size:14.5px}.cf .cf-cx-tag em{display:none}}.cf .cf-problem p{margin-top:6px;color:var(--cf-ink-2);font-size:15px}.cf .cf-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}.cf .cf-tabs button{text-align:start;border:0;border-radius:12px;padding:10px 12px;background:var(--cf-deep);box-shadow:inset 0 0 0 1.5px #2E2454;transition:box-shadow .2s,background .2s;min-width:0}.cf .cf-tabs button .cf-mono{display:block;font-size:14.5px;font-weight:700;color:var(--cf-ink)}.cf .cf-tabs button small{display:block;font-size:12px;color:var(--cf-ink-3);line-height:1.3;margin-top:2px}.cf .cf-tabs button:hover{background:#1A1231}.cf .cf-tabs button[aria-selected=true]{box-shadow:inset 0 0 0 1.5px var(--cf-cyan);background:rgba(46,214,230,.06)}.cf .cf-tabs button[aria-selected=true] .cf-mono{color:var(--cf-cyan)}.cf .cf-cplx-body{display:grid;gap:12px;margin-top:12px;grid-template-columns:minmax(0,1fr)}.cf .cf-editor{border-radius:12px;background:var(--cf-deep);box-shadow:inset 0 0 0 1.5px #33285A;min-width:0}.cf .cf-editor .cf-code{font-size:13.5px}.cf .cf-verdict{border-radius:12px;background:#191130;box-shadow:inset 0 0 0 1.5px #33285A;padding:14px;min-width:0;animation:cf-rise .4s var(--cf-ease) both}.cf .cf-verdict-grid{display:grid;gap:12px;margin-top:10px;grid-template-columns:minmax(0,1fr)}@media(min-width:520px){.cf .cf-verdict-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center}}.cf .cf-verdict .cf-cx.cf-two{margin-top:0;gap:8px}.cf .cf-verdict .cf-cx>div{padding:10px 12px}.cf .cf-verdict .cf-cx b{font-size:24px;margin-top:6px}.cf .cf-why{margin-top:0;font-size:13.5px;line-height:1.5;color:var(--cf-ink-2)}.cf .cf-growth{margin-top:16px;padding-top:16px;border-top:1.5px dashed var(--cf-line-2)}.cf .cf-growth-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 18px}.cf .cf-n-val{margin-left:8px;color:var(--cf-cyan);letter-spacing:.02em;text-transform:none;font-size:14px}.cf input[type=range]{flex:1 1 200px;min-width:0;max-width:320px;accent-color:var(--cf-cyan);height:28px;cursor:pointer}.cf .cf-ops{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}.cf .cf-ops li{display:grid;grid-template-columns:86px minmax(0,1fr) 116px;align-items:center;gap:12px;opacity:.6;transition:opacity .2s}.cf .cf-ops li.cf-sel{opacity:1}.cf .cf-ops .cf-cls{font-size:14.5px;font-weight:700;color:var(--cf-ink-2)}.cf .cf-ops li.cf-sel .cf-cls{color:var(--cf-cyan)}.cf .cf-track{height:10px;border-radius:6px;background:#241A42;overflow:hidden}.cf .cf-track i{display:block;height:100%;border-radius:6px;background:var(--cf-ink-4);transition:width .5s var(--cf-ease)}.cf .cf-ops li.cf-sel .cf-track i{background:var(--cf-cyan)}.cf .cf-cnt{font-size:14px;text-align:end;color:var(--cf-ink-2);white-space:nowrap}@media(max-width:420px){.cf .cf-ops li{grid-template-columns:74px minmax(0,1fr) 96px;gap:8px}.cf .cf-cnt{font-size:12.5px}.cf .cf-tabs button small{display:none}}@media(max-width:560px){.cf .cf-code,.cf .cf-editor .cf-code,.cf .cf-mini .cf-code{font-size:12.5px}.cf .cf-code .cf-ln{grid-template-columns:26px minmax(0,1fr)}.cf .cf-code .cf-no{padding-inline-end:8px}}.cf .cf-go{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:10px;padding:10px 16px;font-weight:600;font-size:14px;background:var(--cf-cyan);color:var(--cf-bg);transition:filter .15s,opacity .15s}.cf .cf-go:hover{filter:brightness(1.1)}.cf .cf-go[disabled]{opacity:.5;cursor:progress}.cf .cf-lanes{display:grid;gap:10px;margin-top:20px}.cf .cf-lane{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border-radius:14px;background:var(--cf-deep);box-shadow:inset 0 0 0 1.5px #2E2454;transition:box-shadow .3s}.cf .cf-lane.cf-fin{box-shadow:inset 0 0 0 1.5px var(--cf-cyan-line)}.cf .cf-lane-dev{display:flex;align-items:center;gap:10px;color:var(--cf-lav);min-width:0}.cf .cf-lane-dev svg{flex:none}.cf .cf-lane-dev b{display:block;font-weight:500;font-size:15px;color:var(--cf-ink);line-height:1.2}.cf .cf-lane-dev small{display:block;font-size:12.5px;color:var(--cf-ink-3)}.cf .cf-lane-track{height:10px;border-radius:6px;background:#241A42;overflow:hidden}.cf .cf-lane-track i{display:block;height:100%;width:0;border-radius:6px;background:linear-gradient(90deg,#5B45B8,var(--cf-lav))}.cf .cf-lane-track i.cf-fill{animation:cf-fill linear forwards}.cf .cf-lane-track i.cf-full{width:100%}.cf .cf-lane.cf-fin .cf-lane-track i{background:linear-gradient(90deg,#5B45B8,var(--cf-cyan))}.cf .cf-lane-grade{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:700;color:var(--cf-cyan);white-space:nowrap;min-width:9.5em;justify-content:flex-end}.cf .cf-lane-grade .cf-dim{font-weight:400;font-size:13px}.cf .cf-run-sum{margin-top:16px;font-size:14.5px;color:var(--cf-ink-2)}.cf .cf-run-sum b{color:var(--cf-cyan);font-weight:600}@media(max-width:560px){.cf .cf-lane{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px}.cf .cf-lane-track{grid-column:1/-1;grid-row:2}.cf .cf-lane-grade{min-width:0}}.cf .cf-devices{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.cf .cf-devices span{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:var(--cf-surface);box-shadow:inset 0 0 0 1.5px var(--cf-line-2);color:var(--cf-ink);font-size:14.5px}.cf .cf-devices svg{color:var(--cf-lav)}.cf .cf-points{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px;max-width:60ch}.cf .cf-points li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:12px;color:var(--cf-ink-2);font-size:15px;line-height:1.55}.cf .cf-points li:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--cf-cyan);margin-top:8px}.cf .cf-points strong{color:var(--cf-ink);font-weight:600}.cf .cf-head-split{margin-top:0;gap:18px}@media(min-width:980px){.cf .cf-head-split{gap:64px}}.cf .cf-pillars{display:grid;gap:12px;margin-top:44px;grid-template-columns:minmax(0,1fr)}@media(min-width:760px){.cf .cf-pillars{grid-template-columns:repeat(3,minmax(0,1fr))}}.cf .cf-pillar{background:var(--cf-surface);border:1.5px solid var(--cf-line);border-radius:16px;padding:22px;color:var(--cf-lav)}.cf .cf-pillar h3{font-family:var(--cf-display);font-weight:700;font-size:20px;color:var(--cf-ink);margin-top:14px}.cf .cf-pillar p{margin-top:6px;font-size:14.5px;color:var(--cf-ink-2);line-height:1.55}.cf .cf-shots{display:grid;gap:28px;margin-top:56px;grid-template-columns:minmax(0,1fr)}@media(min-width:860px){.cf .cf-shots{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.cf .cf-shot{margin:0;min-width:0}.cf .cf-shot-frame{background:#fff;border-radius:16px;padding:clamp(6px,1vw,12px);overflow:hidden;box-shadow:0 0 0 1.5px var(--cf-line-2),0 40px 80px -30px rgba(0,0,0,.8),0 0 90px -50px rgba(122,82,230,.7)}.cf .cf-shot-frame img{border-radius:10px}.cf .cf-shot figcaption{display:flex;gap:12px;align-items:baseline;margin-top:14px;font-size:14px;color:var(--cf-ink-3)}.cf .cf-shot figcaption .cf-mono{color:var(--cf-cyan);font-weight:700;font-size:13px}.cf .cf-built{display:grid;gap:1px;margin-top:40px;background:var(--cf-line);border:1px solid var(--cf-line);border-radius:16px;overflow:hidden;grid-template-columns:minmax(0,1fr)}@media(min-width:860px){.cf .cf-built{grid-template-columns:repeat(3,minmax(0,1fr))}}.cf .cf-built-item{background:var(--cf-bg-2);padding:26px 24px}.cf .cf-built-item .cf-mono{color:var(--cf-cyan);font-weight:700;font-size:14px}.cf .cf-built-item p{margin-top:14px;font-size:17px;line-height:1.5;color:var(--cf-ink)}.cf .cf-stack{display:grid;gap:32px;margin-top:44px;grid-template-columns:minmax(0,1fr)}@media(min-width:860px){.cf .cf-stack{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.cf .cf-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.cf .cf-chip{font-family:var(--cf-mono);font-size:14px;padding:6px 12px;border-radius:999px;border:1.5px solid var(--cf-line-2);color:var(--cf-ink-2)}.cf .cf-svc{display:grid;gap:8px;margin-top:14px}.cf .cf-svc a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:var(--cf-surface);border:1.5px solid var(--cf-line);text-decoration:none;color:var(--cf-ink);transition:border-color .2s,color .2s}.cf .cf-svc a:hover{border-color:var(--cf-cyan-line);color:var(--cf-cyan)}@keyframes cf-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes cf-grow{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@keyframes cf-fill{0%{width:0}to{width:100%}}@media(prefers-reduced-motion:reduce){.cf *{animation:none!important;transition:none!important}}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1fc9a8acda3903f0-s.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b750d5bfef15842-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:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/2a7c45462b39533e-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4c7c43bdd7a35c63-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:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8d541ca8617572f0-s.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3955bbd902881c26-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:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/f6d84cc3be9d6158-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/84f090e3b62fb9e3-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:Chakra Petch Fallback;src:local("Arial");ascent-override:96.77%;descent-override:30.05%;line-gap-override:0.00%;size-adjust:102.51%}.__className_744789{font-family:Chakra Petch,Chakra Petch Fallback;font-style:normal}.__variable_744789{--cf-f-display:"Chakra Petch","Chakra Petch Fallback"}@font-face{font-family:Rubik;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/32c80fb7588b7a2e-s.woff2) format("woff2");unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0897-08e1,u+08e3-08ff,u+200c-200e,u+2010-2011,u+204f,u+2e41,u+fb50-fdff,u+fe70-fe74,u+fe76-fefc,u+102e0-102fb,u+10e60-10e7e,u+10ec2-10ec4,u+10efc-10eff,u+1ee00-1ee03,u+1ee05-1ee1f,u+1ee21-1ee22,u+1ee24,u+1ee27,u+1ee29-1ee32,u+1ee34-1ee37,u+1ee39,u+1ee3b,u+1ee42,u+1ee47,u+1ee49,u+1ee4b,u+1ee4d-1ee4f,u+1ee51-1ee52,u+1ee54,u+1ee57,u+1ee59,u+1ee5b,u+1ee5d,u+1ee5f,u+1ee61-1ee62,u+1ee64,u+1ee67-1ee6a,u+1ee6c-1ee72,u+1ee74-1ee77,u+1ee79-1ee7c,u+1ee7e,u+1ee80-1ee89,u+1ee8b-1ee9b,u+1eea1-1eea3,u+1eea5-1eea9,u+1eeab-1eebb,u+1eef0-1eef1}@font-face{font-family:Rubik;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/60181e10ad16e354-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:Rubik;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c1b11e140b58cf5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Rubik;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/99e31c27a1524300-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Rubik;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/5b25d60b4670300e-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Rubik;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0a86735c6520d94f-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:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/32c80fb7588b7a2e-s.woff2) format("woff2");unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0897-08e1,u+08e3-08ff,u+200c-200e,u+2010-2011,u+204f,u+2e41,u+fb50-fdff,u+fe70-fe74,u+fe76-fefc,u+102e0-102fb,u+10e60-10e7e,u+10ec2-10ec4,u+10efc-10eff,u+1ee00-1ee03,u+1ee05-1ee1f,u+1ee21-1ee22,u+1ee24,u+1ee27,u+1ee29-1ee32,u+1ee34-1ee37,u+1ee39,u+1ee3b,u+1ee42,u+1ee47,u+1ee49,u+1ee4b,u+1ee4d-1ee4f,u+1ee51-1ee52,u+1ee54,u+1ee57,u+1ee59,u+1ee5b,u+1ee5d,u+1ee5f,u+1ee61-1ee62,u+1ee64,u+1ee67-1ee6a,u+1ee6c-1ee72,u+1ee74-1ee77,u+1ee79-1ee7c,u+1ee7e,u+1ee80-1ee89,u+1ee8b-1ee9b,u+1eea1-1eea3,u+1eea5-1eea9,u+1eeab-1eebb,u+1eef0-1eef1}@font-face{font-family:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/60181e10ad16e354-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:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c1b11e140b58cf5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99e31c27a1524300-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/5b25d60b4670300e-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/0a86735c6520d94f-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:Rubik;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/32c80fb7588b7a2e-s.woff2) format("woff2");unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0897-08e1,u+08e3-08ff,u+200c-200e,u+2010-2011,u+204f,u+2e41,u+fb50-fdff,u+fe70-fe74,u+fe76-fefc,u+102e0-102fb,u+10e60-10e7e,u+10ec2-10ec4,u+10efc-10eff,u+1ee00-1ee03,u+1ee05-1ee1f,u+1ee21-1ee22,u+1ee24,u+1ee27,u+1ee29-1ee32,u+1ee34-1ee37,u+1ee39,u+1ee3b,u+1ee42,u+1ee47,u+1ee49,u+1ee4b,u+1ee4d-1ee4f,u+1ee51-1ee52,u+1ee54,u+1ee57,u+1ee59,u+1ee5b,u+1ee5d,u+1ee5f,u+1ee61-1ee62,u+1ee64,u+1ee67-1ee6a,u+1ee6c-1ee72,u+1ee74-1ee77,u+1ee79-1ee7c,u+1ee7e,u+1ee80-1ee89,u+1ee8b-1ee9b,u+1eea1-1eea3,u+1eea5-1eea9,u+1eeab-1eebb,u+1eef0-1eef1}@font-face{font-family:Rubik;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/60181e10ad16e354-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:Rubik;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c1b11e140b58cf5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Rubik;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/99e31c27a1524300-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Rubik;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5b25d60b4670300e-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Rubik;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/0a86735c6520d94f-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:Rubik Fallback;src:local("Arial");ascent-override:89.06%;descent-override:23.81%;line-gap-override:0.00%;size-adjust:104.98%}.__className_929585{font-family:Rubik,Rubik Fallback;font-style:normal}.__variable_929585{--cf-f-sans:"Rubik","Rubik Fallback"}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cedd077c0f891edd-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:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/facf13258462dcea-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d56d74bcfcecdda2-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f80c5892e5a7a0e6-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/74bdcbd37e77ee59-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3b70f49e4997f325-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:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6e82f47b74b798b6-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:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5a43b42e42628976-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a29f3c6ff6ed5c14-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/49fbfcdc311de027-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4fc7ea80e76ae5f9-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Ubuntu Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/bc708e50edc22686-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:Ubuntu Mono Fallback;src:local("Arial");ascent-override:74.00%;descent-override:15.16%;line-gap-override:0.00%;size-adjust:112.16%}.__className_d6ec9c{font-family:Ubuntu Mono,Ubuntu Mono Fallback;font-style:normal}.__variable_d6ec9c{--cf-f-mono:"Ubuntu Mono","Ubuntu Mono Fallback"}