:root { color-scheme:dark; --bg:#05070b; --panel:#0d1018; --panel-2:#121621; --ink:#f4f1ed; --muted:#a7a8b2; --line:rgba(255,255,255,.11); --pink:#ff246f; --violet:#9a30ff; --blue:#4972ff; --green:#69dc92; --amber:#ffca68; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--bg); scroll-padding-top:110px; }
body { margin:0; overflow-x:hidden; color:var(--ink); background:radial-gradient(circle at 72% 0,rgba(113,40,214,.13),transparent 30%),var(--bg); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button { color:inherit; font:inherit; }
img { display:block; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; z-index:100; top:10px; left:10px; padding:10px 14px; color:#05070b; background:white; border-radius:8px; transform:translateY(-150%); }
.skip-link:focus { transform:translateY(0); }
:focus-visible { outline:3px solid #9a7bff; outline-offset:4px; }

.docs-header { position:sticky; z-index:30; top:0; height:76px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 clamp(22px,4vw,64px); border-bottom:1px solid var(--line); background:rgba(5,7,11,.9); backdrop-filter:blur(18px); }
.brand { display:inline-flex; align-items:center; justify-self:start; gap:13px; font-weight:700; letter-spacing:.22em; }
.brand img { width:38px; height:38px; object-fit:contain; }
.docs-header nav { display:flex; gap:32px; color:#c5c4ca; font-size:14px; }
.docs-header nav a:hover { color:white; }
.header-actions { justify-self:end; display:flex; align-items:center; gap:20px; }
.download { padding:11px 20px; border-radius:999px; font-weight:700; background:linear-gradient(110deg,#ad092f,#d4114e); }
.docs-menu { display:none; width:42px; height:42px; padding:0; border:1px solid var(--line); border-radius:10px; background:var(--panel); }

.docs-hero { position:relative; overflow:hidden; padding:94px clamp(24px,7vw,110px) 80px; border-bottom:1px solid var(--line); }
.docs-hero::after { position:absolute; z-index:-1; top:-220px; right:5%; width:600px; height:600px; content:""; border-radius:50%; background:radial-gradient(circle,rgba(49,84,255,.2),rgba(218,38,157,.08) 42%,transparent 68%); }
.crumbs { margin:0 0 25px; color:#8d90a0; font-size:13px; }
.crumbs a { color:#d1d2d9; }
.docs-hero .eyebrow { margin:0 0 16px; color:#ee4b8b; font-size:12px; font-weight:800; letter-spacing:.22em; text-transform:uppercase; }
.docs-hero h1 { max-width:900px; margin:0; font-size:clamp(48px,6vw,88px); line-height:.98; letter-spacing:-.055em; }
.docs-hero h1 span { display:block; color:transparent; background:linear-gradient(90deg,#ff397c,#b747ff,#4c72ff); background-clip:text; -webkit-background-clip:text; }
.docs-hero .lead { max-width:760px; margin:26px 0 0; color:#c1c1ca; font-size:clamp(18px,2vw,22px); line-height:1.65; }
.hero-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.hero-links a { padding:12px 18px; border:1px solid var(--line); border-radius:999px; background:rgba(13,16,24,.72); font-size:14px; }
.hero-links a:first-child { border-color:transparent; background:linear-gradient(110deg,#ad092f,#d4114e); font-weight:700; }

.docs-shell { max-width:1480px; margin:0 auto; display:grid; grid-template-columns:260px minmax(0,820px) 210px; gap:clamp(34px,5vw,78px); padding:68px clamp(24px,5vw,76px) 120px; }
.sidebar { position:sticky; top:108px; align-self:start; max-height:calc(100vh - 130px); overflow:auto; padding-right:18px; }
.sidebar-label { margin:0 0 14px; color:#767988; font-size:11px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.sidebar nav { display:grid; gap:3px; }
.sidebar nav a { padding:9px 12px; border-left:2px solid transparent; color:#9fa1ad; font-size:14px; line-height:1.3; }
.sidebar nav a:hover,.sidebar nav a[aria-current] { border-color:var(--pink); color:white; background:linear-gradient(90deg,rgba(255,36,111,.1),transparent); }
.sidebar .nav-group { margin-top:22px; }
.toc { position:sticky; top:108px; align-self:start; padding-left:20px; border-left:1px solid var(--line); }
.toc p { margin:0 0 14px; color:#777a89; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.toc a { display:block; margin:10px 0; color:#9496a2; font-size:13px; line-height:1.4; }
.toc a:hover { color:white; }

.docs-content { min-width:0; }
.docs-content section { padding:0 0 74px; margin:0 0 74px; border-bottom:1px solid var(--line); }
.docs-content section:last-child { border:0; margin:0; }
.section-kicker { margin:0 0 12px; color:#e83d7e; font-size:11px; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
.docs-content h2 { margin:0 0 24px; font-size:clamp(34px,4vw,52px); line-height:1.05; letter-spacing:-.04em; }
.docs-content h3 { margin:42px 0 14px; font-size:24px; letter-spacing:-.02em; }
.docs-content h4 { margin:28px 0 10px; font-size:17px; }
.docs-content p,.docs-content li { color:#b5b6bf; font-size:16px; line-height:1.75; }
.docs-content p { margin:13px 0; }
.docs-content strong { color:#f1eff0; }
.docs-content a:not(.card-link) { color:#b79aff; text-decoration:underline; text-decoration-color:rgba(183,154,255,.4); text-underline-offset:3px; }
.docs-content ul,.docs-content ol { padding-left:24px; }
.docs-content li+li { margin-top:8px; }
.docs-content code { color:#f4d5e6; font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace; font-size:.9em; }
pre { position:relative; overflow:auto; margin:20px 0; padding:22px 74px 22px 22px; border:1px solid rgba(123,108,184,.25); border-radius:14px; background:#090b11; box-shadow:inset 0 1px rgba(255,255,255,.03); }
pre code { color:#d8d3df!important; font-size:13px!important; line-height:1.7; }
.copy-button { position:absolute; top:10px; right:10px; padding:6px 9px; border:1px solid var(--line); border-radius:7px; color:#aaaab4; background:#151822; font-size:11px; cursor:pointer; }
.copy-button:hover { color:white; }
.callout { margin:24px 0; padding:19px 22px; border:1px solid rgba(91,117,255,.3); border-left:3px solid var(--blue); border-radius:12px; background:rgba(64,79,156,.08); }
.callout p { margin:0; }
.callout.warning { border-color:rgba(255,190,76,.26); border-left-color:var(--amber); background:rgba(174,115,19,.07); }
.callout.success { border-color:rgba(89,219,136,.25); border-left-color:var(--green); background:rgba(43,139,79,.07); }
.callout-title { display:block; margin-bottom:6px; color:white; font-size:13px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.architecture { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:stretch; gap:10px; margin:30px 0; }
.architecture article { padding:20px 16px; border:1px solid var(--line); border-radius:14px; background:linear-gradient(145deg,var(--panel-2),var(--panel)); }
.architecture span { align-self:center; color:#ab63ff; font-size:22px; }
.architecture h3 { margin:0 0 8px; font-size:16px; }
.architecture p { margin:0; font-size:13px; line-height:1.55; }
.step-list { padding:0!important; counter-reset:steps; list-style:none; }
.step-list>li { position:relative; min-height:64px; padding:0 0 28px 62px; counter-increment:steps; }
.step-list>li::before { position:absolute; top:0; left:0; width:38px; height:38px; display:grid; place-items:center; content:counter(steps); border:1px solid rgba(164,75,255,.4); border-radius:50%; color:#f3d9ff; background:rgba(123,42,200,.15); font-size:13px; font-weight:800; }
.step-list>li::after { position:absolute; top:42px; bottom:4px; left:18px; width:1px; content:""; background:var(--line); }
.step-list>li:last-child::after { display:none; }
.step-list h3 { margin:2px 0 5px; font-size:19px; }
.step-list p { margin:0; }
.cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:24px; }
.card { padding:22px; border:1px solid var(--line); border-radius:16px; background:linear-gradient(145deg,rgba(19,22,33,.9),rgba(10,12,19,.78)); }
.card h3 { margin:0 0 8px; font-size:18px; }
.card p { margin:0; font-size:14px; }
.support-band { padding:28px; border:1px solid rgba(201,60,141,.28); border-radius:18px; background:radial-gradient(circle at 100% 0,rgba(124,49,231,.18),transparent 45%),var(--panel); }
.support-band h3 { margin:0 0 10px; }
.status-table { width:100%; margin:22px 0; border-collapse:collapse; font-size:14px; }
.status-table th,.status-table td { padding:14px 12px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.status-table th { color:#e6e3e7; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.status-table td { color:#aaabb5; line-height:1.55; }
.checklist { padding:0!important; list-style:none; }
.checklist li { position:relative; padding-left:30px; }
.checklist li::before { position:absolute; left:0; color:var(--green); content:"✓"; font-weight:800; }
.docs-footer { display:flex; justify-content:space-between; gap:30px; padding:42px clamp(24px,5vw,76px); border-top:1px solid var(--line); color:#777984; font-size:13px; }
.docs-footer a:hover { color:white; }

@media(max-width:1180px) { .docs-shell { grid-template-columns:230px minmax(0,1fr); }.toc { display:none; }.docs-header nav { display:none; } }
@media(max-width:920px) {
  .docs-header { grid-template-columns:1fr auto; padding-inline:20px; }.download { display:none; }.docs-menu { display:grid; place-items:center; }
  .docs-shell { display:block; padding-top:48px; }.sidebar { position:fixed; z-index:25; inset:76px 0 0; max-height:none; padding:35px 28px 70px; visibility:hidden; opacity:0; background:rgba(5,7,11,.98); transition:opacity .2s,visibility .2s; }.docs-menu-open { overflow:hidden; }.docs-menu-open .sidebar { visibility:visible; opacity:1; }
  .architecture { grid-template-columns:1fr; }.architecture>span { transform:rotate(90deg); justify-self:center; }.docs-hero { padding-top:70px; }
}
@media(max-width:600px) { .brand { font-size:13px; }.docs-hero { padding-inline:20px; }.docs-hero h1 { font-size:clamp(43px,13vw,52px); }.docs-shell { padding-inline:20px; }.cards { grid-template-columns:1fr; }.docs-content section { padding-bottom:56px; margin-bottom:56px; } pre { margin-inline:-6px; padding:18px 58px 18px 16px; }.status-table { display:block; overflow-x:auto; }.docs-footer { flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition-duration:.01ms!important; } }
