mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-24 13:54:57 +00:00
168 lines
6.3 KiB
SCSS
168 lines
6.3 KiB
SCSS
// ============================================
|
|
// Theme Variables - Material Design 3 + Legacy Aliases
|
|
// ============================================
|
|
//
|
|
// This file provides legacy CSS variable aliases that map to M3 tokens.
|
|
// The actual M3 tokens are defined in scss/tokens.scss and scss/theme.scss.
|
|
// These aliases ensure backward compatibility with existing code.
|
|
|
|
:root {
|
|
// ============================================
|
|
// Legacy Color Aliases → M3 Tokens
|
|
// ============================================
|
|
|
|
// Primary colors
|
|
--color-primary: var(--mat-sys-primary);
|
|
--color-primary-dark: var(--mat-sys-primary);
|
|
--color-primary-light: var(--mat-sys-primary-container);
|
|
--color-primary-alpha: color-mix(in srgb, var(--mat-sys-primary) 20%, transparent);
|
|
--color-secondary: var(--mat-sys-secondary);
|
|
|
|
// Background colors → M3 surface hierarchy
|
|
--color-bg: var(--mat-sys-surface);
|
|
--color-bg-paper: var(--mat-sys-surface-container-low);
|
|
--color-bg-elevated: var(--mat-sys-surface-container);
|
|
--color-bg-hover: color-mix(in srgb, var(--mat-sys-on-surface) 8%, transparent);
|
|
|
|
// Text colors → M3 on-surface variants
|
|
--color-text: var(--mat-sys-on-surface);
|
|
--color-text-secondary: var(--mat-sys-on-surface-variant);
|
|
--color-text-disabled: color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent);
|
|
|
|
// Border/divider colors → M3 outline
|
|
--color-border: var(--mat-sys-outline);
|
|
--color-divider: var(--mat-sys-outline-variant);
|
|
|
|
// ============================================
|
|
// Extended Semantic Colors (not in M3 spec)
|
|
// ============================================
|
|
// M3 only defines error. We extend with success/warning/info.
|
|
// These follow M3 naming conventions: color, on-color, color-container, on-color-container
|
|
|
|
// Success (green)
|
|
--color-success: #4caf50;
|
|
--color-on-success: #ffffff;
|
|
--color-success-container: color-mix(in srgb, #4caf50 12%, var(--mat-sys-surface));
|
|
--color-on-success-container: #2e7d32;
|
|
|
|
// Warning (amber/orange)
|
|
--color-warning: #ff9800;
|
|
--color-on-warning: #000000;
|
|
--color-warning-container: color-mix(in srgb, #ff9800 12%, var(--mat-sys-surface));
|
|
--color-on-warning-container: #e65100;
|
|
|
|
// Info (blue)
|
|
--color-info: #2196f3;
|
|
--color-on-info: #ffffff;
|
|
--color-info-container: color-mix(in srgb, #2196f3 12%, var(--mat-sys-surface));
|
|
--color-on-info-container: #0d47a1;
|
|
|
|
// Search/Find highlight (yellow - universal standard)
|
|
--color-search-highlight: #ffeb3b;
|
|
--color-on-search-highlight: #000000;
|
|
--color-search-highlight-current: #fdd835;
|
|
--color-search-highlight-ring: #fbc02d;
|
|
|
|
// Error (from M3)
|
|
--color-error: var(--mat-sys-error);
|
|
--color-on-error: var(--mat-sys-on-error);
|
|
--color-error-container: var(--mat-sys-error-container);
|
|
--color-on-error-container: var(--mat-sys-on-error-container);
|
|
|
|
// Legacy background aliases
|
|
--color-success-bg: var(--color-success-container);
|
|
--color-warning-bg: var(--color-warning-container);
|
|
--color-error-bg: var(--color-error-container);
|
|
--color-info-bg: var(--color-info-container);
|
|
|
|
// ============================================
|
|
// Legacy Spacing Aliases (M3 uses 4px grid)
|
|
// ============================================
|
|
--spacing-xs: 4px;
|
|
--spacing-sm: 8px;
|
|
--spacing-md: 16px;
|
|
--spacing-lg: 24px;
|
|
--spacing-xl: 32px;
|
|
|
|
// ============================================
|
|
// Legacy Border Radius → M3 Corner Tokens
|
|
// ============================================
|
|
--radius-sm: var(--mat-sys-corner-small);
|
|
--radius-md: var(--mat-sys-corner-medium);
|
|
--radius-lg: var(--mat-sys-corner-large);
|
|
--radius-full: var(--mat-sys-corner-full);
|
|
|
|
// ============================================
|
|
// Legacy Shadows → M3 Elevation Levels
|
|
// ============================================
|
|
--shadow-sm: var(--mat-sys-level1);
|
|
--shadow-md: var(--mat-sys-level2);
|
|
--shadow-lg: var(--mat-sys-level3);
|
|
--shadow-xl: var(--mat-sys-level4);
|
|
|
|
// ============================================
|
|
// State Layer & Disabled Opacities (M3 spec)
|
|
// ============================================
|
|
--state-hover-opacity: 0.08;
|
|
--state-focus-opacity: 0.12;
|
|
--state-pressed-opacity: 0.12;
|
|
--state-dragged-opacity: 0.16;
|
|
--disabled-container-opacity: 0.12;
|
|
--disabled-content-opacity: 0.38;
|
|
|
|
// ============================================
|
|
// Legacy Typography → M3 Type Scale
|
|
// ============================================
|
|
--font-family: var(--mat-sys-body-large-font);
|
|
--font-mono: 'JetBrains Mono', 'Fira Code', 'SF Mono', Consolas, monospace;
|
|
|
|
--font-size-xs: var(--mat-sys-label-small-size);
|
|
--font-size-sm: var(--mat-sys-body-small-size);
|
|
--font-size-md: var(--mat-sys-body-medium-size);
|
|
--font-size-lg: var(--mat-sys-body-large-size);
|
|
--font-size-xl: var(--mat-sys-title-large-size);
|
|
--font-size-2xl: var(--mat-sys-headline-medium-size);
|
|
|
|
// ============================================
|
|
// Code Block Colors (extended theme)
|
|
// ============================================
|
|
--color-code-bg: var(--mat-sys-surface-container-highest);
|
|
--color-code-text: var(--mat-sys-on-surface);
|
|
--color-code-keyword: #569cd6;
|
|
--color-code-string: #ce9178;
|
|
--color-code-comment: #6a9955;
|
|
--color-code-function: #dcdcaa;
|
|
|
|
// ============================================
|
|
// Legacy Transitions → M3 Motion Tokens
|
|
// ============================================
|
|
--transition-fast: var(--mat-sys-motion-duration-short4) var(--mat-sys-motion-easing-standard);
|
|
--transition-normal: var(--mat-sys-motion-duration-medium2) var(--mat-sys-motion-easing-standard);
|
|
--transition-slow: var(--mat-sys-motion-duration-long2) var(--mat-sys-motion-easing-standard);
|
|
|
|
// ============================================
|
|
// Z-index Layers (M3-aligned stacking order)
|
|
// ============================================
|
|
// Local stacking (within components)
|
|
--z-local: 1;
|
|
--z-local-elevated: 10;
|
|
|
|
// Global stacking (overlays)
|
|
--z-dropdown: 1000;
|
|
--z-sticky: 1100;
|
|
--z-drawer: 1200;
|
|
--z-modal: 1300;
|
|
--z-snackbar: 1400;
|
|
--z-tooltip: 1500;
|
|
--z-overlay-max: 9999;
|
|
}
|
|
|
|
// ============================================
|
|
// Theme variant overrides are now handled by M3
|
|
// theme.scss generates --mat-sys-* tokens which
|
|
// automatically cascade to these legacy aliases.
|
|
//
|
|
// For custom themes, override --mat-sys-* tokens
|
|
// rather than these legacy variables.
|
|
// ============================================
|