:root{--bg: #f7f7f4;--paper: #ffffff;--paper-soft: #fbfaf7;--ink: #111111;--muted: #676b73;--line: #e7e5df;--soft: #f0eee8;--accent: #12b981;--accent-blue: #5b7cfa;--accent-orange: #ff8a4c;--accent-purple: #b56cff;--danger: #ef4444;--shadow: 0 24px 80px rgba(17, 17, 17, .08);color:var(--ink);background:var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-height:100dvh;margin:0;background:radial-gradient(circle at top left,rgba(18,185,129,.13),transparent 32rem),linear-gradient(180deg,#fbfaf7,#f4f3ee)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.login-shell{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:64px;align-items:center;width:min(1180px,calc(100% - 48px));min-height:100dvh;margin:0 auto;padding:56px 0}.brand-pill,.user-chip,.brand,.top-actions,.metric-top,.card-title,.model-name{display:inline-flex;align-items:center}.brand-pill{gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#ffffffb8;color:#30333a;font-size:13px;box-shadow:0 8px 28px #1111110d}.logo-dot{width:20px;height:20px;border-radius:50%;background:conic-gradient(from 180deg,var(--ink) 0 28%,var(--accent) 28% 54%,var(--accent-blue) 54% 78%,var(--ink) 78% 100%)}.hero h1{max-width:720px;margin:28px 0 18px;font-size:clamp(42px,7vw,76px);line-height:.98;letter-spacing:0}.hero p,.login-card p,.section-head p,.card-title p,.metric-sub{color:var(--muted)}.hero p{max-width:570px;margin:0;font-size:18px;line-height:1.72}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:680px;margin-top:38px}.mini-stat,.login-card,.card{border:1px solid var(--line);background:#ffffffc7}.mini-stat{border-radius:12px;padding:16px}.mini-stat strong{display:block;margin-bottom:6px;font-size:24px}.mini-stat span,.metric-sub,.card-title p{font-size:13px}.login-card{border-radius:12px;padding:28px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-card h2{margin:0 0 8px;font-size:24px}.login-card p{margin:0 0 24px;line-height:1.6}.field{display:grid;gap:9px}.field>span:first-child{color:#35383e;font-size:13px}.input-row{display:flex;align-items:center;gap:10px;border:1px solid #d8d6ce;border-radius:8px;background:var(--paper-soft);padding:0 12px;transition:border-color .18s ease,box-shadow .18s ease}.input-row:focus-within{border-color:var(--ink);box-shadow:0 0 0 4px #11111112}.input-row input{width:100%;min-height:48px;border:0;outline:0;background:transparent;color:var(--ink)}.primary-btn,.ghost-btn,.icon-btn{min-height:40px;border-radius:8px;font-weight:650}.primary-btn{width:100%;min-height:50px;margin-top:18px;border:0;background:var(--ink);color:var(--paper);box-shadow:0 14px 28px #1111112e}.ghost-btn,.icon-btn{border:1px solid #d9d7d0;background:var(--paper);color:#22262c}.ghost-btn{padding:0 14px}.icon-btn{display:grid;width:40px;place-items:center}.login-note{display:flex;justify-content:space-between;gap:12px;margin-top:16px;color:var(--muted);font-size:12px}.status-dot{display:inline-flex;align-items:center;gap:7px;color:#18794e}.status-dot:before{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #12b98129;content:""}.app-shell{min-height:100dvh}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 32px;border-bottom:1px solid rgba(17,17,17,.08);background:#fbfaf7e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{gap:12px;font-weight:750}.top-actions{gap:10px;min-width:0}.user-chip{gap:10px;min-width:0;max-width:280px;padding:8px 10px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:#363a42;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.avatar{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--accent-blue),var(--accent))}.container{width:min(1280px,calc(100% - 48px));margin:0 auto;padding:34px 0 56px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:22px}.section-head h1{margin:0 0 8px;font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:0}.section-head p{margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{border-radius:12px;box-shadow:0 14px 46px #1111110b}.metric-card,.quota-card,.chart-card{padding:18px}.metric-top{justify-content:space-between;gap:10px;margin-bottom:16px}.metric-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--soft);color:var(--ink)}.trend{padding:4px 8px;border-radius:999px;font-size:12px}.trend.good{color:#0b7a4f;background:#12b9811f}.trend.warn{color:#9a4d12;background:#ff8a4c24}.metric-value{margin:0;font-size:30px;font-weight:760;letter-spacing:0}.metric-sub{margin-top:8px}.quota-card{grid-column:span 2}.quota-row{display:flex;justify-content:space-between;gap:18px;margin-bottom:13px}.quota-row strong{font-size:18px}.progress,.model-track{overflow:hidden;border-radius:999px;background:#edeae2}.progress{height:12px}.progress span,.model-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-blue),var(--accent-orange))}.chart-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.8fr);gap:14px;margin-top:14px}.card-title{align-items:flex-start;gap:12px;margin-bottom:14px}.card-title h2{margin:0 0 6px;font-size:18px}.card-title p{margin:0}.chart-box{width:100%;height:274px}.model-list{display:grid;gap:16px;margin-top:16px}.model-item{display:grid;gap:8px}.model-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.model-name{gap:8px;min-width:0}.swatch{flex:0 0 auto;width:9px;height:9px;border-radius:50%}.model-track{height:9px}.log-card{margin-top:14px;overflow:hidden}.log-head{padding:18px 18px 0}.table-wrap{overflow-x:auto}.pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px 18px;color:var(--muted);font-size:13px}.page-actions{display:flex;gap:8px}table{width:100%;min-width:920px;border-collapse:collapse}th,td{padding:15px 16px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;font-size:14px}th{color:var(--muted);background:var(--paper-soft);font-size:12px;font-weight:700}tr:last-child td{border-bottom:0}tbody tr{transition:background .16s ease}tbody tr:hover{background:var(--paper-soft)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:760}.badge.success{color:#087147;background:#12b98121}.badge.error{color:#b42318;background:#ef44441f}.empty-state,.error-card{color:var(--muted)}.empty-state{display:grid;min-height:180px;place-items:center;border:1px dashed var(--line);border-radius:12px;background:var(--paper-soft)}.error-card{max-width:680px;padding:22px}.error-card h2{margin:0 0 8px;color:var(--ink)}.error-card p{margin:0 0 16px}.skeleton-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.skeleton-card{min-height:150px;border-radius:12px;background:linear-gradient(90deg,#f0eee8,#fff,#f0eee8);background-size:200% 100%;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%{background-position:0 0}to{background-position:-200% 0}}@media(max-width:980px){.login-shell{grid-template-columns:1fr;gap:32px}.chart-grid{grid-template-columns:1fr}.metric-grid,.skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.login-shell,.container{width:min(100% - 28px,1280px)}.topbar,.section-head{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.user-chip{flex:1 1 auto}.hero-stats,.metric-grid,.skeleton-grid{grid-template-columns:1fr}.quota-card{grid-column:span 1}.hero h1{font-size:42px}.login-note{flex-direction:column}.pagination{align-items:stretch;flex-direction:column}.page-actions{width:100%}.page-actions .ghost-btn{flex:1 1 0}}
