@import url("https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap");:root{--font-sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"Geist Mono",ui-monospace,"JetBrains Mono",Menlo,monospace;--violet-300:#b8a4ff;--violet-400:#9d82ff;--violet-500:#7c5cff;--violet-600:#6845f0;--violet-700:#5430d1;--cyan-400:#22d3ee;--cyan-300:#67e8f9;--green-400:#4ade80;--green-500:#22c55e;--amber-400:#f5b544;--rose-400:#f87171;--rose-500:#ef4444;--rose-600:#dc2626;--sev-crit:#ff4d6d;--sev-high:#ff8c42;--sev-med:#f5b544;--sev-low:#67e8f9;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 2px rgba(0,0,0,.04),0 1px 1px rgba(0,0,0,.03);--shadow-md:0 4px 12px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-pop:0 18px 50px -12px rgba(8,8,20,.45),0 4px 12px rgba(8,8,20,.18);--gutter:24px;--sidebar-w:232px;--topbar-h:0px}:root,[data-theme=dark]{--bg:#0a0a0f;--bg-elev:#0f0f17;--bg-elev-2:#14141d;--bg-hover:#1a1a25;--panel:#0d0d14;--panel-edge:#1c1c28;--line:#1d1d28;--line-strong:#2a2a3a;--text:#f4f4f6;--text-soft:#c7c7d1;--text-mute:#8a8a99;--text-dim:#5d5d6e;--code-bg:#07070c;--code-edge:#20202d;--grad-1:#1a0f3a;--grad-2:#060616;--grad-3:#082238;--link:var(--violet-400);--accent:var(--violet-500);--accent-soft:rgba(124,92,255,0.12);--accent-edge:rgba(124,92,255,0.35);color-scheme:dark}[data-theme=light]{--bg:#fbfbfc;--bg-elev:#ffffff;--bg-elev-2:#f4f4f7;--bg-hover:#f1f1f5;--panel:#ffffff;--panel-edge:#e7e7ee;--line:#ececf2;--line-strong:#d9d9e2;--text:#0b0b14;--text-soft:#2e2e3a;--text-mute:#6b6b78;--text-dim:#9595a3;--code-bg:#f6f6fa;--code-edge:#e2e2ec;--grad-1:#ede7ff;--grad-2:#ffffff;--grad-3:#d9efff;--link:var(--violet-600);--accent:var(--violet-600);--accent-soft:rgba(124,92,255,0.10);--accent-edge:rgba(124,92,255,0.30);color-scheme:light}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}button{font-family:inherit}input,select,textarea{font-family:inherit;color:inherit}::selection{background:var(--accent-edge);color:var(--text)}.mono,code,kbd{font-family:var(--font-mono);font-feature-settings:"zero","ss01"}.app{min-height:100vh}.app[data-perspective=public]{background:radial-gradient(1000px 600px at 80% -10%,color-mix(in oklab,var(--grad-3) 60%,transparent),transparent 60%),radial-gradient(900px 600px at -10% 0,color-mix(in oklab,var(--grad-1) 60%,transparent),transparent 60%),var(--bg)}.pub-nav{gap:20px;padding:14px 32px;border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--bg) 70%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:var(--topbar-h);z-index:40}.pub-nav,.pub-nav .brand{display:flex;align-items:center}.pub-nav .brand{gap:9px;font-weight:600;letter-spacing:-.02em}.pub-nav .brand .mark{width:22px;height:22px;border-radius:6px;background:conic-gradient(from 220deg,var(--violet-500),var(--cyan-400),var(--violet-500));position:relative}.pub-nav .brand .mark:after{content:"";position:absolute;inset:3px;border-radius:4px;background:var(--bg)}.pub-nav .brand small{color:var(--text-mute);font-weight:400;margin-left:4px}.pub-nav .links{display:flex;gap:6px;margin-left:12px}.pub-nav .links a{color:var(--text-soft);padding:6px 10px;border-radius:6px;font-size:13.5px;font-weight:500}.pub-nav .links a:hover,.pub-nav .links a[data-active=true]{color:var(--text);background:var(--bg-elev);text-decoration:none}.pub-nav .nav-right{margin-left:auto;display:flex;gap:10px;align-items:center}.pub-wrap{max-width:1240px;margin:0 auto;padding:0 32px 96px}.section{padding:80px 0}.section-head{display:flex;flex-direction:column;gap:8px;margin-bottom:36px}.eyebrow{font-family:var(--font-mono);font-size:11.5px;color:var(--accent);text-transform:uppercase;letter-spacing:.14em}.hero{padding:96px 0 80px;position:relative}.hero h1{font-size:clamp(40px,5.4vw,72px);line-height:1.02;letter-spacing:-.035em;font-weight:600;max-width:920px;margin:18px 0 22px}.hero h1 em{font-style:normal;color:var(--text-mute)}.hero p.lede{font-size:17.5px;color:var(--text-soft);max-width:600px;margin:0 0 28px}.hero .badge-row,.hero .cta-row{display:flex;gap:10px;flex-wrap:wrap}.hero .badge-row{margin-bottom:20px}.hero-mock{margin-top:64px;border:1px solid var(--line);background:var(--panel);border-radius:12px;box-shadow:var(--shadow-pop);overflow:hidden}.hero-mock .hm-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg-elev)}.hero-mock .hm-head .dots{display:flex;gap:6px}.hero-mock .hm-head .dots i{width:10px;height:10px;border-radius:50%;background:var(--bg-elev-2);display:inline-block}.hero-mock .hm-head .url{font-family:var(--font-mono);font-size:12px;color:var(--text-mute);padding:3px 10px;background:var(--bg);border:1px solid var(--line);border-radius:6px;flex:1 1;max-width:380px;margin-left:12px}.hero-mock .hm-body{display:grid;grid-template-columns:200px 1fr;min-height:360px}.hero-mock .hm-sidebar{border-right:1px solid var(--line);padding:14px 10px;background:var(--bg-elev);display:flex;flex-direction:column;gap:2px}.hero-mock .hm-sidebar .nav-item{font-size:12.5px;color:var(--text-mute);padding:6px 8px;border-radius:5px;display:flex;align-items:center;gap:8px}.hero-mock .hm-sidebar .nav-item.on{background:var(--bg-elev-2);color:var(--text)}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:7px;font-size:13.5px;font-weight:500;border:1px solid transparent;cursor:pointer;transition:background .08s ease,border-color .08s ease,color .08s ease,transform .04s ease;white-space:nowrap}.btn,.btn:hover{text-decoration:none}.btn:active{transform:translateY(.5px)}.btn-primary{background:var(--text);color:var(--bg);border-color:var(--text)}.btn-primary:hover{background:color-mix(in oklab,var(--text) 88%,var(--accent));border-color:color-mix(in oklab,var(--text) 88%,var(--accent))}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-accent:hover{background:var(--violet-700);border-color:var(--violet-700)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.btn-ghost:hover{background:var(--bg-elev)}.btn-quiet{background:transparent;color:var(--text-soft);border-color:transparent}.btn-quiet:hover{background:var(--bg-elev);color:var(--text)}.btn-danger{background:transparent;color:var(--rose-400);border-color:var(--line-strong)}.btn-danger:hover{background:color-mix(in oklab,var(--rose-500) 16%,var(--bg-elev));color:var(--rose-400);border-color:color-mix(in oklab,var(--rose-500) 30%,var(--line-strong))}.btn-sm{padding:5px 9px;font-size:12.5px;border-radius:6px}.btn-lg{padding:11px 18px;font-size:14.5px;border-radius:8px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12.5px;color:var(--text-soft);font-weight:500}.field .hint{font-size:12px;color:var(--text-mute)}.input,.select,.textarea{background:var(--bg-elev);border:1px solid var(--line-strong);border-radius:7px;padding:8px 11px;font-size:13.5px;color:var(--text);outline:none;width:100%}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.textarea{resize:vertical;min-height:88px;line-height:1.5}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px}.card-head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.card-head h3{margin:0;font-size:14px;font-weight:600;letter-spacing:-.01em}.card-head .sub{color:var(--text-mute);font-size:12.5px;margin-left:6px}.card-head .right{margin-left:auto;display:flex;gap:6px;align-items:center}.card-body{padding:16px}.card-body.tight{padding:0}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 7px;border-radius:4px;font-size:11.5px;font-weight:500;background:var(--bg-elev-2);color:var(--text-soft);border:1px solid var(--line);font-family:var(--font-sans);white-space:nowrap}.badge .dot{width:6px;height:6px;border-radius:50%;background:var(--text-mute)}.badge.ok{color:#86efac;background:color-mix(in oklab,var(--green-500) 14%,var(--bg-elev-2));border-color:color-mix(in oklab,var(--green-500) 30%,var(--line))}.badge.ok .dot{background:#22c55e}.badge.warn{color:#fcd34d;background:color-mix(in oklab,var(--amber-400) 18%,var(--bg-elev-2));border-color:color-mix(in oklab,var(--amber-400) 35%,var(--line))}.badge.warn .dot{background:#f5b544}.badge.crit{color:#ffb1be;background:color-mix(in oklab,var(--sev-crit) 18%,var(--bg-elev-2));border-color:color-mix(in oklab,var(--sev-crit) 35%,var(--line))}.badge.crit .dot{background:var(--sev-crit)}.badge.high{color:#ffc59a;background:color-mix(in oklab,var(--sev-high) 18%,var(--bg-elev-2));border-color:color-mix(in oklab,var(--sev-high) 35%,var(--line))}.badge.high .dot{background:var(--sev-high)}.badge.info{color:var(--cyan-300);background:color-mix(in oklab,var(--cyan-400) 14%,var(--bg-elev-2));border-color:color-mix(in oklab,var(--cyan-400) 30%,var(--line))}.badge.info .dot{background:var(--cyan-400)}.badge.muted{color:var(--text-mute)}.badge.tier-free{color:var(--text-soft)}.badge.tier-paid{color:var(--violet-300);background:color-mix(in oklab,var(--violet-500) 18%,var(--bg-elev-2));border-color:color-mix(in oklab,var(--violet-500) 35%,var(--line))}.badge.tier-paid .dot{background:var(--violet-400)}.badge.role-owner{color:var(--violet-300)}.badge.kbd{font-family:var(--font-mono);font-size:10.5px;background:var(--bg-elev-2);border-color:var(--line-strong);color:var(--text-mute);padding:1px 5px}.table-wrap{overflow:hidden;border-radius:10px}table.tbl{width:100%;border-collapse:collapse;font-size:13px}table.tbl th{text-align:left;font-weight:500;font-size:11.5px;color:var(--text-mute);text-transform:uppercase;letter-spacing:.06em;padding:10px 14px;background:var(--bg-elev)}table.tbl td,table.tbl th{border-bottom:1px solid var(--line)}table.tbl td{padding:12px 14px;vertical-align:middle}table.tbl tr:last-child td{border-bottom:0}table.tbl tr:hover td{background:color-mix(in oklab,var(--bg-elev) 50%,transparent)}table.tbl td .mono{color:var(--text-soft);font-size:12.5px}table.tbl .row-action{opacity:0;transition:opacity .1s ease}table.tbl tr:hover .row-action{opacity:1}table.tbl .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:calc(100vh - var(--topbar-h))}.side{border-right:1px solid var(--line);background:var(--bg-elev);padding:16px 12px;position:-webkit-sticky;position:sticky;top:var(--topbar-h);align-self:start;height:calc(100vh - var(--topbar-h));overflow-y:auto}.side .org-pill{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--line);border-radius:8px;margin-bottom:14px;background:var(--bg-elev-2)}.side .org-pill .av{width:26px;height:26px;border-radius:6px;background:linear-gradient(135deg,var(--violet-500),var(--cyan-400));color:#fff;font-weight:600;font-size:12px;display:grid;place-items:center}.side .org-pill .nm{font-size:13px;font-weight:500}.side .org-pill .role{font-size:11px;color:var(--text-mute)}.side .org-pill .chev{margin-left:auto;color:var(--text-dim)}.side h4{margin:14px 8px 6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);font-weight:500}.side a.nav{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;color:var(--text-soft);text-decoration:none;font-size:13px;font-weight:500}.side a.nav:hover{background:var(--bg-hover);color:var(--text);text-decoration:none}.side a.nav[data-active=true]{background:var(--bg-hover);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}.side a.nav .ico{color:var(--text-mute);display:inline-flex}.side a.nav[data-active=true] .ico{color:var(--accent)}.side a.nav .count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-mute);background:var(--bg-elev-2);border:1px solid var(--line);border-radius:4px;padding:0 5px}.side a.nav .count.alert{color:var(--sev-crit);border-color:color-mix(in oklab,var(--sev-crit) 40%,var(--line))}.main{padding:24px 32px 80px;min-width:0}.page-head{display:flex;align-items:flex-end;gap:14px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--line)}.page-head .titles h1{margin:0;font-size:22px;letter-spacing:-.02em;font-weight:600}.page-head .titles p{margin:4px 0 0;color:var(--text-mute);font-size:13.5px}.page-head .actions{margin-left:auto;gap:8px}.crumbs,.page-head .actions{display:flex;align-items:center}.crumbs{font-size:12px;margin-bottom:8px;gap:6px}.crumbs,.crumbs a{color:var(--text-mute)}.crumbs a:hover{color:var(--text)}.stat-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,1fr)}.stat{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.stat .label{font-size:12px;color:var(--text-mute);display:flex;align-items:center;gap:6px}.stat .v{font-size:26px;font-weight:600;letter-spacing:-.02em;margin-top:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat .delta{font-size:11.5px;color:var(--text-mute);margin-top:4px}.stat .delta.up{color:#86efac}.stat .delta.down{color:var(--rose-400)}.grid-2{grid-gap:16px;grid-template-columns:2fr 1fr}.grid-1-2,.grid-2{display:grid;gap:16px}.grid-1-2{grid-gap:16px;grid-template-columns:1fr 2fr}pre.code{background:var(--code-bg);border:1px solid var(--code-edge);border-radius:8px;padding:12px 14px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-soft);overflow-x:auto;margin:0;line-height:1.55}pre.code .comment{color:var(--text-dim)}pre.code .k{color:var(--violet-300)}pre.code .s{color:#86efac}.secret-box{display:flex;align-items:center;gap:10px;background:var(--code-bg);border:1px solid var(--accent-edge);border-radius:9px;padding:12px 14px;font-family:var(--font-mono);font-size:13.5px;color:var(--text);letter-spacing:.01em}.secret-box.masked{color:var(--text-mute)}.secret-box .actions{margin-left:auto;display:flex;gap:6px}.secret-box .pfx{color:var(--text-mute)}.warn-banner{display:flex;gap:12px;padding:12px 14px;border:1px solid color-mix(in oklab,var(--amber-400) 40%,var(--line));background:color-mix(in oklab,var(--amber-400) 10%,var(--panel));border-radius:9px;color:var(--text)}.warn-banner .ico{color:var(--amber-400)}.warn-banner b{color:var(--text)}.crit-banner{border-color:color-mix(in oklab,var(--sev-crit) 40%,var(--line));background:color-mix(in oklab,var(--sev-crit) 10%,var(--panel))}.crit-banner .ico{color:var(--sev-crit)}.info-banner{border-color:color-mix(in oklab,var(--cyan-400) 40%,var(--line));background:color-mix(in oklab,var(--cyan-400) 8%,var(--panel))}.info-banner .ico{color:var(--cyan-400)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:18px}.tabs button{background:none;border:0;padding:8px 12px;font-size:13px;color:var(--text-mute);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:500}.tabs button:hover{color:var(--text)}.tabs button[data-on=true]{color:var(--text);border-bottom-color:var(--accent)}.sev{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.sev.crit{background:var(--sev-crit);box-shadow:0 0 0 3px color-mix(in oklab,var(--sev-crit) 30%,transparent)}.sev.high{background:var(--sev-high)}.sev.med{background:var(--sev-med)}.sev.low{background:var(--sev-low)}.feature-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,1fr)}.f-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:22px;position:relative}.f-card .ico{width:32px;height:32px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-edge);border-radius:8px;margin-bottom:14px}.f-card h3{margin:0 0 6px;font-size:15px;letter-spacing:-.01em;font-weight:600}.f-card p{margin:0;color:var(--text-mute);font-size:13.5px;line-height:1.55}.plug-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,1fr)}.plug{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px;cursor:pointer;transition:border-color .1s ease,transform .08s ease,background .1s ease}.plug:hover{border-color:var(--line-strong);background:var(--bg-elev)}.plug .top{display:flex;align-items:center;gap:10px}.plug .ico{width:36px;height:36px;border-radius:8px;background:var(--bg-elev-2);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--font-mono);color:var(--accent)}.plug .ico,.plug h3{font-weight:600;font-size:14px}.plug h3{margin:0;letter-spacing:-.01em}.plug .scope{color:var(--text-mute);font-size:12px;font-family:var(--font-mono)}.plug p{margin:0;color:var(--text-soft);font-size:13px;line-height:1.5}.plug .meta{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line);color:var(--text-mute);font-size:11.5px}.plug .meta .by{font-family:var(--font-mono)}.price-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(3,1fr)}.price{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:26px 24px;display:flex;flex-direction:column}.price.featured{border-color:var(--accent-edge);background:linear-gradient(180deg,color-mix(in oklab,var(--accent-soft) 80%,transparent),var(--panel) 60%)}.price h3{margin:0 0 6px;font-size:15px;font-weight:600;letter-spacing:-.01em}.price .amt{font-size:36px;font-weight:600;letter-spacing:-.025em;margin:8px 0 4px}.price .amt small{font-size:13px;font-weight:400;color:var(--text-mute)}.price ul{padding:0;margin:16px 0 22px;list-style:none;flex-direction:column}.price li,.price ul{display:flex;gap:8px}.price li{align-items:flex-start;color:var(--text-soft);font-size:13px}.price li .ck{color:var(--green-400);margin-top:2px;flex:none}.foot{border-top:1px solid var(--line);padding:44px 32px 64px;color:var(--text-mute);font-size:12.5px}.foot-wrap{max-width:1240px;margin:0 auto;display:grid;grid-gap:24px;gap:24px;grid-template-columns:1.5fr repeat(4,1fr)}.foot h5{margin:0 0 12px;font-size:11.5px;color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;font-weight:500}.foot a{display:block;color:var(--text-mute);padding:4px 0;font-size:12.5px}.foot a:hover{color:var(--text);text-decoration:none}.foot .legal{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;display:flex;gap:18px;align-items:center;max-width:1240px;margin-left:auto;margin-right:auto}.modal-veil{position:fixed;inset:0;background:rgba(5,5,12,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;padding:24px}.modal{background:var(--panel);border:1px solid var(--line-strong);border-radius:12px;width:100%;max-width:520px;box-shadow:var(--shadow-pop);overflow:hidden}.modal .mh{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.modal .mh h3{margin:0;font-size:15px;font-weight:600}.modal .mb{padding:18px;display:flex;flex-direction:column;gap:14px}.modal .mf{padding:12px 18px;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-end;background:var(--bg-elev)}.toast-zone{position:fixed;right:20px;bottom:20px;z-index:200;flex-direction:column}.toast,.toast-zone{display:flex;gap:8px}.toast{background:var(--panel);border:1px solid var(--line-strong);border-radius:8px;padding:10px 14px;box-shadow:var(--shadow-pop);font-size:13px;min-width:220px;align-items:center}.toast.ok .dot{background:var(--green-400)}.toast.err .dot{background:var(--rose-400)}.toast .dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.row{display:flex;gap:8px;align-items:center}.row.between{justify-content:space-between}.muted{color:var(--text-mute)}.dim{color:var(--text-dim)}.mono{font-family:var(--font-mono)}.kv{display:grid;grid-template-columns:140px 1fr;grid-gap:8px 14px;gap:8px 14px;font-size:13px}.kv dt{color:var(--text-mute)}.kv dd{margin:0}.divider{height:1px;background:var(--line);margin:16px 0}.gap-sm{gap:6px}.gap-md{gap:12px}.gap-lg{gap:18px}.flex-col{display:flex;flex-direction:column}.scroll-y{overflow-y:auto}@media (max-width:900px){.shell{grid-template-columns:1fr}.side{display:none}.feature-grid,.plug-grid,.price-grid,.stat-grid{grid-template-columns:1fr 1fr}.grid-1-2,.grid-2{grid-template-columns:1fr}}@media (max-width:600px){.feature-grid,.plug-grid,.price-grid,.stat-grid{grid-template-columns:1fr}.main{padding:16px}.pub-wrap{padding:0 16px 64px}.pub-nav{padding:12px 16px}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}