minora 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,295 @@
1
+ /* ============================================================
2
+ ELEGANT MINIMALIST UI KIT — Divider & Separator Components
3
+ divider.css
4
+
5
+ ANATOMY — HORIZONTAL DIVIDER
6
+ ─────────────────────────────────────────────────────────────
7
+ Structure:
8
+ <!-- Simple line -->
9
+ <hr class="divider" />
10
+
11
+ <!-- With centered text -->
12
+ <div class="divider divider-label">
13
+ <span>atau</span>
14
+ </div>
15
+
16
+ <!-- With centered icon -->
17
+ <div class="divider divider-icon">
18
+ <svg class="divider-icon-svg">...</svg>
19
+ </div>
20
+
21
+ <!-- With left/right label -->
22
+ <div class="divider divider-label divider-label-left">
23
+ <span>Section</span>
24
+ </div>
25
+
26
+ Class layers:
27
+ 1. .divider → Base: full-width horizontal rule
28
+ 2. .divider-{weight} → Thickness (thin/thick)
29
+ 3. .divider-{style} → Line style (solid/dashed)
30
+ 4. .divider-{color} → Color (subtle/muted/accent)
31
+ 5. .divider-label → Wrapper for text/icon variant
32
+ 6. .divider-label-left → Modifier: label aligned left
33
+ 7. .divider-label-right → Modifier: label aligned right
34
+ 8. .divider-{spacing} → Margin utility (sm/md/lg)
35
+ ─────────────────────────────────────────────────────────────
36
+
37
+ ANATOMY — VERTICAL SEPARATOR
38
+ ─────────────────────────────────────────────────────────────
39
+ Structure:
40
+ <div class="flex-row">
41
+ <span>Home</span>
42
+ <span class="separator"></span>
43
+ <span>Components</span>
44
+ <span class="separator separator-dashed"></span>
45
+ <span>Divider</span>
46
+ </div>
47
+
48
+ Class layers:
49
+ 1. .separator → Base: vertical line, stretches in flex
50
+ 2. .separator-{weight} → Thickness (thin/thick)
51
+ 3. .separator-{style} → Line style (solid/dashed)
52
+ 4. .separator-{color} → Color (subtle/muted/accent)
53
+ ─────────────────────────────────────────────────────────────
54
+ ============================================================ */
55
+
56
+ /* ═══════════════════════════════════════════════════════════
57
+ DIVIDER — Base (Horizontal)
58
+ ═══════════════════════════════════════════════════════════ */
59
+
60
+ /* Simple <hr> divider */
61
+ .divider {
62
+ display: block;
63
+ width: 100%;
64
+ border: none;
65
+ border-top: var(--border-width) solid var(--color-neutral-200);
66
+ margin: 0;
67
+ }
68
+
69
+ /* Divider wrapper — for text/icon variants */
70
+ .divider-label {
71
+ display: flex;
72
+ align-items: center;
73
+ width: 100%;
74
+ gap: var(--space-4);
75
+ }
76
+
77
+ /* The line — left side */
78
+ .divider-label::before {
79
+ content: '';
80
+ flex: 1;
81
+ border-top: var(--border-width) solid var(--color-neutral-200);
82
+ }
83
+
84
+ /* The line — right side */
85
+ .divider-label::after {
86
+ content: '';
87
+ flex: 1;
88
+ border-top: var(--border-width) solid var(--color-neutral-200);
89
+ }
90
+
91
+ /* Centered label */
92
+ .divider-label > span,
93
+ .divider-label > svg {
94
+ flex-shrink: 0;
95
+ font-family: var(--font-sans);
96
+ font-size: var(--text-xs);
97
+ font-weight: var(--font-medium);
98
+ letter-spacing: var(--tracking-wide);
99
+ color: var(--color-neutral-400);
100
+ line-height: var(--leading-none);
101
+ text-transform: lowercase;
102
+ }
103
+
104
+ /* Icon inside divider */
105
+ .divider-icon-svg {
106
+ flex-shrink: 0;
107
+ color: var(--color-neutral-400);
108
+ }
109
+
110
+ /* ── Label alignment modifiers ──────────────────────────── */
111
+
112
+ /* Label aligned left — only right line visible */
113
+ .divider-label-left::before {
114
+ display: none;
115
+ }
116
+
117
+ /* Label aligned right — only left line visible */
118
+ .divider-label-right::after {
119
+ display: none;
120
+ }
121
+
122
+ /* Override text-transform for left/right labels */
123
+ .divider-label-left > span,
124
+ .divider-label-right > span {
125
+ text-transform: none;
126
+ }
127
+
128
+ /* ═══════════════════════════════════════════════════════════
129
+ DIVIDER — Weight (Thickness)
130
+ ═══════════════════════════════════════════════════════════ */
131
+
132
+ /* Thin (1px — default) */
133
+ .divider-thin {
134
+ border-top-width: var(--border-width);
135
+ }
136
+
137
+ .divider-thin.divider-label::before,
138
+ .divider-thin.divider-label::after {
139
+ border-top-width: var(--border-width);
140
+ }
141
+
142
+ /* Thick (2px) */
143
+ .divider-thick {
144
+ border-top-width: var(--border-width-2);
145
+ }
146
+
147
+ .divider-thick.divider-label::before,
148
+ .divider-thick.divider-label::after {
149
+ border-top-width: var(--border-width-2);
150
+ }
151
+
152
+ /* ═══════════════════════════════════════════════════════════
153
+ DIVIDER — Style
154
+ ═══════════════════════════════════════════════════════════ */
155
+
156
+ /* Dashed */
157
+ .divider-dashed {
158
+ border-top-style: dashed;
159
+ }
160
+
161
+ .divider-dashed.divider-label::before,
162
+ .divider-dashed.divider-label::after {
163
+ border-top-style: dashed;
164
+ }
165
+
166
+ /* ═══════════════════════════════════════════════════════════
167
+ DIVIDER — Color
168
+ ═══════════════════════════════════════════════════════════ */
169
+
170
+ /* Subtle (default — neutral-200) */
171
+ .divider-subtle {
172
+ border-top-color: var(--color-neutral-200);
173
+ }
174
+
175
+ .divider-subtle.divider-label::before,
176
+ .divider-subtle.divider-label::after {
177
+ border-top-color: var(--color-neutral-200);
178
+ }
179
+
180
+ .divider-subtle.divider-label > span,
181
+ .divider-subtle.divider-label > svg {
182
+ color: var(--color-neutral-400);
183
+ }
184
+
185
+ /* Muted — more visible (neutral-300) */
186
+ .divider-muted {
187
+ border-top-color: var(--color-neutral-300);
188
+ }
189
+
190
+ .divider-muted.divider-label::before,
191
+ .divider-muted.divider-label::after {
192
+ border-top-color: var(--color-neutral-300);
193
+ }
194
+
195
+ .divider-muted.divider-label > span,
196
+ .divider-muted.divider-label > svg {
197
+ color: var(--color-neutral-500);
198
+ }
199
+
200
+ /* Accent — warm gold */
201
+ .divider-accent {
202
+ border-top-color: var(--color-accent-300);
203
+ }
204
+
205
+ .divider-accent.divider-label::before,
206
+ .divider-accent.divider-label::after {
207
+ border-top-color: var(--color-accent-300);
208
+ }
209
+
210
+ .divider-accent.divider-label > span,
211
+ .divider-accent.divider-label > svg {
212
+ color: var(--color-accent-500);
213
+ }
214
+
215
+ /* ═══════════════════════════════════════════════════════════
216
+ DIVIDER — Spacing Utility
217
+ Margin top and bottom for consistent spacing
218
+ ═══════════════════════════════════════════════════════════ */
219
+
220
+ .divider-sm {
221
+ margin-top: var(--space-4);
222
+ margin-bottom: var(--space-4);
223
+ }
224
+
225
+ .divider-md {
226
+ margin-top: var(--space-6);
227
+ margin-bottom: var(--space-6);
228
+ }
229
+
230
+ .divider-lg {
231
+ margin-top: var(--space-10);
232
+ margin-bottom: var(--space-10);
233
+ }
234
+
235
+ /* ═══════════════════════════════════════════════════════════
236
+ DIVIDER — On dark background
237
+ ═══════════════════════════════════════════════════════════ */
238
+
239
+ .divider-dark {
240
+ border-top-color: var(--color-neutral-700);
241
+ }
242
+
243
+ .divider-dark.divider-label::before,
244
+ .divider-dark.divider-label::after {
245
+ border-top-color: var(--color-neutral-700);
246
+ }
247
+
248
+ .divider-dark.divider-label > span,
249
+ .divider-dark.divider-label > svg {
250
+ color: var(--color-neutral-500);
251
+ }
252
+
253
+ /* ═══════════════════════════════════════════════════════════
254
+ SEPARATOR — Vertical
255
+ ═══════════════════════════════════════════════════════════ */
256
+
257
+ .separator {
258
+ display: inline-block;
259
+ align-self: stretch;
260
+ width: 0;
261
+ border-right: var(--border-width) solid var(--color-neutral-200);
262
+ margin: 0 var(--space-4);
263
+ flex-shrink: 0;
264
+ }
265
+
266
+ /* ── Weight ─────────────────────────────────────────────── */
267
+ .separator-thin {
268
+ border-right-width: var(--border-width);
269
+ }
270
+
271
+ .separator-thick {
272
+ border-right-width: var(--border-width-2);
273
+ }
274
+
275
+ /* ── Style ──────────────────────────────────────────────── */
276
+ .separator-dashed {
277
+ border-right-style: dashed;
278
+ }
279
+
280
+ /* ── Color ──────────────────────────────────────────────── */
281
+ .separator-subtle {
282
+ border-right-color: var(--color-neutral-200);
283
+ }
284
+
285
+ .separator-muted {
286
+ border-right-color: var(--color-neutral-300);
287
+ }
288
+
289
+ .separator-accent {
290
+ border-right-color: var(--color-accent-300);
291
+ }
292
+
293
+ .separator-dark {
294
+ border-right-color: var(--color-neutral-700);
295
+ }