/* LLM Studio - CSS Variables & Base Styles */

:root {
    /* Light Theme Tokens */
    --bg-main: #f8fafc;
    --bg-sidebar: #ffffff;
    --bg-card: #ffffff;
    --bg-header: rgba(255, 255, 255, 0.85);
    --bg-input: rgba(255, 255, 255, 0.9);
    --border-color: #e2e8f0;
    --border-subtle: #f1f5f9;
    --border-hover: #cbd5e1;
    --primary: #6366f1;
    --primary-hover: #4f46e5;
    --primary-glow: rgba(99, 102, 241, 0.22);
    --accent-teal: #0d9488;
    --accent-purple: #8b5cf6;
    --text-main: #0f172a;
    --text-muted: #64748b;
    --text-subtle: #94a3b8;
    
    --user-bubble-bg: linear-gradient(135deg, #6366f1, #4f46e5);
    --user-bubble-text: #ffffff;
    --assistant-text: #0f172a;
    
    --reasoning-bg: rgba(99, 102, 241, 0.04);
    --reasoning-border: #6366f1;
    --reasoning-text: #475569;
    
    --code-bg: #0f172a;
    --code-text: #f8fafc;
    --code-header-bg: #1e293b;
    
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.05);
    --shadow-md: 0 4px 16px rgba(0,0,0,0.06);
    --shadow-lg: 0 12px 32px rgba(0,0,0,0.08);
    --shadow-glow: 0 0 20px var(--primary-glow);
    
    --radius-lg: 18px;
    --radius-md: 12px;
    --radius-sm: 8px;
    
    --font-sans: 'Inter', system-ui, -apple-system, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
}

body.dark-theme {
    /* Dark Theme Tokens */
    --bg-main: #090b10;
    --bg-sidebar: #0f121d;
    --bg-card: rgba(18, 24, 38, 0.75);
    --bg-header: rgba(15, 18, 29, 0.85);
    --bg-input: rgba(18, 24, 38, 0.9);
    --border-color: rgba(255, 255, 255, 0.08);
    --border-subtle: rgba(255, 255, 255, 0.04);
    --border-hover: rgba(255, 255, 255, 0.18);
    --primary: #818cf8;
    --primary-hover: #6366f1;
    --primary-glow: rgba(129, 140, 248, 0.3);
    --accent-teal: #14b8a6;
    --accent-purple: #a78bfa;
    --text-main: #f1f5f9;
    --text-muted: #94a3b8;
    --text-subtle: #64748b;
    
    --user-bubble-bg: linear-gradient(135deg, #4338ca, #3730a3);
    --user-bubble-text: #ffffff;
    --assistant-text: #f1f5f9;
    
    --reasoning-bg: rgba(129, 140, 248, 0.06);
    --reasoning-border: #818cf8;
    --reasoning-text: #cbd5e1;
    
    --code-bg: #0b0f17;
    --code-text: #f8fafc;
    --code-header-bg: #161b26;
    
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
    --shadow-md: 0 6px 24px rgba(0,0,0,0.4);
    --shadow-lg: 0 16px 48px rgba(0,0,0,0.6);
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    background-color: var(--bg-main);
    color: var(--text-main);
    font-family: var(--font-sans);
    height: 100vh;
    overflow: hidden;
    transition: background-color 0.3s ease, color 0.3s ease;
    -webkit-font-smoothing: antialiased;
}

.app-container {
    display: flex;
    height: 100vh;
    width: 100vw;
}

.hidden {
    display: none !important;
}
