/**
 * ═══════════════════════════════════════════════════════════
 * MORADIQ TOKENS — fonte única de design tokens
 * Consumido por: app, portais, landing e aliases legados (style.css)
 * ═══════════════════════════════════════════════════════════
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root {
    /* ── Brand ── */
    --mq-o: #E85D04;
    --mq-g: #F5A623;
    --mq-y: #FBBF24;
    --mq-grad: linear-gradient(128deg, #E85D04 0%, #F5A623 45%, #FBBF24 100%);
    --mq-grad-h: linear-gradient(90deg, #E85D04, #F5A623, #FBBF24);

    /* ── Surfaces ── */
    --mq-bg: #E9E7E2;
    --mq-surface: #FFFFFF;
    --mq-surface-2: #F3F1EC;
    --mq-line: rgba(18, 18, 26, 0.08);

    /* ── Text ── */
    --mq-text: #12121A;
    /* #5D5B68 garante contraste AA (≥4.5:1) sobre o fundo creme #E9E7E2 */
    --mq-muted: #5D5B68;

    /* ── Layout chrome ── */
    --mq-header: 80px;
    --mq-nav-h: 52px;

    /* ── Radii ── */
    --mq-r: 20px;
    --mq-r-sm: 14px;

    /* ── Typography ── */
    --font-ui: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --font-display: 'Sora', 'Inter', system-ui, sans-serif;

    /* ── Semantic ── */
    --mq-success: #10B981;
    --mq-success-soft: #D1FAE5;
    --mq-warning: #F59E0B;
    --mq-warning-soft: #FEF3C7;
    --mq-error: #EF4444;
    --mq-error-soft: #FEE2E2;
    --mq-info: #06B6D4;
    --mq-info-soft: #CFFAFE;

    /* ── Aliases legados (style.css e componentes antigos) ── */
    --primary: var(--mq-o);
    --primary-hover: #C24E03;
    --primary-light: #FFF4E6;
    --primary-lighter: #FFFAF5;
    --primary-dark: #C24E03;
    --primary-ultra-dark: #9A3412;

    --secondary: #1F2937;
    --secondary-light: #374151;
    --secondary-lighter: #6B7280;
    --secondary-dark: #0F172A;

    --accent: #FB923C;
    --accent-light: #FFF0E6;

    --success: var(--mq-success);
    --success-light: var(--mq-success-soft);
    --warning: var(--mq-warning);
    --warning-light: var(--mq-warning-soft);
    --error: var(--mq-error);
    --error-light: var(--mq-error-soft);
    --info: var(--mq-info);
    --info-light: var(--mq-info-soft);

    --background: var(--mq-bg);
    --surface: var(--mq-surface);
    --surface-alt: var(--mq-surface-2);
    --border: var(--mq-line);
    --border-dark: #CBD5E1;
    --divider: #F1F5F9;

    --text: var(--mq-text);
    --text-secondary: #4A4856;
    --text-tertiary: #64748B;
    --text-muted: var(--mq-muted);
    --text-on-primary: #FFFFFF;

    --dark-bg: #0B1120;
    --dark-surface: #1E293B;
    --dark-surface-alt: #0F172A;
    --dark-border: #334155;
    --dark-text: #F8FAFC;
    --dark-text-secondary: #CBD5E1;

    /* ── Spacing (8px base) ── */
    --space-2xs: 0.25rem;
    --space-xs: 0.5rem;
    --space-sm: 0.75rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-2xl: 3rem;
    --space-3xl: 4rem;

    /* ── Border radius ── */
    --radius-sm: 8px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 18px;
    --radius-2xl: 24px;
    --radius-full: 9999px;

    /* ── Shadows ── */
    --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.04);
    --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.04), 0 2px 8px rgba(15, 23, 42, 0.06);
    --shadow-md: 0 2px 6px rgba(15, 23, 42, 0.06), 0 8px 24px rgba(15, 23, 42, 0.08);
    --shadow-lg: 0 4px 12px rgba(15, 23, 42, 0.08), 0 16px 40px rgba(15, 23, 42, 0.1);
    --shadow-xl: 0 8px 24px rgba(15, 23, 42, 0.1), 0 24px 48px rgba(15, 23, 42, 0.12);
    --shadow-2xl: 0 24px 64px rgba(15, 23, 42, 0.16);
    --shadow-inset: inset 0 1px 2px rgba(15, 23, 42, 0.06);
    --shadow-primary: 0 10px 40px rgba(232, 93, 4, 0.35);

    /* ── Motion ── */
    --transition-fast: 140ms cubic-bezier(0.2, 0, 0, 1);
    --transition-base: 200ms cubic-bezier(0.2, 0, 0, 1);
    --transition-slow: 280ms cubic-bezier(0.2, 0, 0, 1);
    --transition-smooth: 350ms cubic-bezier(0.2, 0, 0, 1);

    /* ── Z-index ── */
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;
    --z-toast: 1080;

    /* ── Type scale ── */
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --text-3xl: 1.875rem;
    --text-4xl: 2.25rem;
    --text-5xl: 3rem;

    /* ── Visual upgrade v2 ── */
    --primary-50: #fff7ed;
    --primary-100: #ffedd5;
    --primary-200: #fed7aa;
    --primary-500: #f97316;
    --primary-600: #ea580c;
    --primary-700: #c2410c;
    --surface-elevated: var(--mq-surface);
    --surface-muted: var(--mq-surface-2);
    --ring-focus: 0 0 0 3px rgba(249, 115, 22, 0.2);
}

[data-theme="dark"] {
    --mq-bg: #070709;
    --mq-surface: #111118;
    --mq-surface-2: #1A1A24;
    --mq-line: rgba(255, 255, 255, 0.07);
    --mq-text: #F2F0EB;
    --mq-muted: #8A8794;

    --primary: #F97316;
    --primary-hover: #FB923C;
    --primary-light: #3D2314;
    --primary-lighter: #261810;

    --secondary: #0F172A;
    --secondary-light: #1E293B;
    --secondary-lighter: #334155;

    --background: var(--mq-bg);
    --surface: var(--mq-surface);
    --surface-alt: var(--mq-surface-2);
    --border: var(--mq-line);
    --border-dark: #475569;

    --text: var(--mq-text);
    --text-secondary: #CBD5E1;
    --text-tertiary: #94A3B8;
    --text-muted: var(--mq-muted);

    --surface-elevated: #172033;
    --surface-muted: #0f172a;
    --ring-focus: 0 0 0 3px rgba(251, 146, 60, 0.3);
}

/* Aliases do portal — mesmos tokens, nomes legados do CSS do portal */
.mq-portal-proprietario,
.mq-portal-inquilino {
    --pp-accent: var(--mq-o);
    --pp-accent-2: var(--mq-g);
    --pp-accent-soft: rgba(232, 93, 4, .1);
    --pp-accent-glow: rgba(232, 93, 4, .22);
    --pp-grad: var(--mq-grad);
    --pp-ok: #059669;
    --pp-ok-soft: rgba(5, 150, 105, .12);
    --pp-warn: #d97706;
    --pp-warn-soft: rgba(217, 119, 6, .12);
    --pp-blue: #2563eb;
    --pp-blue-soft: rgba(37, 99, 235, .1);
    --pp-muted: var(--mq-muted);
    --pp-text: var(--mq-text);
    --pp-border: var(--mq-line);
    --pp-bg: var(--mq-bg);
    --pp-surface: var(--mq-surface);
    --pp-surface-2: var(--mq-surface-2);
    --pp-shadow-sm: 0 2px 8px rgba(18, 18, 26, .04);
    --pp-shadow: 0 8px 32px rgba(18, 18, 26, .07);
    --pp-shadow-lg: 0 20px 60px rgba(18, 18, 26, .1);
    --pp-r: 18px;
    --pp-r-sm: 12px;
}
