:root{--ink:#152339;--muted:#536278;--line:#e5eaf1;--surface:#fff;--ground:#f5f7fb;--nav:#14243b;--accent:#315bdc;--accent-hover:#244cc4;--accent-soft:#edf2ff;--success:#16704c;--success-soft:#e9f6ef;--warning:#855013;--warning-soft:#fff5df;--danger:#b02d39;--danger-soft:#fff0f1;--radius:12px}
*{box-sizing:border-box}
html{font-size:14px;scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--ground);font-family:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}
button,a,input,select{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
button,a,input,select{outline-offset:4px}
:focus-visible{outline:3px solid #5179ed}
::selection{background:#cbd9ff;color:#102549}
button{color:inherit}
a{color:inherit;text-decoration:none}
button,select{transition:background-color .18s,border-color .18s,color .18s}
button svg,svg.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:#fff;padding:12px 18px;border-radius:8px;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.app-shell{min-height:100dvh;display:grid;grid-template-columns:224px minmax(0,1fr)}
.sidebar{background:var(--nav);color:#d1daea;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh;padding:27px 18px 20px}
.brand{display:flex;align-items:center;gap:11px;color:#fff;font-size:23px;font-weight:680;letter-spacing:1px;padding:0 12px}
.brand-mark{display:grid;place-items:center;width:31px;height:33px;color:#c7d6ff}
.brand-mark svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round}
.brand-api{font-size:15px;letter-spacing:.5px;margin-left:9px;color:#b9c9e2;font-weight:550}
.workspace{margin:32px 4px 23px;display:flex;align-items:center;gap:10px;padding:13px 9px;border:1px solid #334159;border-radius:9px}
.workspace-avatar,.user-avatar,.top-avatar{display:grid;place-items:center;flex:none}
.workspace-avatar{width:31px;height:31px;background:#304464;color:#e5eeff;border-radius:7px;font-size:13px}
.workspace strong{display:block;font-size:12px;font-weight:550}
.workspace small{display:block;font-size:12px;color:#a6b5cb;margin-top:2px}
.nav-list{display:grid;gap:7px}
.nav-item{display:flex;align-items:center;gap:12px;text-align:left;border:0;background:transparent;color:#b7c5dc;border-radius:8px;padding:12px 14px;font-weight:500;font-size:13px}
.nav-item svg{width:18px;height:18px}
.nav-item:hover{background:#21344e;color:#fff}
.nav-item.active{background:#2a4265;color:#fff}
.nav-count{font-size:12px;background:#41587a;color:#ecf2fd;padding:0 6px;border-radius:4px;margin-left:auto}
.sidebar-help{margin-top:auto;padding:36px 12px 22px}
.sidebar-help strong{font-size:12px;color:#e1e9f6;font-weight:550}
.sidebar-help p{font-size:12px;color:#a6b5cb;line-height:1.8;margin:9px 0 12px}
.sidebar-help .text-link{font-size:12px;color:#cfddfa}
.sidebar-foot{display:flex;align-items:center;gap:11px;border-top:1px solid #334159;padding:19px 12px 0;font-size:12px;color:#e1e9f6}
.user-avatar{width:31px;height:31px;border-radius:50%;background:#344561;color:#e2eaf7}
.sidebar-foot small{display:block;font-size:12px;color:#a6b5cb;margin-top:1px}
.main-shell{min-width:0}
.prototype-bar{padding:9px 36px;background:#fff7e5;border-bottom:1px solid #f1e4c7;display:flex;align-items:center;gap:15px;font-size:12px;color:#7c551f;flex-wrap:wrap}
.prototype-bar strong{font-weight:650;white-space:nowrap}
.prototype-bar span{color:#745b37}
.topbar{height:65px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);gap:14px}
.topbar-location{font-size:12px;color:var(--muted)}
.topbar-location>span:first-child{margin:0 12px;color:#bdc6d3}
.topbar-location>span:last-child{color:#34445b}
.topbar-right{display:flex;align-items:center;gap:22px;font-size:12px}
.environment-label{color:var(--muted)}
.top-avatar{width:29px;height:29px;border-radius:50%;background:#edf1f7;color:#536278;font-size:12px}
main{padding:30px 36px 20px;max-width:1580px;margin:auto}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:27px}
h1{font-size:25px;letter-spacing:-.03em;line-height:1.3;margin:0 0 8px;font-weight:650}
.page-heading p{color:var(--muted);font-size:12px;margin:0}
.scenario-control{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:9px;white-space:nowrap}
select{appearance:auto;border:1px solid #dce3ed;background:#fff;color:#425269;border-radius:7px;min-height:34px;padding:6px 10px;font-size:12px;max-width:100%}
select:hover{border-color:#aebed5}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:7px;min-height:38px;padding:9px 16px;font-size:14px;font-weight:550;line-height:1.4;white-space:nowrap}
.button.primary{background:var(--accent);color:#fff}
.button.primary:hover{background:var(--accent-hover)}
.button.secondary{background:#fff;border-color:#dbe2ed;color:#36465d}
.button.secondary:hover{background:#f4f7fc;border-color:#bdcbe0}
.button:disabled{background:#f0f3f8;border-color:#e0e6ef;color:#536278}
.text-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;color:var(--accent);padding:3px 0;font-size:14px;font-weight:550;text-decoration:none;text-underline-offset:4px;line-height:1.5}
.text-link:hover{text-decoration:underline;color:var(--accent-hover)}
.text-link.light:hover{color:#fff}
.text-link svg{width:15px;height:15px}
.balance-strip{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 27px;margin-bottom:24px;gap:36px}
.label{font-size:12px;color:var(--muted);display:block}
.sample-label{display:inline-block;color:#536278;font-size:12px;border:1px solid #e2e7ef;border-radius:3px;padding:0 4px;margin-left:7px;vertical-align:1px}
.balance-main{min-width:210px}
.balance-amount{font-size:40px;line-height:1.3;letter-spacing:-1.3px;font-weight:620;display:flex;align-items:baseline;gap:5px;margin-top:6px;font-variant-numeric:tabular-nums}
.balance-amount>span:first-child{font-size:23px;font-weight:500;letter-spacing:0}
.balance-main p{font-size:12px;color:var(--muted);margin:9px 0 0}
.balance-facts{display:flex;gap:40px;padding-left:33px;border-left:1px solid var(--line)}
.balance-facts strong{display:block;font-size:21px;line-height:1.4;margin:9px 0 4px;font-weight:600;font-variant-numeric:tabular-nums}
.balance-facts .unit{font-size:12px;font-weight:400;color:var(--muted)}
.balance-facts small{font-size:12px;color:var(--muted)}
.balance-action{margin-left:auto;flex:none;text-align:center}
.balance-action p{font-size:12px;color:var(--muted);margin:9px 0 0}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:24px}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.usage-panel{padding:24px 26px 16px}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
h2{font-size:15px;line-height:1.4;font-weight:620;margin:0}
.section-head p{font-size:12px;color:var(--muted);margin:5px 0 0}
.section-head select{font-size:12px}
.usage-total{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}
.usage-total strong{font-size:25px;font-weight:610;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.usage-total span{font-size:12px;color:var(--muted)}
.usage-chart{height:169px;position:relative}
.usage-chart svg{width:100%;height:100%;overflow:visible}
.chart-text{fill:#536278;font-size:12px;font-family:inherit}
.chart-grid{stroke:#edf0f5;stroke-width:1;stroke-dasharray:3 4}
.chart-bar{fill:#7899eb}
.chart-bar.last{fill:var(--accent)}
.chart-zero{stroke:#dce3ed;stroke-width:1}
.connect-panel{padding:24px 25px 21px;background:#edf2fc;border:1px solid #e0e8fa;border-radius:var(--radius)}


.connect-panel h2{font-size:17px}
.connect-panel p{font-size:12px;line-height:1.9;color:#536278;max-width:32em;margin:10px 0 15px}
.connection-status{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-bottom:15px;color:#536278;padding:10px 0;border-top:1px solid #d8e2f6}
.connection-status strong{color:#536278;font-weight:500}
.connect-panel>.button{width:100%}
.connect-panel>small{display:block;text-align:center;font-size:12px;color:#536278;margin-top:10px}
.attention-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:23px 0;padding:0 1px}
.attention-copy{display:flex;align-items:center;gap:9px;font-size:12px;flex-wrap:wrap}
.attention-copy strong{font-size:12px;font-weight:600}
.attention-copy>span:last-child{font-size:12px;color:var(--muted)}
.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex:none}
.status-dot.pending{background:#c38c2b}
.recent-panel .section-head{padding:22px 25px 0}
.table-scroll{overflow-x:auto;width:100%}
table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:12px}
th{background:#f8faff;padding:12px 23px;color:#536278;font-weight:500;font-size:12px}
td{padding:15px 23px;border-bottom:1px solid #eef1f6;color:#46556d;font-variant-numeric:tabular-nums}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:#fbfcff}
td.numeric,th.numeric{text-align:right}
td.code{font-family:Consolas,"SFMono-Regular",monospace;font-size:12px;color:#536278}
.cell-primary{color:#263b58;font-weight:500}
.cell-sub{display:block;color:#536278;font-size:12px;margin-top:3px}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:3px 6px;font-size:12px;font-weight:500;white-space:nowrap}
.badge.settled,.badge.enabled{color:var(--success);background:var(--success-soft)}
.badge.pending{color:var(--warning);background:var(--warning-soft)}
.badge.failed,.badge.disabled{color:#536278;background:#f0f2f6}
.overview-bottom{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;padding:17px 2px}
.overview-bottom strong{color:#41536d;font-weight:600}
.content-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line);color:#536278;font-size:12px}
.notice{display:flex;gap:8px 18px;align-items:baseline;padding:14px 17px;border-radius:8px;border:1px solid transparent;font-size:12px;margin-bottom:22px}
.notice strong{font-size:12px;font-weight:620;flex:none}
.notice span{line-height:1.8}
.notice.info{color:#496180;background:#eef4fe;border-color:#dfe9fa}
.notice.warning{color:var(--warning);background:var(--warning-soft);border-color:#f1e2bb}
.toolbar-heading{margin:26px 0 20px}
.inline-form{background:#fff;border:1px solid #dbe4f4;border-radius:var(--radius);padding:24px;margin:0 0 22px}
h3{font-size:13px;margin:0 0 7px;font-weight:600}
.inline-form p{font-size:12px;color:var(--muted);margin:0 0 18px}
.form-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;max-width:620px}
.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#536278}
input{border:1px solid #dce3ed;border-radius:7px;background:#fff;color:var(--ink);padding:10px 12px;min-width:0;min-height:37px;font-size:12px;caret-color:var(--accent)}
input::placeholder{color:#536278;opacity:1}
input:hover{border-color:#aebed5}
input:focus{border-color:#6b8be4}
.form-actions{display:flex;align-items:center;gap:10px;margin-top:20px;flex-wrap:wrap}
.error-text{font-size:12px;color:var(--danger)}
.filterbar{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:18px 0}
.filterbar label{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:7px}
.filterbar select{min-width:125px}
.filterbar .quiet{color:var(--muted);font-size:12px;margin-left:auto;align-self:center}
.search-field{flex:1;max-width:320px;min-width:180px}
.search-field input{font-size:12px;min-height:34px;padding:7px 11px}
.bill-summary{display:flex;align-items:center;gap:36px;padding:24px 27px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:28px}
.bill-summary strong{font-size:31px;display:block;margin-top:7px;font-weight:610;font-variant-numeric:tabular-nums}
.bill-summary p{font-size:12px;color:var(--muted);max-width:36em;margin:0}
.bill-summary .button{margin-left:auto}
.section-title{margin:24px 0 20px}
.table-note{font-size:12px;color:var(--muted);line-height:1.8}
.empty-state{text-align:center;padding:44px 20px}
.empty-state h3{font-size:13px}
.empty-state p{font-size:12px;color:var(--muted);margin:7px auto 16px;max-width:40em}
.detail-panel{border:1px solid #d8e2f4;background:#fff;border-radius:var(--radius);padding:25px;margin-top:22px}
.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.detail-grid dt{font-size:12px;color:var(--muted);margin-bottom:5px}
.detail-grid dd{margin:0;font-size:12px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.detail-panel p{font-size:12px;color:var(--muted);line-height:1.8}
.detail-progress{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.detail-progress span{padding:7px 11px;border:1px solid var(--line);border-radius:5px;font-size:12px}
.detail-progress .uncertain{color:var(--warning);border-color:#e6cc99;background:var(--warning-soft)}
.guide-view{max-width:920px}
.guide-view>h2{font-size:22px;margin:30px 0 12px}
.guide-intro{color:var(--muted);font-size:12px;line-height:1.9;max-width:58em;margin-bottom:32px}
.guide-step{display:flex;gap:20px;padding:27px 0;border-top:1px solid var(--line)}
.step-number{display:grid;place-items:center;background:#e7edfa;border-radius:50%;color:#4163b2;font-size:12px;font-weight:650;flex:none;width:28px;height:28px}
.guide-step>div{min-width:0;flex:1}
.guide-step h3{font-size:14px}
.guide-step p,.guide-footer p{font-size:12px;color:var(--muted);line-height:1.9;margin:8px 0 17px;max-width:64em}
.code-row{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:15px;flex-wrap:wrap}
code{font-family:Consolas,"SFMono-Regular",monospace;font-size:12px;overflow-wrap:anywhere;white-space:normal}
.code-row .button{margin-left:auto}
.guide-footer{margin-top:26px;background:#edf2fb;padding:23px 25px;border-radius:var(--radius)}
.loading-panel{padding:35px 30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);min-height:400px}
.loading-panel p{color:var(--muted);font-size:12px}
.skeleton{height:44px;background:#eef1f7;border-radius:6px;width:66%;margin:20px 0}
.skeleton.wide{height:102px;width:100%}
.toast{position:fixed;right:28px;bottom:25px;max-width:min(420px,calc(100vw - 40px));padding:14px 20px;background:#18324e;border:1px solid #35506f;border-radius:8px;color:#f5f8fc;font-size:12px;z-index:20}
.manual-copy{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);z-index:30;background:#fff;border:1px solid #b9c9e4;border-radius:10px;padding:18px;max-width:600px;width:calc(100% - 40px);display:flex;gap:10px;flex-wrap:wrap}
.manual-copy label{width:100%;font-size:12px;color:var(--muted)}
.manual-copy input{flex:1;min-width:160px;font-family:Consolas,monospace;font-size:12px}
.mobile-only{display:none}
.icon-button{border:0;background:transparent;padding:5px;color:#40536d}
#created-key code{display:block;word-break:break-all;color:#254b92}
@media(min-width:1600px){main{padding-top:40px}.balance-strip{padding-top:30px;padding-bottom:30px}.usage-chart{height:206px}}
@media(max-width:1200px){.app-shell{grid-template-columns:202px minmax(0,1fr)}main{padding:26px 25px 20px}.topbar{padding:0 25px}.prototype-bar{padding:9px 25px}.sidebar{padding-left:12px;padding-right:12px}.balance-strip{gap:24px;padding:23px}.balance-main{min-width:180px}.balance-facts{gap:25px;padding-left:24px}.balance-action{display:none}.overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(235px,1fr);gap:20px}th,td{padding-left:18px;padding-right:18px}.notice{align-items:flex-start;flex-direction:column;gap:5px}.bill-summary{gap:24px;flex-wrap:wrap}.bill-summary .button{margin-left:0}}
@media(max-width:980px){.overview-grid{grid-template-columns:1fr}.connect-panel{display:grid;grid-template-columns:1fr auto;column-gap:25px;align-items:center}.connect-panel h2{grid-column:1}.connect-panel p{grid-column:1;max-width:42em;margin-bottom:8px}.connection-status{grid-column:1;padding:0;border:0;justify-content:flex-start;gap:20px;margin:3px 0 0}.connect-panel>.button{grid-column:2;grid-row:1/3;width:auto}.connect-panel>small{grid-column:2;grid-row:3;margin:0}.attention-row{align-items:flex-start}.attention-copy{max-width:75%;gap:6px}.attention-copy>span:last-child{width:100%;padding-left:12px}.balance-facts{gap:20px}.balance-strip{gap:20px}.balance-main{min-width:170px}.page-heading{align-items:flex-start}.scenario-control{flex-direction:column;align-items:flex-start;gap:5px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html{font-size:14px}.app-shell{display:block}.sidebar{position:relative;height:auto;padding:18px 20px;display:none}.app-shell.menu-open .sidebar{display:block}.brand{padding:0;max-width:200px}.workspace,.sidebar-help,.sidebar-foot{display:none}.nav-list{margin-top:20px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.nav-item{padding:10px 8px;font-size:12px;gap:7px}.nav-item svg{width:15px;height:15px}.nav-count{display:none}.prototype-bar{padding:10px 20px;gap:3px;font-size:12px}.prototype-bar strong{font-size:12px;width:100%}.topbar{height:58px;padding:0 20px;justify-content:flex-start;gap:12px}.topbar-right{margin-left:auto;gap:15px}.environment-label{display:none}.topbar-right>.text-link{font-size:12px}.topbar-location{font-size:12px}.topbar-location>span:first-child{margin:0 7px}.mobile-only{display:inline-flex}main{padding:24px 20px 18px}.page-heading{margin-bottom:24px;gap:12px}h1{font-size:22px}.page-heading p{font-size:12px;max-width:26em}.scenario-control{font-size:12px}.scenario-control select{font-size:12px;min-height:30px;padding:4px 7px}.balance-strip{align-items:flex-start;padding:21px;gap:20px;flex-wrap:wrap}.balance-main{min-width:0;flex:1}.balance-main p{max-width:15em}.balance-amount{font-size:36px}.balance-facts{padding-left:23px;gap:20px}.balance-facts strong{font-size:19px}.balance-facts small{font-size:12px}.balance-facts>div:last-child{display:none}.usage-panel{padding:22px 20px 15px}.usage-chart{height:170px}.connect-panel{padding:22px}.connect-panel h2{font-size:16px}.connect-panel>.button{font-size:12px;padding:9px 12px}.connect-panel p{font-size:12px}.connect-panel>small{font-size:12px}.attention-copy{max-width:70%}.attention-row>.text-link{font-size:12px;text-align:right;max-width:80px}.recent-panel .section-head{padding:20px 20px 0}.recent-panel .section-head p{max-width:20em}.section-head h2{font-size:14px}.section-head .text-link{font-size:12px}.content-footer{font-size:12px;align-items:flex-start;gap:10px}.content-footer span:last-child{text-align:right}.form-grid{grid-template-columns:1fr}.filterbar .quiet{width:100%;margin:0}.bill-summary{padding:22px}.bill-summary p{font-size:12px}.guide-view>h2{font-size:19px}.guide-step{gap:14px}.guide-step h3{font-size:13px}.guide-step p,.guide-footer p{font-size:12px}.code-row{padding:12px}.code-row code{font-size:12px}.code-row .button{margin-left:0}.overview-bottom{font-size:12px}.overview-bottom>.text-link{font-size:12px}}
@media(max-width:430px){main{padding-left:15px;padding-right:15px}.topbar{padding:0 15px}.prototype-bar{padding-left:15px;padding-right:15px}.top-avatar{display:none}.balance-strip{padding:19px;gap:13px}.balance-main .label{font-size:12px}.balance-main p{font-size:12px}.balance-facts{padding-left:16px}.balance-facts .label{font-size:12px}.balance-facts strong{font-size:17px}.balance-amount{font-size:32px}.balance-amount>span:first-child{font-size:21px}.sample-label{font-size:12px;margin-left:4px}.connect-panel{display:block}.connect-panel>.button{width:100%;margin-top:15px}.connect-panel>small{margin-top:9px;font-size:12px}.connection-status{margin-top:14px}.connect-panel p{font-size:12px}.page-heading{gap:9px}.scenario-control{max-width:86px}.page-heading p{max-width:19em;font-size:12px}.notice{padding:13px 14px;font-size:12px}.notice strong{font-size:12px}.detail-panel{padding:20px 16px}.detail-grid{grid-template-columns:1fr 1fr;gap:18px 12px}.detail-grid dd{font-size:12px}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item{font-size:12px;padding:11px}.usage-total span{font-size:12px}.toast{right:20px}.bill-summary{gap:16px}.bill-summary strong{font-size:28px}.form-actions .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.brand-api{display:block;margin-left:0;font-size:12px;letter-spacing:.3px;margin-top:-1px}

.usage-total{flex-wrap:wrap;gap:4px 12px}
@media(max-width:430px){.balance-strip{display:block}.balance-facts{margin-top:20px;padding:16px 0 0;border-left:0;border-top:1px solid var(--line);display:flex;gap:30px}.balance-facts>div:last-child{display:block}.balance-main p{max-width:none}}

/* Astra local website: public entry, authenticated workspace, separate administrator module. */
.environment-banner{background:#edf2fc;border-bottom:1px solid #d8e2f4;color:#425a7d;text-align:center;padding:9px 20px;font-size:12px}
.public-header{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid var(--line);padding:20px max(28px,calc((100vw - 1160px)/2))}
.public-brand{padding:0;color:#152339}
.public-brand .brand-mark{color:#315bdc}
.public-brand .brand-api{color:#536278;font-weight:400}
.public-nav{display:flex;align-items:center;gap:25px;font-size:14px}
.public-nav>a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:5px}
.public-nav .button{min-height:40px}
.public-page{max-width:1160px;margin:0 auto}
.home-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:65px;align-items:center;padding:48px 0 60px}
.home-intro h1{font-size:46px;line-height:1.25;letter-spacing:-.035em;font-weight:650;margin-bottom:25px}
.home-intro>p{font-size:15px;line-height:1.9;color:#536278;max-width:35em}
.home-actions{display:flex;gap:13px;margin-top:28px;flex-wrap:wrap}
.home-note{font-size:12px!important;margin-top:22px;color:#536278}
.service-map{padding:27px 29px;background:#fff;border:1px solid #dfe6f2;border-radius:12px}
.map-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}
.map-heading h2{font-size:15px;max-width:13em}
.map-node{display:flex;align-items:center;gap:15px;padding:12px 13px;border:1px solid #e0e7f1;border-radius:8px}
.map-node strong{display:block;font-size:14px;font-weight:600}
.map-node span:not(.map-number){display:block;color:#536278;font-size:12px;margin-top:4px;line-height:1.7}
.map-number{display:grid;place-items:center;width:27px;height:27px;border:1px solid #cdd8ea;border-radius:50%;font-size:12px;color:#536278;flex:none}
.astra-node{border-color:#a9bdee;background:#f2f6ff}
.astra-node .map-number{background:#315bdc;border-color:#315bdc;color:#fff}
.map-connector{height:19px;width:1px;background:#ced8e9;margin-left:27px}
.service-map>p{font-size:12px;color:#536278;line-height:1.8;margin:19px 0 0}
.home-details{padding:5px 0 37px}
.home-details>h2{font-size:22px;margin-bottom:25px}
.capability-row{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.capability-row strong{font-size:14px;font-weight:600}
.capability-row p{font-size:14px;color:#536278;line-height:1.9;margin:0;max-width:57em}
.setup-callout{display:flex;align-items:center;gap:25px;justify-content:space-between;background:#fff;border:1px solid #d8e2f4;border-radius:10px;padding:22px 25px;margin:20px 0 24px}
.setup-callout strong{font-size:14px}
.setup-callout p{font-size:12px;color:#536278;margin:7px 0 0}
.public-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);max-width:1160px;margin:10px auto 0;padding:25px 0 30px;color:#536278;font-size:12px}
.auth-page{max-width:470px;margin:28px auto 55px}
.auth-intro{margin-bottom:27px}
.auth-intro h1{font-size:30px}
.auth-intro p{font-size:14px;line-height:1.9;color:#536278}
.auth-card{background:#fff;border:1px solid #dfe6f1;border-radius:12px;padding:30px;display:grid;gap:20px}
.auth-card>label{display:grid;gap:9px;font-size:14px}
.auth-card input{font-size:14px;width:100%;min-height:43px}
.auth-card>.button{width:100%;min-height:44px}
.auth-card p{font-size:12px;color:#536278;margin:0;line-height:1.8}
.auth-card .notice{margin-bottom:0}
.registration-page{max-width:520px}
.pricing-page{padding:18px 0 35px}
.pricing-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:27px}
.pricing-eyebrow{font-size:12px;letter-spacing:.12em;color:var(--accent);font-weight:650;margin:0 0 12px}
.pricing-heading h1{font-size:34px;letter-spacing:-.02em;margin-bottom:12px}
.pricing-heading p:not(.pricing-eyebrow){font-size:14px;color:var(--muted);line-height:1.8;margin:0}
.pricing-unit{display:grid;gap:7px;padding-top:8px;text-align:right;flex:none}
.pricing-unit strong{font-size:14px;color:var(--nav);font-weight:600}
.pricing-unit span,.pricing-unit small{font-size:12px;color:var(--muted)}
.pricing-explainer{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-bottom:30px}
.pricing-explainer p{font-size:13px;line-height:1.85;color:var(--muted);margin:0}
.pricing-content{display:grid;gap:24px;min-width:0}
.model-price{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0}
.model-price-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 20px}
.model-price h2{font-size:19px;font-weight:600;margin:0 0 7px;color:var(--nav)}
.model-price-heading code{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.pricing-status{font-size:12px;line-height:1.6;color:var(--muted);text-align:right;flex:none;padding-top:2px}
.price-table{min-width:640px;width:100%;border-collapse:collapse}
.price-table caption{text-align:left;font-size:12px;color:var(--muted);padding:0 26px 14px}
.price-table thead th{background:#f5f7fb;color:var(--muted);font-weight:500;white-space:nowrap}
.price-table th,.price-table td{padding:16px 26px;font-size:14px;line-height:1.6}
.price-table tbody th{text-align:left;font-size:13px;font-weight:500;white-space:nowrap}
.price-table td{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--nav)}
.price-table tbody tr:last-child>*{border-bottom:0}
.pricing-tools{display:flex;flex-wrap:wrap;gap:20px 40px;border-top:1px solid var(--line);padding:18px 26px}
.pricing-tool{display:grid;grid-template-columns:auto auto;gap:7px 18px;align-items:baseline;font-size:13px}
.pricing-tool strong{font-weight:550}.pricing-tool span{font-variant-numeric:tabular-nums;color:var(--nav)}
.pricing-tool small{grid-column:1/-1;font-size:12px;color:var(--muted)}
.model-price>ul,.pricing-notes>ul{font-size:12px;line-height:1.85;color:var(--muted);padding:17px 26px 20px 42px;margin:0}
.model-price>ul{border-top:1px solid var(--line)}
.model-price>ul>li+li,.pricing-notes li+li{margin-top:5px}
.pricing-notes{margin-top:22px;border-top:1px solid var(--line)}
@media(max-width:760px){.pricing-page{padding-top:8px}.pricing-heading{display:block;margin-bottom:22px}.pricing-heading h1{font-size:28px}.pricing-unit{padding-top:20px;text-align:left;gap:5px}.pricing-explainer{margin-bottom:22px}.model-price-heading{padding:21px 20px 18px;gap:12px}.model-price h2{font-size:17px}.pricing-status{max-width:88px;flex-shrink:1}.price-table caption{padding-left:20px}.price-table th,.price-table td{padding:14px 20px}.pricing-tools{padding:17px 20px}.model-price>ul,.pricing-notes>ul{padding-left:36px;padding-right:20px}.pricing-content{gap:20px}}
.registration-page .auth-intro{margin-bottom:24px}
.registration-card{padding:32px;gap:24px}
.registration-email-fields,.registration-account-fields{display:grid;gap:22px}
.registration-email-fields{padding-bottom:25px;border-bottom:1px solid var(--line)}
.registration-field,.registration-account-fields>label,.registration-passwords>label{display:grid;gap:9px;font-size:14px;font-weight:550}
.verification-send-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.verification-send-row>.button{min-height:44px;padding:10px 15px}
.registration-card .field-note{font-size:12px;font-weight:400;line-height:1.75;color:#536278}
.registration-card .verification-code-input{font-family:Consolas,"SFMono-Regular",monospace;font-size:24px;letter-spacing:.28em;font-weight:600;padding:11px 14px;min-height:52px;color:var(--nav)}
.registration-card .verification-code-input::placeholder{font-family:"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;letter-spacing:normal;font-weight:400}
.verification-status{font-size:12px;font-weight:400;line-height:1.8;color:#536278;overflow-wrap:anywhere}
.verification-status[data-state="success"]{color:#146c56}
.verification-status[data-state="error"]{color:var(--danger)}
.verification-status[data-state="pending"]{color:#31527e}
.registration-passwords{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.registration-card>.button{min-height:46px;font-size:15px}
.registration-card .auth-switch{text-align:center;font-size:13px}
.registration-card .auth-switch a{margin-left:4px}
.smtp-metadata{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:22px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.smtp-metadata div{min-width:0}
.smtp-metadata dt{font-size:12px;color:var(--muted);margin-bottom:5px}
.smtp-metadata dd{margin:0;font-size:14px;color:var(--ink);overflow-wrap:anywhere}
@media(max-width:540px){.registration-page{margin-top:12px}.registration-card{padding:25px 21px;gap:22px}.registration-passwords{grid-template-columns:1fr;gap:20px}.verification-send-row{gap:8px}.verification-send-row>.button{padding:10px 12px;font-size:13px}.smtp-metadata{grid-template-columns:1fr;gap:16px}}
.form-message{font-size:13px;line-height:1.8}
.authenticated #main{padding:0;max-width:none}
.authenticated .app-shell{min-height:calc(100dvh - 38px)}
.authenticated .sidebar{height:calc(100dvh - 38px);padding-top:29px;top:0}
.authenticated .sidebar .brand{font-size:26px}
.dashboard-main{padding:0 34px 24px;min-width:0}
.dashboard-top{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:30px;gap:15px;color:#536278;font-size:13px}
.dashboard-top .button{font-size:12px;min-height:34px}
.dashboard-page{min-width:0}
.dashboard-page .page-heading p{font-size:13px}
.dashboard-page .balance-strip{gap:35px}
.dashboard-page .balance-main{min-width:240px}
.dashboard-page .balance-amount{font-size:31px;letter-spacing:-.03em;display:block;overflow-wrap:anywhere}
.dashboard-page .balance-facts{flex:1;justify-content:space-between}
.dashboard-page .balance-facts strong{overflow-wrap:anywhere}
.dashboard-page .recent-panel{margin-top:25px}
.dashboard-page .connect-panel{display:flex;flex-direction:column;align-items:flex-start}
.dashboard-page .connect-panel p{font-size:13px;margin:15px 0;max-width:none}
.dashboard-page .connect-panel .code-row{background:transparent;border:0;padding:0;margin-bottom:22px;display:block;max-width:100%}
.dashboard-page .connect-panel .button{margin-top:auto}
.dashboard-page .usage-chart{height:auto;min-height:175px}
.dashboard-page .usage-chart svg{height:175px}
.dashboard-page .chart-text{font-size:12px}
.secret-panel{background:#edf4ff;border:1px solid #bdd0ef;border-radius:10px;padding:23px;margin:0 0 25px}
.secret-panel h2{font-size:16px}
.secret-panel p{font-size:13px;color:#425a7b;line-height:1.8}
.secret-panel>code{display:block;padding:15px;background:#fff;border:1px solid #d8e2f1;border-radius:6px;overflow-wrap:anywhere;user-select:all;font-size:14px}
.inline-form>label{display:grid;gap:12px;margin:18px 0}
.inline-form .form-grid{max-width:none;margin-top:23px}
.inline-form textarea,textarea{font:inherit;font-size:14px;border:1px solid #dce3ed;border-radius:7px;padding:12px;min-height:120px;width:100%;color:#152339;background:#fff;resize:vertical;caret-color:var(--accent)}
textarea:hover{border-color:#aebed5}
textarea:focus{border-color:#6b8be4}
.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:10px!important}
.checkbox-label input{min-height:18px;width:18px;height:18px}
.danger{color:#a32b3d!important}
.pagination{display:flex;align-items:center;justify-content:flex-end;gap:17px;margin:22px 0;font-size:12px;color:#536278}
.error-page{max-width:700px;margin:55px auto}
.error-page p{font-size:14px;color:#536278;line-height:1.9;margin:20px 0 28px}
.error-page>.button{margin-right:10px}
#admin-root .page-heading{margin-bottom:23px}
#admin-root .admin-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}
#admin-root .inline-form{margin-top:22px}
#admin-root .filterbar{align-items:center}
input[type="checkbox"]{accent-color:#315bdc}
@media(max-width:1200px){.home-layout{gap:38px}.public-header{padding-left:28px;padding-right:28px}.public-footer{margin-left:28px;margin-right:28px}.dashboard-main{padding:0 25px 20px}.dashboard-page .balance-main{min-width:200px}.dashboard-page .balance-facts{padding-left:25px;gap:25px}}
@media(max-width:980px){.home-layout{grid-template-columns:1fr 1fr;gap:30px}.home-intro h1{font-size:39px}.service-map{padding:22px}.map-heading{display:block}.map-heading .badge{margin-top:12px}.dashboard-page .balance-strip{flex-wrap:wrap}.dashboard-page .balance-facts{min-width:0}.dashboard-page .connect-panel{display:block}.dashboard-page .connect-panel .button{width:auto;margin-top:0}.dashboard-page .balance-amount{font-size:26px}.public-nav{gap:17px}}
@media(max-width:760px){.public-header{padding:18px 20px;gap:20px}.public-nav{gap:12px;font-size:12px;flex-wrap:wrap;justify-content:flex-end}.public-nav>a:first-child{display:none}.public-nav .button{font-size:12px;padding:8px 12px;min-height:36px}.public-brand{font-size:24px}.public-brand .brand-mark{display:none}.public-brand .brand-api{font-size:12px}.home-layout{grid-template-columns:1fr;padding:25px 0 38px;gap:32px}.home-intro h1{font-size:38px}.home-intro>p{font-size:14px}.home-actions .button{font-size:14px}.service-map{max-width:none}.map-heading{display:flex}.map-heading .badge{margin:0}.home-details>h2{font-size:20px}.capability-row{grid-template-columns:1fr;gap:9px;padding:19px 0}.setup-callout{padding:20px;align-items:flex-start;flex-direction:column}.public-footer{margin-left:20px;margin-right:20px;flex-wrap:wrap;gap:9px}.auth-card{padding:25px}.auth-intro h1{font-size:27px}.authenticated .sidebar{height:auto;padding:23px 20px}.authenticated .sidebar .brand{font-size:23px}.authenticated .sidebar .workspace{display:flex;margin:20px 0}.authenticated .sidebar .sidebar-foot{display:flex;margin-top:20px;padding-top:15px}.authenticated .sidebar .sidebar-help{display:none}.authenticated .nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.authenticated .nav-item{font-size:13px}.dashboard-main{padding:0 20px 20px}.dashboard-top{height:70px;margin-bottom:25px}.dashboard-top .button{padding:7px 10px}.dashboard-top>span{margin-right:auto}.dashboard-page .balance-strip{padding:21px;gap:22px}.dashboard-page .balance-main{min-width:0;width:100%}.dashboard-page .balance-facts{border-left:0;border-top:1px solid var(--line);padding:18px 0 0;width:100%;justify-content:space-between}.dashboard-page .balance-facts>div:last-child{display:block}.dashboard-page .balance-amount{font-size:31px}.dashboard-page .page-heading{flex-wrap:wrap}.dashboard-page .page-heading .button{font-size:12px}.pagination{justify-content:space-between;gap:10px}.pagination>.button{font-size:12px}}
@media(max-width:430px){.public-header{padding:16px 15px;align-items:flex-start}.public-nav{gap:9px;max-width:200px}.public-nav>a{font-size:12px}.public-nav .button{font-size:12px;padding:7px 10px}.public-brand .brand-api{font-size:12px}.home-intro h1{font-size:34px}.home-intro>p{font-size:14px}.home-layout{padding-top:18px}.service-map{padding:21px 18px}.map-heading h2{font-size:14px}.map-heading{gap:10px}.map-heading .badge{font-size:12px}.map-node{padding:12px 11px}.public-footer{margin-left:15px;margin-right:15px}.auth-card{padding:22px 18px}.auth-page{margin-top:10px}.dashboard-main{padding-left:15px;padding-right:15px}.dashboard-page .balance-facts{gap:18px}.dashboard-page .balance-facts strong{font-size:17px}.dashboard-page .balance-main{min-width:0}.dashboard-top{gap:9px}.dashboard-top>span{font-size:12px}.dashboard-page .connect-panel>.button{width:100%}}

.content-footer,.public-footer{flex-wrap:wrap}.open-source-notice{flex-basis:100%;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.open-source-notice a{text-decoration:underline;text-underline-offset:3px}.legal-page{max-width:760px;margin:0 auto;padding:48px 24px 72px}.legal-page h1{margin:24px 0;font-size:28px}.legal-page h2{margin-top:32px;font-size:20px}.legal-page p{margin:16px 0;line-height:1.8}
