@dilipod/ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,187 @@
1
+ @import "tailwindcss";
2
+
3
+ :root {
4
+ /* ===========================================
5
+ DILIPOD COLOR SYSTEM
6
+ Black + Cyan - Simple & Bold
7
+ =========================================== */
8
+
9
+ /* TWO CORE BRAND COLORS ONLY */
10
+ --black: #0A0A0A; /* Pure black */
11
+ --cyan: #00B8A9; /* Darker cyan/teal */
12
+
13
+ /* Derived shades for gradients (between black and cyan) */
14
+ --cyan-dark: #007A70; /* Darker cyan for gradients */
15
+ --cyan-light: #00E5D4; /* Lighter cyan for highlights */
16
+
17
+ /* Base */
18
+ --background: 0 0% 100%;
19
+ --foreground: 0 0% 4%;
20
+
21
+ /* UI Colors */
22
+ --card: 0 0% 100%;
23
+ --card-foreground: 0 0% 4%;
24
+ --popover: 0 0% 100%;
25
+ --popover-foreground: 0 0% 4%;
26
+ --primary: 174 100% 36%; /* cyan */
27
+ --primary-foreground: 0 0% 4%;
28
+ --secondary: 174 30% 95%;
29
+ --secondary-foreground: 0 0% 4%;
30
+ --muted: 174 20% 96%;
31
+ --muted-foreground: 0 0% 40%;
32
+ --accent: 174 100% 36%;
33
+ --accent-foreground: 0 0% 4%;
34
+ --destructive: 0 84% 60%;
35
+ --destructive-foreground: 0 0% 100%;
36
+ --border: 0 0% 90%;
37
+ --input: 0 0% 90%;
38
+ --ring: 174 100% 36%;
39
+ --radius: 0.125rem;
40
+
41
+ /* Status Colors - using cyan for success */
42
+ --status-success: 174 100% 36%; /* cyan */
43
+ --status-error: 0 72% 51%; /* red */
44
+ --status-warning: 38 92% 50%; /* orange */
45
+ --status-active: 174 100% 36%; /* cyan */
46
+ }
47
+
48
+ /* ===========================================
49
+ REUSABLE UTILITIES
50
+ Black + Cyan only
51
+ =========================================== */
52
+ @layer utilities {
53
+
54
+ /* ===== BACKGROUND GRADIENTS (Black ↔ Cyan) ===== */
55
+
56
+ /* 1. Light hero - white with cyan glow */
57
+ .bg-gradient-light {
58
+ background:
59
+ radial-gradient(ellipse at bottom right, rgba(0, 184, 169, 0.15) 0%, transparent 60%),
60
+ radial-gradient(ellipse at top left, rgba(0, 184, 169, 0.08) 0%, transparent 50%),
61
+ white;
62
+ }
63
+
64
+ /* 2. Dark section - dramatic aurora effect */
65
+ .bg-gradient-dark {
66
+ background:
67
+ radial-gradient(ellipse 120% 60% at 0% 100%, rgba(0, 184, 169, 0.25) 0%, transparent 40%),
68
+ radial-gradient(ellipse 80% 80% at 100% 0%, rgba(0, 122, 112, 0.3) 0%, transparent 50%),
69
+ radial-gradient(ellipse 60% 40% at 50% 80%, rgba(0, 184, 169, 0.1) 0%, transparent 50%),
70
+ radial-gradient(ellipse 40% 30% at 70% 20%, rgba(0, 229, 212, 0.08) 0%, transparent 40%),
71
+ linear-gradient(160deg, var(--black) 0%, #071515 30%, #0a1f1f 50%, #061212 70%, var(--black) 100%);
72
+ }
73
+
74
+ /* 3. Full gradient - black through cyan */
75
+ .bg-gradient-full {
76
+ background: linear-gradient(
77
+ 180deg,
78
+ var(--black) 0%,
79
+ var(--cyan-dark) 50%,
80
+ var(--cyan) 100%
81
+ );
82
+ }
83
+
84
+ /* 4. Accent - solid colors */
85
+ .bg-cyan { background-color: var(--cyan); }
86
+ .bg-black { background-color: var(--black); }
87
+
88
+ /* ===== TEXT ===== */
89
+
90
+ .text-gradient {
91
+ background: linear-gradient(135deg, var(--cyan-dark) 0%, var(--cyan) 50%, var(--cyan-light) 100%);
92
+ -webkit-background-clip: text;
93
+ -webkit-text-fill-color: transparent;
94
+ background-clip: text;
95
+ }
96
+
97
+ .text-black { color: var(--black); }
98
+ .text-cyan { color: var(--cyan); }
99
+ .text-cyan-dark { color: var(--cyan-dark); }
100
+
101
+ /* ===== UTILITY CLASSES ===== */
102
+
103
+ .text-balance { text-wrap: balance; }
104
+
105
+ .glass {
106
+ background: rgba(255, 255, 255, 0.95);
107
+ backdrop-filter: blur(12px);
108
+ -webkit-backdrop-filter: blur(12px);
109
+ }
110
+
111
+ .glass-dark {
112
+ background: rgba(10, 10, 10, 0.9);
113
+ backdrop-filter: blur(12px);
114
+ -webkit-backdrop-filter: blur(12px);
115
+ }
116
+
117
+ /* Status colors */
118
+ .text-status-success { color: var(--cyan); }
119
+ .text-status-error { color: hsl(var(--status-error)); }
120
+ .bg-status-success { background-color: var(--cyan); }
121
+ .bg-status-error { background-color: hsl(var(--status-error)); }
122
+ }
123
+
124
+ * {
125
+ border-color: hsl(var(--border));
126
+ }
127
+
128
+ body {
129
+ background-color: hsl(var(--background));
130
+ color: hsl(var(--foreground));
131
+ font-feature-settings: "rlig" 1, "calt" 1;
132
+ -webkit-font-smoothing: antialiased;
133
+ -moz-osx-font-smoothing: grayscale;
134
+ }
135
+
136
+ /* Ensure interactive elements have pointer cursor */
137
+ a, button, [role="button"], input[type="submit"], input[type="button"], select {
138
+ cursor: pointer;
139
+ }
140
+
141
+ a:not([disabled]), button:not([disabled]) {
142
+ cursor: pointer;
143
+ }
144
+
145
+ /* Better focus styles */
146
+ *:focus-visible {
147
+ outline: 2px solid hsl(var(--ring));
148
+ outline-offset: 2px;
149
+ }
150
+
151
+ /* Smooth scroll */
152
+ html {
153
+ scroll-behavior: smooth;
154
+ }
155
+
156
+ /* Container - centered with max-width and padding */
157
+ @layer base {
158
+ .container {
159
+ width: 100%;
160
+ max-width: 1440px;
161
+ margin-left: auto;
162
+ margin-right: auto;
163
+ padding-left: 1.5rem;
164
+ padding-right: 1.5rem;
165
+ }
166
+
167
+ @media (min-width: 640px) {
168
+ .container {
169
+ padding-left: 2.5rem;
170
+ padding-right: 2.5rem;
171
+ }
172
+ }
173
+
174
+ @media (min-width: 1024px) {
175
+ .container {
176
+ padding-left: 3rem;
177
+ padding-right: 3rem;
178
+ }
179
+ }
180
+
181
+ @media (min-width: 1280px) {
182
+ .container {
183
+ padding-left: 4rem;
184
+ padding-right: 4rem;
185
+ }
186
+ }
187
+ }