:root {
    --primary: #14b8a6;
    --primary-hover: #0d9488;
    --secondary: #9333ea;
    --bg: #020617;
    --surface: #0f172a;
    --card: #1e293b;
    --border: #334155;
    --text: #f1f5f9;
    --text-muted: #94a3b8;
    --success: #10b981;
    --warning: #f59e0b;
    --error: #f43f5e;
    --info: #0ea5e9;
    --gradient: linear-gradient(135deg, #14b8a6, #06b6d4, #9333ea);
}

* { box-sizing: border-box; }

html, body {
    margin: 0;
    padding: 0;
    height: 100%;
}

body {
    background: var(--bg);
    color: var(--text);
    font-family: 'Plus Jakarta Sans', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
    overflow: hidden;
}

#app { height: 100vh; display: flex; flex-direction: column; }

.mono { font-family: ui-monospace, 'Cascadia Code', Consolas, monospace; }

.gradient-text {
    background: var(--gradient);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    font-weight: 800;
}

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--surface); }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: #475569; }