@regardio/tailwind 0.3.4 → 0.3.5
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.
- package/dist/index.d.mts +12 -0
- package/dist/index.mjs +15 -0
- package/dist/styles/animations.css +153 -0
- package/dist/styles/base.css +75 -0
- package/dist/styles/grid.css +61 -0
- package/dist/styles/index.css +19 -0
- package/dist/styles/plugins.css +13 -0
- package/dist/styles/reset.css +277 -0
- package/package.json +2 -2
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ClassValue } from "clsx";
|
|
2
|
+
import { twMerge } from "fluid-tailwindcss/tailwind-merge";
|
|
3
|
+
import { tv } from "tailwind-variants";
|
|
4
|
+
|
|
5
|
+
//#region src/utils/index.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Merge Tailwind CSS classes with conflict resolution
|
|
8
|
+
* Supports strings, objects, arrays, and conditional classes
|
|
9
|
+
*/
|
|
10
|
+
declare const cn: (...inputs: ClassValue[]) => string;
|
|
11
|
+
//#endregion
|
|
12
|
+
export { cn, tv, twMerge };
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { clsx } from "clsx";
|
|
2
|
+
import { twMerge } from "fluid-tailwindcss/tailwind-merge";
|
|
3
|
+
import { tv } from "tailwind-variants";
|
|
4
|
+
|
|
5
|
+
//#region src/utils/index.ts
|
|
6
|
+
/**
|
|
7
|
+
* Merge Tailwind CSS classes with conflict resolution
|
|
8
|
+
* Supports strings, objects, arrays, and conditional classes
|
|
9
|
+
*/
|
|
10
|
+
const cn = (...inputs) => {
|
|
11
|
+
return twMerge(clsx(inputs));
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { cn, tv, twMerge };
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Animation Utilities
|
|
3
|
+
* Common keyframes and animation classes
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* Extended duration classes beyond Tailwind defaults */
|
|
7
|
+
.duration-2000 {
|
|
8
|
+
transition-duration: 2000ms;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.duration-2500 {
|
|
12
|
+
transition-duration: 2500ms;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.duration-3000 {
|
|
16
|
+
transition-duration: 3000ms;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.duration-4000 {
|
|
20
|
+
transition-duration: 4000ms;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.duration-5000 {
|
|
24
|
+
transition-duration: 5000ms;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.duration-6000 {
|
|
28
|
+
transition-duration: 6000ms;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@theme {
|
|
32
|
+
/* Fade animations */
|
|
33
|
+
--animate-fade-in: fade-in 0.3s ease-out forwards;
|
|
34
|
+
--animate-fade-out: fade-out 0.3s ease-out forwards;
|
|
35
|
+
--animate-fade-in-slow: fade-in 0.6s ease-out forwards;
|
|
36
|
+
--animate-fade-out-slow: fade-out 0.6s ease-out forwards;
|
|
37
|
+
|
|
38
|
+
/* Slide animations */
|
|
39
|
+
--animate-slide-in-up: slide-in-up 0.3s ease-out forwards;
|
|
40
|
+
--animate-slide-in-down: slide-in-down 0.3s ease-out forwards;
|
|
41
|
+
--animate-slide-in-left: slide-in-left 0.3s ease-out forwards;
|
|
42
|
+
--animate-slide-in-right: slide-in-right 0.3s ease-out forwards;
|
|
43
|
+
|
|
44
|
+
/* Scale animations */
|
|
45
|
+
--animate-scale-in: scale-in 0.2s ease-out forwards;
|
|
46
|
+
--animate-scale-out: scale-out 0.2s ease-out forwards;
|
|
47
|
+
|
|
48
|
+
/* Image slideshow animations */
|
|
49
|
+
--animate-image-fade-in: image-fade-in 6s ease-out forwards;
|
|
50
|
+
--animate-image-fade-out: image-fade-out 6s ease-out forwards;
|
|
51
|
+
|
|
52
|
+
@keyframes fade-in {
|
|
53
|
+
from {
|
|
54
|
+
opacity: 0;
|
|
55
|
+
}
|
|
56
|
+
to {
|
|
57
|
+
opacity: 1;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@keyframes fade-out {
|
|
62
|
+
from {
|
|
63
|
+
opacity: 1;
|
|
64
|
+
}
|
|
65
|
+
to {
|
|
66
|
+
opacity: 0;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
@keyframes slide-in-up {
|
|
71
|
+
from {
|
|
72
|
+
opacity: 0;
|
|
73
|
+
transform: translateY(1rem);
|
|
74
|
+
}
|
|
75
|
+
to {
|
|
76
|
+
opacity: 1;
|
|
77
|
+
transform: translateY(0);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
@keyframes slide-in-down {
|
|
82
|
+
from {
|
|
83
|
+
opacity: 0;
|
|
84
|
+
transform: translateY(-1rem);
|
|
85
|
+
}
|
|
86
|
+
to {
|
|
87
|
+
opacity: 1;
|
|
88
|
+
transform: translateY(0);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
@keyframes slide-in-left {
|
|
93
|
+
from {
|
|
94
|
+
opacity: 0;
|
|
95
|
+
transform: translateX(-1rem);
|
|
96
|
+
}
|
|
97
|
+
to {
|
|
98
|
+
opacity: 1;
|
|
99
|
+
transform: translateX(0);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
@keyframes slide-in-right {
|
|
104
|
+
from {
|
|
105
|
+
opacity: 0;
|
|
106
|
+
transform: translateX(1rem);
|
|
107
|
+
}
|
|
108
|
+
to {
|
|
109
|
+
opacity: 1;
|
|
110
|
+
transform: translateX(0);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
@keyframes scale-in {
|
|
115
|
+
from {
|
|
116
|
+
opacity: 0;
|
|
117
|
+
transform: scale(0.95);
|
|
118
|
+
}
|
|
119
|
+
to {
|
|
120
|
+
opacity: 1;
|
|
121
|
+
transform: scale(1);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
@keyframes scale-out {
|
|
126
|
+
from {
|
|
127
|
+
opacity: 1;
|
|
128
|
+
transform: scale(1);
|
|
129
|
+
}
|
|
130
|
+
to {
|
|
131
|
+
opacity: 0;
|
|
132
|
+
transform: scale(0.95);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
@keyframes image-fade-in {
|
|
137
|
+
from {
|
|
138
|
+
opacity: 0;
|
|
139
|
+
}
|
|
140
|
+
to {
|
|
141
|
+
opacity: 1;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
@keyframes image-fade-out {
|
|
146
|
+
from {
|
|
147
|
+
opacity: 1;
|
|
148
|
+
}
|
|
149
|
+
to {
|
|
150
|
+
opacity: 0;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Styles
|
|
3
|
+
* Foundational design defaults that may vary per project
|
|
4
|
+
*/
|
|
5
|
+
@layer base {
|
|
6
|
+
/* Design tokens applied to all elements */
|
|
7
|
+
* {
|
|
8
|
+
@apply border-border outline-ring/50;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/* Body typography defaults */
|
|
12
|
+
body {
|
|
13
|
+
font-feature-settings:
|
|
14
|
+
"liga" 1,
|
|
15
|
+
"dlig" 1,
|
|
16
|
+
"calt" 1,
|
|
17
|
+
"hlig" 1;
|
|
18
|
+
font-variant-ligatures: common-ligatures discretionary-ligatures contextual historical-ligatures;
|
|
19
|
+
line-height: 1.5;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* Text wrapping improvements */
|
|
23
|
+
p,
|
|
24
|
+
h1,
|
|
25
|
+
h2,
|
|
26
|
+
h3,
|
|
27
|
+
h4,
|
|
28
|
+
h5,
|
|
29
|
+
h6 {
|
|
30
|
+
overflow-wrap: break-word;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
p {
|
|
34
|
+
text-wrap: pretty;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
h1,
|
|
38
|
+
h2,
|
|
39
|
+
h3,
|
|
40
|
+
h4,
|
|
41
|
+
h5,
|
|
42
|
+
h6 {
|
|
43
|
+
line-height: 1.2;
|
|
44
|
+
text-wrap: balance;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/* Focus ring styling */
|
|
48
|
+
:focus-visible {
|
|
49
|
+
@apply outline-2 outline-offset-2;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* Selection styling */
|
|
53
|
+
::selection {
|
|
54
|
+
@apply bg-primary text-primary-foreground;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/* Links without class */
|
|
58
|
+
a:not([class]) {
|
|
59
|
+
text-underline-offset: 0.2em;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* Prevent tiny textareas */
|
|
63
|
+
textarea:not([rows]) {
|
|
64
|
+
min-height: 10em;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/* Auto-sizing textareas (progressive enhancement) */
|
|
68
|
+
@supports (field-sizing: content) {
|
|
69
|
+
textarea {
|
|
70
|
+
field-sizing: content;
|
|
71
|
+
min-height: 3lh;
|
|
72
|
+
max-height: 50vh;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grid Utilities
|
|
3
|
+
* Reusable container and grid layout classes
|
|
4
|
+
*/
|
|
5
|
+
@layer components {
|
|
6
|
+
/**
|
|
7
|
+
* Container with max-width and horizontal padding
|
|
8
|
+
* Uses CSS custom properties for configurability:
|
|
9
|
+
* - --spacing-grid-max: Maximum container width
|
|
10
|
+
* - --spacing-grid-gutter: Horizontal padding/gap
|
|
11
|
+
*/
|
|
12
|
+
.u-container {
|
|
13
|
+
position: relative;
|
|
14
|
+
max-width: var(--spacing-grid-max);
|
|
15
|
+
padding-inline: var(--spacing-grid-gutter);
|
|
16
|
+
margin-inline: auto;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* 12-column CSS Grid with container queries
|
|
21
|
+
* Uses CSS custom properties for configurability:
|
|
22
|
+
* - --spacing-grid-gutter: Gap between grid items
|
|
23
|
+
*/
|
|
24
|
+
.u-grid {
|
|
25
|
+
display: grid;
|
|
26
|
+
grid-template-columns: repeat(12, minmax(0, 1fr));
|
|
27
|
+
grid-auto-flow: dense;
|
|
28
|
+
gap: var(--spacing-grid-gutter);
|
|
29
|
+
width: 100%;
|
|
30
|
+
container-name: grid;
|
|
31
|
+
container-type: inline-size;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Full-width grid item spanning all 12 columns
|
|
36
|
+
*/
|
|
37
|
+
.u-grid-full {
|
|
38
|
+
grid-column: 1 / -1;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Half-width grid item spanning 6 columns
|
|
43
|
+
*/
|
|
44
|
+
.u-grid-half {
|
|
45
|
+
grid-column: span 6;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Third-width grid item spanning 4 columns
|
|
50
|
+
*/
|
|
51
|
+
.u-grid-third {
|
|
52
|
+
grid-column: span 4;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Quarter-width grid item spanning 3 columns
|
|
57
|
+
*/
|
|
58
|
+
.u-grid-quarter {
|
|
59
|
+
grid-column: span 3;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @regardio/tailwind - Shared Styles
|
|
3
|
+
*
|
|
4
|
+
* Import this file to include all shared styles:
|
|
5
|
+
* @import "@regardio/tailwind/styles";
|
|
6
|
+
*
|
|
7
|
+
* Or import individual files:
|
|
8
|
+
* @import "@regardio/tailwind/styles/plugins.css";
|
|
9
|
+
* @import "@regardio/tailwind/styles/reset.css";
|
|
10
|
+
* @import "@regardio/tailwind/styles/base.css";
|
|
11
|
+
* @import "@regardio/tailwind/styles/grid.css";
|
|
12
|
+
* @import "@regardio/tailwind/styles/animations.css";
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
@import "./plugins.css";
|
|
16
|
+
@import "./reset.css";
|
|
17
|
+
@import "./base.css";
|
|
18
|
+
@import "./grid.css";
|
|
19
|
+
@import "./animations.css";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tailwind CSS Core & Plugins
|
|
3
|
+
* Import this to get Tailwind CSS with Regardio's standard plugins
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* Tailwind CSS v4 */
|
|
7
|
+
@import "tailwindcss";
|
|
8
|
+
|
|
9
|
+
/* Animation utilities */
|
|
10
|
+
@import "tw-animate-css";
|
|
11
|
+
|
|
12
|
+
/* Fluid typography and spacing */
|
|
13
|
+
@plugin "fluid-tailwindcss";
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSS Reset
|
|
3
|
+
* Browser normalization and cross-browser fixes only.
|
|
4
|
+
* Design defaults belong in base.css
|
|
5
|
+
*
|
|
6
|
+
* @see https://www.joshwcomeau.com/css/custom-css-reset/
|
|
7
|
+
*/
|
|
8
|
+
@layer base {
|
|
9
|
+
/* ============================================
|
|
10
|
+
* BOX MODEL
|
|
11
|
+
* ============================================ */
|
|
12
|
+
*,
|
|
13
|
+
*::before,
|
|
14
|
+
*::after {
|
|
15
|
+
box-sizing: border-box;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* Reset margin on all elements except dialog (uses margin: auto for centering) */
|
|
19
|
+
*:not(dialog) {
|
|
20
|
+
margin: 0;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/* Tailwind-compatible border reset */
|
|
24
|
+
*,
|
|
25
|
+
*::before,
|
|
26
|
+
*::after {
|
|
27
|
+
border-style: solid;
|
|
28
|
+
border-width: 0;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Fix flex item overflow bug */
|
|
32
|
+
* {
|
|
33
|
+
min-width: 0;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/* ============================================
|
|
37
|
+
* HTML ROOT
|
|
38
|
+
* ============================================ */
|
|
39
|
+
html {
|
|
40
|
+
/* Prevent iOS text size inflation */
|
|
41
|
+
-webkit-text-size-adjust: 100%;
|
|
42
|
+
text-size-adjust: 100%;
|
|
43
|
+
|
|
44
|
+
/* System color scheme support */
|
|
45
|
+
color-scheme: light dark;
|
|
46
|
+
|
|
47
|
+
/* Enable height-based layouts */
|
|
48
|
+
height: 100%;
|
|
49
|
+
|
|
50
|
+
/* Consistent tab size */
|
|
51
|
+
tab-size: 2;
|
|
52
|
+
|
|
53
|
+
/* Better scroll anchoring */
|
|
54
|
+
overflow-anchor: auto;
|
|
55
|
+
|
|
56
|
+
/* Touch scroll momentum (iOS) */
|
|
57
|
+
-webkit-overflow-scrolling: touch;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* Enable keyword animations + smooth scroll only for users without motion sensitivity */
|
|
61
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
62
|
+
html {
|
|
63
|
+
interpolate-size: allow-keywords;
|
|
64
|
+
scroll-behavior: smooth;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
html[data-theme="light"] {
|
|
69
|
+
color-scheme: light;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
html[data-theme="dark"] {
|
|
73
|
+
color-scheme: dark;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/* ============================================
|
|
77
|
+
* BODY
|
|
78
|
+
* ============================================ */
|
|
79
|
+
body {
|
|
80
|
+
position: relative;
|
|
81
|
+
min-height: 100%;
|
|
82
|
+
margin: 0;
|
|
83
|
+
|
|
84
|
+
/* Antialiased rendering (macOS browsers default to subpixel) */
|
|
85
|
+
-webkit-font-smoothing: antialiased;
|
|
86
|
+
-moz-osx-font-smoothing: grayscale;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* ============================================
|
|
90
|
+
* FORM ELEMENTS
|
|
91
|
+
* Inherit instead of browser defaults
|
|
92
|
+
* ============================================ */
|
|
93
|
+
input,
|
|
94
|
+
button,
|
|
95
|
+
textarea,
|
|
96
|
+
select,
|
|
97
|
+
optgroup {
|
|
98
|
+
font: inherit;
|
|
99
|
+
color: inherit;
|
|
100
|
+
background-color: transparent;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/* Explicit input types for edge cases */
|
|
104
|
+
[type="date"],
|
|
105
|
+
[type="datetime-local"],
|
|
106
|
+
[type="email"],
|
|
107
|
+
[type="month"],
|
|
108
|
+
[type="number"],
|
|
109
|
+
[type="password"],
|
|
110
|
+
[type="search"],
|
|
111
|
+
[type="tel"],
|
|
112
|
+
[type="text"],
|
|
113
|
+
[type="time"],
|
|
114
|
+
[type="url"],
|
|
115
|
+
[type="week"],
|
|
116
|
+
[multiple] {
|
|
117
|
+
font: inherit;
|
|
118
|
+
background-color: transparent;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/* Remove webkit search styling */
|
|
122
|
+
[type="search"]::-webkit-search-decoration,
|
|
123
|
+
[type="search"]::-webkit-search-cancel-button {
|
|
124
|
+
-webkit-appearance: none;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/* Cursor normalization */
|
|
128
|
+
button,
|
|
129
|
+
[role="button"] {
|
|
130
|
+
cursor: pointer;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
button:disabled,
|
|
134
|
+
[role="button"]:disabled,
|
|
135
|
+
input:disabled,
|
|
136
|
+
select:disabled,
|
|
137
|
+
textarea:disabled {
|
|
138
|
+
cursor: not-allowed;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/* ============================================
|
|
142
|
+
* MEDIA ELEMENTS
|
|
143
|
+
* ============================================ */
|
|
144
|
+
img,
|
|
145
|
+
picture,
|
|
146
|
+
video,
|
|
147
|
+
canvas,
|
|
148
|
+
svg {
|
|
149
|
+
display: block;
|
|
150
|
+
flex-shrink: 0;
|
|
151
|
+
max-width: 100%;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
img,
|
|
155
|
+
video {
|
|
156
|
+
height: auto;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
/* Icons inherit text color unless explicitly set */
|
|
160
|
+
svg:not([fill]) {
|
|
161
|
+
fill: currentColor;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
iframe,
|
|
165
|
+
embed,
|
|
166
|
+
object {
|
|
167
|
+
display: block;
|
|
168
|
+
max-width: 100%;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/* ============================================
|
|
172
|
+
* INTERACTIVE ELEMENTS
|
|
173
|
+
* ============================================ */
|
|
174
|
+
|
|
175
|
+
/* Focus only visible on keyboard navigation */
|
|
176
|
+
:focus:not(:focus-visible) {
|
|
177
|
+
outline: none;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/* Dialog normalization */
|
|
181
|
+
dialog {
|
|
182
|
+
padding: 0;
|
|
183
|
+
border: none;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/* Summary/details normalization */
|
|
187
|
+
summary {
|
|
188
|
+
display: list-item;
|
|
189
|
+
cursor: pointer;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
summary::-webkit-details-marker {
|
|
193
|
+
display: none;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/* Enforce hidden attribute */
|
|
197
|
+
[hidden] {
|
|
198
|
+
/* biome-ignore lint/complexity/noImportantStyles: Must always work */
|
|
199
|
+
display: none !important;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/* Inert elements */
|
|
203
|
+
[inert],
|
|
204
|
+
[inert] * {
|
|
205
|
+
pointer-events: none;
|
|
206
|
+
user-select: none;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
/* ============================================
|
|
210
|
+
* TABLES
|
|
211
|
+
* ============================================ */
|
|
212
|
+
table {
|
|
213
|
+
border-spacing: 0;
|
|
214
|
+
border-collapse: collapse;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
/* ============================================
|
|
218
|
+
* LINKS
|
|
219
|
+
* ============================================ */
|
|
220
|
+
a {
|
|
221
|
+
color: inherit;
|
|
222
|
+
text-decoration: inherit;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
a:not([class]) {
|
|
226
|
+
text-decoration-skip-ink: auto;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
/* ============================================
|
|
230
|
+
* LISTS (Safari VoiceOver fix)
|
|
231
|
+
* ============================================ */
|
|
232
|
+
ul[role="list"],
|
|
233
|
+
ol[role="list"] {
|
|
234
|
+
padding: 0;
|
|
235
|
+
list-style: none;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/* ============================================
|
|
239
|
+
* STACKING CONTEXTS
|
|
240
|
+
* ============================================ */
|
|
241
|
+
#root,
|
|
242
|
+
#__next,
|
|
243
|
+
#app {
|
|
244
|
+
isolation: isolate;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/* ============================================
|
|
248
|
+
* MOBILE
|
|
249
|
+
* ============================================ */
|
|
250
|
+
* {
|
|
251
|
+
-webkit-tap-highlight-color: transparent;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
@media (pointer: coarse) {
|
|
255
|
+
html {
|
|
256
|
+
touch-action: manipulation;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
/* ============================================
|
|
261
|
+
* ACCESSIBILITY - REDUCED MOTION
|
|
262
|
+
* ============================================ */
|
|
263
|
+
@media (prefers-reduced-motion: reduce) {
|
|
264
|
+
*,
|
|
265
|
+
*::before,
|
|
266
|
+
*::after {
|
|
267
|
+
/* biome-ignore lint/complexity/noImportantStyles: Accessibility override */
|
|
268
|
+
animation-duration: 0.01ms !important;
|
|
269
|
+
/* biome-ignore lint/complexity/noImportantStyles: Accessibility override */
|
|
270
|
+
animation-iteration-count: 1 !important;
|
|
271
|
+
/* biome-ignore lint/complexity/noImportantStyles: Accessibility override */
|
|
272
|
+
transition-duration: 0.01ms !important;
|
|
273
|
+
/* biome-ignore lint/complexity/noImportantStyles: Accessibility override */
|
|
274
|
+
scroll-behavior: auto !important;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://www.schemastore.org/package.json",
|
|
3
3
|
"name": "@regardio/tailwind",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.5",
|
|
5
5
|
"description": "Regardio Tailwind CSS utilities and configuration",
|
|
6
6
|
"keywords": ["tailwind", "tailwindcss", "utilities", "regardio"],
|
|
7
7
|
"homepage": "https://github.com/regardio/tailwind#readme",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
},
|
|
26
26
|
"files": ["dist"],
|
|
27
27
|
"scripts": {
|
|
28
|
-
"build": "exec-s fix",
|
|
28
|
+
"build": "exec-s tsdown fix",
|
|
29
29
|
"dev": "tsdown --watch",
|
|
30
30
|
"fix": "exec-s fix:pkg fix:md fix:biome",
|
|
31
31
|
"fix:biome": "lint-biome check --write --unsafe .",
|