|
17 | 17 | padding: 0; |
18 | 18 | overflow: hidden; |
19 | 19 | border-radius: var(--radius-md); |
20 | | - box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); |
| 20 | + box-shadow: var(--shadow-md); |
21 | 21 | font-size: clamp(0.75rem, 1vw, 0.875rem); |
22 | 22 | line-height: 1.2; |
23 | 23 | opacity: 0; |
24 | | - transition: opacity 0.3s ease, transform 0.3s ease, max-height 0.3s ease; |
| 24 | + transform: scale(0.95); |
| 25 | + transition: opacity 0.25s ease, transform 0.25s ease, max-height 0.25s ease, padding 0.25s ease; |
25 | 26 | pointer-events: none; |
26 | 27 | width: max-content; |
27 | | - z-index: 1000; |
| 28 | + z-index: var(--z-50); |
28 | 29 | display: flex; |
29 | 30 | align-items: center; |
30 | 31 | justify-content: center; |
|
36 | 37 | .tooltip:focus .tooltip-text { |
37 | 38 | opacity: 1; |
38 | 39 | max-height: 200px; |
39 | | - padding: clamp(0.25rem, 1vw, 0.5rem) clamp(0.5rem, 2vw, 1rem); |
| 40 | + padding: clamp(var(--space-1), 1vw, var(--space-2)) clamp(var(--space-2), 2vw, var(--space-4)); |
40 | 41 | overflow: visible; |
41 | 42 | } |
42 | 43 |
|
|
51 | 52 |
|
52 | 53 | /* Position Variants */ |
53 | 54 | [data-position="top"] .tooltip-text { |
54 | | - bottom: calc(100% + 0.5rem); |
| 55 | + bottom: calc(100% + var(--space-2)); |
55 | 56 | left: 50%; |
56 | 57 | transform: translateX(-50%); |
57 | 58 | } |
|
65 | 66 |
|
66 | 67 | [data-position="right"] .tooltip-text { |
67 | 68 | top: 50%; |
68 | | - left: calc(100% + 0.5rem); |
| 69 | + left: calc(100% + var(--space-2)); |
69 | 70 | transform: translateY(-50%); |
70 | 71 | } |
71 | 72 | [data-position="right"] .tooltip-text::after { |
|
77 | 78 | } |
78 | 79 |
|
79 | 80 | [data-position="bottom"] .tooltip-text { |
80 | | - top: calc(100% + 0.5rem); |
| 81 | + top: calc(100% + var(--space-2)); |
81 | 82 | left: 50%; |
82 | 83 | transform: translateX(-50%); |
83 | 84 | } |
|
91 | 92 |
|
92 | 93 | [data-position="left"] .tooltip-text { |
93 | 94 | top: 50%; |
94 | | - right: calc(100% + 0.5rem); |
| 95 | + right: calc(100% + var(--space-2)); |
95 | 96 | transform: translateY(-50%); |
96 | 97 | } |
97 | 98 | [data-position="left"] .tooltip-text::after { |
|
104 | 105 |
|
105 | 106 | /* Color Variants */ |
106 | 107 | [data-variant="primary"] .tooltip-text { |
107 | | - background-color: var(--primary); |
108 | | - color: white; |
| 108 | + background-color: var(--primary-bg); |
| 109 | + color: var(--primary-text); |
109 | 110 | } |
110 | 111 | [data-variant="secondary"] .tooltip-text { |
111 | | - background-color: var(--secondary); |
112 | | - color: white; |
| 112 | + background-color: var(--secondary-bg); |
| 113 | + color: var(--secondary-text); |
113 | 114 | } |
114 | 115 | [data-variant="success"] .tooltip-text { |
115 | | - background-color: var(--success); |
116 | | - color: white; |
| 116 | + background-color: var(--success-bg); |
| 117 | + color: var(--success-text); |
117 | 118 | } |
118 | 119 | [data-variant="danger"] .tooltip-text { |
119 | | - background-color: var(--danger); |
120 | | - color: white; |
| 120 | + background-color: var(--danger-bg); |
| 121 | + color: var(--danger-text); |
121 | 122 | } |
122 | 123 | [data-variant="warning"] .tooltip-text { |
123 | | - background-color: var(--warning); |
124 | | - color: var(--neutral-900); |
| 124 | + background-color: var(--warning-bg); |
| 125 | + color: var(--warning-text); |
125 | 126 | } |
126 | 127 | [data-variant="info"] .tooltip-text { |
127 | | - background-color: var(--info); |
128 | | - color: white; |
| 128 | + background-color: var(--info-bg); |
| 129 | + color: var(--info-text); |
129 | 130 | } |
130 | 131 |
|
131 | 132 | /* Accessibility Improvements */ |
132 | 133 | .tooltip:focus .tooltip-text, |
133 | 134 | .tooltip:active .tooltip-text { |
134 | 135 | opacity: 1; |
135 | 136 | max-height: 200px; |
136 | | - padding: clamp(0.25rem, 1vw, 0.5rem) clamp(0.5rem, 2vw, 1rem); |
| 137 | + padding: clamp(var(--space-1), 1vw, var(--space-2)) clamp(var(--space-2), 2vw, var(--space-4)); |
| 138 | + transform: scale(1); |
137 | 139 | overflow: visible; |
138 | 140 | } |
| 141 | + |
| 142 | +/* Smooth Fade Out */ |
| 143 | +.tooltip .tooltip-text { |
| 144 | + will-change: opacity, transform; |
| 145 | +} |
0 commit comments