:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#1c2b3b;background:#f5f7fa;font-size:14px;line-height:1.6;--accent:#087f80;--border:#e5eaf0;--muted:#748194}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #53babb;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:28px;letter-spacing:-.7px;line-height:1.4}h2{font-size:19px;line-height:1.5}h3{font-size:15px}code,pre,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}code{font-size:12px;padding:3px 6px;background:#edf2f6;border-radius:5px}small{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--accent);margin-bottom:7px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:222px;background:#fff;border-right:1px solid var(--border);padding:30px 18px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 38px;font-size:20px;font-weight:750;letter-spacing:-.6px}.brand span{line-height:1.35}.brand small{display:block;color:#8995a4;font-size:10px;font-weight:400;letter-spacing:1px;margin-top:6px}.nav-caption{font-size:11px;color:#9ba5b3;padding:0 15px;margin-bottom:13px}.sidebar nav{display:grid;gap:7px}.sidebar nav a{display:flex;align-items:center;gap:14px;padding:11px 15px;color:#647387;font-size:13px;border-radius:8px;transition:background .15s}.sidebar nav a span{width:17px;text-align:center;font-size:20px;line-height:20px;color:#8a97a7}.sidebar nav a:hover{background:#f4f7f9}.sidebar nav a.active{background:#e8f5f3;color:var(--accent);font-weight:650}.sidebar nav a.active span{color:var(--accent)}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border);padding:23px 10px 0;font-size:12px;color:#536576}.sidebar-footer small{display:block;color:#9aa5b2;font-size:11px;padding-top:6px}.network-dot,.network-label i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#1eaa8c;margin-right:8px}.workspace{margin-left:222px;min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:76px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#fff}.breadcrumb{font-size:12px;color:#99a2af}.breadcrumb span{margin:0 13px;color:#ccd2d9}.breadcrumb strong{font-weight:500;color:#536273}.top-actions{display:flex;align-items:center;gap:22px}.network-label{font-size:11px;color:#687b7b;background:#f0f7f5;padding:5px 11px;border:1px solid #e2efea;border-radius:5px}main{padding:32px 40px;flex:1;max-width:1460px;width:100%;margin:auto}.page-footer{margin:0 40px;padding:20px 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;color:#a0aab6;font-size:10px}.page-footer b{font-weight:400;margin-left:5px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading p{color:var(--muted);font-size:13px;margin-top:8px}.heading-actions{display:flex;gap:10px;flex-shrink:0}.button{border:1px solid #dce3e9;border-radius:7px;background:#fff;color:#506072;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;line-height:1.6;font-weight:550;white-space:nowrap}.button:hover{background:#f4f7f9}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 3px 7px #087f8012}.button.primary:hover{background:#056c6e}.button.danger{color:#ba4253;border-color:#f0d9dc;background:#fff8f8}.button.small{padding:5px 10px;font-size:11px}.text-button,.icon-button{border:0;background:transparent;color:var(--muted);padding:4px;font-size:12px}.text-button:hover{color:var(--accent)}.icon-button{font-size:26px;line-height:1}.auth-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #dbe9ed;border-radius:10px;background:#f0f7f8;padding:16px 20px;margin-bottom:30px}.auth-banner strong{font-size:13px;color:#345c67}.auth-banner p{font-size:11px;color:#718995;margin-top:4px}.auth-banner form{display:flex;gap:8px;flex-shrink:0}.auth-banner input{width:205px}.auth-banner code{font-size:10px;background:#e5f0f2}input,select,textarea{border:1px solid #dce4eb;border-radius:7px;padding:9px 11px;background:#fff;color:#344256;min-width:0;font-size:12px}input::placeholder,textarea::placeholder{color:#a7afbb}input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px;padding:0;flex-shrink:0}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:26px}.stat-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:19px 20px;min-height:139px;position:relative}.stat-label{color:#7a8798;font-size:11px;display:flex;align-items:center;justify-content:space-between}.stat-icon{font-size:18px;color:#8da9a9;line-height:1;background:#edf6f5;border-radius:7px;width:30px;height:30px;display:grid;place-items:center}.stat-value{font-size:24px;font-weight:650;line-height:1.4;letter-spacing:-.5px;margin-top:9px}.stat-foot{font-size:10px;color:#929eac;margin-top:8px;display:flex;gap:6px;align-items:center}.good-dot{width:5px;height:5px;border-radius:50%;display:inline-block;background:#22ac8b}.two-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,1fr);gap:23px}.panel{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}.panel-head{padding:20px 23px;border-bottom:1px solid #eef1f5;display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head p{color:#95a0af;font-size:11px;margin-top:4px}.panel-body{padding:23px}.panel+.panel{margin-top:22px}.badge{font-size:10px;line-height:1.6;padding:3px 8px;border-radius:5px;font-weight:500;background:#f1f3f7;color:#8390a1;white-space:nowrap;display:inline-block}.badge.green{background:#e9f7f1;color:#278c70}.badge.amber{background:#fff4df;color:#a47b30}.badge.red{background:#fdeff0;color:#ba5865}.badge.blue{background:#eaf2ff;color:#5a80b5}.connection-detail{display:flex;gap:16px;align-items:center;padding-bottom:23px;border-bottom:1px solid #eff2f6}.large-icon{width:52px;height:52px;border-radius:13px;background:#eaf6f4;color:var(--accent);font-size:27px;display:grid;place-items:center}.connection-detail h3{font-size:14px}.connection-detail p{font-size:11px;color:#9ba5b1;margin-top:4px;overflow-wrap:anywhere}.detail-list{display:grid;gap:16px;padding-top:21px;font-size:11px}.detail-row{display:flex;justify-content:space-between;gap:16px;color:#8792a2}.detail-row strong{font-weight:500;color:#4d5d6f;text-align:right;overflow-wrap:anywhere}.step{display:flex;gap:13px;padding:16px 0;border-bottom:1px solid #f1f3f6}.step:first-child{padding-top:0}.step:last-child{border:0;padding-bottom:0}.step-number{width:24px;height:24px;border:1px solid #dbe7e4;display:grid;place-items:center;border-radius:50%;color:#7a9693;font-size:10px;flex-shrink:0}.step h3{font-size:12px;font-weight:550}.step p{font-size:11px;color:#9aa4b1;margin-top:4px}.step a{font-size:11px;color:var(--accent);display:inline-block;margin-top:7px}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}.quick-card{padding:19px;background:#fff;border:1px solid var(--border);border-radius:9px;display:flex;gap:13px;transition:border-color .15s}.quick-card:hover{border-color:#94c4c0}.quick-card>span{font-size:22px;color:#7ba4a2;line-height:1.2}.quick-card h3{font-size:12px}.quick-card p{font-size:10px;color:#9aa5b1;margin-top:5px}.section-note{margin-top:23px;color:#8c99a9;font-size:11px;display:flex;align-items:flex-start;gap:9px}.section-note span{color:#83b1aa}.empty{text-align:center;color:#95a2b2;padding:45px 20px;font-size:12px}.empty-symbol{font-size:31px;color:#b2c8c6;margin-bottom:12px;display:block}.empty p{font-size:11px;margin-top:7px;color:#a1aab7}.empty .button{margin-top:18px}.account-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:24px}.account-status{display:flex;align-items:center;gap:18px;margin-bottom:24px}.account-avatar{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#edf6f5;font-size:28px;color:#519b93}.account-status h2{font-size:20px}.account-status p{font-size:11px;color:var(--muted);margin-top:4px}.account-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.qr-box{display:flex;align-items:center;justify-content:center;min-height:260px;border:1px dashed #dfe8e8;background:#fafcfc;border-radius:9px;text-align:center;flex-direction:column;padding:22px}.qr-box img{width:210px;max-width:100%;border-radius:8px}.qr-box p{font-size:11px;color:#8c9eaa;margin-top:12px}.qr-placeholder{font-size:42px;color:#b7c7c5;margin-bottom:10px}.info-list{display:grid;gap:19px}.info-list div{border-bottom:1px solid #f0f3f6;padding-bottom:16px}.info-list div:last-child{border:0;padding:0}.info-list h3{font-size:12px;margin-bottom:5px}.info-list p{font-size:11px;color:#8e9aaa;line-height:1.8}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.toolbar select{min-width:170px}.toolbar .spacer{flex:1}.stream{height:330px;overflow:auto;background:#fcfdfd;padding:6px 23px}.message{padding:13px 0;border-bottom:1px solid #edf1f4;display:grid;grid-template-columns:60px minmax(75px,110px) minmax(0,1fr);gap:13px;font-size:12px}.message time{font-size:10px;color:#a0aab6;padding-top:2px}.message .sender{color:#328f88;font-weight:500;overflow-wrap:anywhere}.message .message-text{overflow-wrap:anywhere;color:#526172}.send-bar{display:flex;gap:10px;padding:17px 23px;border-top:1px solid var(--border)}.send-bar input{flex:1}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 23px}.settings-row p{font-size:11px;color:var(--muted);margin-top:3px}.switch-label{display:flex;gap:10px;align-items:center;font-size:12px;color:#617486}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:10px;font-weight:500;color:#939fac;background:#fafbfd;padding:13px 23px;border-bottom:1px solid #edf1f4;white-space:nowrap}td{padding:18px 23px;border-bottom:1px solid #edf1f4;vertical-align:middle}tr:last-child td{border:0}.plugin-name{font-weight:600;font-size:12px;color:#3b4d60}.plugin-name small{display:block;color:#a0aab7;font-size:10px;font-weight:400;margin-top:3px;max-width:220px}.permission-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:250px}.table-actions{display:flex;gap:9px;flex-wrap:wrap}.table-actions button{font-size:10px}.code-panel{background:#182c37;color:#c8e2e3;padding:22px 24px;border-radius:9px;overflow:auto;font-size:11px;line-height:1.95;white-space:pre}.docs-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:23px}.endpoint{padding:16px 0;border-bottom:1px solid #edf1f4;font-size:11px;display:flex;align-items:flex-start;gap:10px}.endpoint:first-child{padding-top:0}.endpoint:last-child{border:0;padding-bottom:0}.method{font-size:9px;font-weight:700;color:#298e81;background:#e9f5f1;min-width:41px;text-align:center;border-radius:4px;padding:2px 4px}.method.post{color:#6e7faf;background:#eff1fb}.endpoint code{font-size:10px;overflow-wrap:anywhere;word-break:break-all}.endpoint p{color:#9ba6b3;margin-top:6px;font-size:10px}.audit-action{color:#465e70}.hint{font-size:11px;color:#98a4b2;line-height:1.8;margin-top:14px}.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}dialog{border:1px solid var(--border);border-radius:14px;box-shadow:0 25px 100px #18334125;padding:0;width:500px;max-width:calc(100vw - 30px);max-height:90vh;overflow:auto;color:inherit}dialog::backdrop{background:#12293455;backdrop-filter:blur(3px)}.dialog-body{padding:28px}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between}.dialog-body>p{font-size:12px;margin-top:9px;margin-bottom:19px}.dialog-body>label{display:block;font-size:12px;color:#57677b;margin-top:17px;margin-bottom:7px}.dialog-body>input,.dialog-body>select{width:100%}fieldset{border:0;padding:0;margin:21px 0 0}legend{font-size:12px;color:#57677b;margin-bottom:9px}.check-row{display:flex;align-items:flex-start;gap:10px;padding:9px 0;font-size:12px;color:#55667b;cursor:pointer}.check-row small{display:block;font-size:10px;color:#99a4b1;margin-top:3px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:26px}.token-field{display:flex;gap:7px}.token-field input{flex:1;font-family:ui-monospace,monospace;font-size:11px}.success-symbol{color:#fff;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#1ba285;font-size:21px;margin-bottom:17px}#toast{position:fixed;bottom:30px;left:calc(50% + 111px);transform:translateX(-50%) translateY(20px);background:#263f49;color:#fff;padding:12px 20px;border-radius:8px;box-shadow:0 8px 35px #102c4120;font-size:12px;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100vw - 40px);z-index:100;overflow-wrap:anywhere}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}
.two-columns>.panel+.panel,.account-layout>.panel+.panel{margin-top:0}
.table-wrap table{min-width:600px}
.plugin-name{overflow-wrap:anywhere}
.docs-grid>div{min-width:0}.hint{overflow-wrap:anywhere}
#api-search{width:100%;margin-bottom:14px}#endpoint-list{max-height:640px;overflow:auto;padding-right:5px}.method.put,.method.patch{color:#92691c;background:#fff7df}.method.delete{color:#ad4a5a;background:#fff0f2}
@media(max-width:600px){#plugin-list table{min-width:0;display:block}#plugin-list thead{display:none}#plugin-list tbody{display:block}#plugin-list tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:19px;border-bottom:1px solid var(--border)}#plugin-list tr:last-child{border:0}#plugin-list td{padding:0;border:0;min-width:0}#plugin-list td:nth-child(1){grid-column:1;grid-row:1}#plugin-list td:nth-child(2){grid-column:1/-1;grid-row:2}#plugin-list td:nth-child(3){grid-column:2;grid-row:1}#plugin-list td:nth-child(4){grid-column:1/-1;grid-row:3;font-size:10px}#plugin-list td:nth-child(4)::before{content:"有效期："}#plugin-list td:nth-child(5){grid-column:1/-1;grid-row:4}#plugin-list .table-actions{border-top:1px solid #f0f3f6;padding-top:11px;gap:19px}#plugin-list .plugin-name{font-size:13px}#plugin-list .plugin-name small{max-width:none;font-size:10px}}
@media(min-width:1500px){main{padding-top:40px}.stat-card{padding:23px}.stat-value{font-size:27px}.panel-body{padding:26px}.panel-head{padding:21px 26px}}
@media(max-width:1150px){.sidebar{width:190px;padding:25px 12px}.workspace{margin-left:190px}.brand{font-size:18px;padding-left:7px;gap:8px}.brand small{font-size:9px}.topbar{padding:0 26px}main{padding:27px 26px}.page-footer{margin:0 26px}.stat-grid{gap:12px}.stat-card{padding:16px}.stat-value{font-size:21px}.auth-banner{align-items:flex-start;flex-direction:column;gap:12px}.auth-banner form{width:100%}.auth-banner input{flex:1;width:auto}.two-columns{grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr);gap:17px}.docs-grid{grid-template-columns:1fr}#toast{left:calc(50% + 95px)}}
@media(max-width:850px){.sidebar{width:165px}.workspace{margin-left:165px}.brand{font-size:16px;gap:7px}.brand img{width:29px;height:29px}.brand small{font-size:8px}.sidebar nav a{padding:11px 12px;font-size:12px;gap:10px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-columns,.account-layout{grid-template-columns:1fr}.quick-grid{gap:10px}.quick-card{padding:15px 12px;gap:9px}.page-heading{align-items:flex-start}h1{font-size:25px}.heading-actions{flex-direction:column}.topbar{padding:0 22px}.top-actions{gap:12px}.panel-head,.panel-body{padding:19px}.page-footer>span:last-child{display:none}#toast{left:calc(50% + 82px)}}
@media(max-width:600px){.app-shell{display:block}.sidebar{position:sticky;inset:0;width:100%;padding:12px 15px 0;border-right:0;border-bottom:1px solid var(--border)}.brand{padding:0 0 12px;font-size:17px;gap:8px}.brand small{font-size:8px;margin-top:2px}.brand img{width:29px;height:29px}.nav-caption,.sidebar-footer{display:none}.sidebar nav{display:flex;gap:5px;overflow:auto;padding-bottom:10px}.sidebar nav a{white-space:nowrap;font-size:11px;padding:7px 10px;gap:6px}.sidebar nav a span{display:none}.workspace{margin-left:0}.topbar{height:48px;padding:0 18px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 7px}.network-label{font-size:9px;padding:3px 7px}.top-actions{gap:9px}.top-actions .text-button{font-size:10px}main{padding:23px 18px}.page-footer{margin:0 18px;padding:15px 0}.page-heading{gap:10px;margin-bottom:21px}.page-heading h1{font-size:23px}.page-heading p{font-size:11px;max-width:230px}.heading-actions .button{padding:7px 10px;font-size:10px}.auth-banner{padding:14px}.auth-banner p{font-size:10px;line-height:1.9}.auth-banner form{flex-direction:column}.auth-banner form .button{align-self:flex-end}.stat-grid{gap:10px;margin-bottom:20px}.stat-card{padding:15px;min-height:128px}.stat-value{font-size:21px}.stat-foot{font-size:9px}.stat-label{font-size:10px}.stat-icon{height:26px;width:26px;font-size:16px}.quick-grid{grid-template-columns:1fr;margin-top:18px;gap:9px}.quick-card{padding:15px;align-items:center}.quick-card>span{width:26px;text-align:center}.quick-card p{margin-top:2px}.panel-head,.panel-body{padding:18px}.two-columns{gap:18px}.toolbar{gap:8px}.toolbar select{min-width:135px}.toolbar .spacer{display:none}.toolbar .button{font-size:11px;padding:7px 10px}.settings-row{align-items:flex-start;padding:17px;flex-direction:column;gap:10px}.stream{padding:4px 16px;height:320px}.message{grid-template-columns:51px minmax(55px,75px) minmax(0,1fr);gap:8px;font-size:11px}.send-bar{padding:14px 16px;gap:7px}.send-bar .button{padding:8px 11px;font-size:11px}.send-bar input{font-size:11px}.token-field{flex-wrap:wrap}.token-field input{flex-basis:100%}.dialog-body{padding:23px}td,th{padding:14px 17px}.code-panel{padding:18px;font-size:10px}#toast{left:50%;bottom:20px;min-width:200px;text-align:center}.section-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
.target-banner{margin:0 0 20px;padding:10px 14px;border:1px solid #d5e9e5;border-radius:7px;color:#32645e;background:#eef8f5;font-size:12px;overflow-wrap:anywhere}.inline-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inline-form input{flex:1;min-width:150px}.warning-note{color:#9b5b12;background:#fff7e7;border:1px solid #f1dfbd;border-radius:7px;padding:12px;margin-top:12px;font-size:12px}.panel-body>p+p{margin-top:10px}.top-actions select{max-width:200px}.sidebar nav{overflow-y:auto;min-height:0}.table-wrap td{overflow-wrap:anywhere}.target-banner+.page-heading{margin-top:0}
@media(max-width:950px){.topbar{height:auto;min-height:76px;gap:12px;flex-wrap:wrap;padding-top:13px;padding-bottom:13px}.top-actions{gap:10px;flex-wrap:wrap}.top-actions select{max-width:160px}.top-actions .network-label{display:none}}
@media(max-width:600px){.topbar{align-items:flex-start;gap:9px}.top-actions{width:100%;justify-content:space-between}.top-actions select{max-width:50%;font-size:11px}.inline-form{gap:8px}.target-banner{font-size:11px;margin-bottom:16px}}

/* Public console authentication and user management */
[hidden]{display:none!important}.console-login{display:block;max-width:640px;margin-left:auto;margin-right:auto}.console-login>div{margin-bottom:20px}.console-login .console-form{display:grid;gap:15px;width:100%}.console-form{display:grid;gap:16px}.console-form .console-field{display:grid;gap:7px;font-size:12px;color:#526172}.console-form .console-field input,.console-form .console-field select{width:100%;min-width:0}.console-form .console-field input{flex:none}.console-form>button{justify-self:start}.console-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.console-error{color:#b64141;font-size:12px;line-height:1.7;min-height:0;overflow-wrap:anywhere}.console-error:empty{display:none}.console-panel{padding:24px;margin-bottom:22px}.console-user-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-bottom:1px solid var(--border)}.console-user-row:last-child{border-bottom:0}.console-user-row>div:first-child{min-width:0;overflow-wrap:anywhere}.console-user-row .hint{margin-top:6px}.console-user-row .console-actions{flex-shrink:0}.console-secret{display:block;width:100%;padding:13px;background:#f3f6f8;border:1px solid var(--border);border-radius:8px;overflow-wrap:anywhere;font:12px/1.9 ui-monospace,monospace;resize:vertical;margin:16px 0}.console-qr{display:block;max-width:100%;height:auto;margin:15px auto}.console-form fieldset{margin:0}.console-form .check-row{gap:10px}.console-form .check-row input{width:auto}.console-panel>.console-actions{margin-top:18px}@media(max-width:600px){.console-user-row{flex-direction:column;align-items:flex-start}.console-panel{padding:18px}.console-login{max-width:100%}.console-login .console-form input{width:100%}.console-login .console-form .console-actions{justify-content:space-between;width:100%}}

.workspace-pending .app-shell{visibility:hidden}
