/* 3. UTILITIES (TAILWIND-STYLE) */ /* LAYOUT */ .container { width: 100%; max-width: 1400px; margin: 0 auto; padding: 0 var(--space-6); } .flex { display: flex; } .flex-col { flex-direction: column; } .flex-wrap { flex-wrap: wrap; } .items-center { align-items: center; } .items-start { align-items: flex-start; } .items-end { align-items: flex-end; } .justify-center { justify-content: center; } .justify-between { justify-content: space-between; } .justify-around { justify-content: space-around; } .justify-end { justify-content: flex-end; } .grow { flex-grow: 1; } .shrink-0 { flex-shrink: 0; } .grid { display: grid; } .grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); } .grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } .gap-1 { gap: var(--space-1); } .gap-2 { gap: var(--space-2); } .gap-3 { gap: var(--space-3); } .gap-4 { gap: var(--space-4); } .gap-6 { gap: var(--space-6); } .gap-8 { gap: var(--space-8); } /* SPACING (Margin/Padding) */ .m-0 { margin: 0; } .p-0 { padding: 0; } .m-4 { margin: var(--space-4); } .p-4 { padding: var(--space-4); } .my-4 { margin-top: var(--space-4); margin-bottom: var(--space-4); } .mx-4 { margin-left: var(--space-4); margin-right: var(--space-4); } .mt-2 { margin-top: var(--space-2); } .mb-2 { margin-bottom: var(--space-2); } .mt-4 { margin-top: var(--space-4); } .mb-4 { margin-bottom: var(--space-4); } .mt-8 { margin-top: var(--space-8); } .mb-8 { margin-bottom: var(--space-8); } .p-6 { padding: var(--space-6); } .px-4 { padding-left: var(--space-4); padding-right: var(--space-4); } .py-2 { padding-top: var(--space-2); padding-bottom: var(--space-2); } .py-12 { padding-top: var(--space-12); padding-bottom: var(--space-12); } /* TYPOGRAPHY UTILS */ .font-sans { font-family: var(--font-body); } .font-mono { font-family: var(--font-mono); } .font-head { font-family: var(--font-head); } .font-street { font-family: var(--font-display); } .font-gaming { font-family: 'Orbitron', sans-serif; letter-spacing: 0.1em; } .font-manga { font-family: 'Rajdhani', sans-serif; font-weight: 600; } .font-serif { font-family: var(--font-serif); font-style: italic; } .font-editorial { font-family: var(--font-editorial); font-style: italic; } .text-xs { font-size: var(--text-xs); } .text-sm { font-size: var(--text-sm); } .text-base { font-size: var(--text-base); } .text-lg { font-size: var(--text-lg); } .text-xl { font-size: var(--text-xl); } .text-2xl { font-size: var(--text-2xl); } .font-light { font-weight: 300; } .font-normal { font-weight: 400; } .font-medium { font-weight: 500; } .font-bold { font-weight: 700; } .uppercase { text-transform: uppercase; } .tracking-wide { letter-spacing: 0.05em; } .tracking-widest { letter-spacing: 0.1em; } .text-center { text-align: center; } .text-right { text-align: right; } .text-muted { color: var(--color-void-500); } .text-dim { color: var(--color-void-600); } .text-primary { color: var(--color-void-800); } .text-bright { color: var(--color-void-900); } .text-cyan { color: var(--color-cyan-400); } .text-magenta { color: var(--color-magenta-500); } .text-lime { color: var(--color-lime-500); } .text-error { color: var(--color-error); } .text-success { color: var(--color-success); } /* Gradient Text */ .text-grad-cyber { background: var(--grad-cyber); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .text-grad-heat { background: var(--grad-heat); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } /* BACKGROUNDS & BORDERS */ .bg-void { background-color: var(--color-void-0); } .bg-plate { background-color: var(--color-void-50); } .bg-surface { background-color: var(--color-void-100); } .border { border: 1px solid var(--color-void-200); } .border-t { border-top: 1px solid var(--color-void-200); } .border-b { border-bottom: 1px solid var(--color-void-200); } .rounded-sm { border-radius: var(--radius-sm); } .rounded-md { border-radius: var(--radius-md); } .rounded-lg { border-radius: var(--radius-lg); } .rounded-full { border-radius: var(--radius-full); } /* VISIBILITY */ .hidden { display: none; } .block { display: block; } .relative { position: relative; } .absolute { position: absolute; } .fixed { position: fixed; } .inset-0 { top: 0; right: 0; bottom: 0; left: 0; } .z-10 { z-index: 10; } .z-50 { z-index: 50; }