:root{color:#172033;background:#f5f7fb;font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:#f5f7fb}button,input,select{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.62}.admin-login-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:linear-gradient(180deg,#0c122012,#0c122005),#eef2f7}.login-panel{display:grid;gap:22px;width:min(100%,480px);padding:28px;border:1px solid #d9e2ee;border-top:4px solid #2563eb;border-radius:8px;color:#172033;background:#fff;box-shadow:0 22px 60px #0f172a1f}.login-copy h1{margin-top:8px;font-size:28px;line-height:1.18}.no-access-panel{border-top-color:#b42318}.permission-denied-actions{display:grid;gap:12px}.permission-denied-actions span{color:#475467;font-size:14px;line-height:1.55}.permission-denied-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:0;border-radius:6px;color:#fff;background:#344054}.login-form,.account-form{display:grid;gap:12px}.login-form label{display:grid;gap:7px;color:#475467;font-size:13px}.login-form input,.account-form input,.account-form select,.account-table select,.grant-cell select,.notification-form input,.notification-form select,.notification-command select,.search-field input,.modal-form input,.modal-form select{width:100%;min-height:40px;padding:0 12px;border:1px solid #cfd7e2;border-radius:6px;color:#172033;background:#fff;outline:none}.login-form input:focus,.account-form input:focus,.account-form select:focus,.account-table select:focus,.notification-form input:focus,.notification-form select:focus,.notification-command select:focus,.search-field input:focus,.modal-form input:focus,.modal-form select:focus,.grant-cell select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.login-form button,.account-form button,.sidebar-account button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:0;border-radius:6px;color:#fff;background:#2563eb}.admin-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:22px;height:100vh;padding:22px 16px;color:#e5edf7;background:#101828;border-right:1px solid #1d2939}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;flex:0 0 auto;width:40px;height:40px;place-items:center;border-radius:8px;color:#102a56;background:#bfdbfe;font-weight:800}.brand strong,.brand span{display:block}.brand strong{color:#fff;line-height:1.2}.brand span{margin-top:3px;color:#98a2b3;font-size:12px}.admin-nav{display:grid;gap:4px}.admin-nav a{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 10px;border-radius:6px;color:#cbd5e1;text-decoration:none}.admin-nav a.active,.admin-nav a:hover{color:#fff;background:#1d2939}.admin-nav a.active{box-shadow:inset 3px 0 #60a5fa}.sidebar-account{display:grid;gap:7px;margin-top:auto;padding:12px;border:1px solid rgb(255 255 255 / 10%);border-radius:8px;background:#182230}.sidebar-account strong{color:#fff;font-size:14px}.sidebar-account span{color:#b8c4d6;font-size:12px;overflow-wrap:anywhere}.sidebar-account em{justify-self:start;padding:3px 8px;border-radius:999px;color:#a7f3d0;background:#10b98121;font-size:12px;font-style:normal}.sidebar-account button{margin-top:4px;min-height:34px;background:#344054}.admin-workspace{min-width:0;padding:24px}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.eyebrow{margin:0 0 6px;color:#667085;font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin:0}h1{color:#101828;font-size:30px;line-height:1.12}h2{color:#111827;font-size:17px;line-height:1.25}.auto-sync-chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid #d7dee8;border-radius:8px;color:#344054;background:#fff;box-shadow:0 1px 2px #1018280f;white-space:nowrap}.auto-sync-chip svg{color:#2563eb}.auto-sync-chip.error{border-color:#fecaca;color:#991b1b;background:#fff5f5}.auto-sync-chip.error svg{color:#b42318}.spinning{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{margin-bottom:14px;padding:12px 14px;border:1px solid #fecaca;border-radius:8px;color:#991b1b;background:#fff5f5}.readonly-banner{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;padding:12px 14px;border:1px solid #fedf89;border-radius:8px;color:#7a2e0e;background:#fffbeb}.readonly-banner svg{flex:0 0 auto;margin-top:1px;color:#dc6803}.readonly-banner div{display:grid;gap:3px;min-width:0}.readonly-banner strong{color:#93370d;font-size:14px}.readonly-banner span{color:#7a2e0e;font-size:13px;line-height:1.45}.toast-banner{margin-bottom:14px;padding:11px 14px;border:1px solid #d7dee8;border-radius:8px;color:#344054;background:#fff}.toast-banner.success{border-color:#abefc6;color:#067647;background:#ecfdf3}.toast-banner.error{border-color:#fecaca;color:#991b1b;background:#fff5f5}.command-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.58fr);gap:14px;align-items:stretch;margin-bottom:14px;padding:16px;border:1px solid #dde4ee;border-radius:8px;background:#fff;box-shadow:0 10px 28px #0f172a0d;scroll-margin-top:18px}.command-copy p{max-width:860px;margin-top:8px;color:#5b6677;line-height:1.65}.signal-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.signal-list div{display:grid;gap:4px;align-content:center;min-width:0;padding:12px;background:#fbfcfe}.signal-list span{color:#667085;font-size:12px}.signal-list strong{color:#101828;font-size:14px;overflow-wrap:anywhere}.metric-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;overflow:hidden;margin-bottom:14px;border:1px solid #dde4ee;border-radius:8px;background:#dde4ee;box-shadow:0 10px 28px #0f172a0a}.metric-strip article{display:flex;gap:10px;align-items:center;min-height:84px;padding:13px;background:#fff}.metric-strip svg{flex:0 0 auto;color:#2563eb}.metric-strip div{display:grid;gap:3px;min-width:0}.metric-strip span{color:#667085;font-size:12px}.metric-strip strong{color:#101828;font-size:24px;line-height:1}.metric-strip small{color:#667085;font-size:12px;overflow-wrap:anywhere}.overview-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.overview-head h2{font-size:20px}.overview-release{display:grid;justify-items:end;gap:3px;min-width:120px;padding:8px 10px;border-radius:8px;background:#f8fafc}.overview-release span{color:#667085;font-size:12px}.overview-release strong{font-size:16px}.overview-release.pass strong{color:#067647}.overview-release.block strong{color:#b42318}.overview-context{display:flex;flex-wrap:wrap;gap:8px}.overview-context span{padding:5px 9px;border-radius:999px;color:#344054;background:#f2f4f7;font-size:12px}.governance-board,.risk-ledger{display:grid;gap:1px;overflow:hidden;border:1px solid #dde4ee;border-radius:8px;background:#dde4ee}.governance-row,.risk-row{display:grid;align-items:center;width:100%;min-width:0;border:0;color:#172033;background:#fff;text-decoration:none;text-align:left}.governance-row{grid-template-columns:110px minmax(120px,.7fr) minmax(90px,.45fr) minmax(0,1fr);gap:10px;min-height:48px;padding:9px 12px}.risk-row{grid-template-columns:110px minmax(120px,.7fr) 88px minmax(0,1.3fr);gap:10px;min-height:44px;padding:9px 12px}.governance-row:hover,.risk-row:hover{background:#fbfcfe}.governance-row span,.risk-row span{color:#667085;font-size:12px;overflow-wrap:anywhere}.governance-row strong,.risk-row strong{color:#101828;font-size:14px;overflow-wrap:anywhere}.governance-row em,.risk-row em{justify-self:start;padding:3px 8px;border-radius:999px;font-size:12px;font-style:normal}.governance-row small,.risk-row small{color:#667085;font-size:12px;overflow-wrap:anywhere}.governance-row.pass em,.risk-row.pass em{color:#067647;background:#ecfdf3}.governance-row.warning em,.risk-row.warning em{color:#93370d;background:#fffaeb}.governance-row.block em,.risk-row.block em{color:#b42318;background:#fef3f2}.risk-empty{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 12px;color:#067647;background:#fff}.risk-empty strong{color:#101828;font-size:14px}.risk-empty span{color:#667085;font-size:12px}.compact-check-list,.compact-ops-list,.sync-ledger{display:grid;gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.compact-check-list div,.compact-ops-list div,.sync-ledger div{display:grid;align-items:center;gap:8px;min-width:0;padding:9px 10px;background:#fbfcfe}.compact-check-list div{grid-template-columns:minmax(0,1fr) auto}.compact-ops-list div{grid-template-columns:92px minmax(0,1fr) auto}.sync-ledger div{grid-template-columns:96px minmax(0,1fr)}.compact-check-list span,.compact-ops-list span,.sync-ledger span{color:#667085;font-size:12px;overflow-wrap:anywhere}.compact-check-list strong,.compact-ops-list strong,.sync-ledger strong{color:#101828;font-size:13px;overflow-wrap:anywhere}.compact-check-list strong,.compact-ops-list em{justify-self:start;padding:3px 8px;border-radius:999px;font-size:12px;font-style:normal}.compact-check-list .pass strong{color:#067647;background:#ecfdf3}.compact-check-list .warning strong{color:#93370d;background:#fffaeb}.compact-check-list .fail strong{color:#b42318;background:#fef3f2}.compact-ops-list em{color:#175cd3;background:#eff8ff}.section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel{display:grid;gap:14px;align-content:start;min-width:0;padding:16px;border:1px solid #dde4ee;border-radius:8px;background:#fff;box-shadow:0 10px 28px #0f172a0d;scroll-margin-top:18px}.panel.wide{grid-column:1 / -1}.panel-title{display:flex;align-items:center;gap:9px}.panel-title svg{color:#2563eb}.panel-note{padding:10px 12px;border-radius:6px;color:#344054;background:#f2f4f7;font-family:Consolas,Microsoft YaHei,monospace;font-size:13px}.role-grid,.permission-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.account-form{grid-template-columns:1fr 1.35fr 1fr 140px auto}.account-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}.search-field{display:grid;flex:1 1 320px;gap:6px;color:#475467;font-size:13px}.account-toolbar-actions{display:flex;flex:0 0 auto;align-items:end;gap:8px}.account-toolbar-actions>span{flex:0 0 auto;padding:7px 10px;border-radius:999px;color:#344054;background:#f2f4f7;font-size:13px}.account-group-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.account-group-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border:1px solid #d7dee8;border-radius:8px;color:#344054;background:#fff;cursor:pointer}.account-group-tabs button.active{border-color:#9bbcf8;color:#175cd3;background:#eff6ff}.account-group-tabs strong{min-width:22px;padding:2px 7px;border-radius:999px;color:#475467;background:#f2f4f7;font-size:12px;line-height:1.25}.account-group-tabs button.active strong{color:#175cd3;background:#dbeafe}.account-table .table-row{grid-template-columns:1fr 1.45fr 130px 130px 1fr 160px}.account-name-cell,.account-action-cell{display:grid;gap:4px;min-width:0}.account-name-cell small,.account-action-cell small{justify-self:start;padding:2px 7px;border-radius:999px;color:#175cd3;background:#eff8ff;font-size:12px}.account-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}.account-pagination button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#344054;background:#fff}.account-pagination span{color:#475467;font-size:13px}.audit-meta,.dictionary-categories,.dictionary-summary,.grant-meta,.maintenance-summary,.module-market-summary,.notification-meta,.permission-meta,.setting-summary,.session-meta,.db-meta,.security-summary{display:flex;flex-wrap:wrap;gap:8px}.audit-meta span,.dictionary-categories span,.dictionary-summary span,.grant-meta span,.maintenance-summary span,.module-market-summary span,.notification-meta span,.permission-meta span,.setting-summary span,.session-meta span,.db-meta span,.security-summary span{padding:6px 10px;border-radius:999px;color:#344054;background:#f2f4f7;font-size:13px}.audit-table .table-row{grid-template-columns:1.15fr .75fr 1.05fr 1.3fr .55fr .7fr}.access-log-table .table-row{grid-template-columns:1.05fr 1.35fr 1.6fr .55fr .65fr .55fr}.related-audit-table .table-row{grid-template-columns:1.1fr 1.35fr 1.2fr .55fr .6fr}.access-log-table code{overflow-wrap:anywhere;color:#1d2939;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.access-log-path{display:grid;gap:3px;min-width:0}.access-log-path strong,.access-log-path small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-log-path small{color:#667085;font-size:12px}.related-audit-list{display:grid;gap:10px}.panel-title.compact{margin-top:8px}.panel-title.compact h3{margin:0;font-size:16px}.audit-filters{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(180px,1.2fr) minmax(120px,.7fr) auto auto auto;gap:10px;align-items:center}.audit-filters input,.audit-filters select{width:100%;min-height:38px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#172033;background:#fff}.access-log-filters{grid-template-columns:minmax(210px,1.2fr) minmax(120px,.6fr) minmax(160px,1fr) auto auto}.audit-filters button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;border:0;border-radius:6px;color:#fff;background:#2563eb}.audit-filters .ghost-filter-button{border:1px solid #cfd7e2;color:#344054;background:#fff}.audit-export-list{display:grid;gap:8px}.audit-export-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dbe3ee;border-radius:8px;color:#172033;background:#fbfcfe}.audit-export-item svg{color:#2563eb}.audit-export-item div{display:grid;gap:2px;min-width:0}.audit-export-item strong,.audit-export-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-export-item span,.audit-export-item small{color:#667085;font-size:12px}.audit-export-item em{padding:5px 9px;border-radius:999px;color:#047857;background:#dff7ea;font-style:normal;font-weight:700;white-space:nowrap}.audit-export-download{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#344054;background:#fff;white-space:nowrap}.audit-export-download:disabled{cursor:not-allowed;opacity:.55}.audit-detail-panel{width:min(100%,680px)}.audit-detail-grid{display:grid;grid-template-columns:90px minmax(0,1fr);gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.audit-detail-grid span,.audit-detail-grid strong{min-width:0;padding:10px 12px;background:#fff;overflow-wrap:anywhere}.audit-detail-grid span{color:#667085;font-size:12px}.audit-detail-json{max-height:260px;margin:0;overflow:auto;padding:12px;border:1px solid #e5eaf1;border-radius:8px;color:#101828;background:#f8fafc;font-family:Consolas,Microsoft YaHei,monospace;font-size:12px;line-height:1.55;white-space:pre-wrap}.session-table .table-row{grid-template-columns:1.1fr .8fr 1.1fr 1.1fr .55fr .65fr}.session-user{display:grid;gap:3px;min-width:0}.session-user span{color:#667085;font-size:12px;overflow-wrap:anywhere}.table-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#344054;background:#fff}.table-action:not(:disabled):hover{color:#b42318;border-color:#fecaca;background:#fff5f5}.table-action.neutral:not(:disabled):hover{color:#175cd3;border-color:#9fc7ff;background:#eff8ff}.table-action:disabled{cursor:not-allowed;opacity:.52}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:20px;background:#0f172a6b}.modal-panel{display:grid;gap:16px;width:min(100%,520px);padding:20px;border:1px solid #dbe2ea;border-radius:8px;background:#fff;box-shadow:0 24px 80px #1018282e}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.modal-head button{display:grid;width:34px;height:34px;place-items:center;border:1px solid #d7dee8;border-radius:8px;color:#475467;background:#fff;cursor:pointer;font-size:20px;line-height:1}.modal-note{padding:10px 12px;border:1px solid #edf0f3;border-radius:8px;color:#475467;background:#fbfcfd;overflow-wrap:anywhere}.modal-form{display:grid;gap:12px}.modal-form label{display:grid;gap:7px;color:#344054;font-size:13px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.ghost-button,.primary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border-radius:8px;cursor:pointer}.ghost-button{border:1px solid #cfd7e2;color:#344054;background:#fff}.primary-button{border:0;color:#fff;background:#2563eb}.danger-button{border:0;color:#fff;background:#b42318}.primary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.62}.change-summary{display:grid;gap:8px;padding:12px;border:1px solid #fedf89;border-radius:8px;color:#7a2e0e;background:#fffbeb}.change-summary span{color:#93370d;font-size:12px;font-weight:700}.change-summary strong{color:#101828;font-size:18px}.change-summary p{color:#7a2e0e;line-height:1.5}.dictionary-group-form{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(160px,.9fr) minmax(120px,.7fr) minmax(220px,1.3fr) auto;gap:10px;align-items:center}.dictionary-group-form input,.dictionary-item-form input,.dictionary-group-edit input,.dictionary-item-row input:not([type=checkbox]){width:100%;min-height:38px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#172033;background:#fff}.dictionary-group-form button,.dictionary-group-edit button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;border:0;border-radius:6px;color:#fff;background:#2563eb}.dictionary-center{display:grid;grid-template-columns:1fr;gap:1px;overflow:hidden;border:1px solid #dde4ee;border-radius:8px;background:#dde4ee}.dictionary-group{display:grid;gap:12px;min-width:0;padding:14px;background:#fff}.dictionary-group header,.dictionary-group footer,.dictionary-group-edit{display:flex;align-items:center;gap:10px}.dictionary-group header,.dictionary-group footer{justify-content:space-between}.dictionary-group header>div{display:grid;gap:3px;min-width:0}.dictionary-group header span,.dictionary-group header small,.dictionary-group footer span{color:#667085;font-size:12px}.dictionary-group header strong{color:#101828;font-size:16px}.dictionary-group p{color:#475467;font-size:13px;line-height:1.5}.dictionary-group-edit{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,.7fr) auto}.dictionary-switch{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.dictionary-switch input{width:18px;height:18px;accent-color:#2563eb}.dictionary-switch em{padding:4px 8px;border-radius:999px;color:#067647;background:#ecfdf3;font-size:12px;font-style:normal}.dictionary-switch input:not(:checked)+em{color:#93370d;background:#fffaeb}.dictionary-switch.compact em{min-width:46px;text-align:center}.dictionary-item-table{display:grid;gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.dictionary-item-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) 84px 88px 96px;gap:10px;align-items:center;padding:10px;background:#fff}.dictionary-item-head{color:#667085;background:#f8fafc;font-size:12px;font-weight:700}.dictionary-item-row .color-input{min-height:34px;padding:2px}.dictionary-item-form{display:grid;gap:10px}.dictionary-inline-fields{display:grid;grid-template-columns:110px 1fr;gap:10px}.dictionary-inline-fields label{display:grid;gap:5px;color:#475467;font-size:12px}.grant-matrix,.maintenance-center,.module-market,.setting-center,.role-permission-matrix,.data-table{display:grid;gap:1px;overflow:hidden;border:1px solid #dde4ee;border-radius:8px;background:#dde4ee}.setting-center{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px}.setting-group{display:grid;gap:12px;min-width:0;padding:14px;background:#fff}.setting-group>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.setting-group>header strong{color:#101828;font-size:16px;text-transform:uppercase}.setting-group>header span{padding:4px 8px;border-radius:999px;color:#344054;background:#f2f4f7;font-size:12px}.setting-list{display:grid;gap:10px}.setting-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,180px) 64px;gap:12px;align-items:center;padding:12px;border:1px solid #e5eaf1;border-radius:8px;background:#fbfcfe}.setting-copy{display:grid;gap:4px;min-width:0}.setting-copy strong{color:#101828;font-size:14px}.setting-copy span{color:#667085;font-family:Consolas,Microsoft YaHei,monospace;font-size:12px;overflow-wrap:anywhere}.setting-copy p{color:#475467;font-size:13px;line-height:1.45}.setting-item input:not([type=checkbox]),.setting-item select{width:100%;min-height:38px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#172033;background:#fff}.setting-item small{justify-self:end;color:#667085;font-size:12px}.setting-switch{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px}.setting-switch input{width:18px;height:18px;accent-color:#2563eb}.setting-switch em{padding:3px 8px;border-radius:999px;color:#067647;background:#ecfdf3;font-size:12px;font-style:normal}.setting-switch input:not(:checked)+em{color:#93370d;background:#fffaeb}.maintenance-center{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-card{display:grid;gap:12px;min-width:0;padding:14px;background:#fff}.maintenance-card.warning{box-shadow:inset 3px 0 #f79009}.maintenance-card.healthy{box-shadow:inset 3px 0 #12b76a}.maintenance-card header,.maintenance-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.maintenance-card header>div{display:grid;gap:4px;min-width:0}.maintenance-card header span,.maintenance-card footer span{color:#667085;font-size:12px}.maintenance-card header strong{color:#101828;font-size:16px}.maintenance-card header em{flex:0 0 auto;padding:4px 8px;border-radius:999px;color:#067647;background:#ecfdf3;font-size:12px;font-style:normal}.maintenance-card.warning header em{color:#93370d;background:#fffaeb}.maintenance-card p{color:#475467;font-size:13px;line-height:1.55}.maintenance-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.maintenance-metrics div{display:grid;gap:3px;min-width:0;padding:10px;background:#fbfcfe}.maintenance-metrics span,.maintenance-metrics small{color:#667085;font-size:12px}.maintenance-metrics strong{color:#101828;font-size:16px;overflow-wrap:anywhere}.maintenance-card footer{flex-wrap:wrap}.maintenance-card footer span{padding:4px 8px;border-radius:999px;background:#f2f4f7}.maintenance-card button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 12px;border:0;border-radius:6px;color:#fff;background:#2563eb}.notification-command{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #dbe2ea;border-radius:8px;background:#fbfcfe}.notification-command>div{display:grid;gap:4px;min-width:0}.notification-command span,.notification-command p{color:#667085;font-size:13px}.notification-command strong{color:#101828;font-size:17px}.deployment-command{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #dbe2ea;border-radius:8px;background:#fbfcfe}.deployment-command>div{display:grid;gap:4px;min-width:0}.deployment-command span,.deployment-command p{color:#667085;font-size:13px}.deployment-command strong{color:#101828;font-size:20px}.deployment-command button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;border:0;border-radius:6px;color:#fff;background:#2563eb;white-space:nowrap}.deployment-summary{display:flex;flex-wrap:wrap;gap:8px}.deployment-summary span{padding:6px 10px;border-radius:999px;color:#344054;background:#f2f4f7;font-size:13px}.deployment-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}.deployment-panel{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid #dbe2ea;border-radius:8px;background:#fff}.deployment-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px}.deployment-panel header strong{color:#101828;font-size:15px}.deployment-panel header em{padding:3px 8px;border-radius:999px;font-size:12px;font-style:normal}.deployment-list{display:grid;gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.deployment-list div,.deployment-report{display:grid;gap:4px;min-width:0;padding:10px;background:#fbfcfe}.deployment-list.compact{max-height:180px;overflow:auto}.deployment-list strong,.deployment-report strong{color:#101828;font-size:13px;overflow-wrap:anywhere}.deployment-list span,.deployment-list small,.deployment-report span,.deployment-report small{color:#667085;font-size:12px;overflow-wrap:anywhere}.deployment-table .table-row{grid-template-columns:minmax(150px,.85fr) 120px 100px minmax(0,1.4fr)}.notification-command select{width:min(100%,180px);flex:0 0 auto}.notification-form{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(110px,.55fr) minmax(170px,1fr) minmax(220px,1.35fr) minmax(170px,.8fr) auto;gap:10px;align-items:center}.notification-form button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;border:0;border-radius:6px;color:#fff;background:#2563eb;white-space:nowrap}.notification-table .table-row{grid-template-columns:minmax(220px,1.6fr) minmax(80px,.5fr) minmax(80px,.45fr) minmax(150px,.85fr) minmax(80px,.45fr) minmax(220px,1.05fr)}.notification-title-cell,.notification-actions{display:grid;gap:5px;min-width:0}.notification-title-cell span{color:#667085;font-size:12px}.notification-actions{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.table-empty-row{padding:18px 14px;border-top:1px solid #e5eaf1;color:#667085;background:#fbfcfe;font-size:13px;text-align:center}.table-row em.pending{color:#175cd3;background:#eff8ff}.table-row em.sent{color:#067647;background:#ecfdf3}.table-row em.failed{color:#b42318;background:#fef3f2}.table-row em.cancelled{color:#475467;background:#f2f4f7}.table-row em.resolved{color:#175cd3;background:#eff8ff}.module-market{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px}.module-market-card{display:grid;gap:12px;min-width:0;padding:14px;background:#fff}.module-market-card header,.module-market-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.module-market-card header>div{display:grid;gap:4px;min-width:0}.module-market-card header span,.module-market-card footer span,.module-market-card footer small{color:#667085;font-size:12px}.module-market-card strong{color:#101828;font-size:16px}.module-market-card p{color:#475467;font-size:13px;line-height:1.55}.module-market-card footer{justify-content:flex-start;flex-wrap:wrap}.module-market-card footer span,.module-market-card footer small{padding:4px 8px;border-radius:999px;background:#f2f4f7}.module-state-switch{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.module-state-switch input{width:18px;height:18px;accent-color:#2563eb}.module-state-switch em{padding:3px 8px;border-radius:999px;color:#067647;background:#ecfdf3;font-size:12px;font-style:normal}.module-state-switch input:not(:checked)+em{color:#93370d;background:#fffaeb}.grant-row{display:grid;grid-template-columns:minmax(170px,1fr) repeat(4,minmax(140px,.85fr));gap:1px;background:#dde4ee}.permission-row{display:grid;grid-template-columns:minmax(190px,1.2fr) repeat(4,minmax(86px,.55fr));gap:1px;background:#dde4ee}.permission-row>span,.permission-info,.permission-cell{min-width:0;padding:11px 12px;background:#fff}.permission-head>span{color:#667085;background:#f8fafc;font-size:12px;font-weight:700}.permission-info{display:grid;gap:4px}.permission-info span{color:#667085;font-family:Consolas,Microsoft YaHei,monospace;font-size:12px;overflow-wrap:anywhere}.permission-info em{justify-self:start;padding:2px 7px;border-radius:999px;color:#175cd3;background:#eff8ff;font-size:12px;font-style:normal}.permission-cell{display:grid;gap:5px;align-content:center}.permission-check{display:flex;align-items:center;gap:7px;color:#344054;font-size:13px}.permission-check input{width:17px;height:17px;accent-color:#2563eb}.permission-cell small{color:#667085;font-size:12px}.grant-row>span,.grant-module,.grant-cell{min-width:0;padding:12px;background:#fff}.grant-head>span,.table-head{color:#667085;background:#f8fafc;font-size:12px;font-weight:700}.grant-module{display:grid;gap:4px}.grant-module span{color:#667085;font-size:12px;overflow-wrap:anywhere}.grant-cell{display:grid;gap:8px}.grant-toggle{display:flex;align-items:center;gap:8px;color:#344054;font-size:13px}.grant-toggle input{width:18px;height:18px;accent-color:#2563eb}.role-grid div,.permission-grid div,.ops-list div{display:grid;gap:5px;min-width:0;padding:12px;border:1px solid #e5eaf1;border-radius:8px;background:#fbfcfe}.role-grid span,.permission-grid span,.permission-grid small,.ops-list span{color:#667085;font-size:12px}.role-grid p,.permission-grid p,.ops-list p{color:#475467;font-size:13px;line-height:1.5}.principle-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.principle-list li{padding:11px 12px;border:1px solid #e5eaf1;border-radius:8px;color:#344054;background:#fbfcfe}.ops-list,.security-list{display:grid;gap:10px}.security-list div{display:grid;gap:5px;padding:12px;border:1px solid #e5eaf1;border-radius:8px;background:#fbfcfe}.security-list div.pass{border-color:#abefc6;background:#f6fef9}.security-list div.warning{border-color:#fedf89;background:#fffbeb}.security-list div.fail{border-color:#fecaca;background:#fff5f5}.security-list span{color:#667085;font-size:12px}.security-list strong{color:#101828;font-size:15px}.security-list p{color:#475467;font-size:13px;line-height:1.5}.ops-list em,.table-row em{justify-self:start;padding:3px 8px;border-radius:999px;color:#175cd3;background:#eff8ff;font-size:12px;font-style:normal}.table-row{display:grid;grid-template-columns:1.2fr 1.6fr .7fr .7fr .7fr;gap:12px;align-items:center;min-height:44px;padding:10px 12px;background:#fff}.db-table .table-row{grid-template-columns:1.15fr 1.65fr .75fr .55fr .65fr .55fr}.table-row span,.table-row strong{min-width:0;overflow-wrap:anywhere}.db-meta span{color:#175cd3;background:#eff8ff}.database-command{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #dbe2ea;border-radius:8px;background:#fbfcfe}.database-command div{display:grid;gap:4px;min-width:0}.database-command span,.database-command p{color:#667085;font-size:13px}.database-command strong{color:#101828;font-size:18px}.database-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.database-command button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;border:0;border-radius:6px;color:#fff;background:#2563eb}.database-command button:disabled{cursor:not-allowed;opacity:.6}.database-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.database-card{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid #dbe2ea;border-radius:8px;background:#fff}.database-card header{display:flex;align-items:center;justify-content:space-between;gap:10px}.database-card header strong{color:#101828;font-size:15px}.database-card header em,.migration-list em{flex:0 0 auto;padding:3px 8px;border-radius:999px;color:#067647;background:#ecfdf3;font-size:12px;font-style:normal}.database-card header em.pending,.migration-list em.pending{color:#93370d;background:#fffaeb}.database-card header em.missing{color:#b42318;background:#fef3f2}.database-card p{color:#475467;font-size:13px;line-height:1.5}.migration-list,.backup-list,.restore-list,.export-list{display:grid;gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.migration-list div,.backup-list div,.restore-list div,.export-list div{display:grid;gap:4px;min-width:0;padding:10px;background:#fbfcfe}.migration-list div{grid-template-columns:minmax(170px,1fr) minmax(130px,.8fr) auto;align-items:center}.migration-list span,.backup-list span,.backup-list small,.restore-list span,.restore-list small,.export-list span,.export-list small{color:#667085;font-size:12px;overflow-wrap:anywhere}.migration-list strong,.backup-list strong,.restore-list strong,.export-list strong{color:#101828;font-size:13px;overflow-wrap:anywhere}.backup-download{display:inline-flex;align-items:center;justify-content:center;justify-self:start;gap:6px;min-height:32px;padding:0 10px;border:1px solid #cfd7e2;border-radius:6px;color:#344054;background:#fff;white-space:nowrap}.backup-download:disabled{cursor:not-allowed;opacity:.55}.backup-tool{display:grid;gap:5px;padding:10px;border:1px solid #dbe2ea;border-radius:8px;background:#f8fafc}.restore-drill{display:grid;gap:10px;padding:12px;border:1px solid #dbe2ea;border-radius:8px;background:#fff}.restore-drill header{display:flex;align-items:center;justify-content:space-between;gap:10px}.restore-drill header strong{color:#101828;font-size:14px}.restore-drill header em,.restore-checks em{flex:0 0 auto;padding:3px 8px;border-radius:999px;color:#067647;background:#ecfdf3;font-size:12px;font-style:normal}.restore-drill header em.missing,.restore-checks em.block{color:#b42318;background:#fef3f2}.restore-checks em.warning,.restore-checks em.manual{color:#93370d;background:#fffaeb}.restore-checks{display:grid;gap:1px;overflow:hidden;border:1px solid #e5eaf1;border-radius:8px;background:#e5eaf1}.restore-checks div{display:grid;grid-template-columns:minmax(96px,.55fr) minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0;padding:9px 10px;background:#fbfcfe}.restore-checks span,.restore-checks strong{font-size:12px;overflow-wrap:anywhere}.restore-checks span{color:#667085}.restore-checks strong{color:#101828}.backup-tool span,.backup-tool small{color:#667085;font-size:12px;overflow-wrap:anywhere}.backup-tool strong{color:#101828;font-size:13px;overflow-wrap:anywhere}.backup-list .empty-export,.restore-list .empty-export,.deployment-list .empty-export,.export-list .empty-export{color:#667085;font-size:13px}.table-row em.present{color:#067647;background:#ecfdf3}.table-row em.extra,.table-row em.pending{color:#93370d;background:#fffaeb}.table-row em.missing,.table-row em.high{color:#b42318;background:#fef3f2}.table-row em.medium{color:#93370d;background:#fffaeb}.table-row em.low{color:#067647;background:#ecfdf3}.deployment-panel header em.pass,.table-row em.pass{color:#067647;background:#ecfdf3}.deployment-panel header em.warning,.table-row em.warning{color:#93370d;background:#fffaeb}.deployment-panel header em.block,.table-row em.block{color:#b42318;background:#fef3f2}@media(max-width:1180px){.metric-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.role-grid,.permission-grid,.account-form,.audit-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.deployment-grid{grid-template-columns:1fr}.account-form button{grid-column:1 / -1}.audit-filters button{width:100%}.audit-export-item{grid-template-columns:auto minmax(0,1fr) auto}.audit-export-item small,.audit-export-download{grid-column:2 / -1;justify-self:start}}@media(max-width:980px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:sticky;z-index:10;display:grid;grid-template-columns:minmax(0,.72fr) minmax(260px,1fr);grid-template-areas:"brand account" "nav nav";height:auto;padding:14px;gap:12px;box-shadow:0 10px 30px #0f172a2e}.admin-sidebar .brand{grid-area:brand;align-self:start}.admin-nav{grid-area:nav;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.admin-nav a{justify-content:center;min-height:36px;padding:0 8px;background:#182230}.admin-nav a.active{box-shadow:inset 0 -3px #60a5fa}.sidebar-account{grid-area:account;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;margin-top:0;padding:9px 10px}.sidebar-account strong,.sidebar-account span{grid-column:1}.sidebar-account em{grid-row:1 / span 2;grid-column:2}.sidebar-account button{grid-row:1 / span 3;grid-column:3;width:86px;margin-top:0}.admin-workspace{padding:18px}.command-panel,.panel{scroll-margin-top:218px}.command-panel,.database-grid,.section-grid{grid-template-columns:1fr}.signal-list{grid-template-columns:repeat(3,minmax(0,1fr))}.grant-row{grid-template-columns:1fr}.dictionary-group-form{grid-template-columns:repeat(2,minmax(0,1fr))}.dictionary-group-form button{grid-column:1 / -1}.maintenance-center,.module-market,.setting-center{grid-template-columns:1fr}}@media(max-width:640px){.admin-workspace{padding:14px}.admin-topbar{align-items:center;flex-direction:row}h1{font-size:25px}.admin-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-nav a{justify-content:center}.role-grid,.permission-grid,.dictionary-group-form,.dictionary-group-edit,.notification-form,.account-form,.audit-filters{grid-template-columns:1fr}.account-toolbar{align-items:stretch;flex-direction:column}.account-toolbar-actions{align-items:stretch;flex-wrap:wrap}.account-toolbar-actions .primary-button{flex:1 1 160px}.database-command,.deployment-command,.notification-command,.database-actions{align-items:stretch;flex-direction:column}.database-command button,.database-actions button,.deployment-command button,.notification-command select{width:100%}.deployment-table .table-row{grid-template-columns:1fr}.overview-head{align-items:stretch;flex-direction:column}.overview-release{justify-items:start}.governance-row,.risk-row,.compact-ops-list div,.sync-ledger div,.restore-checks div{grid-template-columns:1fr;align-items:stretch}.restore-checks em{justify-self:start}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.login-panel,.command-panel,.panel{padding:14px}}@media(max-width:560px){.admin-sidebar{grid-template-columns:1fr;grid-template-areas:"brand" "account" "nav"}.admin-nav{grid-auto-columns:max-content;grid-auto-flow:column;grid-template-columns:none;overflow-x:auto;padding-bottom:2px}.admin-nav a{justify-content:flex-start;min-width:max-content;white-space:nowrap}.table-row,.db-table .table-row,.account-table .table-row,.audit-table .table-row,.access-log-table .table-row,.related-audit-table .table-row,.notification-table .table-row,.session-table .table-row,.dictionary-item-row,.migration-list div,.maintenance-card header,.maintenance-card footer,.setting-item,.permission-row{grid-template-columns:1fr}.maintenance-card header,.maintenance-card footer{align-items:stretch;flex-direction:column}.maintenance-metrics{grid-template-columns:1fr}.dictionary-group header,.dictionary-group footer{align-items:stretch;flex-direction:column}.dictionary-inline-fields{grid-template-columns:1fr}.maintenance-card button,.notification-form button{width:100%}.setting-item small{justify-self:start}.modal-actions{flex-direction:column-reverse}.account-pagination{align-items:stretch;flex-direction:column}.ghost-button,.primary-button,.danger-button,.account-pagination button{width:100%}}@media(max-width:430px){.metric-strip,.signal-list{grid-template-columns:1fr}}
