/* ================================================================
   BinkBe 2.0 — Design Tokens / Variables
   Modo claro y oscuro
   ================================================================ */

/* ── Google Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Manrope:wght@300;400;500;600;700;800&display=swap');

/* ── Albert Sans (local) ── */
@font-face {
    font-family: 'Albert Sans';
    src: url('../assets/font/AlbertSans-VariableFont_wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Albert Sans';
    src: url('../assets/font/AlbertSans-Italic-VariableFont_wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}

/* ================================================================
   ROOT — Tokens universales (no cambian con el tema)
   ================================================================ */
:root {
    /* ── Paleta BinkBe (del logo) ── */
    --bb-blue: #61BFF7;
    /* Azul principal del logo */
    --bb-blue-mid: #00B4F7;
    /* Azul medio */
    --bb-blue-deep: #16213B;
    /* Azul profundo secciones oscuras */
    --bb-blue-deeper: #071828;
    /* Azul más profundo */
    --bb-yellow: #FFD90C;
    /* Amarillo corporativo del "k" */
    --bb-yellow-warm: #E8C50B;
    /* Amarillo mas fuerte*/
    --bb-yellow-strong: #D4B000;
    /* Amarillo cálido hover */
    --bb-yellow-deep: #A68B08;
    /* Amarillo dorado oscuro */
    --bb-white: #F0F5F7;

    /* ── Colores para hover de tarjetas en #bink-mode ── */
    [data-mode-panel="organizador"] {
        --card-after-bg: var(--bb-blue);
    }

    [data-mode-panel="networker"] {
        --card-after-bg: var(--bb-yellow-warm);
    }

    /* ── Gradientes de marca ── */
    --grad-brand: linear-gradient(90deg, #61BFF7 0%, #16213B 100%);
    --grad-dark: linear-gradient(90deg, #141D73 0%, #16213B 100%);
    --grad-glow-blue: radial-gradient(ellipse at center, rgba(97, 191, 247, 0.22) 0%, transparent 70%);
    --grad-glow-yellow: radial-gradient(ellipse at center, rgba(255, 217, 12, 0.18) 0%, transparent 65%);
    --grad-mesh: radial-gradient(at 20% 50%, rgba(97, 191, 247, 0.15) 0px, transparent 50%),
    radial-gradient(at 80% 20%, rgba(255, 217, 12, 0.10) 0px, transparent 50%),
    radial-gradient(at 50% 80%, rgba(0, 180, 247, 0.12) 0px, transparent 50%);

    /* ── Tipografía ── */
    --font-display: 'Plus Jakarta Sans',
    sans-serif;
    --font-body: 'Manrope',
    sans-serif;

    --fs-hero: clamp(2.5rem, 5vw, 4.25rem);
    --fs-h1: clamp(2rem, 4.5vw, 3.75rem);
    --fs-h1-5: clamp(1.8rem, 3.75vw, 3.175rem);
    --fs-h2: clamp(1.6rem, 3vw, 2.6rem);
    --fs-h3: clamp(1.2rem, 2vw, 1.65rem);
    --fs-h4: clamp(1rem, 1.5vw, 1.25rem);
    --fs-body-lg: clamp(1rem, 1.5vw, 1.15rem);
    --fs-body: clamp(0.9rem, 1.2vw, 1.0rem);
    --fs-sm: 0.875rem;
    --fs-xs: 0.75rem;
    --fs-2xs: 0.6875rem;

    --fw-light: 300;
    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semi: 600;
    --fw-bold: 700;
    --fw-extrabold: 800;

    /* ── Espaciado ── */
    --sp-1: 0.25rem;
    --sp-2: 0.5rem;
    --sp-3: 0.75rem;
    --sp-4: 1rem;
    --sp-5: 1.25rem;
    --sp-6: 1.5rem;
    --sp-8: 2rem;
    --sp-10: 2.5rem;
    --sp-12: 3rem;
    --sp-16: 4rem;
    --sp-20: 5rem;
    --sp-24: 6rem;
    --sp-32: 8rem;

    /* ── Radios ── */
    --r-xs: 4px;
    --r-sm: 8px;
    --r-md: 12px;
    --r-lg: 16px;
    --r-xl: 24px;
    --r-2xl: 32px;
    --r-3xl: 48px;
    --r-full: 9999px;

    /* ── Transiciones ── */
    --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
    --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-in-out: cubic-bezier(0.45, 0, 0.55, 1);
    --ease-bounce: cubic-bezier(0.68, -0.55, 0.27, 1.55);
    --dur-fast: 120ms;
    --dur-mid: 250ms;
    --dur-slow: 500ms;
    --dur-xslow: 800ms;

    /* ── Z-index ── */
    --z-bg: -1;
    --z-base: 1;
    --z-float: 10;
    --z-nav: 100;
    --z-modal: 200;

    /* ── Plan accent colors (fixed, no cambian con el tema) ── */
    --plan-free: #6B7A8D;
    --plan-scale: #3B82F6;
    --plan-enterprise: #8B5CF6;
}

/* ================================================================
   MODO CLARO (default)
   ================================================================ */
[data-theme="light"] {
    --bg-page: #F0F5F7;
    --bg-surface: #F0F5F7;
    --bg-surface-2: #F4F6F8;
    --bg-surface-3: #E2E5E9;
    --bg-card: #F0F5F7;
    --bg-card-hover: #F5F8FF;
    --updated-bg-card-hover: #E3EFFD;
    --bg-input: #F0F4F8;
    --bg-nav: rgba(240, 245, 247, 0.88);
    --bg-overlay: rgba(255, 255, 255, 0.7);
    --bg-dark-section: #16213B;

    --text-primary: #16213B;
    --text-secondary: #16213B;
    --text-tertiary: #939AA6;
    --text-muted: #D1D7DC;
    --text-inverted: #F0F5F7;
    --text-on-yellow: #16213B;

    --border: rgba(97, 191, 247, 0.15);
    --border-strong: rgba(97, 191, 247, 0.3);
    --border-card: rgba(0, 0, 0, 0.06);
    --divider: rgba(0, 0, 0, 0.05);

    --shadow-sm: 0 1px 3px rgba(10, 30, 60, 0.08), 0 1px 2px rgba(10, 30, 60, 0.04);
    --shadow-md: 0 4px 16px rgba(10, 30, 60, 0.10), 0 2px 6px rgba(10, 30, 60, 0.06);
    --shadow-lg: 0 16px 48px rgba(10, 30, 60, 0.12), 0 4px 16px rgba(10, 30, 60, 0.07);
    --shadow-xl: 0 32px 80px rgba(10, 30, 60, 0.14), 0 8px 24px rgba(10, 30, 60, 0.08);
    --shadow-blue: 0 8px 32px rgba(97, 191, 247, 0.30);
    --shadow-yellow: 0 8px 32px rgba(255, 217, 12, 0.28);

    --glass-bg: rgba(255, 255, 255, 0.75);
    --glass-border: rgba(255, 255, 255, 0.9);

    --slider-track-empty: #DDE8F3;
}

/* ================================================================
   MODO OSCURO
   ================================================================ */
[data-theme="dark"] {
    --bg-page: #16213B;
    --bg-surface: #0A1525;
    --bg-surface-2: #0F1E30;
    --bg-surface-3: #162438;
    --bg-card: #0D1A2B;
    --bg-card-hover: #142035;
    --updated-bg-card-hover: #1E314D;
    --bg-input: rgba(255, 255, 255, 0.06);
    --bg-nav: rgba(6, 14, 26, 0.90);
    --bg-overlay: rgba(6, 14, 26, 0.65);
    --bg-dark-section: #040A14;

    --text-primary: #F0F5F7;
    --text-secondary: #D1D7DC;
    --text-tertiary: #939AA6;
    --text-muted: #939AA6;
    --text-inverted: #16213B;
    --text-on-yellow: #16213B;

    --border: rgba(97, 191, 247, 0.12);
    --border-strong: rgba(97, 191, 247, 0.25);
    --border-card: rgba(255, 255, 255, 0.05);
    --divider: rgba(255, 255, 255, 0.04);

    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.35);
    --shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.4);
    --shadow-xl: 0 32px 80px rgba(0, 0, 0, 0.5);
    --shadow-blue: 0 8px 32px rgba(97, 191, 247, 0.20);
    --shadow-yellow: 0 8px 32px rgba(255, 217, 12, 0.18);

    --glass-bg: rgba(22, 33, 59, 0.78);
    --glass-border: rgba(255, 255, 255, 0.06);

    --slider-track-empty: #162438;
}