/* ===== DESIGN TOKENS =====
 * GetAdvice v5.7 — Single source of truth for all colors, spacing, and typography.
 * v5.1: Deeper blacks, candy-eye accent palette, glow tokens.
 * File: css/variables.css
 */

:root {
    /* ── Core palette (v5.1 — deeper black, richer accents) ── */
    --bg-primary: #050208;
    --bg-secondary: #0c0816;
    --bg-card: rgba(18, 12, 36, 0.75);
    --bg-glass: rgba(255, 255, 255, 0.04);
    --bg-glass-hover: rgba(255, 255, 255, 0.08);
    --accent: #7c5cfc;
    --accent-glow: rgba(124, 92, 252, 0.35);
    --accent-light: #a78bfa;
    --accent-hot: #e040fb;
    --accent-pink: #f472b6;
    --accent-cyan: #22d3ee;
    /* v5.14 — warm accent for CTAs and the greeting avatar. Purple alone reads
       as "tech/AI" to Gen Z; a warm pop (coral) triggers energy + approachability.
       Sparingly paired with the violet so the brand doesn't lose its identity. */
    --accent-warm: #ff7a59;
    --accent-warm-glow: rgba(255, 122, 89, 0.35);
    --text-primary: #f0eef6;
    --text-secondary: rgba(240, 238, 246, 0.6);
    --text-muted: rgba(240, 238, 246, 0.35);
    --border: rgba(255, 255, 255, 0.06);
    --border-glow: rgba(124, 92, 252, 0.25);
    --user-bubble: linear-gradient(135deg, #7c5cfc 0%, #6344e0 100%);
    --bot-bubble: rgba(18, 12, 36, 0.85);

    /* ── Safe areas (iOS) ── */
    --safe-bottom: env(safe-area-inset-bottom, 0px);
    --safe-top: env(safe-area-inset-top, 0px);

    /* ── Dynamic values (set by JS — viewport.js) ── */
    --app-height: 100dvh;
    --app-height-full: 100dvh;

    /* ── Input constraints (keep in sync with CONFIG.MAX_INPUT_HEIGHT) ── */
    --max-input-height: 120px;

    /* ── Typography ── */
    --font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif;
    --font-size-xs: 11px;
    --font-size-sm: 13px;
    --font-size-base: 15px;
    --font-size-input: 16px;   /* 16px prevents iOS auto-zoom */
    --font-size-lg: 22px;
    --font-size-xl: 24px;
    --font-size-2xl: 28px;

    /* ── Spacing ── */
    --space-xs: 4px;
    --space-sm: 8px;
    --space-md: 12px;
    --space-lg: 16px;
    --space-xl: 24px;
    --space-2xl: 40px;

    /* ── Border radius ── */
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 18px;
    --radius-xl: 20px;
    --radius-2xl: 22px;
    --radius-3xl: 24px;

    /* ── Transitions ── */
    --ease-out: cubic-bezier(0.4, 0, 0, 1);
    --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
    --transition-fast: 0.2s var(--ease-out);
    --transition-normal: 0.25s var(--ease-out);
    --transition-slow: 0.6s var(--ease-out);
}
