:root{color-scheme:dark;--bg:#0f1115;--surface:#171a20;--surface-2:#1d222a;--line:#2c3440;--line-soft:#222a34;--text:#f1f5f9;--muted:#98a4b3;--accent:#67d4f0;--ok:#74d99f;--warn:#f0b45b;--bad:#f0768b;--mono:ui-monospace,SFMono-Regular,Consolas,"Cascadia Mono",monospace}
*{box-sizing:border-box;scrollbar-color:#3b4654 transparent;scrollbar-width:thin}
body{margin:0;background:var(--bg);color:var(--text);font:13px/1.45 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif}
[hidden]{display:none!important}
.shell{width:min(1740px,calc(100% - 40px));margin:auto;padding:22px 0 36px}
header,.head,.toolbar,.keybar,.config-footer,.refresh-status{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
header{margin-bottom:10px}.keybar{justify-content:flex-end}h1{font-size:24px;line-height:1.2;margin:0}h2{font-size:15px;margin:0}h3{font-size:14px;margin:0}
.sub{font-size:12px;color:var(--muted);margin-top:4px}.mono,code{font-family:var(--mono)}
input,select{background:#10141a;color:var(--text);border:1px solid var(--line);border-radius:7px;padding:8px 10px;min-height:34px;max-width:100%;font:inherit}
input:focus,select:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#key{width:210px}#account-search{width:225px}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--accent)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:7px;color:var(--text);font:inherit;text-decoration:none;cursor:pointer;white-space:nowrap}
.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);color:#061016;border-color:var(--accent);font-weight:700}.btn:disabled{opacity:.6;cursor:wait}
.refresh-status{font-size:12px;color:var(--muted);margin-bottom:10px;min-height:18px}.stale,.error{color:var(--bad)}.error{border:1px solid #713f4b;background:#2c1a22;border-radius:7px;padding:10px 12px;margin-bottom:12px}
.summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.metric{display:grid;align-content:space-between;min-width:0;min-height:104px;padding:12px;border:1px solid var(--line);border-top:2px solid var(--line);border-radius:8px;background:var(--surface);text-align:center;color:inherit;font:inherit;cursor:pointer}
.metric label{color:var(--muted);pointer-events:none}.metric strong{font:700 27px/1.2 var(--mono);margin:7px 0}.metric small{font-size:11px;color:var(--muted)}.metric.ok{border-top-color:var(--ok)}.metric.ok strong{color:var(--ok)}.metric.warn{border-top-color:var(--warn)}.metric.warn strong{color:var(--warn)}.metric.bad{border-top-color:var(--bad)}.metric.bad strong{color:var(--bad)}
.normal-note{margin:8px 0 14px}.panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);min-width:0;margin-top:12px;overflow:hidden}.head{padding:12px 14px;border-bottom:1px solid var(--line);background:#191e26}.body{padding:12px 14px;min-width:0}.tag{font-size:11px;color:var(--muted);padding:3px 7px;border:1px solid var(--line);border-radius:5px}
.role-table{width:100%;border-collapse:collapse;table-layout:fixed}.role-table th,.role-table td{text-align:center;padding:8px 5px;border-bottom:1px solid var(--line-soft)}.role-table th{color:var(--muted);font-size:11px;font-weight:500}.role-table tbody tr:last-child td{border-bottom:0}.role-table th:first-child,.role-table td:first-child{text-align:left;padding-left:14px;width:110px}.stat-link{font:700 16px var(--mono);padding:2px 6px;border:0;background:none;color:inherit;cursor:pointer;border-radius:4px}.stat-link:hover{background:#293443;color:var(--accent)}.ok-text{color:var(--ok)}.warn-text{color:var(--warn)}.bad-text{color:var(--bad)}
.account-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.account-group{min-width:0;border:1px solid var(--line-soft);border-radius:7px;overflow:hidden;margin-bottom:10px}.account-group:last-child{margin-bottom:0}.account-group>.head{padding:9px 11px}.account-group.full{grid-column:1/-1}.account-columns .account-group{margin-bottom:0}
.table-wrap{overflow:auto;max-height:65vh;scrollbar-gutter:stable}.accounts-table{width:100%;border-collapse:collapse;table-layout:fixed}.accounts-table th,.accounts-table td{padding:9px 8px;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;overflow-wrap:anywhere}.accounts-table th{font-size:11px;color:var(--muted);font-weight:500;background:#191e26;position:sticky;top:0;z-index:1}.accounts-table th:first-child{width:27%}.accounts-table th:nth-child(2){width:17%}.accounts-table th:nth-child(3){width:14%}.accounts-table th:nth-child(4){width:17%}.accounts-table th:nth-child(5){width:25%}.accounts-table tbody tr:nth-child(4n+3){background:#131820}.account-name{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.account-meta{font-size:11px;color:var(--muted);margin-top:3px}.detail-toggle{border:0;background:none;color:var(--accent);padding:0;cursor:pointer;font:inherit;font-size:11px}.detail-row td{background:#121720;padding:12px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;color:var(--muted);font-size:12px}.detail-grid strong{display:block;color:var(--text);font-weight:400;margin-top:3px;overflow-wrap:anywhere}.recovery{font:11px var(--mono);color:var(--muted)}
.badge{display:inline-block;padding:2px 6px;border:1px solid var(--line);border-radius:5px;font-size:11px;white-space:nowrap;background:#242b36}.badge.ok{color:#c9f7db;background:#1c372c;border-color:#315e49}.badge.warn{color:#ffe3aa;background:#3a3020;border-color:#69532c}.badge.bad{color:#ffd1da;background:#39212a;border-color:#6a3d4b}.badge.info{color:#dce1ff;background:#262b45;border-color:#454f7b}
.empty{padding:20px;color:var(--muted);text-align:center}.wide-table{width:100%;border-collapse:collapse;min-width:780px}.wide-table th,.wide-table td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line-soft);font-size:12px}.wide-table th{font-size:11px;color:var(--muted);position:sticky;top:0;background:#191e26}.adobe-table{min-width:1080px}.adobe-table td:first-child{min-width:160px}.shared{display:flex;gap:10px 28px;flex-wrap:wrap;color:var(--muted);font-size:12px}.shared strong{color:var(--text);font-family:var(--mono)}
details>summary{cursor:pointer;list-style:none}details>summary::after{content:"展开 ▾";color:var(--muted);font-size:12px}details[open]>summary::after{content:"收起 ▴"}.config-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.config-grid label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;color:var(--muted);font-size:12px}.config-grid input{width:100%;font-family:var(--mono)}.config-grid input[type=checkbox]{width:18px}.config-footer{margin-top:14px;justify-content:flex-start}.config-footer .btn{margin-left:auto}
@media(max-width:1200px){.shell{width:calc(100% - 28px)}.keybar{justify-content:flex-start}.account-columns{grid-template-columns:1fr}.config-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.adobe-table{min-width:0}.adobe-table thead{display:none}.adobe-table tbody{display:block}.adobe-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;border-bottom:1px solid var(--line)}.adobe-table td{min-width:0;border:0;overflow-wrap:anywhere}.adobe-table td:first-child{grid-column:1/-1}.adobe-table td::before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;margin-bottom:5px}}
@media(max-width:760px){.summary{grid-template-columns:repeat(3,minmax(0,1fr))}.shell{width:calc(100% - 18px);padding-top:14px}h1{font-size:22px}.metric{padding:9px 5px;min-height:100px}.metric strong{font-size:24px}.metric small{font-size:10px}.role-table th,.role-table td{padding:7px 1px}.role-table th{font-size:10px}.role-table th:first-child,.role-table td:first-child{width:65px;padding-left:7px}.stat-link{font-size:13px;padding:3px 1px}.head,.body{padding:10px}.account-head .toolbar{width:100%}#account-search{flex:1;min-width:160px}.accounts-table th,.accounts-table td{padding:9px 5px;font-size:12px}.accounts-table th:first-child{width:31%}.accounts-table th:nth-child(2){width:25%}.accounts-table th:nth-child(3){width:21%}.accounts-table th:nth-child(4){width:23%}.accounts-table .recovery-col{display:none}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#key{width:180px}.keybar{gap:6px}.keybar .btn{padding:7px 9px}}
