:root{--ink:#1f1228;--ink-soft:#2f1d3d;--muted:#6b5c75;--muted-strong:#4a3a55;--paper:#f2eef4;--paper-tint:#e9e1ed;--surface:#fff;--line:#ddd1e2;--line-strong:#c5b4cd;--accent:#9ee5c8;--accent-strong:#6fcba8;--accent-soft:#e1f6ec;--accent-ink:#103a2a;--brand:#3b1f4d;--brand-soft:#ece1f1;--emerald:#2a8163;--emerald-soft:#def0e7;--rose:#a83560;--rose-soft:#f8e1ea;--gold:#b58727;color:var(--ink);background:var(--paper);font-feature-settings:"ss01" on, "ss03" on, "cv11" on;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Geist,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:0}body{background:radial-gradient(1100px 560px at 110% -10%, #9ee5c847, transparent 60%), radial-gradient(900px 500px at -10% 0%, #3b1f4d1a, transparent 55%), var(--paper);min-height:100vh;margin:0}#root{min-width:0}a{color:var(--ink);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .12s}a:hover{border-bottom-color:currentColor;text-decoration:none}button,.button{--btn-bg:var(--ink);--btn-fg:#fff;--btn-border:var(--ink);background:var(--btn-bg);border:1px solid var(--btn-border);color:var(--btn-fg);cursor:pointer;font:inherit;letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-size:14px;font-weight:600;transition:transform .12s,background .12s,border-color .12s,color .12s,box-shadow .12s;display:inline-flex}button:hover,.button:hover{border-bottom-color:var(--btn-border);transform:translateY(-1px)}button:active,.button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.5;transform:none}button.button-primary,.button.button-primary,.button{--btn-bg:var(--accent);--btn-border:var(--accent);--btn-fg:var(--accent-ink);box-shadow:0 1px #1f12280f}button.button-primary:hover,.button:hover{--btn-bg:var(--accent-strong);--btn-border:var(--accent-strong);--btn-fg:var(--accent-ink)}button.button-ghost,.button.button-ghost{--btn-bg:transparent;--btn-border:var(--line-strong);--btn-fg:var(--ink)}button.button-ghost:hover,.button.button-ghost:hover{--btn-bg:var(--brand-soft);--btn-border:var(--ink)}button.button-danger,.button.button-danger{--btn-bg:transparent;--btn-border:#a8356073;--btn-fg:var(--rose)}button.button-danger:hover,.button.button-danger:hover{--btn-bg:var(--rose);--btn-border:var(--rose);--btn-fg:#fff}button[type=submit]{--btn-bg:var(--brand);--btn-border:var(--brand);--btn-fg:#fff}button[type=submit]:hover{--btn-bg:var(--ink);--btn-border:var(--ink)}input,textarea,select{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);font:inherit;border-radius:12px;width:100%;padding:12px 14px;transition:border-color .12s,box-shadow .12s}input,textarea,select,button{max-width:100%}input::placeholder{color:#b1aa9c}input:focus,textarea:focus,select:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #9ee5c880}input[type=file]{cursor:pointer;border-style:dashed;padding:16px}input[type=file]::file-selector-button{background:var(--brand);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:999px;margin-right:12px;padding:8px 14px;font-weight:600}.code-textarea{resize:vertical;min-height:220px;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5}.topbar{-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--line);z-index:5;background:#f2eef4c7;justify-content:space-between;align-items:center;padding:16px 32px;display:flex;position:sticky;top:0}.brand{color:var(--brand);align-items:center;line-height:1;display:inline-flex}.brand svg{width:auto;height:28px;display:block}.brand:hover{border-bottom-color:#0000}.topbar nav{align-items:center;gap:16px;display:flex}.topbar nav a{color:var(--muted-strong);font-size:14px;font-weight:600}.topbar nav a:hover,.topbar nav a.active{color:var(--ink)}.container{max-width:1120px;margin:0 auto;padding:48px 28px 80px}.auth-page{place-items:center;min-height:100vh;padding:24px;display:grid}.breadcrumbs{margin-bottom:18px;font-size:13px}.breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:8px;min-width:0;display:flex}.breadcrumbs a{color:var(--muted-strong);letter-spacing:.01em;white-space:nowrap;font-weight:600}.breadcrumbs a:hover{border-bottom-color:var(--brand);color:var(--brand)}.breadcrumbs span[aria-current=page]{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:36ch;font-weight:600;overflow:hidden}.breadcrumbs-sep{color:var(--muted);font-weight:400}.section-header{justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:36px;display:flex}.section-header>div:first-child{gap:6px;display:grid}.section-header .actions{align-items:center;gap:12px;display:flex}.eyebrow{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:700}h1,h2,h3{color:var(--ink);margin:0}h1{letter-spacing:-.03em;font-family:Geist,ui-sans-serif,system-ui,sans-serif;font-size:clamp(32px,3.6vw,44px);font-weight:700;line-height:1.05}h2{letter-spacing:-.005em;font-size:18px;font-weight:700}h3{font-size:14px;font-weight:700}p{color:var(--muted-strong);margin:0;line-height:1.55}code,.mono{overflow-wrap:anywhere;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px;display:grid}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.empty{background:var(--surface);border:1px solid var(--line);border-radius:18px;min-width:0;margin-bottom:18px;padding:24px;transition:transform .16s,box-shadow .16s,border-color .16s}.card{gap:14px;display:grid;box-shadow:0 1px #0f0e1508}.empty{background:repeating-linear-gradient(135deg, #3b1f4d0d 0, #3b1f4d0d 8px, transparent 8px, transparent 16px), var(--surface);color:var(--muted-strong);border-style:dashed;justify-content:space-between;align-items:center;gap:10px;padding:22px 24px;font-size:15px;display:flex}.grid .card{position:relative}.grid .card:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:0 22px 50px -25px #0f0e1540}.grid .card h2{letter-spacing:-.025em;font-family:Geist,ui-sans-serif,system-ui,sans-serif;font-size:22px;font-weight:600;line-height:1.2}.grid .card a[href^=http]{color:var(--muted-strong);word-break:break-all;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.grid .card a[href^=http]:hover{color:var(--brand);border-bottom-color:var(--brand)}.grid .card .actions{border-top:1px dashed var(--line);flex-wrap:wrap;gap:16px;padding-top:14px;display:flex}.grid .card .actions a{color:var(--ink);font-size:13px;font-weight:600}.grid .card .actions a:hover{color:var(--brand)}.site-card{cursor:pointer}.site-card h2 a.site-card-link{color:inherit;border:none;display:inline-block}.site-card h2 a.site-card-link:after{content:"";z-index:1;position:absolute;inset:0}.site-card:hover h2 a.site-card-link{color:var(--brand)}.site-card:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #765ad32e}.site-card .site-card-url,.site-card .badges{z-index:2;position:relative}.narrow{width:100%;max-width:640px}.form{gap:18px;display:grid}.form label,.card label{color:var(--ink-soft);gap:8px;font-size:14px;font-weight:600;display:grid}.form>button,.form>.button,.card>button,.card>.button{justify-self:start}.field{gap:8px;display:grid}.field-label{color:var(--ink-soft);font-size:14px;font-weight:600}.field-help{color:var(--muted);font-size:12px;font-weight:500}.segmented{background:var(--paper-tint);border:1px solid var(--line);border-radius:999px;gap:4px;max-width:100%;padding:4px;display:inline-flex}.segmented>button{--btn-bg:transparent;--btn-border:transparent;--btn-fg:var(--muted-strong);border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600}.segmented>button:hover{--btn-bg:#ffffff80;--btn-fg:var(--brand);transform:none}.segmented>button.active{--btn-bg:var(--surface);--btn-border:var(--line);--btn-fg:var(--brand);box-shadow:0 1px #1f12280f}.dropzone{background:var(--paper-tint);border:1.5px dashed var(--line-strong);cursor:pointer;text-align:center;border-radius:16px;outline:none;justify-content:center;align-items:center;min-height:160px;padding:28px 24px;transition:background .14s,border-color .14s,transform .14s,box-shadow .14s;display:flex}.dropzone:hover{border-color:var(--brand);background:#fff9}.dropzone:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px #9ee5c880}.dropzone-active{background:var(--accent-soft);border-color:var(--accent-strong);border-style:solid;transform:scale(1.005)}.dropzone-filled{background:var(--surface);border-color:var(--line);border-style:solid}.dropzone-invalid{border-color:#a835608c}.dropzone-content{flex-direction:column;align-items:center;gap:6px;display:flex}.dropzone-content strong{color:var(--brand);letter-spacing:-.02em;font-family:Geist,ui-sans-serif,system-ui,sans-serif;font-size:18px;font-weight:600}.dropzone-meta{color:var(--muted);font-size:13px}.dropzone-clear{margin-top:10px}.badges{flex-wrap:wrap;gap:8px;display:inline-flex}.badge{background:var(--brand-soft);border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px;display:inline-block}.badge.badge-published{background:var(--accent-soft);color:var(--accent-ink);border-color:#6fcba859}.badge.badge-unpublished{background:var(--brand-soft);border-color:var(--line);color:var(--muted)}.badge.badge-protected{background:var(--brand);border-color:var(--brand);color:#fff}.badge.badge-public{background:var(--brand-soft);color:var(--brand);border-color:#3b1f4d40}.list{gap:0;margin:0;padding:0;list-style:none;display:grid}.list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.list li:first-child{border-top:0;padding-top:4px}.list li span{color:var(--ink-soft);font-size:14px}.list li strong{color:var(--ink);font-variant-numeric:tabular-nums}.domain-list li>span:first-child{gap:8px;display:grid}.domain-list .badge.badge-published{color:var(--accent-ink)}.domain-list .badge.badge-unpublished{color:var(--muted)}.domain-list .badge.badge-protected{color:#fff}.stat-hero{background:var(--surface);border:1px solid var(--line);border-radius:22px;flex-wrap:wrap;align-items:baseline;gap:24px 36px;margin-bottom:28px;padding:28px 32px;display:flex;position:relative}.stat-hero:after{background:var(--accent);border:1px solid var(--accent-strong);content:"";border-radius:999px;width:8px;height:8px;position:absolute;top:22px;right:22px}.stat-hero .stat{align-items:baseline;gap:10px;display:flex}.stat-hero .stat-value{font-variant-numeric:tabular-nums;letter-spacing:-.035em;font-family:Geist,ui-sans-serif,system-ui,sans-serif;font-size:clamp(38px,4.6vw,52px);font-weight:700;line-height:1}.stat-hero .stat-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:600}.site-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:32px;display:flex}.site-hero .site-url{color:var(--muted-strong);overflow-wrap:anywhere;max-width:100%;margin-top:6px;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;display:inline-block}.site-hero .site-url:hover{color:var(--brand)}.site-hero .actions a{border:1px solid var(--line-strong);color:var(--brand);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.site-hero .actions a:hover{background:var(--surface);border-color:var(--brand);color:var(--brand)}.settings-list{background:var(--surface);border:1px solid var(--line);border-radius:18px;flex-direction:column;margin-bottom:18px;display:flex;overflow:hidden;box-shadow:0 1px #0f0e1508}.settings-row{border-top:1px solid var(--line);flex-direction:column;gap:14px;padding:20px 24px;display:flex}.settings-row:first-child{border-top:0}.settings-row-main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.settings-row-text{flex:240px;gap:4px;min-width:0;display:grid}.settings-row-text h3{color:var(--ink);letter-spacing:-.005em;font-size:15px;font-weight:700}.settings-row-text p{color:var(--muted);margin:0;font-size:13px}.settings-row-extra{gap:12px;display:grid}.settings-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.settings-row-danger{background:linear-gradient(#0000,#a835600a)}.settings-row-danger .settings-row-text h3{color:var(--rose)}.readonly-row{background:var(--paper-tint);border:1px solid var(--line);border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:4px 4px 4px 14px;display:flex}.readonly-row>.readonly-value{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;overflow:hidden}.readonly-row>a.readonly-value:hover{color:var(--brand);border-bottom-color:#0000}.readonly-row>button{flex:none;padding:8px 14px;font-size:13px}.password-field{gap:10px;display:grid}.password-input-wrap{background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;align-items:center;gap:4px;padding:0 4px 0 0;transition:border-color .12s,box-shadow .12s;display:flex}.password-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #9ee5c880}.password-input-wrap>.password-input{letter-spacing:.02em;background:0 0;border:0;flex:1;min-width:0;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.password-input-wrap>.password-input:focus{box-shadow:none;border:0}.password-toggle{--btn-bg:transparent;--btn-border:transparent;--btn-fg:var(--muted-strong);letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;font-size:12px;font-weight:600}.password-toggle:hover{--btn-bg:var(--brand-soft);--btn-fg:var(--brand);transform:none}.password-helpers{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.password-helpers>.field-help{flex:200px;margin-left:4px}.error{background:var(--rose-soft);color:var(--rose);border:1px solid #a8356040;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:600}.success{background:var(--emerald-soft);color:var(--emerald);border:1px solid #2a816340;border-radius:12px;padding:12px 14px;font-size:14px;font-weight:600}.danger{background:linear-gradient(180deg, var(--surface), #a835600d);border-color:#a8356040}.danger h2{color:var(--rose)}.danger button{--btn-bg:var(--rose);--btn-border:var(--rose);--btn-fg:#fff}.danger button:hover{--btn-bg:#842848;--btn-border:#842848}.oauth-authorize{place-items:center;min-height:100vh;padding:clamp(24px,6vw,64px);display:grid}.oauth-authorize-card{border:1px solid var(--line);background:#ffffffc7;border-radius:28px;gap:16px;width:100%;max-width:620px;padding:clamp(28px,5vw,44px);display:grid;box-shadow:0 28px 80px -44px #1f122873}.oauth-authorize-card h1{letter-spacing:-.055em;font-size:clamp(40px,7vw,64px)}.oauth-authorize-copy,.oauth-redirect-copy{font-size:clamp(17px,2.2vw,20px);line-height:1.45}.oauth-redirect-copy span{color:var(--ink);overflow-wrap:anywhere;font-weight:600}.oauth-actions{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:6px;display:flex}.oauth-actions a{color:var(--ink);font-size:15px;font-weight:600}.oauth-actions a:hover{border-bottom-color:var(--brand);color:var(--brand)}.mcp-hero{gap:12px;max-width:760px;margin-bottom:28px;display:grid}.mcp-hero p:last-child{font-size:17px}.mcp-endpoint-card{max-width:760px}.mcp-client-grid{align-items:stretch}.mcp-client-grid .card{align-content:start}.mcp-client-grid .badge{justify-self:start}.mcp-steps{color:var(--muted-strong);gap:8px;margin:0;padding-left:20px;font-size:14px;line-height:1.5;display:grid}@media (width<=760px){.topbar{flex-direction:column;align-items:stretch;gap:12px;padding:14px 18px}.brand{align-self:flex-start}.topbar nav{justify-content:space-between;width:100%}.topbar nav a{flex:auto;line-height:1.25}.container{padding:32px 18px 64px}.section-header,.site-hero,.list li{flex-direction:column;align-items:stretch;gap:14px}.section-header>.button,.site-hero .actions,.site-hero .actions a{width:100%}.settings-row-main{flex-direction:column;align-items:stretch}.segmented{border-radius:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,128px),1fr));width:100%;display:grid}.segmented>button{min-width:0}.grid.three{grid-template-columns:1fr}.list li .actions{flex-wrap:wrap;justify-content:flex-start;align-items:stretch;width:100%}.list li .actions>*{flex:140px}}@media (width<=520px){.auth-page{padding:16px}.container{padding:28px 14px 56px}.card,.empty,.settings-row{padding:18px}.empty{flex-direction:column;align-items:stretch}.readonly-row{flex-direction:column;align-items:stretch;padding:10px}.readonly-row>.readonly-value{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;overflow:visible}.readonly-row>button{width:100%}.password-input-wrap{flex-direction:column;align-items:stretch;padding:0}.password-toggle{border-top:1px solid var(--line);border-radius:0 0 12px 12px;justify-content:center;width:100%;min-height:40px}.password-helpers>button{flex:120px}.dropzone{min-height:132px;padding:22px 16px}.stat-hero{padding:22px 20px}.stat-hero .stat{flex-direction:column;align-items:flex-start;gap:6px}}@media (width<=380px){.topbar{padding-inline:14px}.brand svg{max-width:136px;height:24px}h1{font-size:30px}}
