:root[data-theme="lsoftmove-violet"] {
    --lsoftmove-primary: #6d3ef2;
    --lsoftmove-primary-dark: #5025c9;
    --lsoftmove-primary-light: #9b7cf6;
    --lsoftmove-secondary: #d94abf;
    --lsoftmove-info: #4888f5;
    --lsoftmove-accent: #13b8c4;
    --lsoftmove-success: #43d39e;
    --lsoftmove-warning: #f7c948;
    --lsoftmove-error: #ef5b6b;
    --lsoftmove-page-background: #f7f7fc;
    --lsoftmove-surface: #ffffff;
    --lsoftmove-surface-secondary: #fbfafe;
    --lsoftmove-hover: #f4f1ff;
    --lsoftmove-selected: #eee9ff;
    --lsoftmove-border: #e7e8f2;
    --lsoftmove-divider: #ececf3;
    --lsoftmove-text-primary: #23233c;
    --lsoftmove-text-secondary: #77778d;
    --lsoftmove-text-disabled: #a7a8b5;
    --lsoftmove-gradient-primary: linear-gradient(135deg, #6d3ef2 0%, #8b45f5 100%);
    --lsoftmove-gradient-secondary: linear-gradient(135deg, #d94abf 0%, #a854e8 100%);
    --lsoftmove-gradient-info: linear-gradient(135deg, #527cf4 0%, #42a5f5 100%);
    --lsoftmove-gradient-accent: linear-gradient(135deg, #18b8c8 0%, #31c8ae 100%);
    --lsoftmove-radius-small: 8px;
    --lsoftmove-radius-medium: 12px;
    --lsoftmove-radius-large: 16px;
    --lsoftmove-shadow-small: 0 3px 10px rgba(35, 35, 60, 0.05);
    --lsoftmove-shadow-card: 0 6px 20px rgba(35, 35, 60, 0.07);
    --lsoftmove-shadow-hover: 0 12px 30px rgba(35, 35, 60, 0.11);
    --lsoftmove-transition-fast: 160ms ease;
    --lsoftmove-transition-normal: 220ms ease;
    --ls-theme-key: "lsoftmove-violet";
    --ls-font-family: Inter, Roboto, "Segoe UI", Arial, sans-serif;
    --ls-radius-sm: var(--lsoftmove-radius-small);
    --ls-radius-md: var(--lsoftmove-radius-medium);
    --ls-radius-lg: var(--lsoftmove-radius-large);
    --ls-shadow-sm: var(--lsoftmove-shadow-small);
    --ls-shadow-md: var(--lsoftmove-shadow-card);
    --ls-shadow-lg: var(--lsoftmove-shadow-hover);
    --app-primary: var(--lsoftmove-primary);
    --app-primary-strong: var(--lsoftmove-primary-dark);
    --app-secondary: var(--lsoftmove-secondary);
    --app-secondary-strong: #a854e8;
    --app-accent: var(--lsoftmove-accent);
    --app-bg: var(--lsoftmove-page-background);
    --app-surface: var(--lsoftmove-surface);
    --app-panel: var(--lsoftmove-surface);
    --app-field-bg: var(--lsoftmove-surface);
    --app-field-border: var(--lsoftmove-border);
    --app-sidebar: var(--lsoftmove-surface);
    --app-sidebar-text: var(--lsoftmove-text-secondary);
    --app-sidebar-muted: var(--lsoftmove-text-disabled);
    --app-sidebar-active: var(--lsoftmove-selected);
    --app-sidebar-icon: var(--lsoftmove-primary);
    --app-sidebar-hover-bg: var(--lsoftmove-hover);
    --app-sidebar-hover-text: var(--lsoftmove-primary);
    --app-sidebar-border: var(--lsoftmove-border);
    --app-border: var(--lsoftmove-border);
    --app-text: var(--lsoftmove-text-primary);
    --app-muted: var(--lsoftmove-text-secondary);
    --app-muted-soft: var(--lsoftmove-text-disabled);
    --app-gradient-end: #8b45f5;
    --theme-band-start: #6d3ef2;
    --theme-band-end: #8b45f5;
    --theme-action-start: #6d3ef2;
    --theme-action-end: #8b45f5;
    --theme-soft-action: rgba(109, 62, 242, 0.1);
    --theme-accent: var(--lsoftmove-accent);
    --theme-success: var(--lsoftmove-success);
    --theme-warning: var(--lsoftmove-warning);
    --theme-danger-start: #d94155;
    --theme-danger-end: var(--lsoftmove-error);
    --mud-palette-primary: #6d3ef2;
    --mud-palette-primary-rgb: 109, 62, 242;
    --mud-palette-primary-text: #ffffff;
    --mud-palette-secondary: #d94abf;
    --mud-palette-secondary-rgb: 217, 74, 191;
    --mud-palette-secondary-text: #ffffff;
    --mud-palette-tertiary: #13b8c4;
    --mud-palette-info: #4888f5;
    --mud-palette-success: #43d39e;
    --mud-palette-warning: #f7c948;
    --mud-palette-error: #ef5b6b;
    --mud-palette-error-text: #ffffff;
    --mud-palette-appbar-background: #6d3ef2;
    --mud-palette-appbar-text: #ffffff;
    --mud-palette-background: #f7f7fc;
    --mud-palette-surface: #ffffff;
    --mud-palette-drawer-background: #ffffff;
    --mud-palette-drawer-text: #77778d;
    --mud-palette-drawer-icon: #6d3ef2;
    --mud-palette-text-primary: #23233c;
    --mud-palette-text-secondary: #77778d;
    --mud-palette-lines-default: #e7e8f2;
    --mud-palette-table-lines: #ececf3;
    --mud-palette-divider: #e7e8f2;
}

.theme-dot.lsoftmove-violet { background: var(--lsoftmove-gradient-primary); }

[data-theme="lsoftmove-violet"] .main-appbar {
    background: var(--lsoftmove-gradient-primary) !important;
    color: #ffffff !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    box-shadow: 0 6px 20px rgba(80, 37, 201, 0.22) !important;
}

[data-theme="lsoftmove-violet"] .main-appbar .mud-toolbar,
[data-theme="lsoftmove-violet"] .main-appbar .mud-toolbar-appbar,
[data-theme="lsoftmove-violet"] .main-appbar .mud-button-root,
[data-theme="lsoftmove-violet"] .main-appbar .mud-icon-button,
[data-theme="lsoftmove-violet"] .main-appbar .mud-icon-root,
[data-theme="lsoftmove-violet"] .main-appbar .mud-link,
[data-theme="lsoftmove-violet"] .main-appbar .mud-typography,
[data-theme="lsoftmove-violet"] .main-appbar .mud-menu,
[data-theme="lsoftmove-violet"] .main-appbar .theme-selector-trigger {
    color: #ffffff !important;
}

[data-theme="lsoftmove-violet"] .main-appbar .mud-button-root,
[data-theme="lsoftmove-violet"] .main-appbar .mud-icon-button,
[data-theme="lsoftmove-violet"] .main-appbar .mud-menu,
[data-theme="lsoftmove-violet"] .main-appbar .mud-menu-activator,
[data-theme="lsoftmove-violet"] .main-appbar .theme-selector-trigger {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

[data-theme="lsoftmove-violet"] .main-appbar .mud-icon-button:hover,
[data-theme="lsoftmove-violet"] .main-appbar .mud-button-root:hover,
[data-theme="lsoftmove-violet"] .main-appbar .theme-selector-trigger:hover,
[data-theme="lsoftmove-violet"] .main-appbar .appbar-user-chip:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.14) !important;
}

[data-theme="lsoftmove-violet"] .main-appbar .mud-icon-button:focus-visible,
[data-theme="lsoftmove-violet"] .main-appbar .mud-button-root:focus-visible,
[data-theme="lsoftmove-violet"] .main-appbar .theme-selector-trigger:focus-visible {
    outline-color: rgba(255, 255, 255, 0.72);
}

[data-theme="lsoftmove-violet"] .mud-drawer .mud-nav-link.active { border-left: 4px solid var(--lsoftmove-primary); }

[data-theme="lsoftmove-violet"] .mud-card,
[data-theme="lsoftmove-violet"] .admin-card,
[data-theme="lsoftmove-violet"] .filter-container,
[data-theme="lsoftmove-violet"] .table-container {
    background: var(--lsoftmove-surface) !important;
    border: 1px solid var(--lsoftmove-border);
    border-radius: var(--lsoftmove-radius-medium) !important;
    box-shadow: var(--lsoftmove-shadow-card);
}

[data-theme="lsoftmove-violet"] .mud-card:not(:has(form)):not(:has(.mud-table)) {
    transition: transform var(--lsoftmove-transition-normal), box-shadow var(--lsoftmove-transition-normal);
}

[data-theme="lsoftmove-violet"] .mud-card:not(:has(form)):not(:has(.mud-table)):hover {
    transform: translateY(-2px);
    box-shadow: var(--lsoftmove-shadow-hover);
}

[data-theme="lsoftmove-violet"] .mud-button-filled-primary { background: var(--lsoftmove-gradient-primary) !important; }
[data-theme="lsoftmove-violet"] .mud-button-filled-secondary { background: var(--lsoftmove-selected) !important; color: var(--lsoftmove-primary) !important; }
[data-theme="lsoftmove-violet"] .mud-button-outlined-primary { color: var(--lsoftmove-primary) !important; border-color: var(--lsoftmove-primary) !important; }

[data-theme="lsoftmove-violet"] .mud-button-root:focus-visible,
[data-theme="lsoftmove-violet"] .mud-icon-button:focus-visible,
[data-theme="lsoftmove-violet"] .mud-nav-link:focus-visible {
    outline: 3px solid rgba(109, 62, 242, 0.24);
    outline-offset: 2px;
}

[data-theme="lsoftmove-violet"] .mud-input:focus-within { filter: drop-shadow(0 0 0.35rem rgba(109, 62, 242, 0.12)); }

[data-theme="lsoftmove-violet"] .mud-table-root .mud-table-head,
[data-theme="lsoftmove-violet"] .mud-data-grid .mud-table-head,
[data-theme="lsoftmove-violet"] .mud-data-grid .mud-table-head .mud-table-row {
    background: #f5f3fc !important;
    color: #55556a !important;
}

[data-theme="lsoftmove-violet"] .mud-table-root .mud-table-head .mud-table-cell,
[data-theme="lsoftmove-violet"] .mud-data-grid .mud-table-head .mud-table-cell,
[data-theme="lsoftmove-violet"] .mud-data-grid .mud-table-head .mud-typography,
[data-theme="lsoftmove-violet"] .mud-data-grid .mud-table-head .mud-icon-root,
[data-theme="lsoftmove-violet"] .mud-data-grid .mud-table-head .mud-button-root {
    background: transparent !important;
    color: #55556a !important;
    border-color: var(--lsoftmove-divider) !important;
}

[data-theme="lsoftmove-violet"] .mud-table-body .mud-table-row:hover,
[data-theme="lsoftmove-violet"] .mud-list-item:hover { background: #f8f6ff !important; }
[data-theme="lsoftmove-violet"] .mud-table-row.mud-selected,
[data-theme="lsoftmove-violet"] .mud-list-item.mud-selected-item { background: var(--lsoftmove-selected) !important; }

[data-theme="lsoftmove-violet"] .mud-popover,
[data-theme="lsoftmove-violet"] .mud-menu,
[data-theme="lsoftmove-violet"] .mud-dialog {
    border: 1px solid var(--lsoftmove-border);
    border-radius: 14px !important;
    box-shadow: 0 18px 50px rgba(35, 35, 60, 0.16) !important;
}

[data-theme="lsoftmove-violet"] .mud-tab:not(.mud-tab-active) { color: var(--lsoftmove-text-secondary) !important; }
[data-theme="lsoftmove-violet"] .mud-tab.mud-tab-active,
[data-theme="lsoftmove-violet"] .mud-tabs-tabbar .mud-tab-slider { color: var(--lsoftmove-primary) !important; border-color: var(--lsoftmove-primary) !important; }
[data-theme="lsoftmove-violet"] .mud-chip-filled.mud-chip-color-primary { background: var(--lsoftmove-selected) !important; color: var(--lsoftmove-primary) !important; }
[data-theme="lsoftmove-violet"] .mud-chip-filled.mud-chip-color-success { background: #e8faf3 !important; color: #249b73 !important; }
[data-theme="lsoftmove-violet"] .mud-chip-filled.mud-chip-color-info { background: #eaf2ff !important; color: #3974d9 !important; }
[data-theme="lsoftmove-violet"] .mud-chip-filled.mud-chip-color-warning { background: #fff7d8 !important; color: #a87800 !important; }
[data-theme="lsoftmove-violet"] .mud-chip-filled.mud-chip-color-error { background: #fff0f2 !important; color: #d94155 !important; }

@media (prefers-reduced-motion: reduce) {
    [data-theme="lsoftmove-violet"] *,
    [data-theme="lsoftmove-violet"] *::before,
    [data-theme="lsoftmove-violet"] *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

@media (max-width: 600px) {
    :root[data-theme="lsoftmove-violet"] {
        --lsoftmove-radius-large: 12px;
        --lsoftmove-shadow-card: 0 3px 12px rgba(35, 35, 60, 0.06);
    }
    [data-theme="lsoftmove-violet"] .mud-card:not(:has(form)):not(:has(.mud-table)):hover { transform: none; }
}
