/* ==========================================================================
COMMON.CSS - Estructura Global y Variables de Marca DNBLP
========================================================================== */

/* ==========================================================================
FUENTES LOCALES - QUICKSAND
========================================================================== */
@font-face {
    font-family: 'Quicksand';
    src: url('../fonts/Quicksand-Thin.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Quicksand';
    src: url('../fonts/Quicksand-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Quicksand';
    src: url('../fonts/Quicksand-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Quicksand';
    src: url('../fonts/Quicksand-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Quicksand';
    src: url('../fonts/Quicksand-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ==========================================================================
VARIABLES DE MARCA DNBLP
========================================================================== */
:root {
    /* Colores Primarios (Del manual de marca DIRCOM) */
    --dnblp-amarillo: #FAB951;
    --dnblp-dorado: #D5891B;
    --dnblp-cyan: #03A9CD;
    --dnblp-teal: #0A6677;
    --dnblp-menta: #80C7B3;
    --dnblp-sage: #589B86;

    /* Colores de Interfaz */
    --accent-color: var(--dnblp-teal);
    --accent-hover: #084f5c;
    --accent-secondary: var(--dnblp-cyan);
    --accent-warm: var(--dnblp-dorado);
    --accent-highlight: var(--dnblp-amarillo);

    /* Escala de grises */
    --gray-50: #f9fafb;
    --gray-100: #f3f4f6;
    --gray-200: #e5e7eb;
    --gray-300: #d1d5db;
    --gray-400: #9ca3af;
    --gray-500: #6b7280;
    --gray-600: #4b5563;
    --gray-700: #374151;
    --gray-800: #1f2937;
    --gray-900: #111827;

    /* Colores Semánticos */
    --success: var(--dnblp-sage);
    --success-light: #d1fae5;
    --success-dark: #065f46;
    --warning: var(--dnblp-amarillo);
    --warning-dark: var(--dnblp-dorado);
    --error: #dc2626;
    --error-light: #fef2f2;
    --error-dark: #991b1b;
    --info: var(--dnblp-cyan);

    /* Fondos y Bordes */
    --bg-color: var(--gray-100);
    --bg-color-main: var(--gray-50);
    --header-bg: #ffffff;
    --border-color: var(--gray-300);
    --text-color: var(--gray-800);
    --text-muted: var(--gray-500);

    /* Tipografía */
    --font-primary: 'Quicksand', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    --font-mono: 'Courier New', Courier, monospace;

    /* Tamaños de fuente */
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;

    /* Espaciado */
    --spacing: 0.25rem;
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;

    /* Sombras */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);

    /* Border Radius */
    --radius-sm: 2px;
    --radius-md: 4px;
    --radius-lg: 6px;
    --radius-xl: 8px;
    --radius-full: 9999px;
}

/* ==========================================================================
CONFIGURACIÓN GLOBAL
========================================================================== */
html,body{
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: var(--font-primary);
    color: var(--text-color);
    background-color: var(--bg-color-main);

    font-weight: 400;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

