:root{--bg-0:#f1f2f3;--bg-1:#ebeced;--bg-2:#e4e5e7;--ink-0:#0b1220;--ink-1:#1e293b;--ink-2:#475569;--ink-3:#94a3b8;--line-0:rgba(15,23,42,0.05);--line-1:rgba(15,23,42,0.09);--line-2:rgba(15,23,42,0.14);--accent:#2d5e8e;--accent-2:#3c6fa0;--accent-3:#244c74;--card:#ffffff;--card-2:#fbfcfd;--tile:#f4f7fb;color-scheme:light;}[data-theme="dark"]{--bg-0:#0b1220;--bg-1:#111a2c;--bg-2:#152238;--ink-0:#eff6ff;--ink-1:#cfe0f5;--ink-2:#94a3b8;--ink-3:#64748b;--line-0:rgba(255,255,255,0.06);--line-1:rgba(255,255,255,0.10);--line-2:rgba(255,255,255,0.18);--accent:#6ba2d8;--accent-2:#84b3e2;--accent-3:#5a90c8;--card:#0f1a2e;--card-2:#0d1728;--tile:#0c1626;color-scheme:dark;}*,*::before,*::after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg-0);color:var(--ink-0);font-family:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;min-height:100vh;overflow-x:hidden;line-height:1.55;}a{color:inherit;text-decoration:none}.wrap{max-width:1320px;margin:0 auto;padding:0 24px}.mono{font-family:'JetBrains Mono',ui-monospace,monospace}.hd{position:sticky;top:0;z-index:50;backdrop-filter:saturate(1.4) blur(12px);background:color-mix(in oklab,var(--bg-0) 82%,transparent);border-bottom:1px solid var(--line-1)}.hd-in{display:flex;align-items:center;gap:18px;height:60px}.logo{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:1.06rem;letter-spacing:-.01em;white-space:nowrap}.logo span{color:var(--accent)}.hd-sp{flex:1}.hd a.back{font-size:.9rem;color:var(--ink-2);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.hd a.back:hover{color:var(--ink-0)}.hd-nav{display:flex;align-items:center;gap:19px}.hd-nav a{font-size:.88rem;color:var(--ink-2);white-space:nowrap;transition:.14s}.hd-nav a:hover{color:var(--ink-0)}.hd-nav a.on{color:var(--ink-0);font-weight:600}@media(max-width:960px){.hd-nav{display:none}}.tgl{width:34px;height:34px;border-radius:9px;border:1px solid var(--line-2);background:var(--card);color:var(--ink-1);display:inline-grid;place-items:center;cursor:pointer}.tgl:hover{border-color:var(--accent)}.tgl svg{width:16px;height:16px}.btn{display:inline-flex;align-items:center;gap:7px;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:.9rem;padding:9px 16px;border-radius:10px;border:1px solid transparent;cursor:pointer;white-space:nowrap}.btn svg{width:16px;height:16px;flex:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-3)}.btn-ghost{border-color:var(--line-2);color:var(--ink-1);background:var(--card)}.btn-ghost:hover{border-color:var(--accent);color:var(--ink-0)}.ic{width:1em;height:1em;flex:none}.hero{padding:56px 0 26px}.eyebrow{font-family:'JetBrains Mono',monospace;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:9px;margin-bottom:18px}.eyebrow::before{content:"";width:26px;height:2px;background:var(--accent);display:inline-block}h1.title{font-family:'Inter Tight',sans-serif;font-weight:700;letter-spacing:-.025em;line-height:1.04;font-size:clamp(2.1rem,4.6vw,3.5rem);margin:0 0 18px;max-width:16ch;text-wrap:balance}h1.title .it{font-family:'Fraunces',serif;font-weight:400;font-style:italic;color:var(--accent)}.lede{font-size:clamp(1.02rem,1.5vw,1.18rem);color:var(--ink-2);max-width:62ch;margin:0}.hero-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:22px;font-family:'JetBrains Mono',monospace;font-size:.8rem;color:var(--ink-2)}.hero-meta b{color:var(--ink-0);font-weight:600}.toolbar{position:sticky;top:60px;z-index:40;padding:14px 0 12px;background:color-mix(in oklab,var(--bg-0) 90%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-1)}.search{position:relative;margin-bottom:12px;max-width:520px}.search input{width:100%;font:inherit;font-size:.95rem;padding:11px 14px 11px 40px;border-radius:11px;border:1px solid var(--line-2);background:var(--card);color:var(--ink-0)}.search input::placeholder{color:var(--ink-3)}.search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 20%,transparent)}.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--ink-3)}.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chip{display:inline-flex;align-items:center;gap:7px;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:.83rem;padding:7px 13px;border-radius:999px;border:1px solid var(--line-2);background:var(--card);color:var(--ink-2);cursor:pointer;transition:.14s;white-space:nowrap}.chip .ic{width:15px;height:15px}.chip .ct{font-family:'JetBrains Mono',monospace;font-size:.72rem;opacity:.7}.chip:hover{color:var(--ink-0);border-color:var(--ink-3)}.chip[aria-pressed="true"]{color:#fff;border-color:transparent}.chip.all[aria-pressed="true"]{background:var(--accent)}.rolebar{margin-left:auto;display:flex;align-items:center;gap:8px}.rolebar select{font:inherit;font-size:.85rem;padding:7px 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--card);color:var(--ink-1);cursor:pointer}.count{font-family:'JetBrains Mono',monospace;font-size:.78rem;color:var(--ink-2);padding:20px 0 4px}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;padding:12px 0 60px}.grid.grid-3{grid-template-columns:repeat(3,1fr)}@media(max-width:1180px){.grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:940px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.grid{grid-template-columns:repeat(2,1fr)}.grid.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:460px){.grid{grid-template-columns:1fr}.grid.grid-3{grid-template-columns:1fr}}.card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line-1);border-radius:14px;overflow:hidden;transition:.18s;cursor:pointer}.card:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 18px 40px -22px rgba(15,23,42,.4)}[data-theme="dark"] .card:hover{box-shadow:0 18px 40px -18px rgba(0,0,0,.6)}.card .thumb{aspect-ratio:120/74;background: linear-gradient(160deg,#fbfdff,#eef3f9);position:relative;border-bottom:1px solid var(--line-1)}.card .thumb svg{position:absolute;inset:0}.card .cbar{position:absolute;top:0;left:0;right:0;height:3px}.card .body{padding:13px 14px 14px;display:flex;flex-direction:column;gap:7px;flex:1}.card .ceyebrow{font-family:'JetBrains Mono',monospace;font-size:.63rem;letter-spacing:.09em;text-transform:uppercase;display:inline-flex;align-items:center;gap:5px;font-weight:500}.card .ceyebrow .ic{width:12px;height:12px;flex:none}.card .ceyebrow span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card h3{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:.98rem;letter-spacing:-.01em;margin:0;line-height:1.22;color:var(--ink-0)}.card p{margin:0;font-size:.82rem;color:var(--ink-2);line-height:1.45;flex:1}.card .foot{display:flex;align-items:center;gap:10px;margin-top:3px;padding-top:10px;border-top:1px solid var(--line-0);font-family:'JetBrains Mono',monospace;font-size:.68rem;color:var(--ink-3)}.card .foot .m{display:inline-flex;align-items:center;gap:5px}.card .foot .m svg{width:13px;height:13px}.card .go{margin-left:auto;color:var(--accent);display:inline-flex;align-items:center;gap:4px;font-weight:600}.empty{display:none;padding:60px 0;text-align:center;color:var(--ink-2)}.empty.on{display:block}.ft{border-top:1px solid var(--line-1);padding:34px 0;margin-top:20px;color:var(--ink-2);font-size:.86rem}.ft-in{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between}.ft a:hover{color:var(--ink-0)}.crumb{font-family:'JetBrains Mono',monospace;font-size:.76rem;color:var(--ink-2);padding:26px 0 0}.crumb a{color:var(--accent)}.dhero{display:grid;grid-template-columns:1.15fr .85fr;gap:38px;align-items:center;padding:22px 0 34px}.dhero .scene{aspect-ratio:120/84;background:linear-gradient(160deg,#fbfdff,#eef3f9);border:1px solid var(--line-1);border-radius:18px;position:relative;overflow:hidden}.dhero .scene svg{position:absolute;inset:0;padding:8px}.dhero h1{font-family:'Inter Tight',sans-serif;font-weight:700;letter-spacing:-.025em;line-height:1.06;font-size:clamp(1.9rem,3.6vw,2.9rem);margin:14px 0 16px;text-wrap:balance}.dhero .dlede{font-size:1.06rem;color:var(--ink-2);max-width:52ch;margin:0 0 22px}.dmeta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:22px}.pill{font-family:'JetBrains Mono',monospace;font-size:.74rem;padding:6px 11px;border-radius:999px;border:1px solid var(--line-2);color:var(--ink-2);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.pill svg{width:13px;height:13px}.dcta{display:flex;gap:12px;flex-wrap:wrap}.steps{padding:14px 0 30px;max-width:900px}.steps-h{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:1.5rem;letter-spacing:-.02em;margin:0 0 6px}.steps-sub{color:var(--ink-2);margin:0 0 26px}.step{position:relative;padding:0 0 26px 62px}.step::before{content:"";position:absolute;left:22px;top:44px;bottom:-4px;width:2px;background:var(--line-1)}.step:last-child::before{display:none}.step .num{position:absolute;left:0;top:0;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-family:'Inter Tight',sans-serif;font-weight:700;color:#fff;font-size:1.05rem}.step .shead{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:9px}.step h3{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:1.16rem;letter-spacing:-.01em;margin:0;color:var(--ink-0)}.modchip{font-family:'JetBrains Mono',monospace;font-size:.7rem;letter-spacing:.04em;padding:4px 9px;border-radius:7px;background:var(--tile);border:1px solid var(--line-1);color:var(--ink-2);display:inline-flex;align-items:center;gap:5px}.modchip svg{width:12px;height:12px}.step .what{color:var(--ink-1);margin:0 0 10px}.step .why{color:var(--ink-2);font-size:.93rem;margin:0 0 12px;padding-left:13px;border-left:2px solid var(--line-2)}.step .why b{color:var(--ink-1);font-weight:600;font-family:'Inter Tight',sans-serif}.flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.8rem}.flow .lab{font-family:'JetBrains Mono',monospace;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.flow .fchip{font-size:.78rem;padding:4px 9px;border-radius:7px;background:var(--card-2);border:1px solid var(--line-1);color:var(--ink-2)}.flow .arrow{color:var(--ink-3)}.flow .arrow svg{width:15px;height:15px}.rel{border-top:1px solid var(--line-1);padding:34px 0 20px}.rel-h{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:1.25rem;margin:0 0 18px}@media(max-width:820px){.dhero{grid-template-columns:1fr;gap:22px}.dhero .scene{order:-1}.rolebar{margin-left:0;width:100%}}@media(max-width:520px){.step{padding-left:54px}}.nav{position: fixed;top: 0;left: 0;right: 0;height: 64px;z-index: 60;display: flex;align-items: center;padding: 0 clamp(16px,3vw,32px);background: color-mix(in oklab,var(--bg-0) 74%,transparent);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);border-bottom: 1px solid var(--line-0);transition: background 0.4s ease,border-color 0.4s ease;}.nav.is-scrolled{background: color-mix(in oklab,var(--bg-0) 92%,transparent);border-bottom-color: var(--line-1);}.nav-links a.is-active{color: var(--accent);position: relative;}.nav-links a.is-active::after{content: '';position: absolute;left: 50%;bottom: -4px;width: 4px;height: 4px;border-radius: 999px;background: var(--accent);transform: translateX(-50%);}.nav-inner{width: 100%;max-width: 1440px;margin: 0 auto;padding: 0 clamp(20px,2.4vw,36px);display: grid;grid-template-columns: 1fr auto 1fr;align-items: center;gap: 18px;}.nav-left{display: inline-flex;align-items: center;gap: 10px;}.github-pill{height: 36px;display: inline-flex;align-items: center;gap: 7px;padding: 0 14px;border-radius: 999px;border: 1px solid color-mix(in oklab,var(--ink-0) 18%,var(--line-1));background: color-mix(in oklab,var(--ink-0) 4%,transparent);color: var(--ink-0);font-size: 12.5px;font-weight: 600;letter-spacing: 0.01em;text-decoration: none;transition: transform 0.2s ease,background 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease;}.github-pill:hover{transform: translateY(-1px);background: color-mix(in oklab,var(--ink-0) 8%,transparent);border-color: color-mix(in oklab,var(--ink-0) 30%,var(--line-1));box-shadow: 0 6px 16px -8px rgba(15,23,42,0.25);}[data-theme="dark"] .github-pill{background: color-mix(in oklab,#ffffff 6%,transparent);border-color: color-mix(in oklab,#ffffff 12%,var(--line-1));color: var(--ink-0);}[data-theme="dark"] .github-pill:hover{background: color-mix(in oklab,#ffffff 12%,transparent);}.github-pill .gh-star-sep{width: 1px;height: 14px;margin: 0 2px 0 4px;background: color-mix(in oklab,var(--ink-0) 22%,transparent);display: inline-block;}.github-pill .gh-star-icon{color: #f5b400;filter: drop-shadow(0 1px 1px rgba(180,130,0,0.25));flex-shrink: 0;}.github-pill .gh-star-count{font-variant-numeric: tabular-nums;font-weight: 700;font-size: 12.5px;letter-spacing: 0.01em;color: var(--ink-0);}[data-theme="dark"] .github-pill .gh-star-sep{background: color-mix(in oklab,#ffffff 22%,transparent);}.brand{display: inline-flex;align-items: center;gap: 10px;font-family: 'Inter Tight','Inter',sans-serif;font-weight: 600;font-size: 15px;letter-spacing: -0.01em;color: var(--ink-0);}.brand-name{display: inline-flex;}.brand-seg-1{color: var(--ink-0);}.brand-seg-2{color: var(--accent);}.brand-seg-3{color: var(--ink-0);}[data-theme="dark"] .brand-seg-3{color: var(--ink-0);}.brand-count{display: inline-flex;align-items: center;margin-left: 7px;padding: 1px 6px;font-size: 11px;font-weight: 700;line-height: 1.5;letter-spacing: 0;color: var(--accent);background: color-mix(in srgb,var(--accent) 12%,transparent);border: 1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius: 6px;}.lang-toggle{height: 36px;padding: 0 11px;border-radius: 999px;border: 1px solid var(--line-1);color: var(--ink-1);display: inline-flex;align-items: center;gap: 6px;font-family: 'JetBrains Mono',ui-monospace,monospace;font-size: 11px;letter-spacing: 0.08em;cursor: pointer;background: transparent;transition: border-color 0.2s ease,color 0.2s ease,background 0.2s ease;}.lang-toggle:hover{border-color: var(--accent);color: var(--accent);background: color-mix(in oklab,var(--accent) 6%,transparent);}.lang-toggle .lang-code{font-weight: 500;}.lang-flag{width: 20px;height: 15px;border-radius: 2px;object-fit: cover;box-shadow: 0 0 0 1px rgba(15,23,42,0.08);display: block;}[data-theme="dark"] .lang-flag{box-shadow: 0 0 0 1px rgba(255,255,255,0.15);}.nav-links{display: inline-flex;align-items: center;gap: clamp(9px,1.1vw,14px);font-size: 13.5px;color: var(--ink-1);font-weight: 500;}.nav-links a{transition: color 0.2s ease;}.nav-links a:hover{color: var(--accent);}.nav-right{justify-self: end;display: inline-flex;align-items: center;gap: 7px;}.theme-toggle{width: 36px;height: 36px;border-radius: 999px;border: 1px solid var(--line-1);color: var(--ink-0);display: inline-flex;align-items: center;justify-content: center;transition: border-color 0.2s ease,background 0.2s ease,transform 0.2s ease;}.theme-toggle:hover{border-color: var(--line-2);background: color-mix(in oklab,var(--ink-0) 5%,transparent);}.theme-toggle svg{width: 16px;height: 16px;display: block;}.theme-toggle .icon-sun{display: inline-block;}.theme-toggle .icon-moon{display: none;}[data-theme="dark"] .theme-toggle .icon-sun{display: none;}[data-theme="dark"] .theme-toggle .icon-moon{display: inline-block;}.nav-kbd-hint{display: inline-flex;align-items: center;gap: 8px;height: 34px;padding: 0 12px;border-radius: 10px;border: 1px solid var(--line-1);background: color-mix(in oklab,var(--bg-1) 50%,transparent);color: var(--ink-2);font-size: 12px;cursor: pointer;transition: border-color 0.2s ease,color 0.2s ease,background 0.2s ease;}.nav-kbd-hint:hover{border-color: color-mix(in oklab,var(--accent) 45%,var(--line-1));color: var(--ink-0);background: color-mix(in oklab,var(--accent) 7%,transparent);}.nav-kbd-hint svg{color: var(--ink-3);transition: color 0.2s ease;}.nav-kbd-hint:hover svg{color: var(--accent);}.nav-kbd-hint .kbd-combo{display: inline-flex;gap: 3px;}.nav-kbd-hint kbd{font-family: 'JetBrains Mono',ui-monospace,monospace;font-size: 10.5px;padding: 1px 5px;border-radius: 4px;border: 1px solid var(--line-1);background: color-mix(in oklab,#ffffff 60%,transparent);color: var(--ink-2);min-width: 16px;text-align: center;}[data-theme="dark"] .nav-kbd-hint kbd{background: rgba(15,23,42,0.5);border-color: rgba(148,163,184,0.14);color: #cbd5e1;}@media (max-width: 900px){.nav-kbd-hint{display: none;}}.install-pill{display: inline-flex;align-items: center;gap: 8px;padding: 9px 16px;border-radius: 999px;background: var(--accent);color: #fff;font-size: 13px;font-weight: 500;letter-spacing: -0.005em;transition: transform 0.2s ease,background 0.25s ease,box-shadow 0.25s ease;box-shadow: 0 6px 18px -6px rgba(45,94,142,0.10);}[data-theme="dark"] .install-pill{color: var(--ink-0);box-shadow: 0 6px 18px -6px rgba(107,162,216,0.09);}.install-pill:hover{transform: translateY(-1px);box-shadow: 0 10px 22px -6px rgba(45,94,142,0.10);}.install-pill .arrow{transition: transform 0.2s ease;}.install-pill:hover .arrow{transform: translateX(2px);}.demo-pill{display: inline-flex;align-items: center;gap: 7px;padding: 8px 14px;margin-right: 8px;border-radius: 999px;background: rgba(45,94,142,0.08);color: var(--accent);border: 1px solid rgba(45,94,142,0.28);font-size: 13px;font-weight: 600;letter-spacing: -0.005em;white-space: nowrap;transition: transform 0.2s ease,background 0.25s ease,border-color 0.25s ease,color 0.25s ease;}.demo-pill:hover{transform: translateY(-1px);background: rgba(45,94,142,0.14);border-color: rgba(45,94,142,0.45);color: var(--accent);}.demo-pill svg{color: var(--accent);flex-shrink: 0;}[data-theme="dark"] .demo-pill{background: rgba(107,162,216,0.09);color: var(--accent);border-color: rgba(107,162,216,0.09);}[data-theme="dark"] .demo-pill:hover{background: rgba(107,162,216,0.09);border-color: rgba(107,162,216,0.09);}@media (max-width: 720px){.demo-pill span{display: none;}.demo-pill{padding: 8px 10px;margin-right: 4px;}}@media (max-width: 1320px){.nav-links-slot{display: none;}}@media (max-width: 820px){.nav-inner{grid-template-columns: auto 1fr auto;gap: 10px;}.nav-right .github-pill,.nav-right .demo-pill,.nav-right .install-pill{display: none;}}.nav-burger{display: none;align-items: center;justify-content: center;width: 36px;height: 36px;border-radius: 10px;border: 1px solid var(--line-1);background: color-mix(in oklab,#ffffff 60%,transparent);cursor: pointer;color: var(--ink-0);transition: background 0.2s ease,border-color 0.2s ease;}.nav-burger:hover{border-color: color-mix(in oklab,var(--accent) 40%,var(--line-1));}.nav-burger svg{width: 18px;height: 18px;}.nav-burger .icon-close{display: none;}body.nav-open .nav-burger .icon-open{display: none;}body.nav-open .nav-burger .icon-close{display: block;}@media (max-width: 1320px){.nav-burger{display: inline-flex;}}.mobile-menu{position: fixed;inset: 0;z-index: 50;background: color-mix(in oklab,var(--bg-0) 90%,transparent);backdrop-filter: blur(24px);-webkit-backdrop-filter: blur(24px);padding: 80px 28px 40px;display: flex;flex-direction: column;gap: 6px;opacity: 0;pointer-events: none;transform: translateY(-8px);transition: opacity 0.3s ease,transform 0.3s ease;}body.nav-open .mobile-menu{opacity: 1;pointer-events: auto;transform: translateY(0);}.mobile-menu a{font-family: 'Inter Tight',sans-serif;font-weight: 500;font-size: 24px;letter-spacing: -0.02em;color: var(--ink-0);text-decoration: none;padding: 16px 4px;border-bottom: 1px solid var(--line-1);display: flex;align-items: center;justify-content: space-between;transition: color 0.2s ease,padding-left 0.2s ease;}.mobile-menu a:hover,.mobile-menu a:focus-visible{color: var(--accent);padding-left: 12px;}.mobile-menu a .arrow{width: 18px;height: 18px;color: var(--ink-3);transition: color 0.2s ease,transform 0.2s ease;}.mobile-menu a:hover .arrow{color: var(--accent);transform: translateX(4px);}.mobile-menu .cta-row{margin-top: 20px;display: flex;gap: 10px;}.mobile-menu .cta-row .btn{flex: 1;justify-content: center;}@media (max-width: 620px){.install-pill span{display: none;}.install-pill{padding: 9px 10px;}}@media (max-width: 520px){.nav-inner{padding: 0 14px;gap: 8px;}.nav-left{gap: 6px;}.brand{font-size: 14px;}.lang-toggle{padding: 0 8px;height: 34px;}.lang-toggle .lang-code{font-size: 11.5px;}.theme-toggle{width: 34px;height: 34px;}.nav-burger{width: 38px;height: 38px;}}@media (max-width: 380px){.brand{font-size: 13px;gap: 6px;}.brand-seg-2{max-width: 0;overflow: hidden;white-space: nowrap;display: inline-block;vertical-align: baseline;}}.nav{position: sticky;}:root[data-theme="dark"]{--bg-0:#0b1220;--bg-1:#111a2c;--bg-2:#152238;--ink-0:#eff6ff;--ink-1:#cfe0f5;--ink-2:#94a3b8;--ink-3:#64748b;--line-0:rgba(255,255,255,0.06);--line-1:rgba(255,255,255,0.10);--line-2:rgba(255,255,255,0.18);--accent:#6ba2d8;--accent-2:#84b3e2;--accent-3:#5a90c8;--card:#111a2c;--card-2:#0f1728;--tile:#152238;color-scheme:dark;}.shot{display: block;width: 100%;height: auto;margin: 18px 0 20px;padding: 6px;background: var(--card-2);border: 1px solid var(--line-1);border-radius: 14px;box-shadow: 0 10px 26px -18px rgba(15,23,42,0.45);transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease;cursor: zoom-in;}.shot:hover{transform: translateY(-4px);border-color: var(--line-2);box-shadow: 0 22px 46px -22px rgba(15,23,42,0.55);}.shot:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;}:root[data-theme="dark"] .shot{box-shadow: 0 10px 26px -18px rgba(0,0,0,0.75);}:root[data-theme="dark"] .shot:hover{box-shadow: 0 22px 46px -20px rgba(0,0,0,0.85);}@media (prefers-reduced-motion: reduce){.shot{transition: none;}.shot:hover{transform: none;}}.shot-zoom{position: fixed;inset: 0;z-index: 200;display: flex;align-items: center;justify-content: center;padding: 28px;background: rgba(8,13,24,0.84);opacity: 0;transition: opacity .16s ease;}.shot-zoom[data-open]{opacity: 1;}.shot-zoom img{max-width: 100%;max-height: 100%;border-radius: 10px;box-shadow: 0 40px 90px -30px rgba(0,0,0,0.85);cursor: zoom-out;}.shot-zoom-close{position: absolute;top: 16px;right: 18px;width: 40px;height: 40px;display: grid;place-items: center;border: 1px solid rgba(255,255,255,0.22);border-radius: 10px;background: rgba(255,255,255,0.08);color: #eff6ff;font-size: 20px;line-height: 1;cursor: pointer;}.shot-zoom-close:hover{background: rgba(255,255,255,0.16);}@media (prefers-reduced-motion: reduce){.shot-zoom{transition: none;}}@media (max-width: 1300px){.nav-right .github-pill{display: none;}}@media (max-width: 1180px){.nav-right .install-pill span{display: none;}.nav-right .install-pill{padding: 9px 10px;}}@media (max-width: 1140px){.nav-inner{gap: 12px;padding: 0 20px;}.nav-links{gap: 9px;font-size: 12.5px;}}@media (max-width: 1100px){.nav-right .demo-pill span{display: none;}.nav-right .demo-pill{padding: 8px 10px;}}@media (max-width: 1000px){.nav-links-slot{display: none;}.nav-burger{display: inline-flex;}}.case-body>.case-rail{align-self: stretch;}.nav{position: fixed;}body{padding-top: 64px;}.toolbar{top: 64px;}.cases-grid-wide{min-width: 0;}.cases-grid-wide .count{padding-top: 14px;}.cases-grid-wide .grid{grid-template-columns: repeat(3,minmax(0,1fr));gap: 14px;padding: 2px 0 60px;}@media (min-width: 1400px){.cases-grid-wide .grid{grid-template-columns: repeat(4,minmax(0,1fr));}}@media (max-width: 900px){.cases-grid-wide .grid{grid-template-columns: repeat(2,minmax(0,1fr));}}@media (max-width: 560px){.cases-grid-wide .grid{grid-template-columns: 1fr;}}.hive-overlay{position: fixed;inset: 0;z-index: 45;pointer-events: none;opacity: 0;transition: opacity .22s ease;}.hive-overlay.is-on{opacity: 1;}.hive-stage{position: absolute;transition: left .28s cubic-bezier(.22,.61,.36,1),top .28s cubic-bezier(.22,.61,.36,1);}.hive-stage.no-anim{transition: none;}.hive-stage::before,.case-hive-stage::before{content: '';position: absolute;left: 50%;top: 50%;width: 116%;height: 116%;transform: translate(-50%,-50%);border-radius: 50%;background: radial-gradient(closest-side,rgba(255,255,255,.94) 0%,rgba(255,255,255,.66) 34%,rgba(255,255,255,.24) 62%,transparent 100%);-webkit-backdrop-filter: blur(2px);backdrop-filter: blur(2px);z-index: -1;pointer-events: none;}[data-theme="dark"] .hive-stage::before,[data-theme="dark"] .case-hive-stage::before{background: radial-gradient(closest-side,rgba(224,234,248,.22) 0%,rgba(224,234,248,.11) 42%,transparent 100%);}.hc-cell{position: absolute;width: var(--hc-w);height: var(--hc-h);opacity: 0;transform: translateY(6px) scale(.86);animation: hc-in .42s cubic-bezier(.18,.72,.26,1) forwards;filter: drop-shadow(0 1px 0 color-mix(in oklab,var(--tint,var(--accent)) 40%,rgba(255,255,255,.3))) drop-shadow(0 10px 18px color-mix(in oklab,var(--tint,var(--accent)) 26%,rgba(15,23,42,.18)));}.hc-cell .hc-face{position: absolute;inset: 0;display: flex;flex-direction: column;align-items: center;justify-content: center;padding: 5% 9%;gap: 1px;text-align: center;clip-path: polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);background: linear-gradient(180deg,color-mix(in oklab,var(--tint,var(--accent)) 18%,rgba(255,255,255,.92)),color-mix(in oklab,var(--tint,var(--accent)) 10%,rgba(255,255,255,.76)));color: var(--ink-0);-webkit-backdrop-filter: blur(12px) saturate(1.4);backdrop-filter: blur(12px) saturate(1.4);}.hc-cell .hc-face::before{content: '';position: absolute;inset: 0;clip-path: polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);background: linear-gradient(155deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,.08) 42%,transparent 60%),linear-gradient(0deg,color-mix(in oklab,var(--tint,var(--accent)) 16%,transparent),transparent 45%);pointer-events: none;mix-blend-mode: screen;}.hc-cell .hc-face>*{position: relative;z-index: 1;}[data-theme="dark"] .hc-cell .hc-face{background: linear-gradient(180deg,color-mix(in oklab,var(--tint,var(--accent)) 22%,#17233b 74%),color-mix(in oklab,var(--tint,var(--accent)) 11%,#17233b 86%));color: var(--ink-0);}.hc-face .hc-ico{width: 26px;height: 26px;display: inline-flex;align-items: center;justify-content: center;border-radius: 8px;background: color-mix(in oklab,var(--tint,var(--accent)) 34%,rgba(255,255,255,.4));color: var(--tint,var(--accent));font-family: 'Inter Tight',sans-serif;font-weight: 700;font-size: 16px;line-height: 1;margin-bottom: 2px;}[data-theme="dark"] .hc-face .hc-ico{background: color-mix(in oklab,var(--tint,var(--accent)) 40%,rgba(255,255,255,.14));color: #ffffff;}.hc-face .hc-title{font-family: 'Inter Tight','Inter',sans-serif;font-weight: 680;font-size: 11.5px;letter-spacing: -0.03em;line-height: 1.0;text-align: center;width: 100%;max-width: 96%;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;white-space: normal;overflow-wrap: break-word;word-break: normal;}.hc-ghost{position: absolute;width: var(--hc-w);height: var(--hc-h);opacity: 0;transform: scale(.9);animation: hc-ghost-in .5s cubic-bezier(.18,.72,.26,1) forwards;}.hc-ghost .hc-gface{position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;clip-path: polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);background: color-mix(in oklab,var(--tint,var(--accent)) 10%,color-mix(in oklab,var(--bg-1) 60%,transparent));border: 0;color: color-mix(in oklab,var(--tint,var(--accent)) 58%,var(--ink-3));}.hc-ghost .hc-gico{font-family: 'Inter Tight',sans-serif;font-weight: 700;font-size: 12px;line-height: 1;opacity: .9;}@keyframes hc-in{to{opacity: 1;transform: translateY(0) scale(1);}}@keyframes hc-ghost-in{to{opacity: .42;transform: scale(1);}}@media (prefers-reduced-motion: reduce){.hc-cell,.hc-ghost,.hero-hive{animation: none !important;opacity: 1 !important;transform: none !important;}.hc-ghost{opacity: .42 !important;}}a.hc-cell{text-decoration: none;color: inherit;cursor: pointer;}a.hc-cell .hc-face{transition: transform .16s cubic-bezier(.18,.72,.26,1),filter .16s ease;transform-origin: center center;}a.hc-cell:hover,a.hc-cell:focus-visible{z-index: 6;}a.hc-cell:hover .hc-face,a.hc-cell:focus-visible .hc-face{transform: scale(1.3);filter: brightness(1.06);}a.hc-cell:hover .hc-title,a.hc-cell:focus-visible .hc-title{-webkit-line-clamp: 3;line-height: 1.08;letter-spacing: -0.01em;max-width: 100%;}a.hc-cell:hover .hc-ico,a.hc-cell:focus-visible .hc-ico{margin-bottom: 3px;}a.hc-cell:focus-visible{outline: none;}a.hc-cell:focus-visible .hc-face{box-shadow: 0 0 0 2px var(--card,#fff),0 0 0 4px var(--tint,var(--accent));}:root:not([data-theme="dark"]) body{background: #ffffff;}.oce-lang{position: relative;display: inline-flex;}.oce-lang-btn{display: inline-flex;align-items: center;gap: 7px;cursor: pointer;border: 1px solid var(--line-2,rgba(15,23,42,.14));background: var(--card,#fff);color: var(--ink-1,#1e293b);border-radius: 9px;padding: 6px 9px;font: inherit;font-size: 13px;line-height: 1;transition: border-color .15s ease,box-shadow .15s ease;}.oce-lang-btn:hover{border-color: var(--accent,#0284c7);}.oce-lang-btn img{display: block;border-radius: 2px;}.oce-lang-code{font-weight: 600;letter-spacing: .02em;}.oce-lang-chev{opacity: .55;}.oce-lang-menu{position: absolute;right: 0;top: calc(100% + 8px);z-index: 70;max-height: 72vh;overflow: auto;background: var(--card,#fff);border: 1px solid var(--line-2,rgba(15,23,42,.14));border-radius: 12px;box-shadow: 0 14px 44px rgba(2,8,23,.24);padding: 6px;min-width: 214px;}.oce-lang-menu[hidden]{display: none;}.oce-lang-item{display: flex;align-items: center;gap: 10px;width: 100%;text-decoration: none;border-radius: 8px;padding: 8px 10px;color: var(--ink-1,#1e293b);font-size: 13.5px;line-height: 1.2;transition: background .12s ease,color .12s ease;}.oce-lang-item:hover{background: var(--accent,#0284c7);color: #fff;}.oce-lang-item.is-current{background: color-mix(in oklab,var(--accent,#0284c7) 12%,transparent);}.oce-lang-item.is-current:hover{color: #fff;}.oce-lang-item img{flex: 0 0 auto;border-radius: 2px;}.oce-lang-mc{font-weight: 600;width: 26px;flex: 0 0 auto;}.oce-lang-mn{color: var(--ink-2,#475569);}.oce-lang-item:hover .oce-lang-mn{color: rgba(255,255,255,.85);}[data-theme="dark"] .oce-lang-btn{background: color-mix(in oklab,#ffffff 6%,transparent);}@media (max-width: 560px){.oce-lang-mn{display: none;}.oce-lang-menu{min-width: 120px;}}@media (max-width: 560px){.hive-overlay{display: none;}}@media (prefers-reduced-motion: reduce){.hive-overlay,.hive-stage{transition: none !important;}}body{background: var(--bg-0);}.hero{display: flex;align-items: stretch;gap: 40px;padding: 32px 0 24px;position: relative;z-index: 0;background: transparent;border: 0;box-shadow: none;}.hero::before{content: "";position: absolute;top: 0;bottom: 0;left: 50%;width: 100vw;transform: translateX(-50%);background: color-mix(in oklab,var(--bg-0) 90%,transparent);z-index: -1;pointer-events: none;}.hero>.hero-lead,.hero>.hero-lede,.hero>.hero-meta{display: flex;flex-direction: column;justify-content: center;min-width: 0;}.hero>.hero-lead{flex: 1.35 1 0;}.hero>.hero-lede{flex: 1.1 1 0;}.hero>.hero-meta{flex: 0.8 1 0;}.hero .title{font-size: clamp(1.55rem,2.6vw,2.35rem);margin: 0;max-width: 14ch;}.hero .eyebrow{margin-bottom: 14px;}.hero .lede{margin: 0;max-width: none;font-size: clamp(0.816rem,1.2vw,0.944rem);line-height: 1.5;}.hero .hero-meta{margin-top: 0;gap: 12px;row-gap: 12px;flex-wrap: nowrap;}.hero-hive{flex: 0 0 auto;position: relative;width: 300px;height: 236px;align-self: center;pointer-events: none;}.hero-hive{animation: hero-float 7s ease-in-out infinite alternate;transform-origin: 50% 50%;}.hero-hive .hc-cell,.hero-hive .hc-ghost{opacity: 1;animation: none;transform: none;}.hero-hive .hc-ghost{opacity: .42;}@keyframes hero-float{from{transform: translateY(2px) scale(.992);}to{transform: translateY(-4px) scale(1.014);}}@media (max-width: 1100px){.hero{gap: 28px;}.hero-hive{width: 220px;height: 180px;}}@media (max-width: 900px){.hero{flex-direction: column;align-items: flex-start;gap: 18px;}.hero>.hero-lead,.hero>.hero-lede,.hero>.hero-meta{justify-content: flex-start;width: 100%;}.hero .title{max-width: 18ch;font-size: clamp(1.9rem,6vw,2.4rem);}.hero .hero-meta{flex-direction: row;flex-wrap: wrap;gap: 22px;}}@media (max-width: 820px){.hero-hive{display: none;}}@media (prefers-reduced-motion: reduce){.hero-hive .hc-cell,.hero-hive .hc-ghost{animation: none;}}.modfilter{display: flex;align-items: center;gap: 14px;flex-wrap: wrap;margin: 16px 0 2px;padding: 10px 14px;border-radius: 12px;background: color-mix(in oklab,var(--accent) 8%,transparent);border: 1px solid color-mix(in oklab,var(--accent) 22%,transparent);font-size: .92rem;color: var(--ink-1);}.modfilter[hidden]{display: none;}.modfilter-label b{color: var(--ink-0);font-weight: 700;}.modfilter-clear{cursor: pointer;border: 1px solid var(--line-2,rgba(15,23,42,.16));background: var(--card,#fff);color: var(--ink-1);border-radius: 8px;padding: 5px 12px;font: inherit;font-size: .86rem;transition: border-color .15s ease,color .15s ease;}.modfilter-clear:hover{border-color: var(--accent);color: var(--accent);}.card .foot{color: var(--ink-2);}.card .foot .m svg{opacity: .85;}.toolbar .wrap{position: relative;}.toolbar .rolebar{position: absolute;top: 0;inset-inline-end: 0;height: 43px;margin: 0;gap: 9px;}.toolbar .rolebar .lab{font-size: .78rem;color: var(--ink-2);white-space: nowrap;}.toolbar .rolebar select{font-size: .9rem;padding: 10px 36px 10px 13px;border-radius: 11px;border: 1px solid var(--line-2);background-color: var(--card);color: var(--ink-0);appearance: none;-webkit-appearance: none;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 12px center;}[data-theme="dark"] .toolbar .rolebar select{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");}[dir="rtl"] .toolbar .rolebar select{padding: 10px 13px 10px 36px;background-position: left 12px center;}.toolbar .rolebar select:hover{border-color: var(--ink-3);}.toolbar .rolebar select:focus{outline: none;border-color: var(--accent);box-shadow: 0 0 0 3px color-mix(in oklab,var(--accent) 20%,transparent);}@media (max-width: 1180px){.toolbar .rolebar{position: static;height: auto;width: 100%;min-width: 0;margin-top: 2px;}.toolbar .rolebar select{flex: 1 1 auto;min-width: 0;}}.thumb img.cface,.dhero .scene img.cface{position:absolute;left:1.5%;top:50%;width:38%;height:auto;aspect-ratio:0.8660254;transform:translateY(-50%);object-fit:cover;object-position:50% 22%;display:block;-webkit-clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);-webkit-mask-image:none;mask-image:none;filter:drop-shadow(0 6px 14px rgba(15,23,42,.18))}img.cface + svg{left:43% !important;right:auto !important;width:57% !important}[dir="rtl"] .thumb img.cface,[dir="rtl"] .dhero .scene img.cface{left:auto;right:1.5%}.card{--cat:#0284c7}.cbar{background:var(--cat)}.thumb::before{content:"";position:absolute;left:0;top:0;bottom:0;width:42%;background:color-mix(in oklab,var(--cat) 9%,transparent);border-right:1px solid color-mix(in oklab,var(--cat) 22%,transparent);z-index:1}.thumb>svg{left:48% !important;right:4% !important;top:15% !important;bottom:13% !important;width:auto !important;height:auto !important;z-index:2}.ccell{position:absolute;z-index:3;display:block;width:24%;aspect-ratio:0.8660254;--s:0.965;-webkit-clip-path:polygon(50% calc(50% - 50% * var(--s)),calc(50% + 50% * var(--s)) calc(50% - 25% * var(--s)),calc(50% + 50% * var(--s)) calc(50% + 25% * var(--s)),50% calc(50% + 50% * var(--s)),calc(50% - 50% * var(--s)) calc(50% + 25% * var(--s)),calc(50% - 50% * var(--s)) calc(50% - 25% * var(--s)));clip-path:polygon(50% calc(50% - 50% * var(--s)),calc(50% + 50% * var(--s)) calc(50% - 25% * var(--s)),calc(50% + 50% * var(--s)) calc(50% + 25% * var(--s)),50% calc(50% + 50% * var(--s)),calc(50% - 50% * var(--s)) calc(50% + 25% * var(--s)),calc(50% - 50% * var(--s)) calc(50% - 25% * var(--s)));transition:transform .2s cubic-bezier(.2,.7,.3,1),filter .2s ease}.ccell img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block}.ccell-co{left:3%;top:8%}.ccell-pf{left:15%;top:41.7%}.ccell:hover,.ccell:focus-visible{transform:translateY(-3px);z-index:6;outline:none;filter:drop-shadow(1.6px 0 0 var(--cat)) drop-shadow(-1.6px 0 0 var(--cat)) drop-shadow(0 1.6px 0 var(--cat)) drop-shadow(0 -1.6px 0 var(--cat))}.ccell{filter: drop-shadow(0 1px 0 color-mix(in oklab,var(--cat,#64748b) 40%,rgba(255,255,255,.3))) drop-shadow(0 6px 12px color-mix(in oklab,var(--cat,#64748b) 26%,rgba(15,23,42,.18)));transition: transform .16s cubic-bezier(.18,.72,.26,1),filter .16s ease;}.ccell::after{content:'';position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;background: linear-gradient(155deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,.08) 42%,transparent 60%),linear-gradient(0deg,color-mix(in oklab,var(--cat,#64748b) 16%,transparent),transparent 45%);}.ccell:hover,.ccell:focus-visible{transform:translateY(-3px) scale(1.02);z-index:6;outline:none;filter: drop-shadow(1.6px 0 0 var(--cat)) drop-shadow(-1.6px 0 0 var(--cat)) drop-shadow(0 1.6px 0 var(--cat)) drop-shadow(0 -1.6px 0 var(--cat)) drop-shadow(0 10px 18px color-mix(in oklab,var(--cat,#64748b) 34%,rgba(15,23,42,.22)));}@media (prefers-reduced-motion: reduce){.ccell{transition:none}}.ctitle{color:inherit;text-decoration:none}.ctitle::after{content:"";position:absolute;inset:0;z-index:2}.card:focus-within{border-color:var(--cat)}.ctitle:focus-visible{outline:2px solid var(--cat);outline-offset:3px;border-radius:3px}[dir="rtl"] .thumb::before{left:auto;right:0;border-right:0;border-left:1px solid color-mix(in oklab,var(--cat) 22%,transparent)}[dir="rtl"] .thumb>svg{left:4% !important;right:48% !important}[dir="rtl"] .ccell-co{left:auto;right:3%}[dir="rtl"] .ccell-pf{left:auto;right:15%}@media (prefers-reduced-motion: reduce){.ccell{transition:none}}[dir="rtl"] img.cface + svg{left:0 !important;right:auto !important;width:57% !important}.hc-face,.hc-gface{filter:drop-shadow(0 1.5px 2.5px rgba(15,23,42,.16))}.cases-grid-wide .grid{grid-auto-flow: dense;}.cases-grid-wide .grid{gap: 18px;}.card[data-star]{order: -1;grid-column: span 2;}@media (max-width: 560px){.card[data-star]{grid-column: auto;}}.card[data-star]{flex-direction: row;align-items: stretch;}.card[data-star] .thumb{flex: none;width: 47%;aspect-ratio: auto;min-height: 208px;border-bottom: 0;border-inline-end: 1px solid var(--line-1);}.card[data-star] .body{justify-content: center;padding: 18px 20px;gap: 9px;}@media (min-width: 901px) and (max-width: 1399px){.card[data-star] .thumb{min-height: 300px;}}@media (max-width: 560px){.card[data-star]{flex-direction: column;}.card[data-star] .thumb{width: auto;aspect-ratio: 120/74;min-height: 0;border-bottom: 1px solid var(--line-1);border-inline-end: 0;}}.card[data-star] h3{font-size: 1.24rem;line-height: 1.18;}.card[data-star] p{font-size: .9rem;}.card[data-star] .ceyebrow{font-size: .68rem;}.card[data-star] .foot{font-size: .72rem;padding-top: 12px;}.card[data-star] p{flex: 0 1 auto;}.card[data-star] .foot{margin-top: 13px;}.card[data-star]{border-color: color-mix(in oklab,var(--cat) 34%,var(--line-1));}.card[data-star]:hover{border-color: color-mix(in oklab,var(--cat) 62%,var(--line-2));}.card[data-star]::after{content: "";position: absolute;z-index: 4;top: 12px;inset-inline-end: 12px;width: 27px;height: 31px;background-color: var(--cat);background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 3.1l2.75 5.57 6.15.9-4.45 4.34 1.05 6.12L12 17.14l-5.5 2.89 1.05-6.12L3.1 9.57l6.15-.9z'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: center 46%;background-size: 13px 13px;clip-path: polygon(50% 1.75%,98.25% 25.875%,98.25% 74.125%,50% 98.25%,1.75% 74.125%,1.75% 25.875%);filter: drop-shadow(0 2px 5px rgba(15,23,42,.28));}@media (max-width: 640px){.dhero>*{min-width: 0;}.dmeta .pill{white-space: normal;max-width: 100%;}.btn{white-space: normal;max-width: 100%;}}.rolebar .mk-link{display:inline-flex;align-items:center;min-height:32px;margin-inline-start:4px;font:600 12px/1 "JetBrains Mono",ui-monospace,monospace;letter-spacing:.06em;color:var(--accent,#2d5e8e);text-decoration:none}.rolebar .mk-link:hover{text-decoration:underline}.rolebar .mk-link::after{content:"\2192";margin-inline-start:5px}.rolebar .mk-link:focus-visible{outline:2px solid var(--accent,#2d5e8e);outline-offset:3px}.hx-ex{padding-top:8px;padding-bottom:44px}.hx-eb{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.hx-ex h2{margin:8px 0 10px;font-size:clamp(24px,2.6vw,34px);line-height:1.15;letter-spacing:-.02em;color:var(--ink-0)}.hx-lede{margin:0 0 20px;max-width:72ch;font-size:15.5px;line-height:1.6;color:var(--ink-2)}.hx-steps{list-style:none;margin:0;padding:0;counter-reset:st;display:flex;flex-direction:column;gap:22px}.hx-steps>li{counter-increment:st;border:1px solid var(--line-1);border-radius:14px;padding:18px 20px;background:var(--card);min-width:0}.hx-steps h3{margin:0 0 6px;font-size:18px;color:var(--ink-0)}.hx-steps h3::before{content:counter(st);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:10px;border-radius:50%;border:1px solid var(--line-2);font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--accent)}.hx-steps p{margin:0 0 12px;font-size:14.5px;line-height:1.6;color:var(--ink-2);max-width:80ch}.hx-tw{overflow-x:auto;border:1px solid var(--line-1);border-radius:10px;margin:0 0 10px}.hx-tw table{width:100%;border-collapse:collapse;font-size:13px;min-width:640px;color:var(--ink-1)}.hx-tw-s table{min-width:0}.hx-tw th,.hx-tw td{padding:6px 10px;border-bottom:1px solid var(--line-1);text-align:left;vertical-align:top}.hx-tw th{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);background:var(--tile)}.hx-tw .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.hx-tw td:first-child{font-family:'JetBrains Mono',monospace;font-size:12px;white-space:nowrap}.hx-tw tr.sub td{background:var(--tile);font-weight:600}.hx-tw tr.tot td{font-weight:700;color:var(--ink-0);border-bottom:0}.hx-steps figure{margin:0;border:1px solid var(--line-1);border-radius:10px;overflow:hidden;max-width:760px}.hx-steps figure img{display:block;width:100%;height:auto}.hx-steps figcaption{padding:8px 12px;font-size:12.5px;color:var(--ink-2);border-top:1px solid var(--line-1)}.hx-fn{font-size:12.5px;color:var(--ink-2);margin:8px 0 12px;max-width:80ch}.mcell{position:absolute;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:0.8660254;--s:0.965;background:linear-gradient(180deg,color-mix(in oklab,var(--cat) 22%,rgba(255,255,255,.93)),color-mix(in oklab,var(--cat) 12%,rgba(255,255,255,.80)));color:color-mix(in oklab,var(--cat) 78%,#0f172a);filter: drop-shadow(0 1.5px 2.5px rgba(15,23,42,.16)) drop-shadow(0 1px 0 color-mix(in oklab,var(--cat) 40%,rgba(255,255,255,.3))) drop-shadow(0 6px 12px color-mix(in oklab,var(--cat) 26%,rgba(15,23,42,.18)));opacity:0;transform:translate(calc(var(--dx) * 100%),calc(var(--dy) * 100%)) scale(.34);transition:opacity .42s cubic-bezier(.18,.72,.26,1),transform .42s cubic-bezier(.18,.72,.26,1);pointer-events:none;-webkit-clip-path:polygon(50% calc(50% - 50% * var(--s)),calc(50% + 50% * var(--s)) calc(50% - 25% * var(--s)),calc(50% + 50% * var(--s)) calc(50% + 25% * var(--s)),50% calc(50% + 50% * var(--s)),calc(50% - 50% * var(--s)) calc(50% + 25% * var(--s)),calc(50% - 50% * var(--s)) calc(50% - 25% * var(--s)));clip-path:polygon(50% calc(50% - 50% * var(--s)),calc(50% + 50% * var(--s)) calc(50% - 25% * var(--s)),calc(50% + 50% * var(--s)) calc(50% + 25% * var(--s)),50% calc(50% + 50% * var(--s)),calc(50% - 50% * var(--s)) calc(50% + 25% * var(--s)),calc(50% - 50% * var(--s)) calc(50% - 25% * var(--s)));}.mcell::after{content:'';position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;background: linear-gradient(155deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,.08) 42%,transparent 60%),linear-gradient(0deg,color-mix(in oklab,var(--cat) 16%,transparent),transparent 45%);}.mcell .mc-ico{display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:color-mix(in oklab,var(--cat) 32%,rgba(255,255,255,.6));color:color-mix(in oklab,var(--cat) 88%,#0f172a);font-family:'Inter Tight','Inter',sans-serif;font-weight:700;line-height:1;}.mcell>.mc-t{display:block;width:100%;overflow:hidden;padding:0 11%;text-align:center;font-weight:600;letter-spacing:-.015em;line-height:1.06;overflow-wrap:normal;word-break:normal;hyphens:none;}.card:hover .mcell,.card:focus-within .mcell{opacity:1;transform:none;pointer-events:auto;transition-delay:calc(var(--i) * 40ms);}@media (hover:none){.mcell{opacity:1;transform:none;transition:none;pointer-events:auto}}@media (prefers-reduced-motion:reduce){.mcell{transition:opacity .12s linear;transform:none}.card:hover .mcell,.card:focus-within .mcell{transition-delay:0s}}.cellname{position:absolute;left:3%;right:3%;bottom:5%;z-index:7;padding:5px 9px;box-sizing:border-box;font-size:.6rem;font-weight:650;line-height:1.2;letter-spacing:.01em;text-align:start;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;border-radius:7px;color:#fff;background:color-mix(in oklab,var(--cat) 82%,#0f172a);box-shadow:0 6px 18px color-mix(in oklab,var(--cat) 28%,transparent);opacity:0;transform:translateY(5px);pointer-events:none;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.3,1)}.ccell:hover + .cellname,.ccell:focus-visible + .cellname{opacity:1;transform:none}@media (hover:none){.cellname{display:none}}@media (prefers-reduced-motion: reduce){.cellname{transition:opacity .12s ease;transform:none}.ccell:hover + .cellname{transform:none}}.card .thumb .cmark{position:absolute;top:9px;right:9px;z-index:3;display:inline-flex;align-items:center;gap:4px;max-width:calc(100% - 18px);padding:3px 8px;border-radius:999px;text-decoration:none;font-family:'JetBrains Mono',monospace;font-size:.6rem;font-weight:650;line-height:1.35;letter-spacing:.01em;color:#fff;background:rgba(15,23,42,.86);box-shadow:0 1px 3px rgba(15,23,42,.18);transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.card .thumb .cmark span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card .thumb .cmark svg{width:11px;height:11px;flex:none;opacity:.95}.card .thumb .cmark:hover,.card .thumb .cmark:focus-visible{background:rgba(15,23,42,.94);transform:translateY(-1px);box-shadow:0 3px 8px rgba(15,23,42,.24)}[dir="rtl"] .card .thumb .cmark{right:auto;left:9px}@media (prefers-reduced-motion: reduce){.card .thumb .cmark{transition:none}.card .thumb .cmark:hover,.card .thumb .cmark:focus-visible{transform:none}}.oce-more-cut{display: none !important;}.oce-more-wrap{display: flex;justify-content: center;margin: 28px 0 8px;}.oce-more-btn{font: inherit;font-weight: 600;font-size: .95rem;color: var(--ink-0);background: var(--card);border: 1px solid var(--line-1);border-radius: 999px;padding: 12px 24px;cursor: pointer;}.oce-more-btn:hover{border-color: var(--accent);color: var(--accent);}.oce-more-btn[hidden]{display: none;}.oce-more-n{font-family: 'JetBrains Mono',monospace;font-size: .8rem;opacity: .7;}:where(img[width][height]){height:auto}html.oce-lite .dflow,html.oce-lite #three-canvas{display:none!important}