:root {
    --custom-primary: #8b5cf6;
    --custom-secondary: #a78bfa;
    --custom-accent: #ec4899;
    --custom-bg-start: #1e1b4b;
    --custom-bg-end: #312e81;
    --custom-radius-lg: 24px;
    --custom-radius-md: 16px;
    --custom-radius-sm: 12px;
}

* {
    --n-border-radius: 16px !important;
    --n-border-radius-small: 12px !important;
    --n-border-radius-medium: 16px !important;
    --n-border-radius-large: 24px !important;
}

.n-button {
    border-radius: 16px !important;
}

.n-input, .n-input-wrapper {
    border-radius: 12px !important;
}

.n-card {
    border-radius: 20px !important;
}

.n-modal {
    border-radius: 24px !important;
}

.n-drawer {
    border-radius: 24px 0 0 24px !important;
}

.n-popover {
    border-radius: 16px !important;
}

.n-select-menu {
    border-radius: 16px !important;
}

.n-dropdown {
    border-radius: 16px !important;
}

.n-form-item-label {
    border-radius: 8px !important;
}

.n-tab-pane {
    border-radius: 12px !important;
}

.n-avatar {
    border-radius: 50% !important;
}

.n-tag {
    border-radius: 20px !important;
}

.n-progress-rail, .n-progress-fill {
    border-radius: 10px !important;
}

.n-slider-handle {
    border-radius: 50% !important;
}

.n-switch {
    border-radius: 100px !important;
}

.n-checkbox, .n-checkbox-box {
    border-radius: 6px !important;
}

.n-radio, .n-radio-box {
    border-radius: 50% !important;
}

.n-alert {
    border-radius: 12px !important;
}

.n-message {
    border-radius: 12px !important;
}

.n-notification {
    border-radius: 16px !important;
}

.n-dialog {
    border-radius: 20px !important;
}

.n-upload-file-list-item {
    border-radius: 12px !important;
}

.n-image {
    border-radius: 12px !important;
}

.n-layout-sider, .n-layout-header, .n-layout-content, .n-layout-footer {
    border-radius: 0 !important;
}

html, body {
    background: linear-gradient(135deg, var(--custom-bg-start) 0%, var(--custom-bg-end) 100%) !important;
}

.login-container {
    border-radius: 32px !important;
    backdrop-filter: blur(20px) !important;
    background: rgba(255, 255, 255, 0.1) !important;
}

.n-button--primary-type {
    background: linear-gradient(135deg, var(--custom-primary) 0%, var(--custom-accent) 100%) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 25px -5px rgba(139, 92, 246, 0.4) !important;
}

.n-button--primary-type:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 15px 30px -5px rgba(139, 92, 246, 0.5) !important;
}

.n-input-wrapper {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 2px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 12px !important;
}

.n-input-wrapper:focus-within {
    border-color: var(--custom-primary) !important;
    box-shadow: 0 0 0 4px rgba(139, 92, 246, 0.2) !important;
}
