:root{--bg: #f4f6fb;--surface: #ffffff;--surface-soft: #f8f9fd;--surface-strong: #eef1f8;--ink: #243041;--muted: #687386;--faint: #9099aa;--line: #dde3ee;--line-strong: #c7d0e1;--sidebar: #f9fafe;--sidebar-2: #eef1f8;--accent: #6d5dfc;--accent-2: #38bdf8;--accent-soft: #eef7ff;--good: #2f6f5f;--good-soft: #e5f3ee;--warn: #a15c07;--warn-soft: #fff2d6;--danger: #b42332;--danger-soft: #ffe4e8;--shadow: 0 22px 55px rgba(36, 48, 65, .12);--shadow-soft: 0 12px 28px rgba(36, 48, 65, .08);--radius: 8px;color:var(--ink);background:linear-gradient(180deg,#ffffff61,#fff0 260px),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 82% -20%,rgba(109,93,252,.12),transparent 34%),radial-gradient(circle at 8% -15%,rgba(56,189,248,.12),transparent 32%),var(--bg)}button,input,select,textarea{font:inherit}button{align-items:center;border:0;border-radius:7px;cursor:pointer;display:inline-flex;font-weight:720;justify-content:center;min-height:38px;padding:8px 12px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(109,93,252,.22);outline-offset:1px}button:disabled{cursor:not-allowed;opacity:.62;transform:none}code{background:#f3f6fa;border:1px solid var(--line);border-radius:6px;color:#253244;display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:3px 7px}label{color:#435266;display:grid;gap:6px;font-size:12px;font-weight:760}input,select,textarea{background:#fff;border:1px solid var(--line-strong);border-radius:7px;color:var(--ink);min-height:38px;min-width:0;outline:none;padding:8px 10px;transition:border-color .16s ease,box-shadow .16s ease}textarea{min-height:150px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6d5dfc24}table{border-collapse:collapse;width:100%}.panel>table{margin:14px 16px 16px;width:calc(100% - 32px)}.panel>.group-table{margin:0;width:100%}th,td{border-bottom:1px solid #e2e9f1;padding:11px 16px;text-align:left;vertical-align:middle}th{background:#f0f2fb;border-bottom-color:#dce3f1;color:#5b6475;font-size:11px;font-weight:820;letter-spacing:0;text-transform:uppercase}tbody tr{background:#fff}tbody tr:hover{background:#f4f8fc}.boot-fallback,.shell{display:grid;grid-template-columns:274px minmax(0,1fr);min-height:100vh}.boot-fallback aside,.sidebar{background:linear-gradient(180deg,#fff,#f2f4fa),var(--sidebar);border-right:1px solid var(--line);color:var(--ink);display:flex;flex-direction:column;gap:24px;height:100vh;padding:22px 16px;position:sticky;top:0}.boot-fallback section{padding:24px}.brand-block{align-items:center;display:flex;gap:12px;min-height:50px}.brand-mark{align-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-2));border:1px solid rgba(255,255,255,.72);border-radius:8px;box-shadow:0 12px 26px #6d5dfc38;color:#fff;display:inline-flex;font-size:13px;font-weight:850;height:38px;justify-content:center;width:38px}.sidebar h1{font-size:20px;font-weight:860;margin:0 0 4px}.sidebar p,.eyebrow{color:#7b8495;font-size:12px;margin:0}nav{display:grid;gap:6px}nav button{background:transparent;border:1px solid transparent;color:#4f5b6f;gap:11px;justify-content:flex-start;min-height:44px;padding:9px 10px;text-align:left;width:100%}nav button span{align-items:center;background:#eef0fb;border:1px solid #d9def2;border-radius:7px;color:#6257c8;display:inline-flex;height:26px;justify-content:center;width:26px}nav button:hover,nav button.active{background:var(--accent-soft);border-color:#c8e9ff;color:#1d4f78}nav button.active span{background:linear-gradient(135deg,var(--accent),var(--accent-2));border-color:#ffffff80;color:#fff}.sidebar-status{background:linear-gradient(180deg,#fff,#f6f7fd);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:5px;margin-top:auto;padding:13px}.sidebar-status span,.sidebar-status small{color:var(--muted);font-size:11px;font-weight:760;text-transform:uppercase}.sidebar-status strong{color:var(--ink);font-size:24px;font-weight:860}.content{min-width:0;padding:22px 28px 36px}.topbar{align-items:center;background:linear-gradient(135deg,#fff,#f7f8ff);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(260px,340px);margin-bottom:18px;padding:18px}.topbar code{background:#f6f7fc;border-color:var(--line);color:#354052;font-size:14px;margin-top:6px}.status{color:#5b5fd6;font-size:13px;font-weight:680;margin:8px 0 0}.topbar label{color:var(--muted)}.topbar input{background:#fff;border-color:var(--line-strong);color:var(--ink)}.topbar input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6d5dfc24}.management-key{min-width:0}.grid{display:grid;gap:14px}.overview-workbench{display:grid;gap:16px}.overview-hero{align-items:end;background:linear-gradient(135deg,#fffffff5,#e8f1ffeb);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);display:flex;gap:18px;justify-content:space-between;padding:22px}.overview-hero h2{font-size:25px;line-height:1.18;max-width:760px}.overview-hero>span{background:var(--accent-soft);border:1px solid #c8e9ff;border-radius:999px;color:#1f6f9e;font-size:12px;font-weight:820;padding:7px 10px;text-transform:uppercase;white-space:nowrap}.overview{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.panel,pre{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.metric{background:linear-gradient(180deg,#fff,#f8fbfe);min-height:126px;overflow:hidden;padding:18px 18px 20px;position:relative}.metric:before{background:linear-gradient(135deg,var(--accent),var(--accent-2));content:"";height:5px;left:18px;position:absolute;right:18px;top:0;width:auto}.metric span{color:var(--muted);display:block;font-size:12px;font-weight:780;margin-bottom:14px;text-transform:uppercase}.metric strong{color:var(--ink);font-size:42px;font-weight:880}.panel{background:#fffffff5;overflow:hidden}.panel-head{align-items:center;background:linear-gradient(180deg,#fff,#f5f8fc);border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;min-height:66px;padding:15px 18px}.panel-head p,.empty-state span{color:var(--muted);font-size:13px;margin:4px 0 0}h2,h3{color:var(--ink);margin:0}h2{font-size:17px;font-weight:820}h3{font-size:15px;font-weight:790}.panel-head button,.models-toolbar button,.policy-editor button,.key-create-actions button,.oauth-card button,.import-form button,.file-import button{background:linear-gradient(135deg,var(--accent),#5f72e8);box-shadow:0 8px 18px #6d5dfc2e;color:#fff}.panel-head button:hover,.models-toolbar button:hover,.policy-editor button:hover,.key-create-actions button:hover,.oauth-card button:hover,.import-form button:hover,.file-import button:hover{background:#5b4ee4;box-shadow:0 8px 18px #6d5dfc29}button.secondary,.key-create-actions button.secondary,.panel-head button.secondary{background:#edf3f9;border:1px solid var(--line);box-shadow:none;color:#314154}button.secondary:hover,.key-create-actions button.secondary:hover,.panel-head button.secondary:hover{background:#e3ebf4;box-shadow:none}button.danger,.small.danger{background:var(--danger-soft);border:1px solid #ffc0c8;color:var(--danger)}button.danger:hover,.small.danger:hover{background:#ffd4db}.small{border:1px solid var(--line);font-size:12px;min-height:30px;padding:5px 8px}.actions,.row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.source-toolbar,.models-toolbar,.key-toolbar,.model-toolbar{align-items:end;background:linear-gradient(180deg,#fbfcff,#f1f4fb);border-bottom:1px solid var(--line);display:grid;gap:12px;padding:15px 18px}.source-toolbar{grid-template-columns:minmax(160px,220px) minmax(150px,190px) minmax(260px,1fr)}.source-toolbar.compact{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:minmax(220px,1fr) auto auto;padding:12px}.models-toolbar{grid-template-columns:repeat(3,minmax(180px,1fr)) minmax(150px,180px)}.models-toolbar select,.models-toolbar button{width:100%}.source-summary,.health-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 16px 6px}.source-summary article,.health-grid article{background:linear-gradient(180deg,#fff,#f6f9fc);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:5px;padding:12px}.source-summary span,.health-grid span,.key-created span{color:var(--muted);font-size:12px;font-weight:760;text-transform:uppercase}.source-summary strong,.health-grid strong{color:var(--ink);font-size:19px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-grid small{color:var(--muted)}.account-table-wrap,.key-table-wrap{background:#fff;overflow-x:auto;padding:14px 16px 16px}.account-table{border:1px solid var(--line);border-radius:var(--radius);min-width:1180px;table-layout:fixed}.account-table th:first-child,.key-table th:first-child,table th:first-child{border-top-left-radius:7px}.account-table th:last-child,.key-table th:last-child,table th:last-child{border-top-right-radius:7px}.account-col{width:260px}.source-col{width:120px}.status-col{width:100px}.quota-col{width:310px}.refresh-col{width:170px}.reason-col{width:220px}.actions-col{width:190px}.account-table td:first-child{align-content:center;display:grid;gap:6px;min-width:0}.account-table .row-actions{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(72px,1fr));min-width:170px}.quota-lines{align-content:center;display:grid;gap:7px;min-width:0}.quota-line{align-items:center;display:grid;gap:8px;grid-template-columns:48px minmax(80px,1fr) minmax(68px,auto)}.quota-line span{color:#506174;font-size:11px;font-weight:780;text-transform:uppercase}.quota-line strong{color:var(--ink);font-size:12px;font-weight:790;text-align:right;white-space:nowrap}.quota-track{background:#e5edf5;border-radius:999px;height:8px;overflow:hidden}.quota-track span{background:linear-gradient(90deg,#9b8cff,var(--accent));border-radius:inherit;display:block;height:100%;min-width:4px}.quota-track.muted span{display:none}.runtime-detail{color:var(--warn);line-height:1.35;overflow-wrap:anywhere}.group-table{border-top:1px solid var(--line)}.group-table tbody tr{cursor:pointer}.group-table tbody tr.selected{background:#f3f1ff;box-shadow:inset 5px 0 0 var(--accent)}.group-table th:last-child,.group-table td:last-child{text-align:right;width:96px}.group-detail{border-top:1px solid var(--line);display:grid;gap:14px;padding:16px}.group-editor{display:grid;gap:12px;grid-template-columns:1.2fr 1.2fr .7fr}.model-manager{background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:grid;overflow:hidden}.model-filters{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(130px,160px) minmax(130px,160px) minmax(220px,1fr) auto}.model-list-head{align-items:center;background:#f6f7fc;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:11px 14px}.model-list-head strong{color:var(--ink);font-size:12px;font-weight:820;text-transform:uppercase}.model-list-head span{color:var(--muted);font-size:12px}.inline-check,.model-list-head .inline-check{align-items:center;display:inline-flex;gap:8px}.inline-check input{min-height:auto}.model-list{display:grid;max-height:380px;overflow:auto}.model-row{align-items:center;background:#fff;border-bottom:1px solid #e8eef5;color:var(--ink);cursor:pointer;display:grid;gap:12px;grid-template-columns:18px minmax(220px,1fr) max-content max-content max-content;min-height:48px;padding:9px 14px}.model-row:hover{background:#f8fbff}.model-row.selected{background:#eef8ff;box-shadow:inset 4px 0 0 var(--accent-2)}.model-meta{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;min-width:0}.model-meta small,.source-pill{background:#eef8ff;border:1px solid #c8e9ff;border-radius:999px;color:#1f6f9e;display:inline-block;font-size:11px;font-weight:780;line-height:1.25;max-width:180px;overflow:hidden;padding:4px 8px;text-overflow:ellipsis;white-space:nowrap}.model-state,.model-status,.pill{border-radius:999px;display:inline-flex;font-size:12px;font-weight:780;justify-content:center;line-height:1.25;padding:4px 8px;white-space:nowrap}.model-state{background:#f2f5f8;border:1px solid var(--line);color:#536578;font-size:11px;text-transform:uppercase}.model-state.added,.good,.model-status.available{background:var(--good-soft);border-color:#9ee7bf;color:var(--good)}.model-status{border:1px solid var(--line-strong);color:#526273;min-width:82px}.model-status.unavailable{background:var(--danger-soft);border-color:#ffc0c8;color:var(--danger)}.model-status.unknown,.muted{background:#f2f5f8;color:var(--muted)}.warn{background:var(--warn-soft);color:var(--warn)}.segmented{background:#e8ecf6;border:1px solid var(--line);border-radius:7px;display:inline-flex;gap:2px;padding:2px}.segmented button{background:transparent;color:var(--muted);min-height:30px;padding:5px 10px}.segmented button.active{background:var(--accent);color:#fff}.policy-editor{border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;padding:16px}.policy-editor>div{grid-column:1 / -1}.policy-editor p,.key-create p{color:var(--muted);font-size:13px;margin:4px 0 0}.console{display:grid;gap:16px;grid-template-columns:minmax(320px,420px) minmax(0,1fr)}.console .panel{align-self:start}.console .panel>label,.console .image-options,.console .image-preview,.console .file-import{margin:14px 16px}.console-output{min-width:0}pre{background:linear-gradient(180deg,#fff,#f7f8ff);border-color:var(--line);color:var(--ink);margin:0;min-height:280px;overflow:auto;padding:16px;white-space:pre-wrap}.image-options{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.image-preview,.generated-grid{display:grid;gap:10px}.image-preview img,.generated-grid img{border:1px solid var(--line);border-radius:var(--radius);max-width:100%}.generated-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-top:14px}.key-workbench{border-bottom:1px solid var(--line);display:grid;gap:14px;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);padding:16px}.key-create{background:linear-gradient(180deg,#fff,#f6f9fc);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:12px;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(190px,1fr) auto;padding:14px}.key-create>div:first-child{grid-column:1 / -1}.key-create-actions{align-self:end;display:flex;gap:8px;justify-content:flex-end}.key-created{align-content:start;background:linear-gradient(180deg,#eef8ff,#fff);border:1px solid #c8e9ff;border-radius:var(--radius);display:grid;gap:10px;min-width:0;padding:14px}.key-created.empty{background:var(--surface-soft);border-color:var(--line)}.key-created code{overflow-wrap:anywhere}.key-status{background:var(--surface-soft);border-bottom:1px solid var(--line);color:#536578;font-size:13px;padding:10px 16px}.key-toolbar{grid-template-columns:minmax(260px,1fr) minmax(180px,220px) minmax(160px,200px) auto}.key-demo-toggle{align-self:end;min-height:38px;white-space:nowrap}.key-table{border:1px solid var(--line);border-radius:var(--radius);min-width:760px}.modal-backdrop{align-items:center;background:#12182085;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:40}.modal-panel{background:#fff;border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 34px 90px #1218205c;max-height:min(760px,calc(100vh - 48px));overflow:hidden;width:min(760px,100%)}.modal-body{display:grid;gap:12px;max-height:calc(100vh - 140px);overflow:auto;padding:16px}.file-import,.oauth-card,.import-form,.field-chips,.mode-warning{border:1px solid var(--line);border-radius:var(--radius);padding:12px}.file-import{align-items:center;background:var(--surface-soft);display:flex;flex-wrap:wrap;gap:10px}.hidden-file{display:none}.field-chips{background:#f8fbfe;display:flex;flex-wrap:wrap;gap:8px}.field-chips span{background:#eef8ff;border:1px solid #c8e9ff;border-radius:999px;color:#1f6f9e;font-size:12px;font-weight:760;padding:4px 8px}.mode-warning{background:var(--warn-soft);color:var(--warn);font-size:13px;line-height:1.45}.oauth-card,.import-form{display:grid;gap:12px}.events{display:grid;gap:0;list-style:none;margin:0;padding:0}.events li{border-bottom:1px solid #e6edf5;color:#334155;padding:12px 16px}.events span{color:var(--muted);display:inline-block;font-size:12px;font-weight:760;margin-right:10px;min-width:74px}.ops-grid{display:grid;gap:16px}.empty-state{background:#f8fbfe;border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);display:grid;gap:4px;margin:10px 16px 16px;padding:14px}.model-list .empty-state,.panel>.empty-state{margin:10px}@media(max-width:1180px){.overview{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-hero{align-items:start;flex-direction:column}.console,.key-workbench{grid-template-columns:1fr}.models-toolbar,.source-toolbar,.model-filters,.policy-editor,.key-toolbar,.key-create{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.shell,.boot-fallback{grid-template-columns:1fr}.sidebar,.boot-fallback aside{height:auto;position:static}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:16px}.topbar,.overview,.source-summary,.health-grid,.group-editor,.models-toolbar,.source-toolbar,.source-toolbar.compact,.model-filters,.policy-editor,.key-toolbar,.key-create,.image-options{grid-template-columns:1fr}.panel-head{align-items:stretch;flex-direction:column}.actions{justify-content:flex-start}.model-row{grid-template-columns:18px minmax(0,1fr)}.model-meta,.model-status,.model-state{grid-column:2;justify-self:start}}
