:root {
    --ws-primary: #4f46e5;
    --ws-primary-dark: #4338ca;
    --ws-primary-light: #eef2ff;
    --ws-brand-purple: #6a2bfa;
    --ws-brand-purple-hover: #5a20e0;
    --ws-brand-light: #f3eeff;
    --ws-brand-dark: #0a0a1e;
    --ws-gradient: linear-gradient(271deg, #2563eb, #613aed, #8849dc);
    --ws-gradient-btn: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);
    --ws-text: #111827;
    --ws-text-muted: #64748b;
    --ws-text-body: #334155;
    --ws-border: #e5e7eb;
    --ws-border-input: #d1d5db;
    --ws-surface: #f8fafc;
    --ws-surface-page: #f4f6f9;
    --ws-danger: #dc2626;
    --ws-danger-light: #fef2f2;
    --ws-success: #10b981;
    --ws-success-light: #ecfdf5;
    --ws-input-height: 44px;
    --ws-radius: 10px;
    --ws-radius-lg: 14px;
    --ws-radius-xl: 20px;
    --ws-font: "Plus Jakarta Sans", system-ui, sans-serif;
    --ws-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.04);
    --ws-shadow-md: 0 8px 20px rgba(15, 23, 42, 0.06);
    --ws-shadow-lg: 0 16px 40px rgba(15, 23, 42, 0.1);
    --ws-focus-border: #4f46e5;
    --ws-focus-ring: 0 0 0 4px rgba(79, 70, 229, 0.22);
    /* Aliases for legacy homepage CSS */
    --brand-purple: var(--ws-brand-purple);
    --brand-purple-hover: var(--ws-brand-purple-hover);
    --brand-light-purple: var(--ws-brand-light);
    --brand-dark: var(--ws-brand-dark);
    --text-dark: var(--ws-text);
    --text-gray: var(--ws-text-muted);
    --danger-red: var(--ws-danger);
    --danger-light: var(--ws-danger-light);
    --success-green: var(--ws-success);
    --success-light: var(--ws-success-light);
}

.ws-theme {
    --ws-input-bg: #ffffff;
    --ws-input-border: var(--ws-border-input);
    --ws-input-border-hover: #a5b4fc;
    --ws-input-text: #0f172a;
    --ws-input-placeholder: #94a3b8;
    --ws-input-radius: var(--ws-radius);
    --ws-input-shadow: var(--ws-shadow-sm);
    --ws-input-focus: var(--ws-focus-border);
    --ws-input-focus-ring: var(--ws-focus-ring);
    --ws-label-color: var(--ws-text-body);
    --ws-label-size: 0.86rem;
    --ws-accent: var(--ws-primary);
    --ws-accent-dark: var(--ws-primary-dark);
}
