/* ==========================================================================
   CORE STYLES - Base variables, reset, and fundamental styles only
   ========================================================================== */

/* CSS Custom Properties - Single source of truth */
:root {
    /* Colors */
    --gold: #ffd700;
    --blue: #3b82f6;
    --purple: #9333ea;
    --green: #10b981;
    --orange: #f59e0b;
    
    /* Theme Colors */
    --bg-page: linear-gradient(180deg, #0a0a1a 0%, #1a1a2e 50%, #16213e 100%);
    --bg-surface: rgba(30, 34, 70, 0.8);
    --bg-surface-hover: rgba(40, 44, 91, 0.9);
    
    /* Text Colors */
    --text-primary: #ffffff;
    --text-secondary: rgba(255, 255, 255, 0.85);
    --text-muted: rgba(255, 255, 255, 0.6);
    
    /* Effects */
    --border-subtle: 1px solid rgba(255, 255, 255, 0.1);
    --shadow-medium: 0 4px 20px rgba(0, 0, 0, 0.3);
    --blur-glass: blur(10px);
    
    /* Spacing */
    --space-1: 0.5rem;
    --space-2: 1rem;
    --space-3: 1.5rem;
    --space-4: 2rem;
    
    /* Border Radius */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 14px;
    
    /* Typography */
    --font-heading: 'Cinzel', serif;
    --font-body: 'Inter', sans-serif;
    --font-mono: 'Monaco', monospace;
}

/* Reset */
*, *::before, *::after {
    box-sizing: border-box;
}

/* Reset margins and padding, but preserve specific layout classes */
* {
    margin: 0;
    padding: 0;
}

/* Base Elements */
body {
    font-family: var(--font-body);
    line-height: 1.6;
    color: var(--text-primary);
    background: var(--bg-page);
    min-height: 100vh;
}

/* Preserve authenticated page navigation spacing */
body.page-wrapper {
    /* Navigation spacing handled by auth-navigation.css */
}

/* Links */
a {
    color: #60a5fa;
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: var(--gold);
}

/* Lists */
ul, ol {
    list-style: none;
}

/* Focus */
:focus {
    outline: 2px solid var(--blue);
    outline-offset: 2px;
} 