/* axon design system, keelpad edition. Light, Outfit heads, Inter body, JetBrains Mono, electric blue accent. */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');
:root{color-scheme:light;
  --bg:#ffffff;--bg-2:#f3f6fa;--card-a:#f7f9fc;--card-b:#eef2f8;--panel-a:#ffffff;--panel-b:#f4f7fb;
  --ink:#0b1a33;--ink-80:#24385e;--ink-60:#4d6188;--muted:#5b6d8c;--muted-2:rgba(91,109,140,.75);--faint:#9aa9c0;
  --blue:#0747e0;--blue-deep:#1954df;--blue-ring:rgba(7,71,224,.35);--blue-soft:rgba(7,71,224,.12);--pill:rgba(255,255,255,.74);
  --green:#00b543;--green-ink:#0f7a3a;--green-wash:rgba(0,181,67,.12);--yellow:#fece4c;--red:#e5392a;--red-ink:#b42318;--red-wash:rgba(229,57,42,.1);--orange:#f68002;--orange-ink:#b45309;--orange-wash:rgba(246,128,2,.12);
  --line:rgba(11,26,51,.08);--line-2:rgba(11,26,51,.14);--wash-1:rgba(11,26,51,.035);--wash:rgba(11,26,51,.055);--wash-2:rgba(11,26,51,.09);
  --shadow:0 0 0 1px var(--line),0 24px 48px -32px rgba(11,26,51,.22);
  --glass:#ffffff8c;--glass-shadow:inset 0 1px #fffffff2,0 0 0 1px #0b1a330f,0 14px 30px -20px #0b1a334d;
  --chip-gloss:rgba(255,255,255,.16) 0 24px 64px -12px inset,rgba(0,0,0,.16) 0 -24px 40px -12px inset;
  --head:"Outfit",system-ui,-apple-system,sans-serif;--body:"Inter",system-ui,-apple-system,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.44,0,.56,1);
  --spring:linear(0,.054 4%,.25 10%,.495 16.6%,.7 23%,.846 29.6%,.931 35.7%,.977 41.2%,1 46.2%,1.013 52.8%,1.015 58%,1.0135 64.3%,1.01 70.9%,1.0066 76.4%,1.004 82.4%,1.0023 87.9%,1.001 94%,1);
  --shell:1200px;
  /* legacy aliases so every page keeps working */
  --surface:var(--panel-a);--surface-hover:var(--card-b);--mint:var(--blue-soft);--navy:var(--ink);--accent:var(--blue);--up:var(--green-ink);--down:var(--red-ink);--clay:var(--orange-ink);
  --sans:var(--body);--r-sm:10px;--r:16px;--r-lg:24px;--max:var(--shell);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html{background:var(--bg)}
body{margin:0;overflow-x:clip;background:transparent;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}
.sky-bg{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:linear-gradient(180deg,#d4e1f5 0%,#e8f0f8 100%)}
.sky-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.5s ease}
.sky-bg video.on{opacity:1}
@media(prefers-reduced-motion:reduce){.sky-bg video{display:none}}
body:before{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none;transition:color .4s var(--ease)}a:hover{color:var(--blue-deep)}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{margin:0;font-family:var(--head);font-weight:600;color:var(--ink);letter-spacing:-.005em;text-wrap:balance}
h1{font-size:clamp(40px,5.2vw,64px);line-height:1.05}h2{font-size:clamp(28px,3.2vw,40px);line-height:1.1}h3{font-size:20px;line-height:1.25}
h1 em,h2 em{font-style:normal;color:var(--blue-deep)}
.mono,.kbd,.copy{font-family:var(--mono);font-size:.92em}
.wrap{width:100%;max-width:var(--shell);margin:0 auto;padding:0 20px}
.faint{color:var(--faint)}.muted{color:var(--muted)}.num{text-align:right;font-variant-numeric:tabular-nums}
/* header: two floating glass pills */
.nav{position:sticky;top:0;z-index:50;height:0;overflow:visible}
.nav .wrap{position:relative;height:101px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:20px}
.nav .pill{height:64px;display:flex;align-items:center;gap:4px;padding:0 12px;border-radius:20px;background:transparent;transition:background .4s var(--ease),box-shadow .4s var(--ease)}
.nav[data-stuck] .pill{background:var(--glass);backdrop-filter:blur(34px) saturate(190%);-webkit-backdrop-filter:blur(34px) saturate(190%);box-shadow:var(--glass-shadow)}
.nav .pill-right{gap:8px;padding:0 10px}
.nav-x{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;color:var(--ink);transition:background .4s var(--ease)}
.nav-x:hover{background:var(--wash);color:var(--ink)}

.brand{display:inline-flex;align-items:center;gap:10px;padding:0 6px;font-family:var(--head);font-weight:600;font-size:22px;letter-spacing:-.01em;color:var(--ink)}
.brand:hover{color:var(--ink)}
.brand .mark{width:28px;height:28px;position:relative;flex:none;color:var(--ink);display:grid;place-items:center}
.brand .mark svg{width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.brand:hover .mark svg{transform:rotate(60deg)}
@media (prefers-reduced-motion:reduce){.brand .mark svg{transition:none}}
.nav-links{display:flex;align-items:center;margin-left:6px}
.nav-links a{position:relative;padding:6px 12px;font-family:var(--head);font-size:18px;font-weight:500;color:var(--ink-80);white-space:nowrap}
.nav-links a:after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;border-radius:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.nav-links a:hover,.nav-links a.active{color:var(--ink)}.nav-links a.active:after{transform:scaleX(1)}
.btn.nav-burger{display:none;width:44px;height:40px;border-radius:16px;font-size:20px;padding:0}
.nav-mobile{display:none;position:fixed;top:92px;right:20px;left:auto;width:auto;min-width:200px;max-width:min(300px,calc(100vw - 40px));z-index:49;padding:8px;border-radius:20px;background:var(--glass);backdrop-filter:blur(34px) saturate(190%);-webkit-backdrop-filter:blur(34px) saturate(190%);box-shadow:var(--glass-shadow);flex-direction:column;gap:2px;transform-origin:top right;animation:popin .28s var(--ease)}
@keyframes popin{from{opacity:0;transform:translateY(-6px) scale(.96)}}
.nav-mobile.open{display:flex}.nav-mobile a{padding:9px 14px;border-radius:12px;font-family:var(--head);font-size:16px;font-weight:500;color:var(--ink-80)}.nav-mobile a:hover,.nav-mobile a.active{background:var(--wash-1);color:var(--ink)}
.nav-mobile .nm-actions{display:flex;gap:8px;padding:8px 6px 2px}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 20px;border:0;border-radius:16px;background:var(--ink);color:#fff;font-family:var(--head);font-size:18px;font-weight:500;white-space:nowrap;cursor:pointer;text-decoration:none;transition:transform .4s var(--ease),background .4s var(--ease),box-shadow .4s var(--ease)}
.btn:hover{background:#1c2f52;color:#fff;transform:translateY(-1px);box-shadow:0 18px 30px -18px rgba(11,26,51,.5)}
.btn.accent,.btn.primary{background:var(--blue);box-shadow:var(--chip-gloss)}.btn.accent:hover,.btn.primary:hover{background:var(--blue-deep)}
.btn.ghost{background:var(--wash);color:var(--ink);box-shadow:none}.btn.ghost:hover{background:var(--wash-2);color:var(--ink)}
.btn.sm{height:40px;padding:0 16px;font-size:16px}.btn.xs{height:32px;padding:0 12px;font-size:14px;border-radius:12px}
.btn:active{scale:.97;transition-duration:.1s}.btn:disabled{opacity:.4;pointer-events:none}
.btn.mono{font-family:var(--mono);font-size:14px}
/* chips + labels */
.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;background:var(--wash);color:var(--ink-80);font-size:13px;font-weight:500;white-space:nowrap}
.chip.mint,.chip.blue{background:var(--blue-soft);color:var(--blue-deep)}.chip.up{background:var(--green-wash);color:var(--green-ink)}.chip.down{background:var(--red-wash);color:var(--red-ink)}.chip.warn{background:var(--orange-wash);color:var(--orange-ink)}
.eyebrow{display:inline-block;margin-bottom:14px;font-family:var(--head);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-deep)}
.page{flex:1;padding:24px 0 0}
.page:not(:has(.hero)){padding-top:101px}
.section{margin-top:56px}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.section-head .eyebrow{margin-bottom:8px}.section-head a{font-family:var(--head);font-weight:500;color:var(--ink-80)}
/* hero */
.hero{position:relative;padding:104px 0 40px;text-align:center}
.hero-bg{position:absolute;top:-125px;bottom:-90px;left:calc(50% - 50vw);right:calc(50% - 50vw);z-index:0;pointer-events:none;background:radial-gradient(130% 85% at 50% -12%,#dfe6f7 0%,#ccd6f3 34%,#e6ecfa 58%,rgba(255,255,255,0) 82%)}
.hero-in{position:relative;z-index:2;display:grid;justify-items:center}
.hero-in[data-appear]{opacity:.5;transform:scale(.9);animation:appear-head 2s var(--spring) forwards}
.hero h1,.hero-h{font-size:clamp(56px,10vw,150px);line-height:.98;letter-spacing:-.02em;max-width:980px;font-weight:600;background:linear-gradient(180deg,#0b1a33,#3b4a6b);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-wrap:balance;padding-bottom:.18em;margin-bottom:-.1em}
.hero h1 em,.hero-h em{font-style:normal}
.hero p.lede,.hero-sub{margin:32px 0 0;padding-inline:8px;max-width:620px;font-family:var(--head);font-size:clamp(15px,1.15vw,18px);line-height:1.35;font-weight:400;color:var(--ink);text-wrap:balance}
.hero .actions{display:flex;justify-content:center;margin-top:44px}
/* primary cta pill */
.btn.cta{height:60px;padding:0 28px;border-radius:999px;gap:10px;font-size:21px;font-weight:600;color:var(--blue);background:linear-gradient(180deg,#cfe0ff,#a9c4ff);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 20px 34px -14px rgba(7,71,224,.5)}
.btn.cta:hover{color:var(--blue);background:linear-gradient(180deg,#d9e7ff,#b3ccff);transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 24px 40px -14px rgba(7,71,224,.55)}
.btn.cta .mark{width:22px;height:22px;position:relative;flex:none;display:grid;place-items:center;color:currentColor}
.btn.cta .mark svg{width:100%;height:100%}
/* floating capsule chips */
.hero-caps{position:absolute;top:92px;bottom:176px;left:calc(50% - 50vw);right:calc(50% - 50vw);z-index:1;pointer-events:none;--inner:calc(50% + min(490px,44vw) + 26px);--edge:calc(100% - 236px)}
.cap-1,.cap-2,.cap-3,.cap-4{right:clamp(14px,calc(var(--inner) + var(--dx,0px)),var(--edge))}
.cap-5,.cap-6,.cap-7,.cap-8{left:clamp(14px,calc(var(--inner) + var(--dx,0px)),var(--edge))}
.cap{position:absolute;pointer-events:auto;display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 20px 0 9px;border-radius:999px;font-family:var(--head);font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;color:var(--ink);rotate:var(--tilt,0deg);box-shadow:inset 0 2px 3px rgba(255,255,255,.85),inset 0 -12px 18px rgba(11,26,51,.14),0 24px 30px -18px rgba(11,26,51,.4);animation:cap-drift var(--dur,7s) var(--ease) infinite alternate;transition:box-shadow .4s var(--ease)}
.cap:hover{color:var(--ink);box-shadow:inset 0 2px 3px rgba(255,255,255,.85),inset 0 -12px 18px rgba(11,26,51,.14),0 30px 38px -18px rgba(11,26,51,.5)}
.cap .ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.7);box-shadow:inset 0 1px 2px #fff,0 1px 4px rgba(11,26,51,.15);flex:none}
.cap .ic img{border-radius:50%;display:block}
.cap.gold{background:linear-gradient(180deg,#ffe9a3,#f5c944)}
.cap.beige{background:linear-gradient(180deg,#efe3d2,#d9c4a7)}
.cap.blue{background:linear-gradient(180deg,#c9dcff,#9fbdf6)}
.cap.grey{background:linear-gradient(180deg,#e8ecf2,#c3ccda)}
.cap.purple{background:linear-gradient(180deg,#e4d9fb,#c2aef0)}
.cap.green{background:linear-gradient(180deg,#cff0d4,#a4dcae)}
.cap.teal{background:linear-gradient(180deg,#cdeef0,#9fd4dd)}
.cap.pink{background:linear-gradient(180deg,#fbd9e6,#f0aec6)}
.cap-1{top:4%;--tilt:-14deg;--dur:6.4s}
.cap-2{top:29%;--tilt:9deg;--dur:8.6s;--dx:52px}
.cap-3{top:54%;--tilt:-6deg;--dur:7.4s;--dx:14px}
.cap-4{top:79%;--tilt:11deg;--dur:8s;--dx:64px}
.cap-5{top:3%;--tilt:12deg;--dur:7s}
.cap-6{top:28%;--tilt:-9deg;--dur:9s;--dx:48px}
.cap-7{top:53%;--tilt:6deg;--dur:6.8s;--dx:10px}
.cap-8{top:78%;--tilt:-11deg;--dur:7.8s;--dx:60px}
/* surfaces */
.card{position:relative;padding:22px;border-radius:24px;background:radial-gradient(79% 75% at 79% 82.5%,var(--card-a) 0%,var(--card-b) 100%);box-shadow:var(--shadow);min-width:0}
.card.hover{transition:transform .4s var(--ease),box-shadow .4s var(--ease)}.card.hover:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--line-2),0 30px 50px -30px rgba(11,26,51,.35)}
.card.panel,.panel{background:linear-gradient(180deg,var(--panel-a),var(--panel-b))}
.grid{display:grid;gap:16px}.grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.stat{display:flex;flex-direction:column;gap:4px;text-align:left}
.stat .k{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.stat .v{font-family:var(--head);font-size:24px;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.stat small{font-size:13px;color:var(--muted)}
.models{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.model{padding:18px;border-radius:16px;background:var(--panel-a);box-shadow:var(--shadow);transition:transform .4s var(--ease)}.model:hover{transform:translateY(-2px)}
.split{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:start}
/* tables */
.table-wrap{border-radius:24px;background:var(--panel-a);box-shadow:var(--shadow);overflow:auto}
.table{width:100%;border-collapse:collapse;font-size:15px}
.table th{padding:15px 18px;text-align:left;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.table th.num{text-align:right}
.table td{padding:14px 18px;border-top:1px solid var(--line);vertical-align:middle}
.table tbody tr{transition:background .4s var(--ease)}.table tbody tr:hover{background:var(--wash-1)}
.table .tok{display:flex;align-items:center;gap:10px;font-family:var(--head);font-weight:600}.table .tok small{font-family:var(--mono);font-weight:400;color:var(--muted)}
.table a{color:var(--ink)}
.bar{height:6px;border-radius:999px;background:var(--wash);overflow:hidden;min-width:80px}.bar>i{display:block;height:100%;border-radius:999px;background:var(--blue);transition:width .6s var(--ease)}
/* feed + chat */
.feed{display:grid;gap:10px}
.feed-item{padding:16px 18px;border-radius:16px;background:var(--panel-a);box-shadow:var(--shadow);animation:rise .4s var(--ease)}
.feed-item .who{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--muted);margin-bottom:6px}.feed-item .who b{color:var(--ink);font-family:var(--head)}
.chat{display:grid;grid-template-rows:1fr auto;min-height:60vh}
.msgs{display:grid;gap:12px;align-content:start;padding:8px 0}
.msg{max-width:72ch;padding:14px 18px;border-radius:20px;background:var(--panel-a);box-shadow:var(--shadow);line-height:1.5}
.msg.me{justify-self:end;background:var(--ink);color:#fff;box-shadow:var(--chip-gloss)}.msg .meta{font-size:12px;color:var(--muted);margin-bottom:4px}.msg.me .meta{color:rgba(255,255,255,.6)}
.compose{display:flex;gap:10px;padding:12px;border-radius:24px;background:var(--panel-a);box-shadow:var(--shadow);position:sticky;bottom:16px}
.compose input,.compose textarea{flex:1;border:0;background:transparent;padding:10px 12px;outline:0;resize:none}
/* forms */
.field{display:grid;gap:6px;margin-bottom:16px}
.field label{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.field input,.field select,.field textarea{width:100%;height:48px;padding:0 16px;border:0;border-radius:16px;background:var(--wash-1);box-shadow:0 0 0 1px var(--line);color:var(--ink);outline:0;transition:box-shadow .4s var(--ease),background .4s var(--ease)}
.field textarea{height:auto;min-height:120px;padding:14px 16px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{background:#fff;box-shadow:0 0 0 2px var(--blue-ring)}
.field .hint{font-size:13px;color:var(--muted)}
.notice{padding:16px 18px;border-radius:16px;background:var(--blue-soft);color:var(--blue-deep);font-size:14px;line-height:1.5}
.notice.warn{background:var(--orange-wash);color:var(--orange-ink)}.notice.bad{background:var(--red-wash);color:var(--red-ink)}.notice.ok{background:var(--green-wash);color:var(--green-ink)}
.tabs{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:var(--wash)}
.seg{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:var(--wash)}
.seg button{height:38px;padding:0 22px;border:0;border-radius:999px;background:transparent;font-family:var(--head);font-weight:500;font-size:15px;color:var(--ink-80);cursor:pointer;transition:background .4s var(--ease),color .4s var(--ease)}
.seg button:hover{color:var(--ink)}
.seg button.on{background:var(--ink);color:#fff;box-shadow:var(--chip-gloss)}
.tabs a,.tabs button{height:38px;padding:0 22px;border:0;border-radius:999px;background:transparent;font-family:var(--head);font-weight:500;font-size:15px;color:var(--ink-80);cursor:pointer;transition:background .4s var(--ease),color .4s var(--ease)}
.tabs .active,.tabs a.active,.tabs button.active{background:var(--ink);color:#fff;box-shadow:var(--chip-gloss)}
.kbd{padding:2px 6px;border-radius:6px;background:var(--wash);font-size:12px}
.copy{cursor:pointer;border:0;appearance:none;font:inherit;font-family:var(--mono);font-size:.85em;color:var(--muted);line-height:1.4;padding:3px 10px;border-radius:999px;background:var(--wash);transition:background .4s var(--ease)}.copy:hover{background:var(--blue-soft);color:var(--blue-deep)}
.empty{padding:48px 24px;text-align:center;color:var(--muted);border-radius:24px;background:var(--bg-2)}
.skeleton{position:relative;overflow:hidden;color:transparent!important;background:var(--wash-1)!important;border-radius:12px}
.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:shimmer 1.4s linear infinite}
.chart{height:280px;border-radius:24px;background:var(--panel-a);box-shadow:var(--shadow);padding:12px}
/* prose (docs) */
.prose{max-width:72ch;font-size:17px;line-height:1.65;color:var(--ink-80)}
.prose h2{margin:48px 0 14px;color:var(--ink)}.prose h3{margin:32px 0 10px;color:var(--ink)}.prose p{margin:0 0 16px}
.prose code{font-family:var(--mono);font-size:.9em;padding:2px 6px;border-radius:6px;background:var(--wash)}
.prose pre{padding:18px;border-radius:16px;background:var(--ink);color:#fff;overflow:auto;font-size:14px}.prose pre code{background:transparent;padding:0;color:inherit}
.prose a{color:var(--blue-deep);text-decoration:underline;text-decoration-color:var(--blue-ring)}
.prose ul,.prose ol{padding-left:22px}.prose li{margin:4px 0}
.prose blockquote{margin:16px 0;padding:14px 18px;border-radius:16px;background:var(--bg-2);color:var(--muted)}
/* toast + modal */
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:100;padding:12px 18px;border-radius:16px;background:var(--ink);color:#fff;font-size:14px;box-shadow:var(--chip-gloss),0 20px 40px -20px rgba(11,26,51,.5);animation:pop .4s var(--spring)}
.modal{position:fixed;inset:0;z-index:95;display:grid;place-items:center;padding:20px;background:rgba(11,26,51,.32);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fade .3s var(--ease)}
.modal>div{position:relative;width:100%;max-width:420px;padding:24px;border-radius:24px;background:#fff;box-shadow:var(--shadow);animation:rise .4s var(--spring)}
.modal h3{margin-bottom:12px}
.wallet-list{display:grid;gap:8px}
.wallet-list button{display:flex;align-items:center;gap:12px;height:52px;padding:0 16px;border:0;border-radius:16px;background:var(--wash-1);box-shadow:0 0 0 1px var(--line);font-family:var(--head);font-weight:500;font-size:16px;cursor:pointer;transition:background .4s var(--ease),transform .4s var(--ease)}
.wallet-list button:hover{background:var(--blue-soft);transform:translateY(-1px)}.wallet-list button:active{scale:.97;transition-duration:.1s}.wallet-list img{width:24px;height:24px;border-radius:6px}
/* footer */
.footer{position:relative;overflow:hidden;margin-top:80px;padding:96px 0 40px;background:var(--bg-2);color:var(--muted)}
.fgrid{display:grid;grid-template-columns:280px repeat(3,minmax(0,1fr));gap:24px}
.fgrid>div:first-child{display:grid;align-content:start;gap:24px;max-width:300px}
.fgrid .eyebrow{color:var(--ink);margin-bottom:10px}
.ftxt{margin:0;font-size:14px;line-height:1.5}.ftxt a{color:var(--ink)}
.flinks{display:grid;gap:8px}.flinks a{font-family:var(--head);font-size:16px;font-weight:500;color:var(--ink-80)}.flinks a:hover{color:var(--ink)}
.f-x{display:inline-flex;align-items:center;gap:4px}
.fbottom{margin-top:56px;padding-top:24px;border-top:1px solid var(--line);font-size:13px;color:var(--faint);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
/* motion */
@keyframes appear-head{to{opacity:1;transform:none}}
@keyframes appear-chips{to{opacity:1;transform:none}}
@keyframes reveal{0%{opacity:0;transform:translateY(26px) scale(.975)}to{opacity:1;transform:none}}
@keyframes rise{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
@keyframes pop{0%{opacity:0;transform:scale(.6) translateY(6px)}to{opacity:1;transform:none}}
@keyframes fade{0%{opacity:0}to{opacity:1}}
@keyframes float{0%{translate:0 -7px}to{translate:0 9px}}
@keyframes cap-drift{0%{translate:0 -6px}to{translate:0 6px}}
@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}
.reveal{animation:reveal .8s var(--spring) both}
/* responsive */
@media(max-width:1280px){.cap{height:46px;font-size:13px;padding:0 16px 0 7px}.cap .ic{width:30px;height:30px}.cap-2,.cap-6{display:none}.cap-4,.cap-8{--dx:22px}}
@media(max-width:1240px) and (min-width:861px){.nav-links{display:flex;gap:0}.nav-links a{padding:6px 9px;font-size:16px}}
@media(max-width:860px){.nav-links{display:none}.btn.nav-burger{display:inline-flex}}
@media(max-width:900px){.split,.grid.c3,.grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}.fgrid{grid-template-columns:1fr 1fr 1fr}.fgrid>div:first-child{grid-column:1/-1;max-width:none}
.nav .pill-right{display:none}
.cap{height:40px;font-size:12px;padding:0 14px 0 6px;gap:7px}.cap .ic{width:26px;height:26px}.cap .ic img{width:14px;height:14px}
.cap-2,.cap-4,.cap-6,.cap-8{display:none}.cap-1{top:5%}.cap-5{top:4%}.cap-3{top:auto;bottom:6%;--dx:0}.cap-7{top:auto;bottom:4%;--dx:0}}
@media(max-width:809px){.nav .pill{left:12px;right:12px}.hero{padding:64px 0 28px}.hero p.lede,.hero-sub{font-size:15px}.btn{height:44px;font-size:16px}.footer{padding-top:64px}}
@media(max-width:560px){.grid.c2,.grid.c3,.grid.c4,.fgrid{grid-template-columns:1fr}.wrap{padding:0 14px}.section{margin-top:40px}.table th,.table td{padding:12px 12px}.nav .pill .btn.accent{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-in[data-appear],.model-chips[data-appear]{opacity:1;transform:none}}
@media(prefers-reduced-transparency:reduce){.nav[data-stuck] .pill,.nav-mobile{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}}
/* markets cards */
.mkt-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.mkt-filters{display:flex;align-items:center;gap:10px;flex-shrink:0}
.mkt-controls .tabs{margin-bottom:0}
.mkt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.mkt-card{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:20px;background:radial-gradient(79% 75% at 79% 82.5%,var(--card-a) 0%,var(--card-b) 100%);box-shadow:var(--shadow);min-width:0;color:var(--ink);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.mkt-card:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--line-2),0 30px 50px -30px rgba(11,26,51,.35);color:var(--ink)}
.mkt-card .logo{width:56px;height:56px;border-radius:18px;background:var(--blue-soft);box-shadow:0 0 0 1px var(--line);object-fit:cover;flex:none}
.mkt-head{display:flex;gap:12px;align-items:center;min-width:0}
.mkt-name{display:flex;flex-direction:column;gap:6px;align-items:flex-start;min-width:0}
.mkt-name .n{font-family:var(--head);font-weight:600;font-size:17px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.mkt-sub{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.mkt-stats{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.mkt-stats b{font-family:var(--mono);font-weight:500;color:var(--ink)}
.mkt-grad{display:flex;gap:8px;align-items:center}
.mkt-grad .bar{flex:1}
.mkt-grad .mono{font-size:12px}
.mkt-foot{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:auto}
.mkt-foot .faint{font-size:13px}
/* live strip */
.live-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:1rem}
.live-stat{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-radius:16px;background:var(--panel-a);box-shadow:var(--shadow)}
.live-stat .k{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.live-stat .v{font-family:var(--head);font-size:20px;font-weight:600;color:var(--ink)}
/* inner pages */
.page-intro{text-align:center;max-width:760px;margin:40px auto;display:grid;justify-items:center}
.page-intro h1{max-width:16ch;font-size:clamp(40px,4.6vw,64px)}
.page-intro .lede{margin:18px 0 0;font-family:var(--head);font-size:clamp(18px,1.8vw,24px);line-height:1.3;font-weight:500;color:var(--ink-80);text-wrap:balance}
.page-intro .eyebrow{display:block}
.docs .prose{margin:0 auto}.split>.card{align-self:start}
.sel,select.sel{height:40px;padding:0 36px 0 14px;border:0;border-radius:14px;background:var(--wash-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230b1a33' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center;box-shadow:0 0 0 1px var(--line);font-family:var(--head);font-weight:500;font-size:15px;color:var(--ink);appearance:none;-webkit-appearance:none;outline:0;cursor:pointer;transition:box-shadow .4s var(--ease)}
.sel:focus{box-shadow:0 0 0 2px var(--blue-ring)}
.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.card h2,.card h3{margin-bottom:8px}.card>p{margin:0 0 12px;color:var(--ink-80)}
.section-head h2{font-size:clamp(26px,2.6vw,36px)}
.page .grid.c4 .card,.page .grid.c3 .card{padding:18px 20px}
/* table + feed atoms */
.feed .tabs,.tabs+.feed{margin-top:14px}
.feed-item .logo,.feed-item .who img{width:22px;height:22px;border-radius:7px;background:var(--blue-soft);box-shadow:0 0 0 1px var(--line);object-fit:cover;flex:none;display:inline-block}
.feed-item .who{flex-wrap:wrap;min-width:0}.feed-item{overflow:hidden}
.tok .logo,.table .logo{width:32px;height:32px;border-radius:10px;background:var(--blue-soft);box-shadow:0 0 0 1px var(--line);object-fit:cover;flex:none;display:inline-block}
.tok .n{color:var(--ink)}
.feed-item{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:start}
.feed-item .t{font-family:var(--mono);font-size:12px;color:var(--muted);padding-top:2px;white-space:nowrap}
.feed-item .who{margin-bottom:6px}.feed-item .who a{color:var(--ink)}
@media(max-width:560px){.feed-item{grid-template-columns:1fr}.feed-item .t{padding-top:0}}

/* popups */
.pops{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;flex-direction:column;gap:10px;width:min(340px,calc(100vw - 36px));pointer-events:none}
.pop{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--card,#fff);border:1px solid var(--line,#e6e9ef);border-radius:16px;box-shadow:var(--shadow,0 10px 30px rgba(15,23,42,.10));text-decoration:none;color:inherit;opacity:0;transform:translateY(12px) scale(.98);transition:opacity .25s ease,transform .25s ease}
.pop.in{opacity:1;transform:none}
.pop-logo{width:38px;height:38px;border-radius:12px;object-fit:cover;background:var(--wash,#f3f5f9);flex:none}
.pop-body{min-width:0;flex:1}
.pop-title{font-weight:600;font-size:.92rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pop-sub{font-size:.78rem;color:var(--muted,#6b7280);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pop-x{flex:none;border:0;background:transparent;color:var(--muted,#6b7280);font-size:1.1rem;line-height:1;cursor:pointer;padding:4px 6px;border-radius:8px}
.pop-x:hover{background:var(--wash,#f3f5f9)}
.pop-launch{border-color:var(--blue-soft,#cfe0ff)} .pop-graduated{border-color:#bfe8cf}
@media(max-width:640px){.pops{right:10px;bottom:10px;left:10px;width:auto}}

/* logo picker */
.logo-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.lp-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px 14px;border:0;border-radius:16px;background:var(--wash-1);box-shadow:0 0 0 1px var(--line);cursor:pointer;font:inherit;color:var(--ink);transition:box-shadow .4s var(--ease),background .4s var(--ease),transform .4s var(--ease)}
.lp-tile:hover{background:#fff;transform:translateY(-1px)}.lp-tile.active{background:#fff;box-shadow:0 0 0 2px var(--blue-ring)}
.lp-tile img,.lp-frame{width:72px;height:72px;border-radius:18px;object-fit:cover;background:var(--wash);display:grid;place-items:center;overflow:hidden}
.lp-frame img{width:100%;height:100%;border-radius:0}.lp-plus{font-family:var(--head);font-size:30px;font-weight:300;color:var(--muted);line-height:1}
.lp-name{font-family:var(--head);font-size:16px;font-weight:500}.lp-sub{font-size:12px;color:var(--muted)}
.lp-actions{display:flex;gap:8px;margin-top:8px}
.cropper{width:min(420px,100%)}.crop-stage{position:relative;width:320px;height:320px;margin:0 auto;border-radius:16px;overflow:hidden;background:var(--wash);cursor:grab;touch-action:none;user-select:none}
.crop-stage:active{cursor:grabbing}.crop-stage canvas{display:block}
.crop-mask{position:absolute;inset:0;pointer-events:none;border-radius:16px;box-shadow:inset 0 0 0 1px var(--line);background:transparent}
.crop-mask::after{content:'';position:absolute;inset:0;border-radius:16px;box-shadow:inset 0 0 0 1px rgba(11,26,51,.14)}
.crop-row{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:var(--muted)}.crop-row .lbl{width:48px}.crop-row .mono{width:44px;text-align:right}
.crop-row input[type=range]{flex:1;accent-color:var(--blue);height:24px}
.crop-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.crop-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
@media(max-width:400px){.crop-stage{width:100%;height:auto;aspect-ratio:1}.crop-stage canvas{width:100%;height:100%}}
/* page transitions: cross document view transition where supported, class based fade otherwise */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out .22s var(--ease) both}::view-transition-new(root){animation:vt-in .34s var(--ease) both}
::view-transition-old(nav),::view-transition-new(nav){animation:none}
.nav{view-transition-name:nav}
@keyframes vt-out{to{opacity:0;transform:translateY(-6px)}}@keyframes vt-in{from{opacity:0;transform:translateY(8px)}}
.page{animation:page-in .42s var(--ease) both}.page.leaving{opacity:0;transform:translateY(-6px);transition:opacity .2s var(--ease),transform .2s var(--ease)}
@keyframes page-in{from{opacity:0;transform:translateY(8px)}}
@media(prefers-reduced-motion:reduce){.page,.page.leaving,::view-transition-old(root),::view-transition-new(root){animation:none;transition:none}}
/* sliding nav indicator */
.nav-links{position:relative}.nav-links a:after{display:none}
.nav-ind{position:absolute;bottom:2px;height:2px;border-radius:2px;background:var(--blue);left:0;width:0;opacity:0;transition:left .45s var(--ease),width .45s var(--ease),opacity .3s var(--ease);pointer-events:none}
.nav-ind.on{opacity:1}
/* themed select: native popup replaced by an in page listbox with a clean scrollbar */
.xsel{position:relative;display:block}
.xsel.inline{display:inline-block}
.xsel>select{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;appearance:none;-webkit-appearance:none}
.xsel-btn{display:flex;align-items:center;gap:10px;width:100%;height:48px;padding:0 40px 0 16px;border:0;border-radius:16px;background:var(--wash-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230b1a33' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 16px center;box-shadow:0 0 0 1px var(--line);color:var(--ink);font:inherit;text-align:left;cursor:pointer;outline:0;transition:box-shadow .3s var(--ease),background .3s var(--ease)}
.xsel-btn:hover{background-color:var(--wash)}
.xsel.open>.xsel-btn,.xsel-btn:focus-visible{background-color:#fff;box-shadow:0 0 0 2px var(--blue-ring)}
.xsel-btn .xsel-val{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xsel.sm .xsel-btn{height:40px;padding:0 36px 0 14px;border-radius:14px;background-position:right 14px center;font-family:var(--head);font-weight:500;font-size:15px}
.xsel-menu{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 8px);max-height:296px;overflow:auto;overscroll-behavior:contain;padding:6px;border-radius:18px;background:var(--panel-a);box-shadow:var(--shadow),0 24px 48px -28px rgba(11,26,51,.35);opacity:0;transform:translateY(-6px) scale(.985);transform-origin:top center;pointer-events:none;transition:opacity .18s var(--ease),transform .22s var(--ease);mask-image:linear-gradient(#000,#000 calc(100% - 22px),transparent);-webkit-mask-image:linear-gradient(#000,#000 calc(100% - 22px),transparent)}
.xsel.up .xsel-menu{mask-image:linear-gradient(transparent,#000 22px,#000);-webkit-mask-image:linear-gradient(transparent,#000 22px,#000)}
.xsel.up .xsel-menu{top:auto;bottom:calc(100% + 8px);transform-origin:bottom center}
.xsel.open .xsel-menu{opacity:1;transform:none;pointer-events:auto}
.xsel-opt{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;font-size:15px;color:var(--ink-80);cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease)}
.xsel-opt small{margin-left:auto;color:var(--faint);font-size:12px}
.xsel-opt:hover,.xsel-opt.cursor{background:var(--wash-1);color:var(--ink)}
.xsel-opt[aria-selected="true"]{background:var(--blue-soft);color:var(--blue-deep);font-weight:600}
.xsel-opt[aria-selected="true"] small{color:var(--blue-deep);opacity:.7}
.xsel-group{padding:12px 12px 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.xsel-menu{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}
.xsel-menu::-webkit-scrollbar{width:10px}
.xsel-menu::-webkit-scrollbar-track{background:transparent;margin:8px 0}
.xsel-menu::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px;border:3px solid transparent;background-clip:content-box}
.xsel-menu::-webkit-scrollbar-thumb:hover{background:var(--muted-2);background-clip:content-box;border:3px solid transparent}

@supports not ((backdrop-filter:blur(4px)) or (-webkit-backdrop-filter:blur(4px))){.nav[data-stuck] .pill,.nav-mobile{background:rgba(255,255,255,.95)}}

.modal-card{padding:26px 24px 24px}
.modal-title{margin:0 44px 16px 0;font-family:var(--head);font-weight:600;font-size:26px;letter-spacing:-.015em;line-height:1.15;color:var(--ink)}
.modal-x{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:999px;background:var(--wash-1);color:var(--muted);cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),transform .3s var(--ease)}
.modal-x:hover{background:var(--blue-soft);color:var(--blue-deep)}
.modal-x:active{transform:scale(.92)}
.modal-x:focus-visible{outline:0;box-shadow:0 0 0 2px var(--blue-ring)}
.modal-x svg{pointer-events:none}
/* clean scrollbars site wide: no arrow buttons, no track chrome */
*{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-button{display:none;width:0;height:0}
::-webkit-scrollbar-corner{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px;border:3px solid transparent;background-clip:content-box}
::-webkit-scrollbar-thumb:hover{background:var(--muted-2);background-clip:content-box}

/* background capsules: blur wanders between them, hover clears it */
.cap{transition:filter 1.1s var(--ease),opacity 1.1s var(--ease),box-shadow .3s var(--ease),color .3s var(--ease)}
.cap.is-blur{filter:blur(1.6px);opacity:.78;z-index:0}
.cap.is-blur:hover{filter:blur(0);opacity:1;z-index:2}
@media(prefers-reduced-motion:reduce){.cap{transition:none}}

.devbuy{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.devbuy .chip{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--wash);color:var(--ink);font:500 .85rem var(--font-head);cursor:pointer;transition:background .25s var(--ease),color .25s var(--ease)}.devbuy .chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}.devbuy input{width:140px;padding:8px 12px;border-radius:999px;border:1px solid var(--line);font-size:.85rem}
