:root{--color-bg:#0b0d12;--color-surface:#12151c;--color-border:#23283333;--color-text:#e8eaf0;--color-muted:#9aa2b1;--color-primary:#6c5ce7;--color-primary-dark:#5849c2;--color-success:#22c55e;--color-danger:#ef4444;--radius:12px;--font-sans:"Inter",system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}a{color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:999px;font-weight:600;font-size:14px;border:1px solid transparent;cursor:pointer;text-decoration:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark)}.btn-outline{border-color:#ffffff33;color:var(--color-text);background:transparent}.card{background:var(--color-surface);border:1px solid #ffffff14;border-radius:var(--radius);padding:24px}.input{padding:10px 14px;border-radius:8px;border:1px solid #ffffff26;background:#ffffff08;color:var(--color-text)}.input,table{width:100%;font-size:14px}table{border-collapse:collapse}td,th{text-align:left;padding:12px 16px;border-bottom:1px solid #ffffff10}th{color:var(--color-muted);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.badge,th{font-size:12px}.badge{display:inline-flex;padding:3px 10px;border-radius:999px;font-weight:600}.badge-success{background:#22c55e26;color:#4ade80}.badge-warn{background:#f59e0b26;color:#fbbf24}.badge-danger{background:#ef444426;color:#f87171}.badge-muted{background:#ffffff14;color:var(--color-muted)}.soundwave-bar{display:inline-block;width:4px;height:100%;background:var(--color-primary);border-radius:2px;animation:soundwave 1s ease-in-out infinite}@keyframes soundwave{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.float-card{font-size:13px!important;font-weight:600;padding:10px 14px!important;display:flex;align-items:center;gap:6px;white-space:nowrap;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:floaty 4s ease-in-out infinite}.float-card-delay{animation-delay:2s}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}