:root {
    /* Cores Primárias */
    --color-moss: #404b43;
    --color-sand: #f2e9dc;
    --color-terracotta: #c08457;
    
    /* Cores Secundárias */
    --color-obsidian: #0d1b2a;
    --color-stonegray: #a6a2a2;

    /* Cores De Apoio */
    --color-olivegreen: #909d66;
    
    /* Cores para Texturas e Profundidade */
    --color-moss-dark: #2d3530;
    --color-moss-light: #5a6b5e;
    --color-sand-dark: #e6d7c5;
    --color-sand-light: #f8f1e8;
    --color-terracotta-dark: #a66d42;
    --color-terracotta-light: #d4a076;
    --color-obsidian-overlay: rgba(13, 27, 42, 0.8);
    --color-moss-overlay: rgba(64, 75, 67, 0.6);
    --color-fragment-overlay: rgba(0, 0, 0, 0.3);
    
    /* Cores de Acento para CIER */
    --color-cier-coragem: var(--color-terracotta);
    --color-cier-improviso: var(--color-olivegreen);
    --color-cier-execucao: var(--color-moss);
    --color-cier-recomeco: var(--color-obsidian);

    /* Tipografia */
    --font-family-primary: 'Griff';
    --font-family-secondary: 'Work Sans';

    --font-weight-thin: 100;
    --font-weight-extralight: 200;
    --font-weight-light: 300;
    --font-weight-regular: 400; /* Equivalente a 'normal' */
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700; /* Equivalente a 'bold' */
    --font-weight-extrabold: 800;
    --font-weight-black: 900; /* Também conhecido como 'heavy' */
    
    /* Tamanhos de Títulos */
    --font-size-h1: var(--font-size-6xl);
    --font-size-h2: var(--font-size-4xl);
    --font-size-h3: var(--font-size-3xl);
    --font-size-h4: var(--font-size-2xl);
    --font-size-h5: var(--font-size-xl);
    --font-size-h6: var(--font-size-lg);

    /* Tamanhos de Fonte Expandidos */
    --font-size-xs: 0.75rem;   /* 12px */
    --font-size-sm: 0.875rem;  /* 14px */
    --font-size-base: 1rem;    /* 16px */
    --font-size-lg: 1.125rem;  /* 18px */
    --font-size-xl: 1.25rem;   /* 20px */
    --font-size-2xl: 1.5rem;   /* 24px */
    --font-size-3xl: 1.875rem; /* 30px */
    --font-size-4xl: 2.25rem;  /* 36px */
    --font-size-5xl: 3rem;     /* 48px */
    --font-size-6xl: 3.75rem;  /* 60px */
    --font-size-7xl: 4.5rem;   /* 72px */

    /* Espaçamentos Expandidos */
    --spacing-xs: 0.5rem;   /* 8px */
    --spacing-sm: 1rem;     /* 16px */
    --spacing-md: 1.5rem;   /* 24px */
    --spacing-lg: 2rem;     /* 32px */
    --spacing-xl: 3rem;     /* 48px */
    --spacing-2xl: 4rem;    /* 64px */
    --spacing-3xl: 6rem;    /* 96px */
    --spacing-4xl: 8rem;    /* 128px */
    --spacing-5xl: 12rem;   /* 192px */
    
    /* Espaçamentos para Seções */
    --section-padding-y: var(--spacing-3xl);
    --section-padding-x: var(--spacing-lg);
    --container-max-width: 1200px;
    --container-padding: var(--spacing-lg);

    /* Bordas e Raios */
    --border-radius-none: 0;
    --border-radius-sm: 4px;
    --border-radius-md: 8px;
    --border-radius-lg: 12px;
    --border-radius-xl: 16px;
    --border-radius-2xl: 24px;
    --border-radius-full: 9999px;
    
    /* Bordas para Fragmentos */
    --border-fragment: 2px solid var(--color-moss);
    --border-fragment-hover: 3px solid var(--color-terracotta);

    /* Sombras e Profundidade */
    --box-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
    --box-shadow-default: 0 2px 4px rgba(0, 0, 0, 0.1);
    --box-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
    --box-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
    --box-shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.1);
    --box-shadow-2xl: 0 25px 50px rgba(0, 0, 0, 0.25);
    
    /* Sombras Específicas para Texturas */
    --shadow-fragment: 0 8px 32px rgba(64, 75, 67, 0.3);
    --shadow-cier-card: 0 12px 24px rgba(13, 27, 42, 0.2);
    --shadow-texture-overlay: inset 0 0 100px rgba(0, 0, 0, 0.1);

    /* Transições */
    --transition-fast: 0.15s ease-in-out;
    --transition-normal: 0.3s ease-in-out;
    --transition-slow: 0.5s ease-in-out;
    --transition-slower: 0.75s ease-in-out;
    
    /* Transições Específicas */
    --transition-fragment: all var(--transition-normal);
    --transition-cier-hover: transform var(--transition-fast), box-shadow var(--transition-normal);

    /* Z-Index */
    --z-index-dropdown: 1000;
    --z-index-sticky: 1020;
    --z-index-fixed: 1030;
    --z-index-modal-backdrop: 1040;
    --z-index-modal: 1050;
    --z-index-popover: 1060;
    --z-index-tooltip: 1070;
    
    /* Z-Index para Texturas */
    --z-index-texture-base: 1;
    --z-index-texture-overlay: 2;
    --z-index-content: 10;
    --z-index-header: 100;

    /* Breakpoints (para uso em JavaScript) */
    --breakpoint-sm: 640px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 1024px;
    --breakpoint-xl: 1280px;
    --breakpoint-2xl: 1536px;

    /* Texturas e Padrões */
    --texture-noise: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><defs><filter id="noise"><feTurbulence baseFrequency="0.9" numOctaves="4" stitchTiles="stitch"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/></filter></defs><rect width="100%" height="100%" filter="url(%23noise)" opacity="0.05"/></svg>');
    
    --texture-paper: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200"><defs><filter id="paper"><feTurbulence baseFrequency="0.04" numOctaves="5" result="noise" seed="1"/><feDiffuseLighting in="noise" lighting-color="white" surfaceScale="1"><feDistantLight azimuth="45" elevation="60"/></feDiffuseLighting></filter></defs><rect width="100%" height="100%" filter="url(%23paper)" opacity="0.03"/></svg>');
    
    --texture-crack: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="300" height="300" viewBox="0 0 300 300"><path d="M50,50 Q100,80 150,50 T250,70 Q280,100 250,150 T200,250 Q150,280 100,250 T50,200 Q20,150 50,100 Z" fill="none" stroke="rgba(64,75,67,0.1)" stroke-width="1" opacity="0.3"/></svg>');

    /* Gradientes */
    --gradient-moss-to-sand: linear-gradient(135deg, var(--color-moss) 0%, var(--color-sand) 100%);
    --gradient-terracotta-fade: linear-gradient(180deg, var(--color-terracotta) 0%, transparent 100%);
    --gradient-obsidian-overlay: linear-gradient(180deg, transparent 0%, var(--color-obsidian-overlay) 100%);
    --gradient-fragment-overlay: linear-gradient(45deg, var(--color-fragment-overlay) 0%, transparent 50%);
    
    /* Gradientes para Texturas de Fundo */
    --gradient-texture-base: 
        var(--texture-paper),
        var(--texture-noise),
        linear-gradient(135deg, var(--color-sand-light) 0%, var(--color-sand) 100%);
    
    --gradient-texture-dark: 
        var(--texture-crack),
        var(--texture-noise),
        linear-gradient(135deg, var(--color-moss-dark) 0%, var(--color-obsidian) 100%);

    /* Filtros */
    --filter-blur-sm: blur(4px);
    --filter-blur-md: blur(8px);
    --filter-blur-lg: blur(16px);
    --filter-brightness-dark: brightness(0.8);
    --filter-brightness-light: brightness(1.2);
    --filter-contrast-high: contrast(1.2);
    --filter-sepia-light: sepia(0.2);
    
    /* Filtros para Texturas */
    --filter-texture-overlay: brightness(0.95) contrast(1.05) sepia(0.1);
    --filter-fragment-hover: brightness(1.1) contrast(1.1) saturate(1.2);
}

