:root {
    /* Color Palette - Dark Slate Theme (matching sample.html) */
    --bg-primary: #0f172a;
    --bg-secondary: #1e293b;
    --text-primary: #f8fafc;
    --text-secondary: #94a3b8;
    --accent: #38bdf8;
    --accent-glow: rgba(56, 189, 248, 0.2);
    --danger: #ef4444;
    --success: #22c55e;
    --border: #334155;

    /* Legacy aliases for compatibility */
    --color-bg: var(--bg-primary);
    --color-text: var(--text-primary);
    --color-text-muted: var(--text-secondary);
    --color-primary: var(--accent);
    --color-secondary: var(--bg-secondary);
    --color-accent: #ff0080;
    --color-border: var(--border);
    --color-success: var(--success);
    --color-danger: var(--danger);

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -2px rgba(0, 0, 0, 0.3);

    /* Typography */
    --font-sans: 'Helvetica Neue', Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    --font-mono: 'Menlo', 'Monaco', 'Courier New', monospace;

    /* Spacing */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-12: 3rem;
}