:root{color-scheme:light;font-family:Segoe UI,Microsoft YaHei,sans-serif;font-size:14px;color:var(--ui-text-main);background:var(--ui-bg-base);--ui-bg-base: #f7f9fa;--ui-bg-sub: #ffffff;--ui-bg-hover: #f2f5f6;--ui-border: #e9edef;--ui-text-main: #111b21;--ui-text-sub: #667781;--ui-primary: #00a884;--ui-primary-hover: #008f72;--ui-primary-soft: #e7f7f2;--ui-danger: #ea0038;--ui-danger-soft: #fff0f3;--ui-success: #008f6a;--ui-success-soft: #e8f8f1;--ui-warning: #946200;--ui-warning-soft: #fff6dd;--ui-focus: #007c65;--ui-overlay: rgba(17, 27, 33, .44);--ui-shadow-floating: 0 8px 24px rgba(17, 27, 33, .12);--ui-radius-sm: 6px;--ui-radius-md: 8px;--ui-border-width: 1px;--ui-font-page-title: 600 18px/1.35 "Segoe UI", "Microsoft YaHei", sans-serif;--ui-font-panel-title: 600 15px/1.4 "Segoe UI", "Microsoft YaHei", sans-serif;--ui-font-caption: 400 12px/1.4 "Segoe UI", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:920px;min-height:100vh;color:var(--ui-text-main);background:var(--ui-bg-base)}button,input,select,textarea{font:inherit}button{cursor:pointer}.console{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;width:220px;height:100vh;flex:0 0 220px;overflow-y:auto;border-right:1px solid var(--ui-border);background:var(--ui-bg-sub)}.brand,.login-brand{display:flex;align-items:center;gap:10px}.brand{min-height:72px;padding:14px 16px;border-bottom:1px solid var(--ui-border)}.brand-slot{--brand-slot-size: 32px;--brand-scale: 1.18;width:var(--brand-slot-size);height:var(--brand-slot-size);display:inline-grid;flex:0 0 var(--brand-slot-size);place-items:center;overflow:visible}.brand-slot>.brand-image{display:block;width:100%;height:100%;object-fit:contain;transform:scale(var(--brand-scale));transform-origin:center;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none}.brand-md{--brand-slot-size: 30px;--brand-scale: 1.18}.brand-lg{--brand-slot-size: 32px;--brand-scale: 1.2}.brand strong,.brand small,.login-brand strong,.login-brand small{display:block}.brand strong,.login-brand strong{font-size:15px}.brand small,.login-brand small{margin-top:2px;color:var(--ui-text-sub);font-size:12px;font-weight:400}nav{padding:10px}nav a{display:block;min-height:36px;margin:2px 0;padding:8px 10px;border-left:2px solid transparent;border-radius:4px;color:var(--ui-text-main);text-decoration:none}nav a:hover{background:var(--ui-bg-hover)}nav a[aria-current=page]{border-left-color:var(--ui-primary);color:var(--ui-primary-hover);background:var(--ui-primary-soft);font-weight:600}.workspace{min-width:0;flex:1}header{position:sticky;top:0;z-index:4;display:flex;height:52px;align-items:center;padding:0 24px;border-bottom:1px solid var(--ui-border);color:var(--ui-text-sub);background:var(--ui-bg-sub)}.header-spacer{flex:1}#admin-identity{margin-right:14px;color:var(--ui-text-main)}main{width:100%;max-width:1580px;padding:22px 24px 40px}.page-heading{display:flex;min-height:44px;margin-bottom:16px;align-items:flex-start;justify-content:space-between;gap:16px}h1{margin:0;font:var(--ui-font-page-title)}.page-heading p{margin:4px 0 0;color:var(--ui-text-sub);font-size:13px}h2{margin:0 0 12px;font:var(--ui-font-panel-title)}.actions,.toolbar,.form-actions,.modal-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ui-button,.ui-toggle,.ui-tabs,.ui-badge,.ui-toast,.ui-modal,.ui-loading,.ui-empty,.ui-error,.ui-divider{box-sizing:border-box}button,.button{min-height:34px;padding:6px 12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-text-main);background:var(--ui-bg-sub)}button:hover:not(:disabled){border-color:var(--ui-text-sub);background:var(--ui-bg-hover)}button.primary{border-color:var(--ui-primary);color:#fff;background:var(--ui-primary)}button.primary:hover:not(:disabled){border-color:var(--ui-primary-hover);background:var(--ui-primary-hover)}button.danger{border-color:#efb7c2;color:var(--ui-danger)}button.danger.solid{border-color:var(--ui-danger);color:#fff;background:var(--ui-danger)}button.small{min-height:28px;padding:4px 8px;font-size:12px}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}.link-button,.back-button{border:0;color:var(--ui-primary-hover);background:transparent}.panel{margin-bottom:14px;padding:16px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-bg-sub)}.toolbar{margin-bottom:12px}.toolbar input,.toolbar select{width:auto;min-width:160px}.toolbar-field,.toolbar-field input{min-width:160px}.grid-wrap{overflow:auto;border:1px solid var(--ui-border);background:var(--ui-bg-sub)}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{height:42px;padding:7px 10px;border-bottom:1px solid var(--ui-border);text-align:left;vertical-align:middle}th{position:sticky;top:0;z-index:1;color:var(--ui-text-sub);background:var(--ui-bg-base);font-size:12px;font-weight:600}tbody tr:hover{background:var(--ui-bg-hover)}tr:last-child td{border-bottom:0}td.wrap{min-width:180px;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.metric-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ui-border)}.metric-item{min-width:0;padding:14px 12px 2px;border-right:1px solid var(--ui-border)}.metric-item:last-child{border-right:0}.metric-item span,.metric-item strong{display:block}.metric-item span{color:var(--ui-text-sub);font-size:12px}.metric-item strong{margin-top:6px;font-size:22px;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px}.form-wide{grid-column:1 / -1}label{display:flex;flex-direction:column;gap:5px;color:var(--ui-text-sub);font-size:12px}input,select,textarea{width:100%;min-height:34px;padding:6px 8px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-text-main);background:var(--ui-bg-sub)}textarea{min-height:80px;resize:vertical}.checkbox{display:inline-flex;flex-direction:row;align-items:center;gap:7px;color:var(--ui-text-main)}.checkbox input{width:16px;min-height:16px;accent-color:var(--ui-primary)}.form-actions{grid-column:1 / -1;justify-content:flex-end}.provider-head,.detail-head,.generated-result{display:flex;align-items:center;justify-content:space-between;gap:12px}.provider-head h2{margin:0}.detail-head{margin-bottom:12px}.detail-head>div{display:flex;align-items:center;gap:10px}.generated-result{margin-bottom:14px;padding:10px 12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-success);background:var(--ui-success-soft)}.tabs{display:flex;gap:18px;margin-bottom:14px;border-bottom:1px solid var(--ui-border)}.tabs a{margin-bottom:-1px;padding:9px 2px;border-bottom:2px solid transparent;color:var(--ui-text-sub);text-decoration:none}.tabs a[aria-selected=true]{border-bottom-color:var(--ui-primary);color:var(--ui-primary-hover);font-weight:600}.connection-state{font-size:12px}.connection-state.connected{color:var(--ui-success)}.connection-state.failed{color:var(--ui-danger)}.connection-state.testing,.connection-state.untested{color:var(--ui-warning)}.status{display:inline-flex;min-height:20px;align-items:center;padding:0 8px;border-radius:var(--ui-radius-sm);color:var(--ui-text-sub);background:var(--ui-bg-base);font:var(--ui-font-caption)}.status.active,.status.connected,.status.success,.status.used,.status.normal{color:var(--ui-success);background:var(--ui-success-soft)}.status.disabled,.status.failed,.status.denied,.status.expired{color:var(--ui-danger);background:var(--ui-danger-soft)}.status.unused,.status.untested{color:var(--ui-warning);background:var(--ui-warning-soft)}.pagination{display:flex;margin-top:10px;align-items:center;justify-content:flex-end;gap:8px;color:var(--ui-text-sub)}.settings-form{max-width:920px}.setting-list{border-top:1px solid var(--ui-border)}.setting-row{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--ui-border)}.setting-row:last-child{border-bottom:0}.setting-row>span strong,.setting-row>span small{display:block}.setting-row>span small{margin-top:3px;color:var(--ui-text-sub)}.setting-row>input[type=number]{width:120px}.settings-actions{position:sticky;bottom:0;padding:10px 0;background:var(--ui-bg-base)}.notice.toast{position:fixed;top:66px;right:22px;z-index:20;max-width:380px;padding:10px 12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);box-shadow:var(--ui-shadow-floating);background:var(--ui-bg-sub)}.notice.success{color:var(--ui-success);border-color:var(--ui-success)}.notice.error{color:var(--ui-danger);border-color:var(--ui-danger);background:var(--ui-danger-soft)}.empty,.state-view{padding:30px 18px;color:var(--ui-text-sub);text-align:center}.state-view{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-bg-sub)}.state-view strong{display:block;color:var(--ui-text-main)}.state-view p{margin:6px 0 0}.state-view.error,.danger-text{color:var(--ui-danger)}.login-view{display:grid;min-height:100vh;place-items:center;padding:24px;background:var(--ui-bg-base)}.login-card{width:min(380px,100%);padding:28px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-bg-sub);box-shadow:var(--ui-shadow-floating)}.login-card h1{margin-top:20px}.login-card p{margin:5px 0 18px;color:var(--ui-text-sub)}.auth-status-card p{margin-bottom:0}.initialization-note{font-size:12px;line-height:1.5}.auth-message{min-height:20px;margin-top:10px;color:var(--ui-success);font-size:12px}.login-card label{margin:12px 0}.login-card>button{width:100%;margin-top:8px;border-color:var(--ui-primary);color:#fff;background:var(--ui-primary)}.error{min-height:20px;margin-top:10px;color:var(--ui-danger);font-size:12px}.modal-overlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:var(--ui-overlay)}.modal-dialog{width:min(440px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:18px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-bg-sub);box-shadow:var(--ui-shadow-floating)}.modal-dialog.wide{width:min(720px,100%)}.modal-copy p{margin:12px 0;color:var(--ui-text-sub)}.modal-actions{margin-top:18px;justify-content:flex-end}.detail-line{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--ui-border)}.detail-line span{color:var(--ui-text-sub)}.readonly-json{margin-top:12px}.readonly-json pre{max-height:220px;overflow:auto;padding:10px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-text-main);background:var(--ui-bg-base);white-space:pre-wrap;word-break:break-word}.mono{font-family:Consolas,Courier New,monospace;font-size:12px}.muted{color:var(--ui-text-sub)}.skip-link{position:absolute;top:-100px;left:8px;z-index:40;padding:9px;color:var(--ui-primary-hover);background:var(--ui-bg-sub)}.skip-link:focus{top:8px}:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}[aria-invalid=true],.is-error{border-color:var(--ui-danger)!important}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--ui-bg-base: #111b21;--ui-bg-sub: #202c33;--ui-bg-hover: #26353d;--ui-border: #2a3942;--ui-text-main: #e9edef;--ui-text-sub: #8696a0;--ui-primary: #00a884;--ui-primary-hover: #06cf9c;--ui-primary-soft: #163f37;--ui-danger: #ef4056;--ui-danger-soft: #451d26;--ui-success: #21c68b;--ui-success-soft: #153a31;--ui-warning: #f0b429;--ui-warning-soft: #3c321a;--ui-focus: #00a884;--ui-overlay: rgba(0, 0, 0, .62);--ui-shadow-floating: 0 8px 24px rgba(0, 0, 0, .3)}button.danger{border-color:#6d3541}}@media(max-width:1100px){.summary-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}
