:root{color-scheme:dark;--bg:#080c16;--panel:#111827;--panel2:#151e30;--line:#263248;--text:#edf3ff;--muted:#93a4be;--blue:#5b8cff;--cyan:#42d3c9;--green:#4dd49b;--amber:#f1b65a;--red:#ff6b7d;--radius:15px;--shadow:0 18px 60px rgba(0,0,0,.28);font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 78% 0,#16213b 0,transparent 30rem),var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}[hidden]{display:none!important}.muted{color:var(--muted);margin:.25rem 0;line-height:1.55}.compact{font-size:.78rem}.eyebrow{margin:0 0 .35rem;color:#7d98c8;font:700 .68rem/1.2 ui-monospace,monospace;letter-spacing:.16em}.brand-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:linear-gradient(145deg,var(--blue),#7557e8);box-shadow:0 12px 32px rgba(91,140,255,.3);font-weight:900;letter-spacing:-.08em}.brand-mark.small{width:38px;height:38px;border-radius:11px;font-size:.82rem}.login-view{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);padding:38px;border:1px solid var(--line);border-radius:22px;background:rgba(17,24,39,.92);box-shadow:var(--shadow);backdrop-filter:blur(20px)}h1,h2,h3,p{margin-top:0}h1{font-size:2rem;margin:.9rem 0 .4rem}h2{font-size:1.45rem;margin:0}h3{font-size:1rem;margin:0 0 .45rem}.login-card label,.form-stack label,.form-grid label{display:grid;gap:.48rem;color:#c7d2e4;font-size:.84rem;margin-top:1.35rem}.login-card input{margin-bottom:1rem}input,textarea,select{width:100%;border:1px solid #32405a;border-radius:10px;background:#0b1220;color:var(--text);padding:.72rem .82rem;transition:border .16s,box-shadow .16s}textarea{resize:vertical;min-height:48px}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(91,140,255,.13)}button,.file-button{border:1px solid transparent;border-radius:10px;padding:.68rem .9rem;color:var(--text);background:#202b3e;font-weight:650;transition:transform .13s,background .13s,border .13s}button:hover,.file-button:hover{transform:translateY(-1px)}button.primary{background:linear-gradient(135deg,#477cf4,#5f61e8);box-shadow:0 9px 22px rgba(71,124,244,.2)}button.secondary,.file-button{border-color:#33425e;background:#151e2e}.full{width:100%}.text-button{padding:.2rem;background:transparent;color:#8fb0ff}.icon-button{padding:.2rem .55rem;background:transparent;font-size:1.5rem}.form-error{color:#ff91a0;margin:.8rem 0 0}.shell{min-height:100vh;display:grid;grid-template-columns:238px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;border-right:1px solid #202b3e;background:rgba(10,15,26,.93);display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 24px}.brand strong{display:block}.brand small{display:block;color:#6f819f;font:600 .58rem ui-monospace,monospace;letter-spacing:.12em;margin-top:3px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{display:flex;align-items:center;justify-content:space-between;text-align:left;background:transparent;color:#a9b7cb;border-color:transparent}.sidebar nav button.active{background:#17233a;color:#fff;border-color:#283b60}.count{padding:.05rem .4rem;background:#263853;border-radius:999px;font-size:.72rem}.sidebar-foot{margin-top:auto;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.78rem;padding:12px 6px}.sidebar-foot .text-button{margin-left:auto}.dot{width:8px;height:8px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px rgba(241,182,90,.1)}.dot.ok{background:var(--green);box-shadow:0 0 0 4px rgba(77,212,155,.1)}main{min-width:0;padding:0 30px 46px}.topbar{min-height:92px;display:flex;align-items:center;gap:18px;border-bottom:1px solid #1e293b;margin-bottom:26px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.menu-button{display:none;background:transparent}.view{display:none;max-width:1420px;margin:auto}.view.active{display:block}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric,.panel{border:1px solid var(--line);background:linear-gradient(145deg,rgba(19,28,45,.96),rgba(14,21,34,.96));border-radius:var(--radius);box-shadow:0 12px 38px rgba(0,0,0,.12)}.metric{padding:20px}.metric span{display:block;color:var(--muted);font-size:.78rem}.metric strong{display:block;font-size:1.65rem;margin:.5rem 0 .32rem;overflow:hidden;text-overflow:ellipsis}.metric small{color:#8191a9;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel{padding:20px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.panel-head,.toolbar,.status-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.toolbar{align-items:center;margin:0 0 16px}.status-hero{align-items:center;margin-bottom:18px;padding:25px}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.badge{display:inline-block;border:1px solid #3a4965;border-radius:999px;padding:.22rem .58rem;color:#b9c8de;font-size:.72rem;margin-bottom:.7rem}.badge.ok{color:#7ee8b9;border-color:#287a5a;background:#123526}.badge.warn{color:#ffd18c;border-color:#76552a;background:#342713}.badge.bad{color:#ff9ba8;border-color:#773242;background:#361822}.alert{border:1px solid #77562c;background:#2b2115;color:#f7d292;padding:13px 16px;border-radius:11px;margin:0 0 16px;line-height:1.5}.health-list,.compact-list{display:grid;gap:10px}.health-item,.list-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #222e42}.health-item:last-child,.list-row:last-child{border-bottom:0}.health-item .grow,.list-row .grow{min-width:0;flex:1}.health-item strong,.list-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-item small,.list-row small{color:var(--muted)}.mini-dot{width:9px;height:9px;border-radius:50%;background:var(--green)}.mini-dot.bad{background:var(--red)}.cards-table{display:grid;gap:12px}.account-card{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(120px,.7fr)) auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.account-card .identity{min-width:0}.account-card .identity strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-card .identity small,.cell small{display:block;color:var(--muted);margin-top:4px}.cell strong{font-size:.95rem}.row-actions{display:flex;gap:7px}.row-actions button{padding:.5rem .65rem}.danger{color:#ff91a0!important;border-color:#5f2a38!important}.form-panel{margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.form-grid label{margin-top:.9rem}.span-2{grid-column:span 2}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.switch-row{display:flex!important;align-items:center;gap:.7rem}.switch-row input{width:18px;height:18px;margin:0}.endpoint-list{display:grid;gap:8px;margin-top:15px}.endpoint-list code{padding:10px 12px;background:#0a111e;border:1px solid #25334a;border-radius:8px;color:#8ddbd5;overflow:auto}.big-number{font-size:2.6rem;font-weight:800;margin:.5rem 0}.form-stack{display:grid;align-content:start;gap:14px}.form-stack label{margin:0}.model-list{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:310px;overflow:auto;padding:3px}.model-option{display:flex;align-items:flex-start;gap:8px;padding:8px;border:1px solid #26344b;border-radius:8px;font:600 .75rem ui-monospace,monospace;overflow-wrap:anywhere}.model-option input{width:15px;height:15px;margin:1px 0 0}.bar-chart{height:210px;display:flex;align-items:flex-end;gap:4px;padding:24px 2px 4px;overflow-x:auto}.bar{min-width:12px;flex:1;max-width:36px;height:var(--h);min-height:3px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,var(--blue),#403ab3);position:relative}.bar:hover::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);background:#050810;border:1px solid var(--line);border-radius:6px;padding:5px 7px;white-space:nowrap;font-size:.68rem;z-index:3}.rank-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 0;border-bottom:1px solid #222e42}.rank-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-row span{color:var(--muted)}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:.78rem}.data-table th,.data-table td{text-align:left;padding:10px;border-bottom:1px solid #263248;white-space:nowrap}.data-table th{color:#8fa0b9;font-weight:600}.log-output{margin:0;min-height:480px;max-height:calc(100vh - 190px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#050911;color:#a8b7cc;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.toast{position:fixed;right:22px;bottom:22px;z-index:100;padding:12px 16px;border:1px solid #35537d;border-radius:10px;background:#17243a;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;transition:.2s}.toast.show{transform:none;opacity:1}.toast.error{border-color:#7b3544;background:#351a22}.empty{padding:30px;text-align:center;color:var(--muted)}
@media(max-width:1000px){.metric-grid{grid-template-columns:1fr 1fr}.account-card{grid-template-columns:1.5fr 1fr 1fr}.account-card .cell.hide-tablet{display:none}.row-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:760px){.shell{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;transform:translateX(-105%);transition:transform .2s;box-shadow:var(--shadow)}.sidebar.open{transform:none}.menu-button{display:block}.topbar{min-height:78px;margin-bottom:18px}.top-actions .secondary,.lastUpdated{display:none}main{padding:0 14px 30px}.metric-grid,.metric-grid.three,.two-col{grid-template-columns:1fr}.metric-grid{gap:10px}.two-col{gap:12px}.toolbar,.status-hero{align-items:stretch;flex-direction:column}.button-row{width:100%}.button-row button,.button-row .file-button{flex:1}.account-card{grid-template-columns:1fr 1fr}.account-card .identity{grid-column:1/-1}.account-card .cell.hide-mobile{display:none}.row-actions{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.model-list{grid-template-columns:1fr}.login-card{padding:27px 22px}.topbar h2{font-size:1.18rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.key-list{display:grid;gap:8px;margin-top:15px}
.key-row{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:10px 12px;background:#0a111e;border:1px solid #25334a;border-radius:8px}
.key-row code{flex:1;min-width:0;overflow:auto;color:#8ddbd5}
.key-row .row-actions{flex:0 0 auto}
.small{font-size:.82rem}
.key-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.key-main code{flex:none;overflow:auto}
.key-main small{font-size:.78rem}
.endpoint-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#0a111e;border:1px solid #25334a;border-radius:8px}
.endpoint-row code{flex:1;min-width:0;overflow:auto;background:none;border:0;padding:0}
.endpoint-tag{flex:0 0 auto;font-size:.7rem;letter-spacing:.08em;color:#8ddbd5}
.endpoint-row button{flex:0 0 auto;padding:.45rem .7rem}
.account-card .identity{display:flex;align-items:center;gap:10px}
.account-card .identity .grow{min-width:0;flex:1}
.account-card .identity .mini-dot{flex:0 0 auto}
.health-list{max-height:560px;overflow-y:auto;padding-right:4px}
