/* =============================================
   WORSHIP APP - DESIGN SYSTEM VARIABLES
   ============================================= */

:root {
    /* ===== COLORES PRIMARIOS ===== */
    --color-primary: #6366f1;
    --color-primary-hover: #4f46e5;
    --color-primary-light: #e0e7ff;
    --color-primary-dark: #4338ca;
    --color-secondary: #8b5cf6;
    --color-secondary-hover: #7c3aed;
    --color-secondary-light: #ede9fe;

    /* ===== FONDOS ===== */
    --bg-body: #f8fafc;
    --bg-card: #ffffff;
    --bg-card-hover: #f1f5f9;
    --bg-input: #ffffff;
    --bg-secondary: #f1f5f9;
    --bg-sidebar: #1a1d2e;
    --bg-sidebar-hover: #252a3d;
    --bg-overlay: rgba(0, 0, 0, 0.5);
    --bg-tertiary: #e2e8f0;

    /* ===== TEXTO ===== */
    --text-primary: #1e293b;
    --text-secondary: #475569;
    --text-muted: #64748b;
    --text-inverse: #ffffff;
    --text-link: #6366f1;
    --text-link-hover: #4f46e5;

    /* ===== ACORDES ===== */
    --color-chord: #dc2626;
    --color-chord-bg: #fef2f2;
    --color-chord-text: #991b1b;

    /* ===== ESTADOS ===== */
    --color-success: #10b981;
    --color-success-light: #d1fae5;
    --color-success-dark: #059669;
    --color-warning: #f59e0b;
    --color-warning-light: #fef3c7;
    --color-warning-dark: #d97706;
    --color-error: #ef4444;
    --color-error-light: #fee2e2;
    --color-error-dark: #dc2626;
    --color-danger: #ef4444;
    --color-danger-light: #fee2e2;
    --color-danger-dark: #dc2626;
    --color-info: #3b82f6;
    --color-info-light: #dbeafe;
    --color-info-dark: #2563eb;

    /* ===== BORDES ===== */
    --border-color: #e2e8f0;
    --border-color-hover: #cbd5e1;
    --border-color-focus: #6366f1;
    /* Border radius (reducido 20%) */
    --border-radius-sm: 0.2rem;
    --border-radius-md: 0.4rem;
    --border-radius-lg: 0.6rem;
    --border-radius-xl: 0.8rem;
    --border-radius-2xl: 1.2rem;
    --border-radius-full: 9999px;

    /* ===== SOMBRAS ===== */
    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
    --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);

    /* ===== ESPACIADO (reducido 20%) ===== */
    --space-0: 0;
    --space-1: 0.2rem;
    --space-2: 0.4rem;
    --space-3: 0.6rem;
    --space-4: 0.8rem;
    --space-5: 1rem;
    --space-6: 1.2rem;
    --space-8: 1.6rem;
    --space-10: 2rem;
    --space-12: 2.4rem;
    --space-16: 3.2rem;
    --space-20: 4rem;
    --space-24: 4.8rem;

    /* ===== TIPOGRAFÍA ===== */
    --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
    --font-mono: 'Fira Code', 'Consolas', 'Monaco', monospace;

    /* Tamaños de fuente (reducido 20%) */
    --font-size-xs: 0.6rem;
    --font-size-sm: 0.7rem;
    --font-size-base: 0.8rem;
    --font-size-lg: 0.9rem;
    --font-size-xl: 1rem;
    --font-size-2xl: 1.2rem;
    --font-size-3xl: 1.5rem;
    --font-size-4xl: 1.8rem;
    --font-size-5xl: 2.4rem;

    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    --line-height-tight: 1.25;
    --line-height-snug: 1.375;
    --line-height-normal: 1.5;
    --line-height-relaxed: 1.625;
    --line-height-loose: 2;

    --letter-spacing-tight: -0.025em;
    --letter-spacing-normal: 0;
    --letter-spacing-wide: 0.025em;

    /* ===== TRANSICIONES ===== */
    --transition-fast: 150ms ease;
    --transition-base: 200ms ease;
    --transition-slow: 300ms ease;
    --transition-slower: 500ms ease;

    /* ===== Z-INDEX ===== */
    --z-base: 0;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-fixed: 300;
    --z-sidebar: 400;
    --z-overlay: 500;
    --z-modal-backdrop: 600;
    --z-modal: 700;
    --z-popover: 800;
    --z-tooltip: 900;
    --z-toast: 1000;
    --z-panel: 1100;
    --z-loading: 9999;

    /* ===== LAYOUT (reducido 20%) ===== */
    --sidebar-width: 208px;
    --sidebar-collapsed-width: 58px;
    --header-height: 52px;
    --mobile-nav-height: 52px;
    --content-max-width: 1120px;

    /* ===== BREAKPOINTS (para referencia) ===== */
    --breakpoint-sm: 640px;
    --breakpoint-md: 820px;
    --breakpoint-lg: 1024px;
    --breakpoint-xl: 1280px;
    --breakpoint-2xl: 1536px;

    /* ===== SAFE AREAS ===== */
    --safe-area-top: env(safe-area-inset-top, 0px);
    --safe-area-bottom: env(safe-area-inset-bottom, 0px);
    --safe-area-left: env(safe-area-inset-left, 0px);
    --safe-area-right: env(safe-area-inset-right, 0px);

    /* ===== TOUCH TARGETS ===== */
    --touch-target-min: 44px;
    --touch-target-comfortable: 48px;
}

/* ===== TEMA OSCURO ===== */
[data-theme="dark"] {
    --bg-body: #0f172a;
    --bg-card: #1e293b;
    --bg-card-hover: #334155;
    --bg-input: #1e293b;
    --bg-sidebar: #0d1117;
    --bg-secondary: #0f172a;
    --bg-sidebar-hover: #161b22;
    --bg-tertiary: #334155;

    --text-primary: #f1f5f9;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;

    --border-color: #334155;
    --border-color-hover: #475569;
    --border-color-focus: #818cf8;

    --color-primary: #818cf8;
    --color-primary-hover: #6366f1;
    --color-primary-light: #312e81;
    --color-secondary: #a78bfa;
    --color-secondary-light: #4c1d95;

    --color-chord: #f87171;
    --color-chord-bg: #450a0a;
    --color-chord-text: #fca5a5;

    --color-success-light: #064e3b;
    --color-warning-light: #78350f;
    --color-error-light: #7f1d1d;
    --color-danger-light: #7f1d1d;
    --color-info-light: #1e3a8a;

    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.3);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4);
}

/* ===== DETECCIÓN AUTOMÁTICA DE TEMA ===== */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --bg-body: #0f172a;
        --bg-card: #1e293b;
        --bg-card-hover: #334155;
        --bg-input: #1e293b;
        --bg-sidebar: #0d1117;
        --bg-secondary: #0f172a;
        --bg-sidebar-hover: #161b22;
        --bg-tertiary: #334155;

        --text-primary: #f1f5f9;
        --text-secondary: #94a3b8;
        --text-muted: #64748b;

        --border-color: #334155;
        --border-color-hover: #475569;
        --border-color-focus: #818cf8;

        --color-primary: #818cf8;
        --color-primary-hover: #6366f1;
        --color-primary-light: #312e81;
        --color-secondary: #a78bfa;
        --color-secondary-light: #4c1d95;

        --color-chord: #f87171;
        --color-chord-bg: #450a0a;
        --color-chord-text: #fca5a5;

        --color-success-light: #064e3b;
        --color-warning-light: #78350f;
        --color-error-light: #7f1d1d;
        --color-danger-light: #7f1d1d;
        --color-info-light: #1e3a8a;
    }
}
