:root {
    /* Typography */
    --ws-font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --ws-font-size: 12.5px;
    --ws-font-size-sm: 11.5px;
    --ws-font-size-lg: 14px;
    --ws-font-size-xl: 18px;
    --ws-font-size-2xl: 24px;
    --ws-font-size-3xl: 32px;
    --ws-line-height: 1.5;

    /* Palette — Blue + Indigo + Emerald */
    --ws-blue-50: #eff6ff;
    --ws-blue-100: #dbeafe;
    --ws-blue-500: #3b82f6;
    --ws-blue-600: #2563eb;
    --ws-blue-700: #1d4ed8;

    --ws-indigo-50: #eef2ff;
    --ws-indigo-100: #e0e7ff;
    --ws-indigo-500: #6366f1;
    --ws-indigo-600: #4f46e5;
    --ws-indigo-700: #4338ca;

    --ws-emerald-50: #ecfdf5;
    --ws-emerald-500: #10b981;
    --ws-emerald-600: #059669;

    --ws-slate-50: #f8fafc;
    --ws-slate-100: #f1f5f9;
    --ws-slate-200: #e2e8f0;
    --ws-slate-300: #cbd5e1;
    --ws-slate-400: #94a3b8;
    --ws-slate-500: #64748b;
    --ws-slate-600: #475569;
    --ws-slate-700: #334155;
    --ws-slate-800: #1e293b;
    --ws-slate-900: #0f172a;

    /* Semantic */
    --ws-bg: #f8f9fb;
    --ws-bg-elevated: rgba(255, 255, 255, 0.72);
    --ws-surface: #ffffff;
    --ws-text: var(--ws-slate-800);
    --ws-text-muted: var(--ws-slate-500);
    --ws-border: rgba(148, 163, 184, 0.28);
    --ws-border-strong: rgba(148, 163, 184, 0.45);

    /* Radius */
    --ws-radius-sm: 10px;
    --ws-radius-md: 16px;
    --ws-radius-lg: 20px;
    --ws-radius-xl: 24px;
    --ws-radius-full: 999px;

    /* Shadows — premium card depth */
    --ws-shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.05);
    --ws-shadow-sm: 0 4px 6px -1px rgba(15, 23, 42, 0.07), 0 2px 4px -2px rgba(15, 23, 42, 0.05);
    --ws-shadow-md: 0 10px 15px -3px rgba(15, 23, 42, 0.1), 0 4px 6px -4px rgba(15, 23, 42, 0.06);
    --ws-shadow-lg: 0 20px 25px -5px rgba(15, 23, 42, 0.1), 0 8px 10px -6px rgba(15, 23, 42, 0.06);
    --ws-shadow-glow: 0 0 0 1px rgba(99, 102, 241, 0.08), 0 8px 32px rgba(99, 102, 241, 0.12);

    /* Glass */
    --ws-glass-bg: rgba(255, 255, 255, 0.65);
    --ws-glass-border: rgba(255, 255, 255, 0.5);
    --ws-glass-blur: blur(20px);

    /* Layout */
    --ws-topbar-height: 68px;
    --ws-boardbar-height: 56px;
    --ws-content-max: 1400px;
    --ws-spacing: 24px;

    /* Transitions */
    --ws-transition: 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Tile gradient presets */
.ws-gradient-blue    { --ws-icon-from: #3b82f6; --ws-icon-to: #1d4ed8; }
.ws-gradient-indigo  { --ws-icon-from: #6366f1; --ws-icon-to: #4338ca; }
.ws-gradient-emerald { --ws-icon-from: #10b981; --ws-icon-to: #047857; }
.ws-gradient-violet  { --ws-icon-from: #8b5cf6; --ws-icon-to: #6d28d9; }
.ws-gradient-cyan    { --ws-icon-from: #06b6d4; --ws-icon-to: #0891b2; }
.ws-gradient-teal    { --ws-icon-from: #14b8a6; --ws-icon-to: #0d9488; }
.ws-gradient-green   { --ws-icon-from: #22c55e; --ws-icon-to: #15803d; }
.ws-gradient-amber   { --ws-icon-from: #f59e0b; --ws-icon-to: #d97706; }
.ws-gradient-rose    { --ws-icon-from: #f43f5e; --ws-icon-to: #e11d48; }
.ws-gradient-red     { --ws-icon-from: #ef4444; --ws-icon-to: #b91c1c; }
.ws-gradient-slate   { --ws-icon-from: #64748b; --ws-icon-to: #334155; }
.ws-gradient-gray    { --ws-icon-from: #6b7280; --ws-icon-to: #374151; }
.ws-gradient-stone   { --ws-icon-from: #78716c; --ws-icon-to: #44403c; }
.ws-gradient-brown   { --ws-icon-from: #a16207; --ws-icon-to: #713f12; }
.ws-gradient-sky     { --ws-icon-from: #0ea5e9; --ws-icon-to: #0284c7; }
