@tailwind base;@tailwind components;@tailwind utilities;:root{--bg:#0a0a0f;--surface:#12121a;--border:#1e1e2e;--accent:#6c47ff;--accent-hover:#7c5cff;--accent-glow:rgba(108,71,255,0.3);--text:#e8e8f0;--muted:#6b6b80}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}.btn-primary{background:var(--accent);color:white;border:none;border-radius:8px;padding:10px 20px;font-weight:600;cursor:pointer;transition:background .2s,box-shadow .2s}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 0 20px var(--accent-glow)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:8px;padding:10px 20px;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s}.btn-ghost:hover{border-color:var(--accent);color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px}.input{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px;color:var(--text);width:100%;font-size:15px;transition:border-color .2s;outline:none}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--muted)}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:99px;font-size:12px;font-weight:600}.badge-purple{background:rgba(108,71,255,.15);color:#a78bfa}.badge-green{background:rgba(34,197,94,.15);color:#4ade80}.badge-yellow{background:rgba(234,179,8,.15);color:#facc15}.badge-red{background:rgba(239,68,68,.15);color:#f87171}