@lucasmiqueias/blip-tokens
Version:
Design token system inspired by BLiP's design language
1,050 lines (850 loc) • 26.1 kB
CSS
/* BLiP Design System - Main Entry Point */
/* Import all tokens */
/* BLiP Design System - Core Tokens */
/* This file contains all the base design tokens */
:root {
/* Brand Colors */
--color-brand: rgba(0, 150, 250, 1);
/* Primary Colors - Light Theme */
--color-light-primary: rgba(30, 107, 241, 1);
--color-light-secondary: rgba(41, 41, 41, 1);
/* Primary Colors - Dark Theme */
--color-dark-primary: rgba(73, 139, 255, 1);
--color-dark-secondary: rgba(255, 255, 255, 1);
/* Surface Colors - Light Theme */
--color-light-surface-0: rgba(255, 255, 255, 1);
--color-light-surface-1: rgba(246, 246, 246, 1);
--color-light-surface-2: rgba(237, 237, 237, 1);
--color-light-surface-3: rgba(227, 227, 227, 1);
--color-light-surface-4: rgba(20, 20, 20, 1);
--color-light-surface-positive: rgba(1, 114, 62, 1);
--color-light-surface-negative: rgba(138, 0, 0, 1);
--color-light-surface-primary: rgba(30, 107, 241, 1);
/* Surface Colors - Dark Theme */
--color-dark-surface-0: rgba(66, 66, 66, 1);
--color-dark-surface-1: rgba(57, 57, 57, 1);
--color-dark-surface-2: rgba(31, 31, 31, 1);
--color-dark-surface-3: rgba(20, 20, 20, 1);
--color-dark-surface-4: rgba(10, 10, 10, 1);
--color-dark-surface-positive: rgba(1, 86, 47, 1);
--color-dark-surface-negative: rgba(87, 0, 0, 1);
--color-dark-surface-primary: rgba(12, 80, 197, 1);
/* Content Colors - Light Theme */
--color-light-content-default: rgba(40, 40, 40, 1);
--color-light-content-disable: rgba(89, 89, 89, 1);
--color-light-content-ghost: rgba(140, 140, 140, 1);
--color-light-content-bright: rgba(255, 255, 255, 1);
--color-light-content-din: rgba(0, 0, 0, 1);
/* Content Colors - Dark Theme */
--color-dark-content-default: rgba(255, 255, 255, 1);
--color-dark-content-disable: rgba(148, 148, 148, 1);
--color-dark-content-ghost: rgba(102, 102, 102, 1);
--color-dark-content-bright: rgba(255, 255, 255, 1);
--color-dark-content-din: rgba(0, 0, 0, 1);
/* Border Colors - Light Theme */
--color-light-border-1: rgba(0, 0, 0, 0.2);
--color-light-border-2: rgba(0, 0, 0, 0.16);
--color-light-border-3: rgba(0, 0, 0, 0.06);
/* Border Colors - Dark Theme */
--color-dark-border-1: rgba(255, 255, 255, 0.2);
--color-dark-border-2: rgba(255, 255, 255, 0.16);
--color-dark-border-3: rgba(255, 255, 255, 0.06);
/* Semantic Colors - Light Theme */
--color-light-positive: rgba(0, 122, 66, 1);
--color-light-negative: rgba(168, 11, 11, 1);
--color-light-info: rgba(128, 227, 235, 1);
--color-light-system: rgba(178, 223, 253, 1);
--color-light-focus: rgba(194, 38, 251, 1);
--color-light-success: rgba(132, 235, 188, 1);
--color-light-warning: rgba(253, 233, 155, 1);
--color-light-error: rgba(250, 190, 190, 1);
--color-light-delete: rgba(230, 15, 15, 1);
/* Semantic Colors - Dark Theme */
--color-dark-positive: rgba(107, 255, 188, 1);
--color-dark-negative: rgba(255, 184, 184, 1);
--color-dark-info: rgba(0, 79, 86, 1);
--color-dark-system: rgba(0, 60, 100, 1);
--color-dark-focus: rgba(194, 38, 251, 1);
--color-dark-success: rgba(53, 94, 75, 1);
--color-dark-warning: rgba(96, 89, 59, 1);
--color-dark-error: rgba(123, 61, 61, 1);
--color-dark-delete: rgba(182, 12, 12, 1);
/* Extended Colors - Light Theme */
--color-light-extended-blue: rgba(25, 104, 240, 1);
--color-light-extended-blue-bright: rgba(178, 223, 253, 1);
--color-light-extended-ocean: rgba(0, 211, 228, 1);
--color-light-extended-ocean-bright: rgba(128, 227, 235, 1);
--color-light-extended-green: rgba(53, 222, 144, 1);
--color-light-extended-green-bright: rgba(132, 235, 188, 1);
--color-light-extended-yellow: rgba(251, 207, 35, 1);
--color-light-extended-yellow-bright: rgba(253, 233, 155, 1);
--color-light-extended-orange: rgba(240, 99, 5, 1);
--color-light-extended-orange-bright: rgba(252, 170, 115, 1);
--color-light-extended-red: rgba(230, 15, 15, 1);
--color-light-extended-red-bright: rgba(249, 159, 159, 1);
--color-light-extended-pink: rgba(251, 75, 193, 1);
--color-light-extended-pink-bright: rgba(253, 155, 220, 1);
--color-light-extended-gray: rgba(102, 102, 102, 1);
--color-light-extended-gray-bright: rgba(199, 199, 199, 1);
/* Extended Colors - Dark Theme */
--color-dark-extended-blue: rgba(25, 104, 240, 1);
--color-dark-extended-blue-bright: rgba(178, 223, 253, 1);
--color-dark-extended-ocean: rgba(0, 211, 228, 1);
--color-dark-extended-ocean-bright: rgba(128, 227, 235, 1);
--color-dark-extended-green: rgba(53, 222, 144, 1);
--color-dark-extended-green-bright: rgba(132, 235, 188, 1);
--color-dark-extended-yellow: rgba(251, 207, 35, 1);
--color-dark-extended-yellow-bright: rgba(253, 233, 155, 1);
--color-dark-extended-orange: rgba(240, 99, 5, 1);
--color-dark-extended-orange-bright: rgba(252, 170, 115, 1);
--color-dark-extended-red: rgba(230, 15, 15, 1);
--color-dark-extended-red-bright: rgba(249, 159, 159, 1);
--color-dark-extended-pink: rgba(251, 75, 193, 1);
--color-dark-extended-pink-bright: rgba(253, 155, 220, 1);
--color-dark-extended-gray: rgba(102, 102, 102, 1);
--color-dark-extended-gray-bright: rgba(199, 199, 199, 1);
/* Action Colors - Light Theme */
--color-light-hover: rgba(0, 0, 0, 0.08);
--color-light-pressed: rgba(0, 0, 0, 0.16);
/* Action Colors - Dark Theme */
--color-dark-hover: rgba(255, 255, 255, 0.16);
--color-dark-pressed: rgba(255, 255, 255, 0.08);
/* Size Tokens */
--size-0: 0px;
--size-0-5: 4px;
--size-1: 8px;
--size-2: 16px;
--size-3: 24px;
--size-4: 32px;
--size-5: 40px;
--size-6: 48px;
--size-7: 56px;
--size-8: 64px;
--size-9: 72px;
--size-10: 80px;
--size-11: 88px;
--size-12: 96px;
/* Border Radius Tokens */
--radius-none: 0px;
--radius-sm: 2px;
--radius-base: 4px;
--radius-md: 6px;
--radius-lg: 8px;
--radius-xl: 12px;
--radius-2xl: 16px;
--radius-3xl: 24px;
--radius-full: 9999px;
/* Spacing Tokens */
--spacing-0: var(--size-0);
--spacing-px: 1px;
--spacing-0-5: var(--size-0-5);
--spacing-1: var(--size-1);
--spacing-1-5: 6px;
--spacing-2: var(--size-2);
--spacing-2-5: 10px;
--spacing-3: var(--size-3);
--spacing-3-5: 14px;
--spacing-4: var(--size-4);
--spacing-5: var(--size-5);
--spacing-6: var(--size-6);
--spacing-7: var(--size-7);
--spacing-8: var(--size-8);
--spacing-9: var(--size-9);
--spacing-10: var(--size-10);
--spacing-11: var(--size-11);
--spacing-12: var(--size-12);
/* Font Size Tokens */
--font-size-xs: 12px;
--font-size-sm: 14px;
--font-size-base: 16px;
--font-size-lg: 18px;
--font-size-xl: 20px;
--font-size-2xl: 24px;
--font-size-3xl: 30px;
--font-size-4xl: 36px;
--font-size-5xl: 48px;
--font-size-6xl: 60px;
--font-size-7xl: 72px;
--font-size-8xl: 96px;
--font-size-9xl: 128px;
/* Font Family Tokens */
--font-family-sans: "Nunito Sans", -apple-system, BlinkMacSystemFont,
"Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans",
"Droid Sans", "Helvetica Neue", sans-serif;
--font-family-serif: "Georgia", "Cambria", "Times New Roman", "Times", serif;
--font-family-mono: "Menlo", "Monaco", "Consolas", "Liberation Mono",
"Courier New", monospace;
/* Font Weight Tokens */
--font-weight-thin: 100;
--font-weight-extralight: 200;
--font-weight-light: 300;
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--font-weight-extrabold: 800;
--font-weight-black: 900;
/* Shadow Tokens */
--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
0 2px 4px -1px rgba(0, 0, 0, 0.06);
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
0 4px 6px -2px rgba(0, 0, 0, 0.05);
--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1),
0 10px 10px -5px rgba(0, 0, 0, 0.04);
--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);
--shadow-none: none;
/* Icon Size Tokens */
--icon-xs: 12px;
--icon-sm: 16px;
--icon-md: 20px;
--icon-lg: 24px;
--icon-xl: 32px;
--icon-2xl: 40px;
/* Z-Index Tokens */
--z-index-auto: auto;
--z-index-0: 0;
--z-index-10: 10;
--z-index-20: 20;
--z-index-30: 30;
--z-index-40: 40;
--z-index-50: 50;
--z-index-dropdown: 1000;
--z-index-sticky: 1020;
--z-index-fixed: 1030;
--z-index-modal-backdrop: 1040;
--z-index-modal: 1050;
--z-index-popover: 1060;
--z-index-tooltip: 1070;
--z-index-toast: 1080;
}
/* Import theme configurations */
/* Light Theme - Default Theme */
:root,
:root[data-theme="light"],
.theme-light {
/* Primary Theme Tokens */
--color-primary: var(--color-light-primary);
--color-secondary: var(--color-light-secondary);
/* Surface Tokens */
--surface-0: var(--color-light-surface-0);
--surface-1: var(--color-light-surface-1);
--surface-2: var(--color-light-surface-2);
--surface-3: var(--color-light-surface-3);
--surface-4: var(--color-light-surface-4);
--surface-positive: var(--color-light-surface-positive);
--surface-negative: var(--color-light-surface-negative);
--surface-primary: var(--color-light-surface-primary);
/* Content Tokens */
--content-default: var(--color-light-content-default);
--content-disable: var(--color-light-content-disable);
--content-ghost: var(--color-light-content-ghost);
--content-bright: var(--color-light-content-bright);
--content-din: var(--color-light-content-din);
--content-muted: var(--color-light-content-ghost);
/* Border Tokens */
--border-1: var(--color-light-border-1);
--border-2: var(--color-light-border-2);
--border-3: var(--color-light-border-3);
/* Semantic Status Tokens */
--color-positive: var(--color-light-positive);
--color-negative: var(--color-light-negative);
--color-info: var(--color-light-info);
--color-system: var(--color-light-system);
--color-focus: var(--color-light-focus);
--color-success: var(--color-light-success);
--color-warning: var(--color-light-warning);
--color-error: var(--color-light-error);
--color-delete: var(--color-light-delete);
/* Extended Color Tokens */
--color-blue: var(--color-light-extended-blue);
--color-blue-bright: var(--color-light-extended-blue-bright);
--color-ocean: var(--color-light-extended-ocean);
--color-ocean-bright: var(--color-light-extended-ocean-bright);
--color-green: var(--color-light-extended-green);
--color-green-bright: var(--color-light-extended-green-bright);
--color-yellow: var(--color-light-extended-yellow);
--color-yellow-bright: var(--color-light-extended-yellow-bright);
--color-orange: var(--color-light-extended-orange);
--color-orange-bright: var(--color-light-extended-orange-bright);
--color-red: var(--color-light-extended-red);
--color-red-bright: var(--color-light-extended-red-bright);
--color-pink: var(--color-light-extended-pink);
--color-pink-bright: var(--color-light-extended-pink-bright);
--color-gray: var(--color-light-extended-gray);
--color-gray-bright: var(--color-light-extended-gray-bright);
/* Action Tokens */
--action-hover: var(--color-light-hover);
--action-pressed: var(--color-light-pressed);
}
/* Dark Theme */
:root[data-theme="dark"],
.theme-dark {
/* Primary Theme Tokens */
--color-primary: var(--color-dark-primary);
--color-secondary: var(--color-dark-secondary);
/* Surface Tokens */
--surface-0: var(--color-dark-surface-0);
--surface-1: var(--color-dark-surface-1);
--surface-2: var(--color-dark-surface-2);
--surface-3: var(--color-dark-surface-3);
--surface-4: var(--color-dark-surface-4);
--surface-positive: var(--color-dark-surface-positive);
--surface-negative: var(--color-dark-surface-negative);
--surface-primary: var(--color-dark-surface-primary);
/* Content Tokens */
--content-default: var(--color-dark-content-default);
--content-disable: var(--color-dark-content-disable);
--content-ghost: var(--color-dark-content-ghost);
--content-bright: var(--color-dark-content-bright);
--content-din: var(--color-dark-content-din);
--content-muted: var(--color-dark-content-ghost);
/* Border Tokens */
--border-1: var(--color-dark-border-1);
--border-2: var(--color-dark-border-2);
--border-3: var(--color-dark-border-3);
/* Semantic Status Tokens */
--color-positive: var(--color-dark-positive);
--color-negative: var(--color-dark-negative);
--color-info: var(--color-dark-info);
--color-system: var(--color-dark-system);
--color-focus: var(--color-dark-focus);
--color-success: var(--color-dark-success);
--color-warning: var(--color-dark-warning);
--color-error: var(--color-dark-error);
--color-delete: var(--color-dark-delete);
/* Extended Color Tokens */
--color-blue: var(--color-dark-extended-blue);
--color-blue-bright: var(--color-dark-extended-blue-bright);
--color-ocean: var(--color-dark-extended-ocean);
--color-ocean-bright: var(--color-dark-extended-ocean-bright);
--color-green: var(--color-dark-extended-green);
--color-green-bright: var(--color-dark-extended-green-bright);
--color-yellow: var(--color-dark-extended-yellow);
--color-yellow-bright: var(--color-dark-extended-yellow-bright);
--color-orange: var(--color-dark-extended-orange);
--color-orange-bright: var(--color-dark-extended-orange-bright);
--color-red: var(--color-dark-extended-red);
--color-red-bright: var(--color-dark-extended-red-bright);
--color-pink: var(--color-dark-extended-pink);
--color-pink-bright: var(--color-dark-extended-pink-bright);
--color-gray: var(--color-dark-extended-gray);
--color-gray-bright: var(--color-dark-extended-gray-bright);
/* Action Tokens */
--action-hover: var(--color-dark-hover);
--action-pressed: var(--color-dark-pressed);
}
/* Auto Theme Support - System Preference */
/* Auto theme support - use system preference when data-theme="auto" */
@media (prefers-color-scheme: dark) {
:root[data-theme="auto"] {
/* Apply dark theme tokens when system prefers dark mode */
--color-primary: var(--color-dark-primary);
--color-secondary: var(--color-dark-secondary);
/* Surface Tokens */
--surface-0: var(--color-dark-surface-0);
--surface-1: var(--color-dark-surface-1);
--surface-2: var(--color-dark-surface-2);
--surface-3: var(--color-dark-surface-3);
--surface-4: var(--color-dark-surface-4);
--surface-positive: var(--color-dark-surface-positive);
--surface-negative: var(--color-dark-surface-negative);
--surface-primary: var(--color-dark-surface-primary);
/* Content Tokens */
--content-default: var(--color-dark-content-default);
--content-disable: var(--color-dark-content-disable);
--content-ghost: var(--color-dark-content-ghost);
--content-bright: var(--color-dark-content-bright);
--content-din: var(--color-dark-content-din);
--content-muted: var(--color-dark-content-ghost);
/* Border Tokens */
--border-1: var(--color-dark-border-1);
--border-2: var(--color-dark-border-2);
--border-3: var(--color-dark-border-3);
/* Semantic Status Tokens */
--color-positive: var(--color-dark-positive);
--color-negative: var(--color-dark-negative);
--color-info: var(--color-dark-info);
--color-system: var(--color-dark-system);
--color-focus: var(--color-dark-focus);
--color-success: var(--color-dark-success);
--color-warning: var(--color-dark-warning);
--color-error: var(--color-dark-error);
--color-delete: var(--color-dark-delete);
/* Extended Color Tokens */
--color-blue: var(--color-dark-extended-blue);
--color-blue-bright: var(--color-dark-extended-blue-bright);
--color-ocean: var(--color-dark-extended-ocean);
--color-ocean-bright: var(--color-dark-extended-ocean-bright);
--color-green: var(--color-dark-extended-green);
--color-green-bright: var(--color-dark-extended-green-bright);
--color-yellow: var(--color-dark-extended-yellow);
--color-yellow-bright: var(--color-dark-extended-yellow-bright);
--color-orange: var(--color-dark-extended-orange);
--color-orange-bright: var(--color-dark-extended-orange-bright);
--color-red: var(--color-dark-extended-red);
--color-red-bright: var(--color-dark-extended-red-bright);
--color-pink: var(--color-dark-extended-pink);
--color-pink-bright: var(--color-dark-extended-pink-bright);
--color-gray: var(--color-dark-extended-gray);
--color-gray-bright: var(--color-dark-extended-gray-bright);
/* Action Tokens */
--action-hover: var(--color-dark-hover);
--action-pressed: var(--color-dark-pressed);
}
}
@media (prefers-color-scheme: light) {
:root[data-theme="auto"] {
/* Apply light theme tokens when system prefers light mode */
--color-primary: var(--color-light-primary);
--color-secondary: var(--color-light-secondary);
/* Surface Tokens */
--surface-0: var(--color-light-surface-0);
--surface-1: var(--color-light-surface-1);
--surface-2: var(--color-light-surface-2);
--surface-3: var(--color-light-surface-3);
--surface-4: var(--color-light-surface-4);
--surface-positive: var(--color-light-surface-positive);
--surface-negative: var(--color-light-surface-negative);
--surface-primary: var(--color-light-surface-primary);
/* Content Tokens */
--content-default: var(--color-light-content-default);
--content-disable: var(--color-light-content-disable);
--content-ghost: var(--color-light-content-ghost);
--content-bright: var(--color-light-content-bright);
--content-din: var(--color-light-content-din);
--content-muted: var(--color-light-content-ghost);
/* Border Tokens */
--border-1: var(--color-light-border-1);
--border-2: var(--color-light-border-2);
--border-3: var(--color-light-border-3);
/* Semantic Status Tokens */
--color-positive: var(--color-light-positive);
--color-negative: var(--color-light-negative);
--color-info: var(--color-light-info);
--color-system: var(--color-light-system);
--color-focus: var(--color-light-focus);
--color-success: var(--color-light-success);
--color-warning: var(--color-light-warning);
--color-error: var(--color-light-error);
--color-delete: var(--color-light-delete);
/* Extended Color Tokens */
--color-blue: var(--color-light-extended-blue);
--color-blue-bright: var(--color-light-extended-blue-bright);
--color-ocean: var(--color-light-extended-ocean);
--color-ocean-bright: var(--color-light-extended-ocean-bright);
--color-green: var(--color-light-extended-green);
--color-green-bright: var(--color-light-extended-green-bright);
--color-yellow: var(--color-light-extended-yellow);
--color-yellow-bright: var(--color-light-extended-yellow-bright);
--color-orange: var(--color-light-extended-orange);
--color-orange-bright: var(--color-light-extended-orange-bright);
--color-red: var(--color-light-extended-red);
--color-red-bright: var(--color-light-extended-red-bright);
--color-pink: var(--color-light-extended-pink);
--color-pink-bright: var(--color-light-extended-pink-bright);
--color-gray: var(--color-light-extended-gray);
--color-gray-bright: var(--color-light-extended-gray-bright);
/* Action Tokens */
--action-hover: var(--color-light-hover);
--action-pressed: var(--color-light-pressed);
}
}
/* Import utility classes */
/* BLiP Design System - Utility Classes */
/* Background Utilities */
.bg-surface-0 {
background-color: var(--surface-0);
}
.bg-surface-1 {
background-color: var(--surface-1);
}
.bg-surface-2 {
background-color: var(--surface-2);
}
.bg-surface-3 {
background-color: var(--surface-3);
}
.bg-surface-4 {
background-color: var(--surface-4);
}
.bg-primary {
background-color: var(--color-primary);
}
.bg-secondary {
background-color: var(--color-secondary);
}
.bg-brand {
background-color: var(--color-brand);
}
/* Status Background Colors */
.bg-success {
background-color: var(--color-success);
}
.bg-warning {
background-color: var(--color-warning);
}
.bg-error {
background-color: var(--color-error);
}
.bg-info {
background-color: var(--color-info);
}
.bg-positive {
background-color: var(--color-positive);
}
.bg-negative {
background-color: var(--color-negative);
}
/* Text Color Utilities */
.text-content-default {
color: var(--content-default);
}
.text-content-ghost {
color: var(--content-ghost);
}
.text-content-bright {
color: var(--content-bright);
}
.text-content-disable {
color: var(--content-disable);
}
.text-content-muted {
color: var(--content-muted);
}
.text-primary {
color: var(--color-primary);
}
.text-secondary {
color: var(--color-secondary);
}
.text-brand {
color: var(--color-brand);
}
/* Status Text Colors */
.text-success {
color: var(--color-success);
}
.text-warning {
color: var(--color-warning);
}
.text-error {
color: var(--color-error);
}
.text-info {
color: var(--color-info);
}
.text-positive {
color: var(--color-positive);
}
.text-negative {
color: var(--color-negative);
}
/* Border Utilities */
.border-0 {
border: none;
}
.border-1 {
border: 1px solid var(--border-1);
}
.border-2 {
border: 1px solid var(--border-2);
}
.border-3 {
border: 1px solid var(--border-3);
}
.border-primary {
border-color: var(--color-primary);
}
.border-success {
border-color: var(--color-success);
}
.border-warning {
border-color: var(--color-warning);
}
.border-error {
border-color: var(--color-error);
}
/* Spacing Utilities */
.p-0 {
padding: var(--spacing-0);
}
.p-1 {
padding: var(--spacing-1);
}
.p-2 {
padding: var(--spacing-2);
}
.p-3 {
padding: var(--spacing-3);
}
.p-4 {
padding: var(--spacing-4);
}
.p-5 {
padding: var(--spacing-5);
}
.p-6 {
padding: var(--spacing-6);
}
.p-8 {
padding: var(--spacing-8);
}
.p-10 {
padding: var(--spacing-10);
}
.p-12 {
padding: var(--spacing-12);
}
.m-0 {
margin: var(--spacing-0);
}
.m-1 {
margin: var(--spacing-1);
}
.m-2 {
margin: var(--spacing-2);
}
.m-3 {
margin: var(--spacing-3);
}
.m-4 {
margin: var(--spacing-4);
}
.m-5 {
margin: var(--spacing-5);
}
.m-6 {
margin: var(--spacing-6);
}
.m-8 {
margin: var(--spacing-8);
}
.m-10 {
margin: var(--spacing-10);
}
.m-12 {
margin: var(--spacing-12);
}
/* Border Radius Utilities */
.rounded-none {
border-radius: var(--radius-none);
}
.rounded-sm {
border-radius: var(--radius-sm);
}
.rounded {
border-radius: var(--radius-base);
}
.rounded-md {
border-radius: var(--radius-md);
}
.rounded-lg {
border-radius: var(--radius-lg);
}
.rounded-xl {
border-radius: var(--radius-xl);
}
.rounded-2xl {
border-radius: var(--radius-2xl);
}
.rounded-3xl {
border-radius: var(--radius-3xl);
}
.rounded-full {
border-radius: var(--radius-full);
}
/* Typography Utilities */
.text-xs {
font-size: var(--font-size-xs);
}
.text-sm {
font-size: var(--font-size-sm);
}
.text-base {
font-size: var(--font-size-base);
}
.text-lg {
font-size: var(--font-size-lg);
}
.text-xl {
font-size: var(--font-size-xl);
}
.text-2xl {
font-size: var(--font-size-2xl);
}
.text-3xl {
font-size: var(--font-size-3xl);
}
.text-4xl {
font-size: var(--font-size-4xl);
}
.text-5xl {
font-size: var(--font-size-5xl);
}
.font-thin {
font-weight: var(--font-weight-thin);
}
.font-light {
font-weight: var(--font-weight-light);
}
.font-normal {
font-weight: var(--font-weight-normal);
}
.font-medium {
font-weight: var(--font-weight-medium);
}
.font-semibold {
font-weight: var(--font-weight-semibold);
}
.font-bold {
font-weight: var(--font-weight-bold);
}
.font-extrabold {
font-weight: var(--font-weight-extrabold);
}
.font-sans {
font-family: var(--font-family-sans);
}
.font-serif {
font-family: var(--font-family-serif);
}
.font-mono {
font-family: var(--font-family-mono);
}
/* Shadow Utilities */
.shadow-sm {
box-shadow: var(--shadow-sm);
}
.shadow-md {
box-shadow: var(--shadow-md);
}
.shadow-lg {
box-shadow: var(--shadow-lg);
}
.shadow-xl {
box-shadow: var(--shadow-xl);
}
.shadow-2xl {
box-shadow: var(--shadow-2xl);
}
.shadow-inner {
box-shadow: var(--shadow-inner);
}
.shadow-none {
box-shadow: var(--shadow-none);
}
/* Interactive Utilities */
.interactive {
transition: all 0.2s ease;
cursor: pointer;
}
.interactive:hover {
background-color: var(--action-hover);
}
.interactive:active {
background-color: var(--action-pressed);
}
/* Size Utilities */
.w-0 {
width: var(--size-0);
}
.w-1 {
width: var(--size-1);
}
.w-2 {
width: var(--size-2);
}
.w-3 {
width: var(--size-3);
}
.w-4 {
width: var(--size-4);
}
.w-5 {
width: var(--size-5);
}
.w-6 {
width: var(--size-6);
}
.w-8 {
width: var(--size-8);
}
.w-10 {
width: var(--size-10);
}
.w-12 {
width: var(--size-12);
}
.h-0 {
height: var(--size-0);
}
.h-1 {
height: var(--size-1);
}
.h-2 {
height: var(--size-2);
}
.h-3 {
height: var(--size-3);
}
.h-4 {
height: var(--size-4);
}
.h-5 {
height: var(--size-5);
}
.h-6 {
height: var(--size-6);
}
.h-8 {
height: var(--size-8);
}
.h-10 {
height: var(--size-10);
}
.h-12 {
height: var(--size-12);
}
/* Icon Utilities */
.icon-xs {
width: var(--icon-xs);
height: var(--icon-xs);
}
.icon-sm {
width: var(--icon-sm);
height: var(--icon-sm);
}
.icon-md {
width: var(--icon-md);
height: var(--icon-md);
}
.icon-lg {
width: var(--icon-lg);
height: var(--icon-lg);
}
.icon-xl {
width: var(--icon-xl);
height: var(--icon-xl);
}
.icon-2xl {
width: var(--icon-2xl);
height: var(--icon-2xl);
}
/* Global defaults */
html {
background-color: var(--surface-1);
color: var(--content-default);
}
body {
font-family: var(--font-family-sans);
color: var(--content-default);
margin: 0;
padding: 0;
min-height: 100vh;
}
/* Apply font to all elements by default */
* {
font-family: inherit;
}