/* ═══════════════════════════════════════════════════════════
   נדל״ן פרו — Premium Design Tokens v5
   "Maritime Authority" — Deep Navy + Champagne Gold + Emerald
   ═══════════════════════════════════════════════════════════ */

:root {
    --dir: rtl;
    --start: right;
    --end: left;

    /* ─── Typography ─── */
    --font-display: 'Frank Ruhl Libre', 'David Libre', 'Noto Serif Hebrew', serif;
    --font-primary: 'Assistant', 'Heebo', 'Segoe UI', sans-serif;
    --font-mono: 'IBM Plex Mono', 'Courier New', monospace;

    --text-2xs: 0.625rem;
    --text-xs: 0.6875rem;
    --text-sm: 0.8125rem;
    --text-base: 0.875rem;
    --text-md: 0.9375rem;
    --text-lg: 1.0625rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --text-3xl: 1.875rem;
    --text-4xl: 2.375rem;
    --text-5xl: 3rem;

    --leading-none: 1;
    --leading-tight: 1.2;
    --leading-snug: 1.35;
    --leading-normal: 1.55;
    --leading-relaxed: 1.7;

    --tracking-tighter: -0.04em;
    --tracking-tight: -0.02em;
    --tracking-normal: 0;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.06em;

    --weight-light: 300;
    --weight-regular: 400;
    --weight-medium: 500;
    --weight-semibold: 600;
    --weight-bold: 700;
    --weight-black: 800;

    /* ─── Navy Palette ─── */
    --navy-50:  #eef1f6;
    --navy-100: #d5dbe7;
    --navy-200: #b0bbd0;
    --navy-300: #8a9bb9;
    --navy-400: #6b80a6;
    --navy-500: #4d6793;
    --navy-600: #3a517a;
    --navy-700: #293b5e;
    --navy-800: #1a2742;
    --navy-900: #0f1829;
    --navy-950: #080e1a;

    /* ─── Gold Palette ─── */
    --gold-50:  #fdf8ef;
    --gold-100: #f9edcf;
    --gold-200: #f3daa0;
    --gold-300: #ecc66f;
    --gold-400: #e4b142;
    --gold-500: #c8952a;
    --gold-600: #a87720;
    --gold-700: #855c19;
    --gold-800: #634413;
    --gold-900: #42300e;

    /* ─── Emerald Palette ─── */
    --emerald-50:  #ecfdf5;
    --emerald-100: #d1fae5;
    --emerald-200: #a7f3d0;
    --emerald-300: #6ee7b7;
    --emerald-400: #34d399;
    --emerald-500: #10b981;
    --emerald-600: #059669;
    --emerald-700: #047857;

    /* ─── Semantic Status ─── */
    --success-50:  var(--emerald-50);
    --success-100: var(--emerald-100);
    --success-200: var(--emerald-200);
    --success-500: var(--emerald-500);
    --success-600: var(--emerald-600);
    --success-700: var(--emerald-700);

    --warning-50:  #fffbeb;
    --warning-100: #fef3c7;
    --warning-500: #eab308;
    --warning-600: #ca8a04;
    --warning-700: #a16207;

    --danger-50:  #fef2f2;
    --danger-100: #fee2e2;
    --danger-400: #f87171;
    --danger-500: #ef4444;
    --danger-600: #dc2626;
    --danger-700: #b91c1c;

    --info-50:  #eff6ff;
    --info-100: #dbeafe;
    --info-500: #3b82f6;
    --info-600: #2563eb;
    --info-700: #1d4ed8;

    /* ─── Neutrals ─── */
    --gray-0:   #ffffff;
    --gray-25:  #fafbfc;
    --gray-50:  #f5f7f9;
    --gray-75:  #f0f2f5;
    --gray-100: #e8ebed;
    --gray-150: #dde1e5;
    --gray-200: #cdd3d9;
    --gray-300: #b0b8c2;
    --gray-400: #8e99a6;
    --gray-500: #6e7a89;
    --gray-600: #556270;
    --gray-700: #3f4a57;
    --gray-800: #2a333d;
    --gray-900: #1a2028;
    --gray-950: #0d1117;

    /* ─── Semantic Surfaces ─── */
    --bg-app: #f4f6f9;
    --bg-surface: var(--gray-0);
    --bg-elevated: var(--gray-0);
    --bg-sunken: var(--gray-50);
    --bg-sidebar: var(--navy-950);
    --bg-header: rgba(255,255,255,0.88);

    --text-primary: var(--gray-900);
    --text-secondary: var(--gray-600);
    --text-tertiary: var(--gray-500);
    --text-muted: var(--gray-400);
    --text-inverse: var(--gray-0);
    --text-link: var(--navy-600);
    --text-accent: var(--gold-600);

    --border-default: var(--gray-150);
    --border-subtle: rgba(0,0,0,0.04);
    --border-strong: var(--gray-200);
    --border-focus: var(--navy-500);

    /* ─── Aliases ─── */
    --primary-50: var(--navy-50);
    --primary-100: var(--navy-100);
    --primary-200: var(--navy-200);
    --primary-300: var(--navy-300);
    --primary-400: var(--navy-400);
    --primary-500: var(--navy-500);
    --primary-600: var(--navy-600);
    --primary-700: var(--navy-700);
    --primary-800: var(--navy-800);
    --primary-900: var(--navy-900);

    --accent-50: var(--gold-50);
    --accent-100: var(--gold-100);
    --accent-200: var(--gold-200);
    --accent-300: var(--gold-300);
    --accent-400: var(--gold-400);
    --accent-500: var(--gold-500);
    --accent-600: var(--gold-600);
    --accent-700: var(--gold-700);

    /* ─── Spacing ─── */
    --space-0: 0;
    --space-px: 1px;
    --space-0-5: 0.125rem;
    --space-1: 0.25rem;
    --space-1-5: 0.375rem;
    --space-2: 0.5rem;
    --space-2-5: 0.625rem;
    --space-3: 0.75rem;
    --space-3-5: 0.875rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-7: 1.75rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --space-14: 3.5rem;
    --space-16: 4rem;
    --space-20: 5rem;
    --space-24: 6rem;

    /* ─── Radii ─── */
    --radius-xs: 3px;
    --radius-sm: 5px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-2xl: 20px;
    --radius-3xl: 28px;
    --radius-full: 9999px;

    /* ─── Shadows ─── */
    --shadow-xs: 0 1px 2px rgba(15,24,41,0.04);
    --shadow-sm: 0 1px 2px rgba(15,24,41,0.05), 0 2px 4px rgba(15,24,41,0.04);
    --shadow-md: 0 2px 4px rgba(15,24,41,0.03), 0 4px 12px rgba(15,24,41,0.07);
    --shadow-lg: 0 4px 6px rgba(15,24,41,0.02), 0 12px 28px rgba(15,24,41,0.09);
    --shadow-xl: 0 8px 16px rgba(15,24,41,0.04), 0 24px 48px rgba(15,24,41,0.1);
    --shadow-2xl: 0 12px 24px rgba(15,24,41,0.06), 0 32px 64px rgba(15,24,41,0.14);
    --shadow-inner: inset 0 1px 3px rgba(15,24,41,0.05);
    --shadow-focus: 0 0 0 3px rgba(77,103,147,0.18);
    --shadow-focus-accent: 0 0 0 3px rgba(200,149,42,0.2);
    --shadow-card: 0 0 0 1px rgba(0,0,0,0.04), 0 1px 3px rgba(15,24,41,0.04), 0 8px 20px rgba(15,24,41,0.04);
    --shadow-card-hover: 0 0 0 1px rgba(0,0,0,0.04), 0 4px 8px rgba(15,24,41,0.04), 0 20px 40px rgba(15,24,41,0.09);
    --shadow-sidebar: -1px 0 0 rgba(255,255,255,0.04), 4px 0 32px rgba(8,14,26,0.5);
    --shadow-glow-gold: 0 0 24px rgba(228,177,66,0.15);
    --shadow-glow-navy: 0 0 24px rgba(77,103,147,0.15);

    /* ─── Gradients ─── */
    --gradient-navy: linear-gradient(135deg, var(--navy-600), var(--navy-800));
    --gradient-gold: linear-gradient(135deg, var(--gold-400), var(--gold-600));
    --gradient-emerald: linear-gradient(135deg, var(--emerald-400), var(--emerald-600));
    --gradient-surface: linear-gradient(180deg, var(--gray-0) 0%, var(--gray-25) 100%);

    /* ─── Transitions ─── */
    --ease-default: cubic-bezier(0.25, 0.1, 0.25, 1);
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
    --ease-smooth: cubic-bezier(0.45, 0, 0.15, 1);
    --duration-instant: 80ms;
    --duration-fast: 140ms;
    --duration-normal: 220ms;
    --duration-slow: 380ms;
    --duration-slower: 500ms;

    /* ─── Z-Index ─── */
    --z-base: 0;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-sidebar: 300;
    --z-header: 400;
    --z-overlay: 500;
    --z-modal: 600;
    --z-toast: 700;
    --z-tooltip: 800;
    --z-loader: 900;

    /* ─── Layout ─── */
    --sidebar-width: 264px;
    --sidebar-collapsed-width: 68px;
    --header-height: 60px;
    --page-max-width: 1340px;
    --page-padding: var(--space-8);

    /* ─── Status Colors ─── */
    --status-draft: var(--gray-400);
    --status-active: var(--navy-500);
    --status-pending: var(--gold-500);
    --status-signed: var(--info-500);
    --status-completed: var(--emerald-500);
    --status-cancelled: var(--danger-500);
}

[data-theme="dark"] {
    --bg-app: var(--gray-950);
    --bg-surface: var(--gray-900);
    --bg-elevated: var(--gray-800);
    --bg-sunken: #0a0d12;
    --bg-header: rgba(26,32,40,0.88);
    --text-primary: var(--gray-100);
    --text-secondary: var(--gray-400);
    --text-tertiary: var(--gray-500);
    --text-muted: var(--gray-600);
    --border-default: rgba(255,255,255,0.08);
    --border-subtle: rgba(255,255,255,0.04);
    --border-strong: rgba(255,255,255,0.12);
    --shadow-card: 0 0 0 1px rgba(255,255,255,0.04), 0 4px 16px rgba(0,0,0,0.3);
}
