:root{--bg:#f8fafc;--surface:#ffffff;--surface-alt:#f3f7fb;--text:#172033;--muted:#5b677a;--line:#c8d1dc;--blue:#004578;--blue-2:#0f6cbd;--danger:#b42318;--success:#107c10;--warning:#8a6100}*{box-sizing:border-box}body,html{margin:0;min-height:100%;color:var(--text);background:var(--bg);font-family:Aptos,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}a{color:inherit}.shell{min-height:100vh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;height:56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--surface);padding:0 24px}.brand{color:var(--blue);font-weight:700;text-decoration:none}.nav{display:flex;gap:4px;align-items:center}.nav a{text-decoration:none;padding:10px 12px;border-bottom:2px solid transparent;font-weight:700;color:var(--muted)}.nav a:hover{color:var(--blue);border-color:var(--line)}.container{width:min(1120px,calc(100vw - 48px));margin:0 auto;padding:28px 0 48px}.grid{display:grid;grid-gap:16px;gap:16px;align-items:start}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two{grid-template-columns:minmax(0,1fr) minmax(360px,.45fr)}.card,.panel{border:1px solid var(--line);background:var(--surface);border-radius:6px}.panel{padding:18px}.card{padding:16px;text-decoration:none}.card:hover{border-color:var(--blue-2)}.eyebrow,.muted{color:var(--muted)}.eyebrow{font-size:12px;font-weight:700;text-transform:uppercase}h1,h2,h3{margin:0;letter-spacing:0}h1{font-size:30px;line-height:1.16}h2{font-size:20px}h3{font-size:16px}p{line-height:1.5}label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--text);padding:9px 11px;font:inherit}textarea{min-height:92px;resize:vertical}.row{gap:12px;flex-wrap:wrap}.between,.row{display:flex;align-items:center}.between{justify-content:space-between;gap:16px}.button{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:38px;border:1px solid var(--blue);border-radius:4px;background:var(--blue);color:#fff;font-weight:700;padding:8px 14px;cursor:pointer;text-decoration:none;text-align:center}.button.secondary{background:#fff;color:var(--blue)}.button.danger{border-color:var(--danger);background:var(--danger)}.button:disabled{opacity:.55;cursor:not-allowed}.button.compact{min-height:32px;padding:6px 10px;font-size:12px}.badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700}.badge.ok{border-color:#7fba7a;color:var(--success)}.badge.warn{border-color:#e0c36a;color:var(--warning)}.alert{border:1px solid #d92d20;background:#fff5f5;color:var(--danger);border-radius:4px}.alert,.success{padding:10px 12px}.success{border:1px solid #7fba7a;background:#f1fbf1;color:var(--success);border-radius:4px}.stack{display:grid;grid-gap:14px;gap:14px}.stack>.button,.stack>form>.button{justify-self:start}.page-frame{margin:0 auto;width:100%}.page-frame>header{display:grid;grid-gap:8px;gap:8px;margin-bottom:12px}.page-frame>header .muted{max-width:680px;margin:0}.saas-setup-page{max-width:840px}.saas-admin-page,.saas-space-page{max-width:1120px}.intro-page{max-width:960px}.portal-page-header{display:flex!important;align-items:flex-end;justify-content:space-between;gap:18px}.portal-page-header>div{display:grid;grid-gap:8px;gap:8px}.subnav{display:flex;gap:4px;border-bottom:1px solid var(--line)}.subnav,.subnav a{align-items:center}.subnav a{display:inline-flex;min-height:40px;border-bottom:2px solid transparent;color:var(--muted);font-weight:700;padding:0 12px;text-decoration:none}.subnav a:hover{color:var(--blue);background:#f4f9ff}.subnav a.active{color:var(--blue);border-color:var(--blue-2)}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid var(--line);background:#fbfdff;border-radius:4px;padding:12px;overflow-x:auto}.table{width:100%;border-collapse:collapse}.table td,.table th{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}.field-line{display:grid;grid-gap:6px;gap:6px}.setup-flow{display:grid;grid-gap:14px;gap:14px;width:100%}.setup-flow>div:first-child{display:grid;grid-gap:6px;gap:6px;padding-left:12px;border-left:3px solid var(--blue-2)}.setup-flow>div:first-child p{margin:0}.setup-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:2px}.setup-invite-stack{gap:12px}.form-grid{display:grid;grid-gap:12px;gap:12px}.form-grid.two-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.span-all{grid-column:1/-1}.metric-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.metric-card{border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:14px 16px;display:grid;grid-gap:6px;gap:6px}.metric-card strong{font-size:26px;line-height:1;color:var(--text)}.metric-label{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.workspace-tile{display:grid;grid-template-columns:42px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:16px;color:var(--text);text-decoration:none}.workspace-tile:hover{border-color:var(--blue-2);background:#fbfdff;color:var(--text)}.tile-icon{width:42px;height:42px;border-radius:6px;display:inline-grid;place-items:center;font-weight:800}.tile-blue{background:#e8f2ff;color:var(--blue)}.tile-green{background:#e7f6ee;color:#0e5f32}.tile-copy{display:grid;grid-gap:4px;gap:4px}.tile-copy strong{font-size:16px}.tile-copy small{color:var(--muted);line-height:1.35}.tile-arrow{color:var(--blue);font-size:24px;line-height:1}.compact-list{display:grid;border:1px solid var(--line);border-radius:6px;overflow:hidden}.compact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:var(--surface);border-bottom:1px solid var(--line)}.compact-row:last-child{border-bottom:0}.compact-row span:first-child{min-width:0;display:grid;grid-gap:3px;gap:3px}.compact-row small,.empty-inline{color:var(--muted)}.empty-inline{display:grid;grid-gap:4px;gap:4px;border:1px dashed var(--line-strong,var(--line));border-radius:6px;background:#fbfdff;padding:14px}.empty-inline strong{color:var(--text)}.data-table{border:1px solid var(--line);border-radius:6px;overflow:hidden}.data-table .table th{background:#f8fafc;color:#43536a;font-size:12px;text-transform:uppercase}.data-table .table tr:last-child td{border-bottom:0}.single-form-section{display:grid;max-width:860px}.invite-panel{display:grid;grid-gap:12px;gap:12px;align-content:start;align-self:start}.invite-panel-head{display:grid;grid-gap:4px;gap:4px}.invite-panel-head h2{font-size:18px}.invite-panel-head p{margin:0;font-size:14px;line-height:1.4}.invite-form-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,220px) auto;grid-gap:12px;gap:12px;align-items:end}.invite-submit{min-height:38px;height:38px;white-space:nowrap;align-self:end}.invite-panel .success p{word-break:break-all;margin-bottom:0}.readonly-field{display:grid;grid-gap:6px;gap:6px;min-height:62px;align-content:start;border:1px solid var(--line);border-radius:6px;background:#fbfdff;padding:10px 12px}.readonly-field label{margin:0}.status-callout{display:grid;grid-gap:4px;gap:4px;border:1px solid var(--line);border-radius:6px;background:#fbfdff;padding:12px}.status-callout.ok{border-color:#a9dec3;background:#f3fbf6}.status-callout.warn{border-color:#e0c36a;background:#fffaf0}.status-callout span{color:var(--muted)}.settings-page{max-width:1120px}.settings-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.settings-page form.panel{box-shadow:none}.provider-status{justify-content:flex-end;margin:0}.settings-actions{display:grid;grid-gap:10px;gap:10px;align-content:start}.saas-space-page .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-layout{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.intro-rail{display:grid;grid-gap:8px;gap:8px}.intro-step{display:grid;grid-template-columns:32px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;width:100%;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:10px;text-align:left;cursor:pointer}.intro-step.active,.intro-step:hover{border-color:var(--blue-2);background:#f4f9ff}.intro-step-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;background:var(--surface-alt);color:var(--blue);font-weight:700}.intro-step small,.intro-step strong{display:block}.intro-step small{color:var(--muted);margin-top:2px}.intro-panel{min-height:360px;display:grid;align-content:start;grid-gap:14px;gap:14px}.intro-points{display:grid;grid-gap:10px;gap:10px;margin:8px 0 12px}.intro-point{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#fbfdff}.intro-point-icon{width:14px;height:14px;border:2px solid var(--blue-2);border-radius:50%;box-shadow:inset 0 0 0 3px #fff;background:var(--blue-2)}.role-config{align-content:start}.role-list{display:grid;grid-gap:12px;gap:12px}.role-card{border:1px solid var(--line);border-radius:6px;background:#fbfdff;padding:14px;display:grid;grid-gap:14px;gap:14px}.role-card-head{display:grid;grid-template-columns:minmax(180px,1fr) auto;grid-gap:12px;gap:12px;align-items:end}.role-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.permission-item{display:grid;grid-template-columns:20px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:10px;min-height:70px}.permission-item:not(.locked-permission){cursor:pointer}.permission-mark{width:16px;height:16px;border-radius:4px;background:#e8f2fb;border:1px solid #b8d6ef}.permission-copy{display:grid;grid-gap:3px;gap:3px}.permission-copy strong{font-size:14px}.permission-copy small{color:var(--muted);line-height:1.3}.toggle{position:relative;display:inline-flex;width:42px;height:24px}.toggle input{position:absolute;inset:0;opacity:0;cursor:pointer}.toggle-track{width:42px;height:24px;border-radius:999px;border:1px solid var(--line);background:#d9e1ea;transition:background .16s ease,border-color .16s ease}.toggle-track:after{content:"";position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(23,32,51,.25);transition:transform .16s ease}.toggle input:checked+.toggle-track{background:var(--blue-2);border-color:var(--blue-2)}.toggle input:checked+.toggle-track:after{transform:translateX(18px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--blue-2);outline-offset:2px}.api-page{max-width:1120px}.api-status-strip{display:grid;max-width:440px}.api-status-strip .metric-card{min-height:112px}.api-status-strip .metric-card strong{font-size:24px}.metric-card.status-ok{border-color:#9fd89f;background:#f6fbf6}.metric-card.status-warn{border-color:#e0c36a;background:#fffaf0}.error-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.error-summary-grid .metric-card{min-height:92px}.error-summary-grid .metric-card strong{font-size:24px}.error-list{display:grid;grid-gap:10px;gap:10px}.error-item{display:grid;grid-template-columns:minmax(0,1fr) 190px;grid-gap:14px;gap:14px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:14px}.error-item-main{display:grid;grid-gap:12px;gap:12px;min-width:0}.error-file-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.error-file-line h3{overflow-wrap:anywhere}.error-file-line p{margin:4px 0 0;font-size:13px}.issue-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);grid-gap:14px;gap:14px;border:1px solid #d9e3ef;border-radius:6px;background:#fbfdff;padding:12px}.issue-action,.issue-copy{display:grid;grid-gap:6px;gap:6px;align-content:start}.issue-action p,.issue-copy p{margin:0;color:var(--muted);line-height:1.45}.issue-copy strong{font-size:15px}.issue-kicker{color:#43536a;font-size:11px;font-weight:800;text-transform:uppercase}.issue-action{border-left:1px solid var(--line);padding-left:14px}.issue-action form{display:inline-flex}.error-meta{display:grid;align-content:start;grid-gap:8px;gap:8px;border-left:1px solid var(--line);padding-left:14px;color:var(--muted);font-size:12px}.error-meta span{display:grid;grid-gap:2px;gap:2px}.error-meta strong{color:var(--text);font-size:12px}.history-errors-details>summary{list-style:none;cursor:pointer}.history-errors-details>summary::-webkit-details-marker{display:none}.history-errors-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.history-errors-summary>span:first-child{display:grid;grid-gap:4px;gap:4px;min-width:0}.history-errors-intro{margin-top:0}.api-provider-status{justify-content:flex-start;margin:4px 0 0}.api-quick-links .workspace-tile{grid-template-columns:minmax(0,1fr) auto;min-height:98px}.api-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.tabs{display:inline-flex;width:-moz-fit-content;width:fit-content;border:1px solid var(--line);border-radius:6px;background:var(--surface);overflow:hidden}.tabs button{border:0;border-right:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;font:inherit;font-weight:700;min-height:38px;padding:0 16px}.tabs button:last-child{border-right:0}.tabs button.active,.tabs button:hover{background:#e8f2ff;color:var(--blue)}.api-doc-guide{display:grid;grid-gap:14px;gap:14px;max-width:920px}.api-doc-guide section{border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:16px;display:grid;grid-gap:10px;gap:10px}.api-doc-guide p,.api-doc-guide ul{margin:0}.api-doc-guide ul{padding-left:20px;color:var(--muted);line-height:1.6}.api-doc-guide code{color:var(--blue);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.api-code-block{margin:0;max-height:280px}.swagger-panel{border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:10px;overflow:hidden}.swagger-panel .swagger-ui{font-family:Aptos,Segoe UI,system-ui,sans-serif}.swagger-panel .swagger-ui .info{margin:16px 0}.swagger-panel .swagger-ui .scheme-container{box-shadow:none;border:1px solid var(--line);border-radius:6px}.api-database-layout{display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.api-table-sidebar{position:-webkit-sticky;position:sticky;top:72px;display:grid;grid-gap:12px;gap:12px;max-height:calc(100vh - 96px);overflow:auto}.api-table-sidebar p{margin:0}.table-group{display:grid;grid-gap:8px;gap:8px}.table-group h3{color:var(--muted);font-size:12px;text-transform:uppercase}.table-selector{display:grid;grid-gap:3px;gap:3px;width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--text);cursor:pointer;padding:10px;text-align:left}.table-selector.active,.table-selector:hover{border-color:var(--blue-2);background:#f4f9ff}.table-selector span{font-weight:700}.table-selector small{color:var(--muted);line-height:1.25}.api-table-content{min-width:0;display:grid;grid-gap:14px;gap:14px}.table-content-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.table-content-header p{margin:4px 0 0}.database-count-row{border-top:1px solid var(--line);padding-top:10px}.api-data-table{max-width:100%;overflow-x:auto}.api-data-table .table{min-width:760px}.api-data-table td span{display:block;max-width:260px;max-height:120px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.api-playground{max-width:980px}.api-playground .panel{padding:16px}.api-playground-form{max-width:860px}.api-fieldset{border:1px solid var(--line);border-radius:6px;padding:12px;display:flex;gap:14px;flex-wrap:wrap}.api-fieldset legend{color:var(--muted);font-size:12px;font-weight:700;padding:0 4px}.checkbox-line,.radio-line{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:700;color:var(--text)}.checkbox-line input,.radio-line input{width:auto;margin:0}.checkbox-line{min-height:38px;align-self:end;border:1px solid var(--line);border-radius:6px;background:#fbfdff;padding:9px 11px}.mono-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.json-panel{border:1px solid var(--line);border-radius:6px;background:#fbfdff;overflow:hidden}.json-panel summary{cursor:pointer;font-weight:700;padding:10px 12px;border-bottom:1px solid var(--line)}.json-panel .code{border:0;border-radius:0;margin:0;max-height:360px}.chat-result{border:1px solid var(--line);border-radius:6px;background:#fff;padding:12px;white-space:pre-wrap;line-height:1.55}.api-result-panel,.mcp-page{max-width:980px}.mcp-panel{padding:22px}.mcp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.mcp-head p{margin-bottom:0;max-width:720px}.mcp-head code,.mcp-step code{color:var(--blue);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.mcp-badges{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.mcp-url-box{display:grid;grid-gap:14px;gap:14px;background:#fbfdff;padding:14px}.mcp-url-box,.mcp-value-row{border:1px solid var(--line);border-radius:6px}.mcp-value-row{display:flex;align-items:center;gap:10px;background:var(--surface);padding:10px 12px}.mcp-value-row code{min-width:0;flex:1 1;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.copy-button{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--text);cursor:pointer;font:inherit;font-size:11px;font-weight:700;padding:4px 9px;white-space:nowrap}.copy-button:hover{border-color:var(--blue-2);color:var(--blue)}.copy-button:disabled{cursor:not-allowed;opacity:.45}.compact-message{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;min-height:30px;padding:6px 10px;font-size:12px;font-weight:700}.mcp-integration{border:1px solid var(--line);border-radius:6px;background:var(--surface);overflow:hidden}.mcp-integration summary{cursor:pointer;font-size:14px;font-weight:800;padding:13px 14px}.mcp-integration summary:hover{background:#f4f9ff;color:var(--blue)}.mcp-integration-body{display:grid;grid-gap:14px;gap:14px;border-top:1px solid var(--line);padding:14px}.mcp-doc-links{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;font-weight:700}.mcp-doc-links a{color:var(--blue-2)}.mcp-step{display:grid;grid-template-columns:22px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;color:var(--text);font-size:14px;line-height:1.5}.mcp-step>span{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:var(--blue-2);color:#fff;font-size:10px;font-weight:800;margin-top:1px}.mcp-code-wrap{position:relative;margin-top:6px}.mcp-code-wrap .copy-button{position:absolute;right:8px;top:8px}.mcp-code{margin:0;padding-right:84px;max-height:280px;white-space:pre-wrap}@media (max-width:900px){.container{width:min(100% - 28px,1120px);padding-top:22px}.api-analytics-grid,.api-database-layout,.error-item,.error-summary-grid,.form-grid.two-fields,.grid.three,.grid.two,.intro-layout,.invite-form-row,.issue-card,.metric-strip,.permission-grid,.role-card-head,.saas-space-page .grid.two,.section-grid{grid-template-columns:1fr}.topbar{height:auto;padding:12px 16px}.portal-page-header,.topbar{align-items:flex-start;flex-direction:column}.subnav{overflow-x:auto}.role-actions{justify-content:flex-start}.span-all{grid-column:auto}.invite-submit{width:100%}.api-table-sidebar{position:static;max-height:none}.mcp-head,.mcp-value-row,.table-content-header{display:grid}.mcp-badges{justify-content:flex-start}.mcp-code-wrap .copy-button{position:static;margin-top:8px}.mcp-code{padding-right:12px}.error-meta,.issue-action{border-left:0;padding-left:0}}