296 lines
8.2 KiB
CSS
296 lines
8.2 KiB
CSS
|
|
/*
|
||
|
|
1. DESIGN TOKENS (CSS VARIABLES)
|
||
|
|
*/
|
||
|
|
:root {
|
||
|
|
/*
|
||
|
|
* PALETTE: THE "VOID" (NEUTRALS)
|
||
|
|
* Deep, desaturated charcoals for a premium, OLED-friendly look.
|
||
|
|
*/
|
||
|
|
--color-void-0: #050508;
|
||
|
|
/* Absolute Void (App Background) */
|
||
|
|
--color-void-50: #0A0B10;
|
||
|
|
/* Card Background */
|
||
|
|
--color-void-100: #14151A;
|
||
|
|
/* Elevated Surface */
|
||
|
|
--color-void-200: #1F2128;
|
||
|
|
/* Border / Divider */
|
||
|
|
--color-void-300: #2D303A;
|
||
|
|
/* Input Background */
|
||
|
|
--color-void-400: #3E424E;
|
||
|
|
/* Hover State */
|
||
|
|
--color-void-500: #525666;
|
||
|
|
/* Muted Text */
|
||
|
|
--color-void-600: #6E7280;
|
||
|
|
/* Secondary Text */
|
||
|
|
--color-void-700: #9496A1;
|
||
|
|
/* Primary Text (Dim) */
|
||
|
|
--color-void-800: #C2C4CC;
|
||
|
|
/* Primary Text */
|
||
|
|
--color-void-900: #EEEEF2;
|
||
|
|
/* Heading / Brightest */
|
||
|
|
--color-void-950: #FFFFFF;
|
||
|
|
/* Pure White */
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: NEON CYAN (PRIMARY ACTION)
|
||
|
|
* Represents: Tech, Flow, Future, Data.
|
||
|
|
*/
|
||
|
|
--color-cyan-50: #E0FDFF;
|
||
|
|
--color-cyan-100: #BEFAFF;
|
||
|
|
--color-cyan-200: #87F4FF;
|
||
|
|
--color-cyan-300: #46EBFF;
|
||
|
|
--color-cyan-400: #00DBF5;
|
||
|
|
--color-cyan-500: #00B8D4;
|
||
|
|
/* Veza Brand Core */
|
||
|
|
--color-cyan-600: #0891B2;
|
||
|
|
--color-cyan-700: #0E7490;
|
||
|
|
--color-cyan-800: #155E75;
|
||
|
|
--color-cyan-900: #164E63;
|
||
|
|
--color-cyan-glow: rgba(0, 219, 245, 0.5);
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: HOT MAGENTA (SECONDARY / STREET)
|
||
|
|
* Represents: Graffiti, Passion, Alert, "The Edge".
|
||
|
|
*/
|
||
|
|
--color-magenta-50: #FDF2F8;
|
||
|
|
--color-magenta-100: #FCE7F3;
|
||
|
|
--color-magenta-200: #FBCFE8;
|
||
|
|
--color-magenta-300: #F9A8D4;
|
||
|
|
--color-magenta-400: #F472B6;
|
||
|
|
--color-magenta-500: #EC4899;
|
||
|
|
--color-magenta-600: #DB2777;
|
||
|
|
/* Street Core */
|
||
|
|
--color-magenta-700: #BE185D;
|
||
|
|
--color-magenta-800: #9D174D;
|
||
|
|
--color-magenta-900: #831843;
|
||
|
|
--color-magenta-glow: rgba(236, 72, 153, 0.5);
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: ACID LIME (ACCENT / HACKER)
|
||
|
|
* Represents: Success, Terminal, Code, Bio-hazard.
|
||
|
|
*/
|
||
|
|
--color-lime-400: #A3E635;
|
||
|
|
--color-lime-500: #84CC16;
|
||
|
|
/* Hacker Core */
|
||
|
|
--color-lime-600: #65A30D;
|
||
|
|
--color-lime-glow: rgba(132, 204, 22, 0.5);
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: VIOLET (CREATIVE / PREMIUM)
|
||
|
|
*/
|
||
|
|
--color-violet-500: #8B5CF6;
|
||
|
|
--color-violet-600: #7C3AED;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: SEMANTIC
|
||
|
|
*/
|
||
|
|
--color-success: #10B981;
|
||
|
|
--color-warning: #F59E0B;
|
||
|
|
--color-error: #EF4444;
|
||
|
|
--color-info: #3B82F6;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: NATURE / ORGANIC (TALAS EXPANSION)
|
||
|
|
*/
|
||
|
|
--color-moss: #2d5a3d;
|
||
|
|
--color-moss-light: #4a8c5f;
|
||
|
|
--color-bark: #3d2914;
|
||
|
|
--color-earth: #5c4033;
|
||
|
|
--color-leaf: #7cb342;
|
||
|
|
--color-bloom: #e91e63;
|
||
|
|
--color-petal: #f8bbd9;
|
||
|
|
--color-sky: #64b5f6;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: MANGA / EMOTION (TALAS EXPANSION)
|
||
|
|
*/
|
||
|
|
--color-sakura: #ffb7c5;
|
||
|
|
--color-yurei: #9575cd;
|
||
|
|
--color-shonen: #ff5722;
|
||
|
|
--color-seinen: #455a64;
|
||
|
|
--color-mecha: #78909c;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* PALETTE: GAMING / RPG (TALAS EXPANSION)
|
||
|
|
*/
|
||
|
|
--color-xp-gold: #ffd700;
|
||
|
|
--color-hp-red: #ff3333;
|
||
|
|
--color-mp-blue: #3399ff;
|
||
|
|
--color-shield: #9c27b0;
|
||
|
|
--color-crit: #ff0000;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* GRADIENTS
|
||
|
|
*/
|
||
|
|
--grad-cyber: linear-gradient(135deg, var(--color-cyan-400), var(--color-violet-500));
|
||
|
|
--grad-heat: linear-gradient(135deg, var(--color-magenta-500), var(--color-warning));
|
||
|
|
--grad-bio: linear-gradient(135deg, var(--color-lime-400), var(--color-cyan-400));
|
||
|
|
--grad-dark-plate: linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0) 100%);
|
||
|
|
|
||
|
|
/* TALAS GRADIENTS */
|
||
|
|
--grad-sunset: linear-gradient(135deg, var(--color-orange), var(--color-magenta-500));
|
||
|
|
--grad-forest: linear-gradient(135deg, var(--color-moss), var(--color-leaf) 50%, var(--color-lime-500) 100%);
|
||
|
|
--grad-manga: linear-gradient(135deg, var(--color-sakura) 0%, var(--color-yurei) 100%);
|
||
|
|
--grad-gaming: linear-gradient(135deg, var(--color-shonen) 0%, var(--color-xp-gold) 100%);
|
||
|
|
--grad-nature: linear-gradient(180deg, var(--color-void-200) 0%, var(--color-moss) 50%, var(--color-bark) 100%);
|
||
|
|
|
||
|
|
/*
|
||
|
|
* TYPOGRAPHY
|
||
|
|
*/
|
||
|
|
--font-display: 'Bebas Neue', sans-serif;
|
||
|
|
--font-head: 'Space Grotesk', system-ui, -apple-system, sans-serif;
|
||
|
|
--font-body: 'Inter', system-ui, -apple-system, sans-serif;
|
||
|
|
--font-mono: 'JetBrains Mono', monospace;
|
||
|
|
--font-editorial: 'Instrument Serif', serif;
|
||
|
|
|
||
|
|
--text-xs: 0.75rem;
|
||
|
|
/* 12px */
|
||
|
|
--text-sm: 0.875rem;
|
||
|
|
/* 14px */
|
||
|
|
--text-base: 1rem;
|
||
|
|
/* 16px */
|
||
|
|
--text-lg: 1.125rem;
|
||
|
|
/* 18px */
|
||
|
|
--text-xl: 1.25rem;
|
||
|
|
/* 20px */
|
||
|
|
--text-2xl: 1.5rem;
|
||
|
|
/* 24px */
|
||
|
|
--text-3xl: 1.875rem;
|
||
|
|
/* 30px */
|
||
|
|
--text-4xl: 2.25rem;
|
||
|
|
/* 36px */
|
||
|
|
--text-5xl: 3rem;
|
||
|
|
/* 48px */
|
||
|
|
--text-6xl: 3.75rem;
|
||
|
|
/* 60px */
|
||
|
|
|
||
|
|
--leading-tight: 1.1;
|
||
|
|
--leading-snug: 1.3;
|
||
|
|
--leading-base: 1.5;
|
||
|
|
--leading-loose: 1.7;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* SPACING (4px Base)
|
||
|
|
*/
|
||
|
|
--space-1: 0.25rem;
|
||
|
|
/* 4px */
|
||
|
|
--space-2: 0.5rem;
|
||
|
|
/* 8px */
|
||
|
|
--space-3: 0.75rem;
|
||
|
|
/* 12px */
|
||
|
|
--space-4: 1rem;
|
||
|
|
/* 16px */
|
||
|
|
--space-5: 1.25rem;
|
||
|
|
/* 20px */
|
||
|
|
--space-6: 1.5rem;
|
||
|
|
/* 24px */
|
||
|
|
--space-8: 2rem;
|
||
|
|
/* 32px */
|
||
|
|
--space-10: 2.5rem;
|
||
|
|
/* 40px */
|
||
|
|
--space-12: 3rem;
|
||
|
|
/* 48px */
|
||
|
|
--space-16: 4rem;
|
||
|
|
/* 64px */
|
||
|
|
--space-20: 5rem;
|
||
|
|
/* 80px */
|
||
|
|
--space-24: 6rem;
|
||
|
|
/* 96px */
|
||
|
|
|
||
|
|
/*
|
||
|
|
* SHAPES & BORDERS
|
||
|
|
*/
|
||
|
|
--radius-xs: 2px;
|
||
|
|
--radius-sm: 4px;
|
||
|
|
--radius-md: 8px;
|
||
|
|
--radius-lg: 12px;
|
||
|
|
--radius-xl: 16px;
|
||
|
|
--radius-2xl: 24px;
|
||
|
|
--radius-full: 9999px;
|
||
|
|
--border-width: 1px;
|
||
|
|
|
||
|
|
/* "Manga Cut" Clip Paths */
|
||
|
|
--clip-button-r: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
|
||
|
|
--clip-button-l: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
|
||
|
|
--clip-tag: polygon(0 0, 100% 0, 90% 100%, 10% 100%);
|
||
|
|
--clip-hex: polygon(5% 0, 95% 0, 100% 50%, 95% 100%, 5% 100%, 0 50%);
|
||
|
|
|
||
|
|
/* Talas Clip Paths */
|
||
|
|
--clip-manga: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px));
|
||
|
|
--clip-manga-lg: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 20px 100%, 0 calc(100% - 20px));
|
||
|
|
--clip-badge: polygon(0 10%, 10% 0, 90% 0, 100% 10%, 100% 90%, 90% 100%, 10% 100%, 0 90%);
|
||
|
|
|
||
|
|
/*
|
||
|
|
* EFFECTS (Updated with v3 Glows)
|
||
|
|
*/
|
||
|
|
--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
|
||
|
|
--shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
|
||
|
|
--shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.5);
|
||
|
|
--shadow-neon-cyan: 0 0 20px rgba(0, 219, 245, 0.3);
|
||
|
|
--shadow-neon-magenta: 0 0 20px rgba(236, 72, 153, 0.3);
|
||
|
|
|
||
|
|
/* v3 Glows */
|
||
|
|
--glow-cyan: 0 0 20px rgba(102, 252, 241, 0.4), 0 0 40px rgba(102, 252, 241, 0.2);
|
||
|
|
--glow-magenta: 0 0 20px rgba(255, 0, 128, 0.4), 0 0 40px rgba(255, 0, 128, 0.2);
|
||
|
|
--glow-green: 0 0 20px rgba(0, 255, 136, 0.4);
|
||
|
|
--glow-gold: 0 0 20px rgba(255, 215, 0, 0.4);
|
||
|
|
|
||
|
|
--glass-bg: rgba(20, 21, 26, 0.7);
|
||
|
|
--glass-border: rgba(255, 255, 255, 0.05);
|
||
|
|
--glass-blur: 12px;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* ANIMATION
|
||
|
|
*/
|
||
|
|
--ease-out: cubic-bezier(0, 0, 0.2, 1);
|
||
|
|
--ease-in: cubic-bezier(0.4, 0, 1, 1);
|
||
|
|
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
|
||
|
|
--ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
||
|
|
--duration-fast: 150ms;
|
||
|
|
--duration-base: 300ms;
|
||
|
|
--duration-slow: 500ms;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* Z-INDEX LAYERS
|
||
|
|
*/
|
||
|
|
--z-negative: -1;
|
||
|
|
--z-base: 0;
|
||
|
|
--z-elevated: 10;
|
||
|
|
--z-sticky: 100;
|
||
|
|
--z-overlay: 1000;
|
||
|
|
--z-modal: 2000;
|
||
|
|
--z-toast: 3000;
|
||
|
|
--z-cursor: 9999;
|
||
|
|
|
||
|
|
/*
|
||
|
|
* BREAKPOINTS (Reference)
|
||
|
|
*/
|
||
|
|
--bp-sm: 640px;
|
||
|
|
--bp-md: 768px;
|
||
|
|
--bp-lg: 1024px;
|
||
|
|
--bp-xl: 1280px;
|
||
|
|
--bp-2xl: 1536px;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* LIGHT MODE OVERRIDES */
|
||
|
|
[data-theme="light"] {
|
||
|
|
--color-void-0: #F8F9FA;
|
||
|
|
--color-void-50: #FFFFFF;
|
||
|
|
--color-void-100: #F3F4F6;
|
||
|
|
--color-void-200: #E5E7EB;
|
||
|
|
--color-void-300: #D1D5DB;
|
||
|
|
--color-void-400: #9CA3AF;
|
||
|
|
--color-void-500: #6B7280;
|
||
|
|
--color-void-600: #4B5563;
|
||
|
|
--color-void-700: #374151;
|
||
|
|
--color-void-800: #1F2937;
|
||
|
|
--color-void-900: #111827;
|
||
|
|
--color-void-950: #000000;
|
||
|
|
|
||
|
|
--glass-bg: rgba(255, 255, 255, 0.8);
|
||
|
|
--glass-border: rgba(0, 0, 0, 0.05);
|
||
|
|
|
||
|
|
--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
|
||
|
|
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
|
||
|
|
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.05);
|
||
|
|
}
|