:root {
    --top-h: 86px;
    --dock-h: 80px;
    --radius-main: 9px;
    --radius-soft: 7px;

    --crm-bg: #0b0f14;
    --crm-bg-soft: #111827;
    --crm-card: rgba(17, 24, 39, .78);
    --crm-card-hover: rgba(30, 41, 59, .88);
    --crm-border: rgba(148, 163, 184, .20);
    --crm-text: #f8fafc;
    --crm-text-muted: rgba(226, 232, 240, .68);
    --crm-primary: #22d3ee;
    --crm-primary-soft: rgba(34, 211, 238, .14);
    --crm-secondary: #38bdf8;
    --crm-danger: #fda4af;
    --crm-success: #6ee7b7;
    --crm-warning: #fde68a;
    --crm-shadow: 0 18px 42px rgba(0, 0, 0, .26);
    --crm-shadow-soft: 0 16px 34px rgba(0, 0, 0, .18);
    --crm-overlay: linear-gradient(135deg, rgba(11, 15, 20, .95), rgba(17, 24, 39, .88), rgba(8, 47, 73, .76));
    --crm-field-bg: rgba(255, 255, 255, .09);
    --crm-dock-bg: rgba(9, 14, 22, .84);
    --crm-on-primary: #03131a;

    --bg-1: var(--crm-bg);
    --bg-2: var(--crm-bg-soft);
    --bg-3: var(--crm-card-hover);
    --text: var(--crm-text);
    --muted: var(--crm-text-muted);
    --soft-text: var(--crm-text-muted);
    --faint-text: color-mix(in srgb, var(--crm-text-muted) 82%, transparent);
    --glass: var(--crm-card);
    --glass-2: color-mix(in srgb, var(--crm-card) 88%, transparent);
    --line: var(--crm-border);
    --primary: var(--crm-primary);
    --primary-2: var(--crm-secondary);
    --primary-3: var(--crm-primary);
    --accent: var(--crm-primary);
    --accent-strong: var(--crm-secondary);
    --success-text: var(--crm-success);
    --cyan-text: var(--crm-secondary);
    --danger-text: var(--crm-danger);
    --warning-text: var(--crm-warning);
    --dock-bg: var(--crm-dock-bg);
    --shadow-glass: var(--crm-shadow);
    --shadow-card: var(--crm-shadow-soft);
}

[data-theme="dark"],
[data-theme="dark-grafite"] {
    --crm-bg: #0b0f14;
    --crm-bg-soft: #111827;
    --crm-card: rgba(17, 24, 39, .78);
    --crm-card-hover: rgba(30, 41, 59, .88);
    --crm-border: rgba(148, 163, 184, .20);
    --crm-text: #f8fafc;
    --crm-text-muted: rgba(226, 232, 240, .68);
    --crm-primary: #22d3ee;
    --crm-primary-soft: rgba(34, 211, 238, .14);
    --crm-secondary: #38bdf8;
    --crm-danger: #fda4af;
    --crm-success: #6ee7b7;
    --crm-warning: #fde68a;
    --crm-shadow: 0 18px 42px rgba(0, 0, 0, .26);
    --crm-shadow-soft: 0 16px 34px rgba(0, 0, 0, .18);
    --crm-overlay: linear-gradient(135deg, rgba(11, 15, 20, .95), rgba(17, 24, 39, .88), rgba(8, 47, 73, .76));
    --crm-field-bg: rgba(255, 255, 255, .09);
    --crm-dock-bg: rgba(9, 14, 22, .84);
    --crm-on-primary: #03131a;
}

[data-theme="dark-azul"] {
    --crm-bg: #061121;
    --crm-bg-soft: #08213a;
    --crm-card: rgba(10, 38, 64, .78);
    --crm-card-hover: rgba(14, 59, 92, .88);
    --crm-border: rgba(125, 211, 252, .22);
    --crm-text: #eff6ff;
    --crm-text-muted: rgba(219, 234, 254, .70);
    --crm-primary: #38bdf8;
    --crm-primary-soft: rgba(56, 189, 248, .15);
    --crm-secondary: #22d3ee;
    --crm-danger: #fda4af;
    --crm-success: #86efac;
    --crm-warning: #fde68a;
    --crm-shadow: 0 18px 42px rgba(3, 7, 18, .30);
    --crm-shadow-soft: 0 16px 34px rgba(3, 7, 18, .22);
    --crm-overlay: linear-gradient(135deg, rgba(6, 17, 33, .95), rgba(8, 33, 58, .90), rgba(12, 74, 110, .76));
    --crm-field-bg: rgba(191, 219, 254, .10);
    --crm-dock-bg: rgba(5, 20, 37, .86);
    --crm-on-primary: #031525;
}

[data-theme="dark-verde"] {
    --crm-bg: #07140f;
    --crm-bg-soft: #10231b;
    --crm-card: rgba(18, 42, 31, .78);
    --crm-card-hover: rgba(27, 59, 44, .88);
    --crm-border: rgba(134, 239, 172, .20);
    --crm-text: #f0fdf4;
    --crm-text-muted: rgba(220, 252, 231, .70);
    --crm-primary: #34d399;
    --crm-primary-soft: rgba(52, 211, 153, .15);
    --crm-secondary: #5eead4;
    --crm-danger: #fda4af;
    --crm-success: #86efac;
    --crm-warning: #fef08a;
    --crm-shadow: 0 18px 42px rgba(0, 0, 0, .28);
    --crm-shadow-soft: 0 16px 34px rgba(0, 0, 0, .20);
    --crm-overlay: linear-gradient(135deg, rgba(7, 20, 15, .95), rgba(16, 35, 27, .88), rgba(20, 83, 45, .74));
    --crm-field-bg: rgba(220, 252, 231, .09);
    --crm-dock-bg: rgba(6, 22, 16, .86);
    --crm-on-primary: #04150e;
}

[data-theme="dark-vinho"] {
    --crm-bg: #180811;
    --crm-bg-soft: #2a1020;
    --crm-card: rgba(48, 18, 38, .78);
    --crm-card-hover: rgba(76, 29, 54, .88);
    --crm-border: rgba(251, 207, 232, .20);
    --crm-text: #fff1f7;
    --crm-text-muted: rgba(252, 231, 243, .70);
    --crm-primary: #f472b6;
    --crm-primary-soft: rgba(244, 114, 182, .15);
    --crm-secondary: #fb7185;
    --crm-danger: #fda4af;
    --crm-success: #86efac;
    --crm-warning: #fde68a;
    --crm-shadow: 0 18px 42px rgba(0, 0, 0, .30);
    --crm-shadow-soft: 0 16px 34px rgba(0, 0, 0, .22);
    --crm-overlay: linear-gradient(135deg, rgba(24, 8, 17, .95), rgba(42, 16, 32, .90), rgba(112, 26, 67, .72));
    --crm-field-bg: rgba(252, 231, 243, .09);
    --crm-dock-bg: rgba(29, 10, 20, .86);
    --crm-on-primary: #230414;
}

[data-theme="light"],
[data-theme="light-grafite"] {
    --crm-bg: #f3f4f6;
    --crm-bg-soft: #e5e7eb;
    --crm-card: rgba(255, 255, 255, .88);
    --crm-card-hover: rgba(248, 250, 252, .96);
    --crm-border: rgba(71, 85, 105, .18);
    --crm-text: #111827;
    --crm-text-muted: rgba(55, 65, 81, .70);
    --crm-primary: #334155;
    --crm-primary-soft: rgba(51, 65, 85, .12);
    --crm-secondary: #0284c7;
    --crm-danger: #be123c;
    --crm-success: #047857;
    --crm-warning: #b45309;
    --crm-shadow: 0 18px 42px rgba(15, 23, 42, .12);
    --crm-shadow-soft: 0 16px 34px rgba(15, 23, 42, .10);
    --crm-overlay: linear-gradient(135deg, rgba(243, 244, 246, .92), rgba(229, 231, 235, .84), rgba(241, 245, 249, .78));
    --crm-field-bg: rgba(255, 255, 255, .78);
    --crm-dock-bg: rgba(255, 255, 255, .90);
    --crm-on-primary: #ffffff;
}

[data-theme="light-azul"] {
    --crm-bg: #eff6ff;
    --crm-bg-soft: #dbeafe;
    --crm-card: rgba(255, 255, 255, .90);
    --crm-card-hover: rgba(239, 246, 255, .98);
    --crm-border: rgba(37, 99, 235, .18);
    --crm-text: #0f172a;
    --crm-text-muted: rgba(30, 41, 59, .70);
    --crm-primary: #2563eb;
    --crm-primary-soft: rgba(37, 99, 235, .12);
    --crm-secondary: #0891b2;
    --crm-danger: #be123c;
    --crm-success: #047857;
    --crm-warning: #b45309;
    --crm-shadow: 0 18px 42px rgba(30, 64, 175, .12);
    --crm-shadow-soft: 0 16px 34px rgba(30, 64, 175, .10);
    --crm-overlay: linear-gradient(135deg, rgba(239, 246, 255, .92), rgba(219, 234, 254, .84), rgba(224, 242, 254, .78));
    --crm-field-bg: rgba(255, 255, 255, .80);
    --crm-dock-bg: rgba(255, 255, 255, .90);
    --crm-on-primary: #ffffff;
}

[data-theme="light-verde"] {
    --crm-bg: #f0fdf4;
    --crm-bg-soft: #dcfce7;
    --crm-card: rgba(255, 255, 255, .90);
    --crm-card-hover: rgba(240, 253, 244, .98);
    --crm-border: rgba(22, 101, 52, .18);
    --crm-text: #102017;
    --crm-text-muted: rgba(31, 78, 52, .70);
    --crm-primary: #059669;
    --crm-primary-soft: rgba(5, 150, 105, .12);
    --crm-secondary: #0f766e;
    --crm-danger: #be123c;
    --crm-success: #047857;
    --crm-warning: #a16207;
    --crm-shadow: 0 18px 42px rgba(21, 128, 61, .12);
    --crm-shadow-soft: 0 16px 34px rgba(21, 128, 61, .10);
    --crm-overlay: linear-gradient(135deg, rgba(240, 253, 244, .92), rgba(220, 252, 231, .84), rgba(204, 251, 241, .76));
    --crm-field-bg: rgba(255, 255, 255, .80);
    --crm-dock-bg: rgba(255, 255, 255, .90);
    --crm-on-primary: #ffffff;
}

[data-theme="light-vinho"] {
    --crm-bg: #fff1f2;
    --crm-bg-soft: #ffe4e6;
    --crm-card: rgba(255, 255, 255, .90);
    --crm-card-hover: rgba(255, 241, 242, .98);
    --crm-border: rgba(159, 18, 57, .18);
    --crm-text: #2a1018;
    --crm-text-muted: rgba(88, 28, 46, .70);
    --crm-primary: #be123c;
    --crm-primary-soft: rgba(190, 18, 60, .12);
    --crm-secondary: #db2777;
    --crm-danger: #b91c1c;
    --crm-success: #047857;
    --crm-warning: #a16207;
    --crm-shadow: 0 18px 42px rgba(159, 18, 57, .12);
    --crm-shadow-soft: 0 16px 34px rgba(159, 18, 57, .10);
    --crm-overlay: linear-gradient(135deg, rgba(255, 241, 242, .92), rgba(255, 228, 230, .84), rgba(252, 231, 243, .76));
    --crm-field-bg: rgba(255, 255, 255, .80);
    --crm-dock-bg: rgba(255, 255, 255, .90);
    --crm-on-primary: #ffffff;
}
