/* === RESET E VARIÁVEIS GLOBAIS === */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

:root {
    /* Cores de fundo */
    --bg-deep:    #00000A;
    --bg-surface: #080818;
    --bg-card:    #0D0D25;
    --bg-glass:   rgba(13, 13, 37, 0.6);

    /* Acentos */
    --accent-blue:   #2563EB;
    --accent-purple: #7C3AED;
    --accent-cyan:   #06B6D4;
    --accent-glow:   rgba(37, 99, 235, 0.35);
    --accent-glow-purple: rgba(124, 58, 237, 0.35);

    /* Texto */
    --text-primary:   #FFFFFF;
    --text-secondary: #94A3B8;
    --text-muted:     #475569;

    /* Bordas */
    --border-subtle: rgba(255, 255, 255, 0.08);
    --border-accent: rgba(37, 99, 235, 0.3);
    --border-card:   rgba(255, 255, 255, 0.06);

    /* Gradientes */
    --grad-primary: linear-gradient(135deg, var(--accent-blue) 0%, var(--accent-purple) 100%);
    --grad-hero:    linear-gradient(135deg, #2563EB 0%, #7C3AED 50%, #06B6D4 100%);
    --grad-space:   radial-gradient(ellipse at top, #0D0D40 0%, #00000A 70%);

    /* Tipografia */
    --font-display: 'Space Grotesk', 'Inter', sans-serif;
    --font-body:    'Inter', sans-serif;
    --font-mono:    'JetBrains Mono', 'Fira Code', monospace;

    /* Espaçamentos */
    --space-xs:  0.5rem;
    --space-sm:  1rem;
    --space-md:  1.5rem;
    --space-lg:  2.5rem;
    --space-xl:  4rem;
    --space-2xl: 6rem;
    --space-3xl: 9rem;

    /* Raios de borda */
    --radius-sm:   8px;
    --radius-md:   14px;
    --radius-lg:   20px;
    --radius-xl:   28px;
    --radius-full: 9999px;

    /* Sombras */
    --shadow-card:  0 4px 24px rgba(0,0,0,0.4);
    --shadow-glow:  0 0 40px var(--accent-glow);
    --shadow-glow-purple: 0 0 40px var(--accent-glow-purple);

    /* Transições */
    --transition-fast:   0.15s ease;
    --transition-base:   0.25s ease;
    --transition-slow:   0.4s cubic-bezier(0.23, 1, 0.32, 1);

    /* Layout */
    --container-max: 1200px;
    --nav-height:    72px;
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: var(--font-body);
    background: var(--bg-deep);
    color: var(--text-primary);
    overflow-x: hidden;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img, video, svg {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    cursor: pointer;
    border: none;
    background: none;
    font-family: inherit;
}

ul, ol {
    list-style: none;
}

/* Scrollbar customizada */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--bg-deep); }
::-webkit-scrollbar-thumb { background: var(--border-accent); border-radius: var(--radius-full); }
::-webkit-scrollbar-thumb:hover { background: var(--accent-blue); }

/* Seleção de texto */
::selection {
    background: var(--accent-glow);
    color: var(--text-primary);
}
