/* ============================================
   СТИЛИ КУРСОРОВ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ
   ============================================ */

/* По умолчанию - фиолетовый (бренд) */
body:not([data-cursor-style]) *,
body[data-cursor-style="default"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%237c3aed" stroke-width="2" opacity="0.8"/><circle cx="12" cy="12" r="3" fill="%237c3aed"/></svg>') 12 12, auto;
}

body[data-cursor-style="default"] a,
body[data-cursor-style="default"] button,
body[data-cursor-style="default"] .btn,
body[data-cursor-style="default"] input[type="button"],
body[data-cursor-style="default"] input[type="submit"],
body[data-cursor-style="default"] [role="button"],
body[data-cursor-style="default"] .clickable {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%2310b981" stroke-width="2" opacity="0.9"/><circle cx="12" cy="12" r="4" fill="%2310b981"/><path d="M12 2 L12 8 M12 16 L12 22 M2 12 L8 12 M16 12 L22 12" stroke="%2310b981" stroke-width="2" opacity="0.6"/></svg>') 12 12, pointer;
}

/* Фиолетовый */
body[data-cursor-style="purple"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%237c3aed" stroke-width="2" opacity="0.9"/><circle cx="12" cy="12" r="4" fill="%237c3aed"/></svg>') 12 12, auto;
}

body[data-cursor-style="purple"] a,
body[data-cursor-style="purple"] button,
body[data-cursor-style="purple"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%237c3aed" stroke-width="2.5" opacity="1"/><circle cx="12" cy="12" r="5" fill="%237c3aed"/><path d="M12 2 L12 8 M12 16 L12 22 M2 12 L8 12 M16 12 L22 12" stroke="%237c3aed" stroke-width="2" opacity="0.7"/></svg>') 12 12, pointer;
}

/* Зеленый */
body[data-cursor-style="green"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%2310b981" stroke-width="2" opacity="0.9"/><circle cx="12" cy="12" r="4" fill="%2310b981"/></svg>') 12 12, auto;
}

body[data-cursor-style="green"] a,
body[data-cursor-style="green"] button,
body[data-cursor-style="green"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%2310b981" stroke-width="2.5" opacity="1"/><circle cx="12" cy="12" r="5" fill="%2310b981"/><path d="M12 2 L12 8 M12 16 L12 22 M2 12 L8 12 M16 12 L22 12" stroke="%2310b981" stroke-width="2" opacity="0.7"/></svg>') 12 12, pointer;
}

/* Синий */
body[data-cursor-style="blue"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%233b82f6" stroke-width="2" opacity="0.9"/><circle cx="12" cy="12" r="4" fill="%233b82f6"/></svg>') 12 12, auto;
}

body[data-cursor-style="blue"] a,
body[data-cursor-style="blue"] button,
body[data-cursor-style="blue"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%233b82f6" stroke-width="2.5" opacity="1"/><circle cx="12" cy="12" r="5" fill="%233b82f6"/><path d="M12 2 L12 8 M12 16 L12 22 M2 12 L8 12 M16 12 L22 12" stroke="%233b82f6" stroke-width="2" opacity="0.7"/></svg>') 12 12, pointer;
}

/* Красный */
body[data-cursor-style="red"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%23ef4444" stroke-width="2" opacity="0.9"/><circle cx="12" cy="12" r="4" fill="%23ef4444"/></svg>') 12 12, auto;
}

body[data-cursor-style="red"] a,
body[data-cursor-style="red"] button,
body[data-cursor-style="red"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%23ef4444" stroke-width="2.5" opacity="1"/><circle cx="12" cy="12" r="5" fill="%23ef4444"/><path d="M12 2 L12 8 M12 16 L12 22 M2 12 L8 12 M16 12 L22 12" stroke="%23ef4444" stroke-width="2" opacity="0.7"/></svg>') 12 12, pointer;
}

/* Оранжевый */
body[data-cursor-style="orange"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%23f59e0b" stroke-width="2" opacity="0.9"/><circle cx="12" cy="12" r="4" fill="%23f59e0b"/></svg>') 12 12, auto;
}

body[data-cursor-style="orange"] a,
body[data-cursor-style="orange"] button,
body[data-cursor-style="orange"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%23f59e0b" stroke-width="2.5" opacity="1"/><circle cx="12" cy="12" r="5" fill="%23f59e0b"/><path d="M12 2 L12 8 M12 16 L12 22 M2 12 L8 12 M16 12 L22 12" stroke="%23f59e0b" stroke-width="2" opacity="0.7"/></svg>') 12 12, pointer;
}

/* Минималистичный */
body[data-cursor-style="minimal"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><circle cx="8" cy="8" r="6" fill="none" stroke="%236b7280" stroke-width="1.5" opacity="0.8"/><circle cx="8" cy="8" r="2" fill="%236b7280"/></svg>') 8 8, auto;
}

body[data-cursor-style="minimal"] a,
body[data-cursor-style="minimal"] button,
body[data-cursor-style="minimal"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><circle cx="9" cy="9" r="7" fill="none" stroke="%236b7280" stroke-width="2" opacity="0.9"/><circle cx="9" cy="9" r="3" fill="%236b7280"/></svg>') 9 9, pointer;
}

/* Классический */
body[data-cursor-style="classic"] * {
    cursor: default;
}

body[data-cursor-style="classic"] a,
body[data-cursor-style="classic"] button,
body[data-cursor-style="classic"] .btn {
    cursor: pointer;
}

/* Современный */
body[data-cursor-style="modern"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28"><circle cx="14" cy="14" r="12" fill="none" stroke="%238b5cf6" stroke-width="2" opacity="0.6"/><circle cx="14" cy="14" r="8" fill="none" stroke="%238b5cf6" stroke-width="2" opacity="0.8"/><circle cx="14" cy="14" r="4" fill="%238b5cf6"/></svg>') 14 14, auto;
}

body[data-cursor-style="modern"] a,
body[data-cursor-style="modern"] button,
body[data-cursor-style="modern"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30"><circle cx="15" cy="15" r="13" fill="none" stroke="%238b5cf6" stroke-width="2.5" opacity="0.7"/><circle cx="15" cy="15" r="9" fill="none" stroke="%238b5cf6" stroke-width="2" opacity="0.9"/><circle cx="15" cy="15" r="5" fill="%238b5cf6"/><path d="M15 2 L15 10 M15 20 L15 28 M2 15 L10 15 M20 15 L28 15" stroke="%238b5cf6" stroke-width="2" opacity="0.5"/></svg>') 15 15, pointer;
}

/* Стили для текстовых полей (одинаковые для всех) */
body[data-cursor-style] input[type="text"],
body[data-cursor-style] input[type="email"],
body[data-cursor-style] input[type="password"],
body[data-cursor-style] input[type="search"],
body[data-cursor-style] textarea,
body[data-cursor-style] [contenteditable="true"] {
    cursor: text;
}

/* Стили для перетаскивания */
body[data-cursor-style] [draggable="true"],
body[data-cursor-style] .draggable {
    cursor: move;
}

/* Стили для disabled */
body[data-cursor-style] .disabled,
body[data-cursor-style] [disabled],
body[data-cursor-style] .not-allowed {
    cursor: not-allowed;
}

/* Стрелка */
body[data-cursor-style="arrow"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M2 2 L20 12 L2 22 Z" fill="%236366f1" opacity="0.9"/><path d="M4 4 L18 12 L4 20 Z" fill="none" stroke="%23ffffff" stroke-width="1"/></svg>') 2 2, auto;
}

body[data-cursor-style="arrow"] a,
body[data-cursor-style="arrow"] button,
body[data-cursor-style="arrow"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M2 2 L22 13 L2 24 Z" fill="%236366f1"/><path d="M4 5 L19 13 L4 21 Z" fill="none" stroke="%23ffffff" stroke-width="1.5"/></svg>') 2 2, pointer;
}

/* Указатель */
body[data-cursor-style="pointer"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M3 3 L3 20 L12 12 L20 20 L20 3 Z" fill="%238b5cf6" opacity="0.9"/><path d="M5 5 L5 17 L11 11 L17 17 L17 5 Z" fill="none" stroke="%23ffffff" stroke-width="1"/></svg>') 3 3, auto;
}

body[data-cursor-style="pointer"] a,
body[data-cursor-style="pointer"] button,
body[data-cursor-style="pointer"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M3 3 L3 22 L13 12 L21 22 L21 3 Z" fill="%238b5cf6"/><path d="M5 5 L5 19 L12 11 L19 19 L19 5 Z" fill="none" stroke="%23ffffff" stroke-width="1.5"/></svg>') 3 3, pointer;
}

/* Прицел */
body[data-cursor-style="crosshair"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="8" fill="none" stroke="%23ef4444" stroke-width="2"/><line x1="12" y1="2" x2="12" y2="8" stroke="%23ef4444" stroke-width="2"/><line x1="12" y1="16" x2="12" y2="22" stroke="%23ef4444" stroke-width="2"/><line x1="2" y1="12" x2="8" y2="12" stroke="%23ef4444" stroke-width="2"/><line x1="16" y1="12" x2="22" y2="12" stroke="%23ef4444" stroke-width="2"/><circle cx="12" cy="12" r="2" fill="%23ef4444"/></svg>') 12 12, crosshair;
}

body[data-cursor-style="crosshair"] a,
body[data-cursor-style="crosshair"] button,
body[data-cursor-style="crosshair"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><circle cx="13" cy="13" r="9" fill="none" stroke="%23ef4444" stroke-width="2.5"/><line x1="13" y1="1" x2="13" y2="9" stroke="%23ef4444" stroke-width="2.5"/><line x1="13" y1="17" x2="13" y2="25" stroke="%23ef4444" stroke-width="2.5"/><line x1="1" y1="13" x2="9" y2="13" stroke="%23ef4444" stroke-width="2.5"/><line x1="17" y1="13" x2="25" y2="13" stroke="%23ef4444" stroke-width="2.5"/><circle cx="13" cy="13" r="3" fill="%23ef4444"/></svg>') 13 13, pointer;
}

/* Звезда */
body[data-cursor-style="star"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2 L14.5 9 L22 9 L16 14 L18.5 21 L12 16 L5.5 21 L8 14 L2 9 L9.5 9 Z" fill="%23fbbf24" opacity="0.9"/></svg>') 12 12, auto;
}

body[data-cursor-style="star"] a,
body[data-cursor-style="star"] button,
body[data-cursor-style="star"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 2 L15.8 10 L24 10 L17.6 15 L20.4 23 L13 18 L5.6 23 L8.4 15 L2 10 L10.2 10 Z" fill="%23fbbf24"/></svg>') 13 13, pointer;
}

/* Сердечко */
body[data-cursor-style="heart"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" fill="%23ec4899" opacity="0.9"/></svg>') 12 12, auto;
}

body[data-cursor-style="heart"] a,
body[data-cursor-style="heart"] button,
body[data-cursor-style="heart"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 23l-1.6-1.45C5.2 16.2 1.5 12.8 1.5 8.8 1.5 5.3 4.3 2.5 7.8 2.5c1.9 0 3.7.9 4.7 2.3 1-1.4 2.8-2.3 4.7-2.3 3.5 0 6.3 2.8 6.3 6.3 0 4-3.7 7.4-9.9 12.75L13 23z" fill="%23ec4899"/></svg>') 13 13, pointer;
}

/* Алмаз */
body[data-cursor-style="diamond"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2 L22 12 L12 22 L2 12 Z" fill="%2306b6d4" opacity="0.9"/><path d="M12 4 L20 12 L12 20 L4 12 Z" fill="none" stroke="%23ffffff" stroke-width="1"/></svg>') 12 12, auto;
}

body[data-cursor-style="diamond"] a,
body[data-cursor-style="diamond"] button,
body[data-cursor-style="diamond"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 2 L24 13 L13 24 L2 13 Z" fill="%2306b6d4"/><path d="M13 4 L22 13 L13 22 L4 13 Z" fill="none" stroke="%23ffffff" stroke-width="1.5"/></svg>') 13 13, pointer;
}

/* Квадрат */
body[data-cursor-style="square"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><rect x="4" y="4" width="16" height="16" fill="%236366f1" opacity="0.9" rx="2"/></svg>') 12 12, auto;
}

body[data-cursor-style="square"] a,
body[data-cursor-style="square"] button,
body[data-cursor-style="square"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><rect x="3" y="3" width="20" height="20" fill="%236366f1" rx="3"/></svg>') 13 13, pointer;
}

/* Треугольник */
body[data-cursor-style="triangle"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2 L22 20 L2 20 Z" fill="%2310b981" opacity="0.9"/></svg>') 12 20, auto;
}

body[data-cursor-style="triangle"] a,
body[data-cursor-style="triangle"] button,
body[data-cursor-style="triangle"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 2 L24 22 L2 22 Z" fill="%2310b981"/></svg>') 13 22, pointer;
}

/* Точка в круге */
body[data-cursor-style="circle-dot"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%237c3aed" stroke-width="2"/><circle cx="12" cy="12" r="5" fill="%237c3aed"/></svg>') 12 12, auto;
}

body[data-cursor-style="circle-dot"] a,
body[data-cursor-style="circle-dot"] button,
body[data-cursor-style="circle-dot"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><circle cx="13" cy="13" r="11" fill="none" stroke="%237c3aed" stroke-width="2.5"/><circle cx="13" cy="13" r="6" fill="%237c3aed"/></svg>') 13 13, pointer;
}

/* Стрелка вверх */
body[data-cursor-style="arrow-up"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2 L20 18 L16 18 L12 10 L8 18 L4 18 Z" fill="%233b82f6" opacity="0.9"/></svg>') 12 2, auto;
}

body[data-cursor-style="arrow-up"] a,
body[data-cursor-style="arrow-up"] button,
body[data-cursor-style="arrow-up"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 2 L22 20 L17 20 L13 11 L9 20 L4 20 Z" fill="%233b82f6"/></svg>') 13 2, pointer;
}

/* Стрелка вниз */
body[data-cursor-style="arrow-down"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 22 L20 6 L16 6 L12 14 L8 6 L4 6 Z" fill="%233b82f6" opacity="0.9"/></svg>') 12 22, auto;
}

body[data-cursor-style="arrow-down"] a,
body[data-cursor-style="arrow-down"] button,
body[data-cursor-style="arrow-down"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 24 L22 6 L17 6 L13 15 L9 6 L4 6 Z" fill="%233b82f6"/></svg>') 13 24, pointer;
}

/* Рука */
body[data-cursor-style="hand"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M9 2 L9 8 L7 8 L7 12 L9 12 L9 18 L11 18 L11 12 L13 12 L13 8 L11 8 L11 2 Z" fill="%238b5cf6" opacity="0.9"/><circle cx="15" cy="18" r="3" fill="%238b5cf6" opacity="0.9"/></svg>') 12 12, auto;
}

body[data-cursor-style="hand"] a,
body[data-cursor-style="hand"] button,
body[data-cursor-style="hand"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M10 2 L10 9 L8 9 L8 13 L10 13 L10 19 L12 19 L12 13 L14 13 L14 9 L12 9 L12 2 Z" fill="%238b5cf6"/><circle cx="16" cy="19" r="4" fill="%238b5cf6"/></svg>') 13 13, pointer;
}

/* Палец */
body[data-cursor-style="finger"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="8" fill="none" stroke="%236366f1" stroke-width="2"/><circle cx="12" cy="12" r="6" fill="none" stroke="%236366f1" stroke-width="1" opacity="0.5"/><circle cx="12" cy="12" r="3" fill="%236366f1"/></svg>') 12 12, auto;
}

body[data-cursor-style="finger"] a,
body[data-cursor-style="finger"] button,
body[data-cursor-style="finger"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><circle cx="13" cy="13" r="9" fill="none" stroke="%236366f1" stroke-width="2.5"/><circle cx="13" cy="13" r="7" fill="none" stroke="%236366f1" stroke-width="1.5" opacity="0.6"/><circle cx="13" cy="13" r="4" fill="%236366f1"/></svg>') 13 13, pointer;
}

/* Мишень */
body[data-cursor-style="target"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%23ef4444" stroke-width="2"/><circle cx="12" cy="12" r="6" fill="none" stroke="%23ef4444" stroke-width="2"/><circle cx="12" cy="12" r="2" fill="%23ef4444"/></svg>') 12 12, auto;
}

body[data-cursor-style="target"] a,
body[data-cursor-style="target"] button,
body[data-cursor-style="target"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><circle cx="13" cy="13" r="11" fill="none" stroke="%23ef4444" stroke-width="2.5"/><circle cx="13" cy="13" r="7" fill="none" stroke="%23ef4444" stroke-width="2.5"/><circle cx="13" cy="13" r="3" fill="%23ef4444"/></svg>') 13 13, pointer;
}

/* Фокус */
body[data-cursor-style="focus"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="8" fill="none" stroke="%2310b981" stroke-width="2"/><circle cx="12" cy="12" r="4" fill="%2310b981" opacity="0.3"/><line x1="12" y1="4" x2="12" y2="8" stroke="%2310b981" stroke-width="2"/><line x1="12" y1="16" x2="12" y2="20" stroke="%2310b981" stroke-width="2"/><line x1="4" y1="12" x2="8" y2="12" stroke="%2310b981" stroke-width="2"/><line x1="16" y1="12" x2="20" y2="12" stroke="%2310b981" stroke-width="2"/></svg>') 12 12, auto;
}

body[data-cursor-style="focus"] a,
body[data-cursor-style="focus"] button,
body[data-cursor-style="focus"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><circle cx="13" cy="13" r="9" fill="none" stroke="%2310b981" stroke-width="2.5"/><circle cx="13" cy="13" r="5" fill="%2310b981" opacity="0.4"/><line x1="13" y1="3" x2="13" y2="8" stroke="%2310b981" stroke-width="2.5"/><line x1="13" y1="18" x2="13" y2="23" stroke="%2310b981" stroke-width="2.5"/><line x1="3" y1="13" x2="8" y2="13" stroke="%2310b981" stroke-width="2.5"/><line x1="18" y1="13" x2="23" y2="13" stroke="%2310b981" stroke-width="2.5"/></svg>') 13 13, pointer;
}

/* Точка */
body[data-cursor-style="dot"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><circle cx="8" cy="8" r="4" fill="%236b7280"/></svg>') 8 8, auto;
}

body[data-cursor-style="dot"] a,
body[data-cursor-style="dot"] button,
body[data-cursor-style="dot"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><circle cx="9" cy="9" r="5" fill="%236b7280"/></svg>') 9 9, pointer;
}

/* Кольцо */
body[data-cursor-style="ring"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="%237c3aed" stroke-width="3"/><circle cx="12" cy="12" r="6" fill="none" stroke="%237c3aed" stroke-width="2" opacity="0.5"/></svg>') 12 12, auto;
}

body[data-cursor-style="ring"] a,
body[data-cursor-style="ring"] button,
body[data-cursor-style="ring"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><circle cx="13" cy="13" r="11" fill="none" stroke="%237c3aed" stroke-width="3.5"/><circle cx="13" cy="13" r="7" fill="none" stroke="%237c3aed" stroke-width="2.5" opacity="0.6"/></svg>') 13 13, pointer;
}

/* Искра */
body[data-cursor-style="sparkle"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2 L13 8 L19 9 L13 10 L12 16 L11 10 L5 9 L11 8 Z" fill="%23fbbf24" opacity="0.9"/><circle cx="12" cy="12" r="1.5" fill="%23fbbf24"/></svg>') 12 12, auto;
}

body[data-cursor-style="sparkle"] a,
body[data-cursor-style="sparkle"] button,
body[data-cursor-style="sparkle"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M13 2 L14.5 9 L21.5 10 L14.5 11 L13 18 L11.5 11 L4.5 10 L11.5 9 Z" fill="%23fbbf24"/><circle cx="13" cy="13" r="2" fill="%23fbbf24"/></svg>') 13 13, pointer;
}

/* Курсор */
body[data-cursor-style="cursor"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M3 3 L3 18 L10 12 L15 18 L15 3 Z" fill="%236366f1" opacity="0.9"/></svg>') 3 3, auto;
}

body[data-cursor-style="cursor"] a,
body[data-cursor-style="cursor"] button,
body[data-cursor-style="cursor"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M3 3 L3 20 L11 13 L17 20 L17 3 Z" fill="%236366f1"/></svg>') 3 3, pointer;
}

/* Ручка */
body[data-cursor-style="pen"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M3 17.25 L3 21 L6.75 21 L17.81 9.94 L14.06 6.19 Z" fill="%23374151" opacity="0.9"/><path d="M20.71 5.63 L18.37 3.29 C18 2.9 17.35 2.9 16.96 3.29 L15.12 5.12 L18.87 8.87 L20.71 7.04 C21.1 6.65 21.1 6 20.71 5.63 Z" fill="%23374151" opacity="0.9"/></svg>') 3 21, auto;
}

body[data-cursor-style="pen"] a,
body[data-cursor-style="pen"] button,
body[data-cursor-style="pen"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M3 18 L3 23 L8 23 L20.5 10.5 L15.5 5.5 Z" fill="%23374151"/><path d="M22 4.5 L21.5 5 C21.1 5.4 20.4 5.4 20 5 L19 4 C18.6 3.6 18.6 2.9 19 2.5 L19.5 2 C19.9 1.6 20.6 1.6 21 2 L22 3 C22.4 3.4 22.4 4.1 22 4.5 Z" fill="%23374151"/></svg>') 3 23, pointer;
}

/* Кисть */
body[data-cursor-style="brush"] * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M20.71 4.63 L19.37 3.29 C19 2.9 18.35 2.9 17.96 3.29 L9 12.25 L11.75 15 L20.71 6.04 C21.1 5.65 21.1 5 20.71 4.63 Z" fill="%238b5cf6" opacity="0.9"/><path d="M3 17.25 L3 21 L6.75 21 L8.29 19.46 L6.54 17.71 Z" fill="%238b5cf6" opacity="0.9"/></svg>') 3 21, auto;
}

body[data-cursor-style="brush"] a,
body[data-cursor-style="brush"] button,
body[data-cursor-style="brush"] .btn {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26"><path d="M22 5 L21 4 C20.6 3.6 19.9 3.6 19.5 4 L10 13.5 L12.5 16 L22 6.5 C22.4 6.1 22.4 5.4 22 5 Z" fill="%238b5cf6"/><path d="M3 18 L3 23 L8 23 L9.5 21.5 L7.5 19.5 Z" fill="%238b5cf6"/></svg>') 3 23, pointer;
}

/* Стили для текстовых полей (одинаковые для всех) */
body[data-cursor-style] input[type="text"],
body[data-cursor-style] input[type="email"],
body[data-cursor-style] input[type="password"],
body[data-cursor-style] input[type="search"],
body[data-cursor-style] textarea,
body[data-cursor-style] [contenteditable="true"] {
    cursor: text;
}

/* Стили для перетаскивания */
body[data-cursor-style] [draggable="true"],
body[data-cursor-style] .draggable {
    cursor: move;
}

/* Стили для disabled */
body[data-cursor-style] .disabled,
body[data-cursor-style] [disabled],
body[data-cursor-style] .not-allowed {
    cursor: not-allowed;
}

/* Стили для ожидания */
body[data-cursor-style] .wait,
body[data-cursor-style] .loading,
body[data-cursor-style] [aria-busy="true"] {
    cursor: wait;
}

