:root{color-scheme:light;--font: "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, sans-serif;--bg: #f5f5f5;--surface: #ffffff;--surface-subtle: #fafafa;--surface-hover: #f0f0f0;--neutral-bg: #f0f0f0;--text: #242424;--muted: #616161;--subtle: #8a8886;--line: #e0e0e0;--line-strong: #c7c7c7;--brand: #0f6cbd;--brand-hover: #115ea3;--brand-soft: #ebf3fc;--brand-text: #0b5da7;--brand-border: #b4d6f5;--success: #0e7a0d;--success-bg: #f1faf1;--danger: #bc2f32;--danger-bg: #fdf3f4;--shadow: 0 2px 8px #00000012, 0 1px 2px #0000000a;--shadow-flyout: 0 8px 28px #00000024, 0 2px 8px #00000012;--focus: #0f6cbd;--chart-1: #0f6cbd;--chart-2: #107c10;--chart-3: #8764b8;--chart-4: #d83b01;--chart-5: #008272;--chart-other: #8a8886;font:14px/1.45 var(--font)}:root[data-theme=dark]{color-scheme:dark;--bg: #171717;--surface: #242424;--surface-subtle: #1d1d1d;--surface-hover: #303030;--neutral-bg: #333333;--text: #f5f5f5;--muted: #c7c7c7;--subtle: #a0a0a0;--line: #3b3b3b;--line-strong: #555555;--brand: #62abf5;--brand-hover: #378bd7;--brand-soft: #173a5e;--brand-text: #8ec5ff;--brand-border: #326b9e;--success: #54c052;--success-bg: #163d20;--danger: #ff7b7e;--danger-bg: #4d2225;--shadow: 0 2px 8px #0008, 0 1px 2px #0006;--shadow-flyout: 0 8px 28px #000a, 0 2px 8px #0008;--focus: #62abf5;--chart-1: #62abf5;--chart-2: #6ccb5f;--chart-3: #c8a7ed;--chart-4: #ff9a66;--chart-5: #48d1c5;--chart-other: #a0a0a0}@media(prefers-color-scheme:dark){:root[data-theme=system]{color-scheme:dark;--bg: #171717;--surface: #242424;--surface-subtle: #1d1d1d;--surface-hover: #303030;--neutral-bg: #333333;--text: #f5f5f5;--muted: #c7c7c7;--subtle: #a0a0a0;--line: #3b3b3b;--line-strong: #555555;--brand: #62abf5;--brand-hover: #378bd7;--brand-soft: #173a5e;--brand-text: #8ec5ff;--brand-border: #326b9e;--success: #54c052;--success-bg: #163d20;--danger: #ff7b7e;--danger-bg: #4d2225;--shadow: 0 2px 8px #0008, 0 1px 2px #0006;--shadow-flyout: 0 8px 28px #000a, 0 2px 8px #0008;--focus: #62abf5;--chart-1: #62abf5;--chart-2: #6ccb5f;--chart-3: #c8a7ed;--chart-4: #ff9a66;--chart-5: #48d1c5;--chart-other: #a0a0a0}}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button,select{cursor:pointer}a{color:inherit}code{font:12px ui-monospace,SFMono-Regular,Consolas,monospace}.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;z-index:30;display:flex;flex-direction:column;height:100vh;padding:18px 12px 16px;border-right:1px solid var(--line);background:var(--surface)}.sidebar-toggle{align-self:flex-end;margin:-4px 4px 8px;width:34px;min-width:34px;height:34px;padding:0;border-color:transparent;background:transparent}.sidebar-toggle:hover{background:var(--surface-hover)}.brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none}.sidebar>.brand{padding:2px 8px 22px}.brand-copy strong{display:block;font-size:15px;font-weight:650;line-height:1.15}.brand-copy small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.logo{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(145deg,#1684d9,#0f6cbd 55%,#08477d);color:#fff;box-shadow:0 4px 12px #0f6cbd30,inset 0 0 0 1px #ffffff3d}.logo svg{width:25px;height:25px}.logo.large{width:48px;height:48px;border-radius:13px}.logo.large svg{width:31px;height:31px}.sidebar nav{display:grid;gap:2px}.sidebar nav a{position:relative;display:flex;align-items:center;gap:11px;height:38px;padding:0 11px;border-radius:5px;color:var(--text);text-decoration:none;transition:background .12s,color .12s}.sidebar nav a:hover{background:var(--surface-hover)}.sidebar nav a.active{background:var(--brand-soft);color:var(--brand-text);font-weight:600}.sidebar nav a.active:before{position:absolute;left:0;width:3px;height:20px;border-radius:2px;background:var(--brand);content:""}.sidebar-foot{display:grid;gap:8px;margin-top:auto}.sidebar-collapsed{grid-template-columns:88px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding-inline:10px}.sidebar-collapsed .sidebar-toggle{align-self:center}.sidebar-collapsed .brand-copy,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .service-state span,.sidebar-collapsed .logout span{display:none}.sidebar-collapsed .sidebar nav a,.sidebar-collapsed .service-state,.sidebar-collapsed .logout{justify-content:center}.sidebar-collapsed .sidebar nav a{padding-inline:0}.sidebar-collapsed .sidebar nav a .icon,.sidebar-collapsed .logout .icon{margin:0}.sidebar-collapsed .sidebar-foot{align-items:center}.service-state{display:flex;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface-subtle)}.service-state>i{width:8px;height:8px;border-radius:50%;background:#13a10e;box-shadow:0 0 0 3px #13a10e22}.service-state strong,.service-state small{display:block}.service-state strong{font-size:12px}.service-state small{color:var(--muted);font-size:10px}.logout{justify-content:flex-start;width:100%}.workspace{min-width:0}.commandbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;height:56px;padding:0 28px;border-bottom:1px solid var(--line);background:var(--surface)}.command-title{font-weight:600}.command-context{display:flex;align-items:center;gap:7px;margin-left:auto;color:var(--muted);font-size:12px}.command-context .icon{width:16px}.mobile-bar{display:none}.mobile-controls{display:flex;align-items:center;gap:6px}.workspace>main{width:min(100%,1180px);margin:0 auto;padding:32px 28px 56px;animation:fade-in .15s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(3px)}}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.eyebrow{display:block;margin-bottom:5px;color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1{margin:0 0 7px;font-size:32px;font-weight:650;line-height:1.2;letter-spacing:-.025em}.page-header p{margin:0;color:var(--muted);font-size:15px}.page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.page-header>.page-actions{justify-content:flex-end}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:32px;padding:5px 12px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--text);font-weight:600;line-height:20px;text-decoration:none;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.button:hover{border-color:var(--line-strong);background:var(--surface-hover)}.button.primary{border-color:var(--brand);background:var(--brand);color:#fff}.button.primary:hover{border-color:var(--brand-hover);background:var(--brand-hover)}.button.danger{border-color:transparent;background:transparent;color:var(--danger)}.button.danger:hover{background:var(--danger-bg)}.button.ghost{border-color:transparent;background:transparent;font-weight:400}.button.ghost:hover{background:var(--surface-hover)}.button.icon-button{width:32px;min-width:32px;padding:5px;border-color:transparent;background:transparent}.button.icon-button:hover{background:var(--surface-hover)}.button:disabled{cursor:default;opacity:.55}.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}.stats.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 1px 2px #00000008}.stat span{display:block;margin-bottom:5px;color:var(--muted);font-size:12px}.stat strong{display:block;font-size:24px;font-weight:650;letter-spacing:-.02em}.panel{overflow:hidden;margin-bottom:20px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:66px;padding:14px 20px;border-bottom:1px solid var(--line)}.panel-header h2{margin:0;font-size:18px;font-weight:600}.panel-header p{margin:3px 0 0;color:var(--muted);font-size:12px}.panel-body{min-width:0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-card{min-height:190px;margin:0;box-shadow:none;transition:background .12s,border-color .12s,box-shadow .12s,transform .12s}.home-card:hover{transform:translateY(-1px);border-color:var(--brand-border);background:var(--surface-hover);box-shadow:0 3px 12px #0f6cbd22}.home-card .panel-body{display:flex;flex-direction:column;height:100%;padding:18px}.home-card h3{margin:0 0 6px;font-size:15px}.home-card .card-value{margin-bottom:10px;color:var(--brand-text);font-size:13px}.home-card p{margin:0 0 15px;color:var(--muted);font-size:12px}.home-card .button{align-self:flex-start;margin-top:auto}.list{min-width:0}.account-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.account-filters .button{min-height:32px}.account-row{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(128px,.75fr) minmax(128px,.75fr) minmax(105px,.55fr) minmax(150px,auto);gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line);transition:background .12s}.account-row:last-child,.key-row:last-child{border-bottom:0}.account-row:hover,.key-row:hover{background:var(--surface-hover)}.identity{display:flex;align-items:center;gap:9px;min-width:0}.identity>div{min-width:0}.identity h3,.key-row h3{margin:0;font-size:13px;font-weight:600}.identity p,.identity small,.account-row>div>small{display:block;overflow:hidden;margin:1px 0 0;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.masked-identity{display:flex!important;align-items:center;gap:5px}.identity-line{display:flex!important;align-items:center;gap:5px;min-width:0}.masked-identity>span,.identity-line>span{overflow:hidden;text-overflow:ellipsis}.identity-toggle{flex:0 0 auto;min-width:24px;width:24px;height:22px;padding:0;border-color:transparent;background:transparent}.identity-toggle:hover{background:var(--surface-hover)}.identity-toggle .icon{width:15px;height:15px}.usage-snapshot{white-space:normal!important}.avatar{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--brand-soft);color:var(--brand-text);font-weight:700}.quota small{display:block;color:var(--muted);font-size:10px}.quota-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.quota strong{font-size:12px}.quota>span{display:block;color:var(--muted);font-size:11px}.quota-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quota-track{height:4px;margin:4px 0 3px;overflow:hidden;border-radius:3px;background:var(--neutral-bg)}.quota-track i{display:block;height:100%;border-radius:3px;background:var(--success)}.status{display:inline-flex;align-items:center;padding:2px 7px;border-radius:10px;font-size:11px;font-weight:600}.status.healthy{background:var(--success-bg);color:var(--success)}.status.disabled{background:var(--neutral-bg);color:var(--muted)}.row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.row-actions .button{min-height:30px;padding:0 9px;font-size:11px}.custom-api-card{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:24px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,var(--brand-soft) 0 3px,transparent 3px);transition:background-color .15s,opacity .15s}.custom-api-card:last-child{border-bottom:0}.custom-api-card:hover{background-color:var(--surface-subtle)}.custom-api-card.is-disabled{background:none;opacity:.72}.custom-api-card-main{display:flex;gap:12px;align-items:center;min-width:0}.custom-api-mark{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border:1px solid var(--brand-border);border-radius:10px;background:var(--brand-soft);color:var(--brand-text);font-size:15px;font-weight:700}.custom-api-identity{min-width:0}.custom-api-title-line{display:flex;gap:8px;align-items:center}.custom-api-identity h3{margin:0;font-size:14px;font-weight:650}.custom-api-identity code{display:block;overflow:hidden;margin-top:3px;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.custom-api-meta{display:flex;gap:12px;margin-top:5px;color:var(--subtle);font-size:10px}.custom-api-meta span+span:before{content:"·";margin-right:12px}.custom-api-controls,.custom-api-buttons{display:flex;gap:8px;align-items:center}.custom-api-buttons{padding-left:4px}.custom-api-buttons .button{min-height:30px;padding:0 10px;font-size:11px}.custom-model-form{display:grid;gap:16px}.custom-model-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.custom-model-toolbar input{flex:1 1 220px}.custom-model-toolbar>span{color:var(--muted);font-size:12px}.custom-model-list{overflow-y:auto;max-height:min(52vh,520px);border:1px solid var(--line);border-radius:10px}.custom-model-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);cursor:pointer}.custom-model-option:last-child{border-bottom:0}.custom-model-option:hover{background:var(--surface-subtle)}.custom-model-option span,.custom-model-option span small{display:block;min-width:0}.custom-model-option strong,.custom-model-option small{overflow-wrap:anywhere}.custom-model-option small,.custom-model-empty{color:var(--muted);font-size:11px}.custom-model-empty{margin:0;padding:28px;text-align:center}.toggle-control,.compact-field{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;font-weight:500;cursor:pointer}.toggle-control input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.toggle-track{position:relative;flex:0 0 auto;width:30px;height:17px;border:1px solid var(--line-strong);border-radius:10px;background:var(--neutral-bg);transition:border-color .15s,background .15s}.toggle-track i{position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:var(--muted);transition:transform .15s,background .15s}.toggle-control input:checked+.toggle-track{border-color:var(--brand);background:var(--brand)}.toggle-control input:checked+.toggle-track i{background:#fff;transform:translate(13px)}.toggle-control input:focus-visible+.toggle-track{outline:2px solid var(--focus);outline-offset:2px}.compact-field input{width:62px;min-height:30px;padding:4px 7px}.key-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) auto;gap:18px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line)}.key-row>span{color:var(--muted);font-size:12px}.copy-field{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:8px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}.copy-field label{color:var(--muted);font-size:12px;font-weight:600}.copy-field input{width:100%;min-width:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.key-row h3 .status{margin-left:5px;vertical-align:1px}.key-row code{color:var(--muted)}.revealed{grid-column:1 / -1;display:flex;align-items:center;gap:8px;min-width:0;padding:10px 12px;border:1px solid var(--brand-border);border-radius:5px;background:var(--brand-soft)}.revealed code{flex:1;min-width:0;overflow-wrap:anywhere;color:var(--text)}.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:16px}.model-family>h2{margin:18px 16px 0;font-size:16px;font-weight:600}.model-family:first-child>h2{margin-top:14px}.model-test-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 16px 0;padding:10px 12px;border:1px solid var(--line);border-left-width:3px;border-radius:6px;background:var(--surface-subtle);font-size:12px}.model-test-summary.all-passed{border-left-color:var(--success)}.model-test-summary.has-failures{border-left-color:var(--danger)}.model-test-summary span{color:var(--muted);font-size:11px}.model-card{min-width:0;padding:15px;border:1px solid var(--line);border-radius:7px;background:var(--surface);transition:background .12s,border-color .12s,box-shadow .12s,transform .12s}.model-card:hover{transform:translateY(-1px);border-color:var(--brand-border);background:var(--surface-hover);box-shadow:0 3px 12px #0f6cbd22}.model-card>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.model-card h3{margin:0 0 3px;font-size:14px;font-weight:600}.model-test-button.button{flex:0 0 auto;min-height:28px;padding:0 10px;font-size:11px}.model-card code{color:var(--muted);overflow-wrap:anywhere}.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.badges span{padding:3px 7px;border-radius:10px;background:var(--neutral-bg);color:var(--muted);font-size:11px}.badges span:first-child{background:var(--brand-soft);color:var(--brand-text)}.copy-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.copy-chips button{height:24px;padding:0 8px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--muted);cursor:pointer;font-size:11px}.copy-chips button:hover{border-color:var(--brand-border);background:var(--brand-soft);color:var(--brand-text)}.model-test-result{display:grid;gap:7px;margin-top:12px;padding:10px 11px;border:1px solid var(--line);border-left-width:3px;border-radius:5px;background:var(--surface-subtle)}.model-test-result.passed{border-left-color:var(--success)}.model-test-result.failed{border-left-color:var(--danger)}.model-test-result>div{display:flex;justify-content:space-between;gap:8px;font-size:11px}.model-test-result.passed strong{color:var(--success)}.model-test-result.failed strong{color:var(--danger)}.model-test-result span{color:var(--muted)}.model-test-result code{display:-webkit-box;overflow:hidden;font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.settings label{display:flex;align-items:center;gap:20px;min-height:72px;padding:14px 20px;border-bottom:1px solid var(--line)}.settings label:last-child{border-bottom:0}.settings label>span{flex:1}.settings strong,.settings small{display:block}.settings strong{font-weight:600}.settings small{color:var(--muted);font-size:12px}.settings input,.settings select{flex:0 0 auto;width:190px}.compact-panel .panel-header{min-height:0;padding:10px 16px}.compact-panel .panel-header h2{font-size:15px}.compact-settings label{min-height:0;padding:9px 16px}.compact-settings small{overflow-wrap:anywhere}.project-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px 16px;border-bottom:1px solid var(--line)}.project-images:last-child{border-bottom:0}.project-image summary{color:var(--text);cursor:pointer;font-size:13px;font-weight:600}.project-image img{display:block;width:min(320px,100%);height:320px;margin:12px auto 0;border:1px solid var(--line);border-radius:6px;object-fit:cover}input,select,textarea{border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--text)}input,select{height:32px;padding:4px 9px}textarea{min-height:150px;padding:8px 10px;resize:vertical}.table-wrap{overflow:auto}table{width:100%;min-width:760px;border-collapse:collapse}th,td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{background:var(--surface-subtle);color:var(--muted);font-size:11px;font-weight:600}tbody tr:hover{background:var(--surface-hover)}tbody tr:last-child td{border-bottom:0}.chart-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:20px}.chart{padding:16px 20px 12px}.chart svg{display:block;width:100%;height:auto;min-height:180px;overflow:visible}.chart-grid-lines{fill:none;stroke:var(--line);stroke-width:1}.trend-area{fill:color-mix(in srgb,var(--chart-1) 14%,transparent);stroke:none}.trend-line{fill:none;stroke:var(--chart-1);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart circle:not(.donut-track):not(.donut-segment){fill:var(--surface);stroke:var(--chart-1);stroke-width:2.5}.chart circle:focus,.donut-segment:focus{outline:none;filter:drop-shadow(0 0 3px var(--focus))}.chart-legend{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px}.chart-legend span:first-child:before{display:inline-block;width:15px;height:3px;margin:0 6px 3px 0;border-radius:2px;background:var(--chart-1);content:""}.model-chart{display:grid;grid-template-columns:minmax(150px,.85fr) minmax(150px,1fr);align-items:center;gap:10px;min-height:230px;padding:16px 20px}.model-chart svg{width:100%;max-height:200px}.donut-track{fill:none;stroke:var(--neutral-bg);stroke-width:18}.donut-segment{fill:none;stroke-width:18;transition:stroke-width .12s}.donut-segment:hover,.donut-segment:focus{stroke-width:22}.model-chart text{fill:var(--text);font-size:20px;font-weight:650}.model-chart .donut-label{fill:var(--muted);font-size:10px;font-weight:400}.model-legend{display:grid;gap:8px;min-width:0;margin:0;padding:0;list-style:none}.model-legend li{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:7px;font-size:11px}.model-legend i{width:9px;height:9px;border-radius:2px}.model-legend span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.chart-empty{display:grid;min-height:230px;place-items:center;padding:24px;color:var(--muted);text-align:center}.empty{display:grid;justify-items:center;padding:48px 24px;text-align:center}.empty-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:12px;border-radius:9px;background:var(--brand-soft);color:var(--brand)}.empty h3{margin:0 0 5px;font-size:15px}.empty p{max-width:420px;margin:0 0 16px;color:var(--muted)}.veil{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0008;backdrop-filter:blur(2px)}.dialog{width:min(100%,620px);max-height:calc(100vh - 40px);overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-flyout);animation:dialog-in .16s ease-out}@keyframes dialog-in{0%{opacity:0;transform:translateY(6px) scale(.99)}}.dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.dialog h2{margin:0;font-size:20px;font-weight:600}.dialog header p{margin:3px 0 0;color:var(--muted);font-size:12px}.dialog-body{display:grid;gap:8px;padding:20px}.dialog-body label{display:grid;gap:6px;font-weight:600}.dialog-body label+label{margin-top:8px}.dialog>footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--line);background:var(--surface-subtle)}.custom-api-form{display:grid;gap:18px}.custom-api-vpc-note{display:flex;gap:11px;align-items:center;padding:12px 14px;border:1px solid var(--brand-border);border-radius:7px;background:var(--brand-soft);color:var(--brand-text)}.custom-api-vpc-note p{margin:0;font-size:12px;line-height:1.45}.custom-api-vpc-icon{display:grid;flex:0 0 auto;place-items:center;width:30px;height:30px;border-radius:7px;background:var(--surface)}.custom-api-vpc-icon .icon{width:17px;height:17px}.custom-api-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:14px}.dialog-body .custom-api-field,.dialog-body .custom-api-field+.custom-api-field{display:grid;gap:6px;margin:0;color:var(--text);font-size:12px;font-weight:600}.custom-api-field-wide{grid-column:1 / -1}.custom-api-field input{width:100%;min-height:38px}.custom-api-field input[type=password],.custom-api-field input[type=url]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.dialog-body .custom-api-fallback-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding:13px 14px;border:1px solid var(--line);border-radius:7px;background:var(--surface-subtle);cursor:pointer}.custom-api-fallback-card strong,.custom-api-fallback-card small{display:block}.custom-api-fallback-card strong{font-size:12px}.custom-api-fallback-card small{max-width:440px;margin-top:2px;color:var(--muted);font-size:10px;font-weight:400}.custom-api-form-actions{display:flex;justify-content:flex-end;gap:8px;margin:0 -20px -20px;padding:12px 20px;border-top:1px solid var(--line);background:var(--surface-subtle)}.toast{position:fixed;right:22px;bottom:22px;z-index:200;display:grid;width:min(390px,calc(100vw - 32px));padding:13px 15px 13px 18px;border:1px solid var(--line);border-left:4px solid var(--success);border-radius:6px;background:var(--surface);box-shadow:var(--shadow-flyout);animation:toast-in .2s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.toast.error{border-left-color:var(--danger)}.toast strong,.toast span{display:block}.toast strong{font-size:13px}.toast span{margin-top:2px;color:var(--muted);font-size:12px}.loading,.login{display:grid;min-height:100vh;place-items:center;padding:24px}.loading{color:var(--muted)}.login{background:radial-gradient(circle at 50% 25%,var(--brand-soft),transparent 34%),var(--bg)}.login-card{display:grid;width:min(100%,420px);padding:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-flyout)}.login-card .logo{margin:0 auto 18px}.login-card h1{margin-bottom:8px;text-align:center;font-size:26px}.login-card>p{margin:0 0 24px;color:var(--muted);text-align:center}.login-card label{display:grid;gap:7px;margin-bottom:16px;font-weight:600}@media(max-width:1050px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-row{grid-template-columns:minmax(190px,1fr) minmax(140px,.7fr) minmax(120px,.6fr) auto}.account-row>.quota:nth-of-type(3){display:none}.chart-grid{grid-template-columns:1fr}.custom-api-card{grid-template-columns:1fr;gap:14px}.custom-api-controls{justify-content:flex-end}}@media(max-width:820px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding-inline:9px}.sidebar>.brand{justify-content:center;padding-inline:0}.brand-copy,.nav-label,.sidebar nav a span,.service-state span,.logout span{display:none}.sidebar nav a{justify-content:center;padding:0}.sidebar nav a.active:before{left:2px}.service-state,.logout{justify-content:center}.workspace>main{padding:28px 22px 48px}.stats.four{grid-template-columns:repeat(2,minmax(0,1fr))}.account-row{grid-template-columns:minmax(180px,1fr) minmax(130px,.7fr) auto}.account-row>div:nth-last-child(2){display:none}.key-row,.copy-field{grid-template-columns:1fr auto}.copy-field label{grid-column:1 / -1}.key-row>span{display:none}.custom-api-controls{flex-wrap:wrap;justify-content:flex-start}}@media(max-width:620px){.app-shell{display:block}.sidebar,.commandbar{display:none}.mobile-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;height:58px;padding:0 16px;border-bottom:1px solid var(--line);background:var(--surface)}.mobile-bar .brand{font-weight:650}.mobile-bar .logo{width:32px;height:32px;border-radius:9px}.mobile-bar .logo svg{width:21px;height:21px}.mobile-bar select{width:124px}.workspace>main{padding:24px 16px 40px}.page-header{display:block;margin-bottom:20px}h1{font-size:28px}.page-header>.page-actions{justify-content:flex-start;margin-top:18px}.stats,.stats.four,.card-grid{grid-template-columns:1fr}.panel-header{align-items:flex-start;padding:14px 16px}.account-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.account-row .identity,.account-row .custom-api-identity,.account-row .row-actions{grid-column:1 / -1}.account-row .quota{display:block;padding:10px;border:1px solid var(--line);border-radius:5px}.account-row>div:nth-last-child(2){display:block}.key-row{padding:15px 16px}.copy-field{padding:12px}.model-grid{grid-template-columns:1fr;padding:12px}.model-test-summary{align-items:flex-start;flex-direction:column;gap:2px}.model-chart{grid-template-columns:minmax(130px,.7fr) minmax(140px,1fr);padding-inline:12px}.settings label{align-items:stretch;flex-direction:column;gap:10px;padding:14px 16px}.settings input,.settings select{width:100%}.dialog{max-height:calc(100vh - 24px)}.custom-api-card{padding:16px}.custom-api-card-main{align-items:flex-start}.custom-api-controls{display:grid;grid-template-columns:1fr auto}.custom-api-buttons{grid-column:1 / -1;justify-content:flex-end;padding:5px 0 0}.custom-api-form-grid{grid-template-columns:1fr}.custom-api-field-wide{grid-column:auto}.custom-api-fallback-card{align-items:flex-start}.custom-api-form-actions{flex-wrap:wrap}.veil{padding:12px}.toast{right:16px;bottom:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
