:root{--bg-1: #0f1729;--bg-2: #1a2342;--card: rgba(255, 255, 255, .05);--border: rgba(255, 255, 255, .1);--text: #e8edf7;--muted: #8b97b3;--q: #ff6b6b;--h: #4ecdc4;--l: #ffd93d;--good: #3ddc84;--bad: #ff5252;--shadow: 0 8px 32px rgba(0, 0, 0, .37)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Microsoft YaHei,system-ui,sans-serif;background:radial-gradient(circle at 20% 0%,#1e2a5e 0%,var(--bg-1) 45%,var(--bg-2) 100%);background-attachment:fixed;color:var(--text);min-height:100vh;padding:24px;line-height:1.5}.wrap{max-width:1280px;margin:0 auto}.grid{display:grid;gap:18px}.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow);position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #00000080}.card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent, #4ecdc4)}button{background:linear-gradient(135deg,#4ecdc4,#6a5acd);color:#fff;border:none;border-radius:10px;padding:11px 22px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .15s,box-shadow .2s;white-space:nowrap}button:hover{transform:translateY(-2px);box-shadow:0 6px 18px #4ecdc466}button:active{transform:translateY(0)}button.ghost{background:transparent;border:1px solid var(--border);color:var(--muted)}button.ghost:hover{color:var(--text);border-color:var(--muted);box-shadow:none}input{width:100%;background:#00000040;border:1px solid var(--border);border-radius:10px;padding:11px 13px;color:var(--text);font-size:15px;font-variant-numeric:tabular-nums;outline:none;transition:border-color .2s,box-shadow .2s}input:focus{border-color:#4ecdc4;box-shadow:0 0 0 3px #4ecdc433}@keyframes pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.anim{animation:pop .4s ease both}.charts{grid-template-columns:1.5fr 1fr}@media (max-width: 980px){.charts{grid-template-columns:1fr}form{grid-template-columns:1fr 1fr;gap:10px}form .full{grid-column:1 / -1}}@media (max-width: 760px){form{grid-template-columns:1fr 1fr;gap:10px}form .full{grid-column:1 / -1}}
