twntyx-css 1.0.1 → 1.0.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "twntyx-css",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "exports": {
5
5
  "./llm": "./llm/index.json",
6
6
  "./llm/components/*": "./llm/components/*.json",
package/styles/ai.css CHANGED
@@ -4,11 +4,7 @@
4
4
 
5
5
  @utility ai-perl {
6
6
  --ai-perl-size: 140px;
7
- @apply relative flex items-center justify-center select-none gap-0.5 leading-none;
8
- @apply text-text-default/25;
9
- @apply font-semibold tracking-wide;
10
- width: var(--ai-perl-size);
11
- height: var(--ai-perl-size);
7
+ @apply size-(--ai-perl-size) relative flex items-center justify-center select-none;
12
8
  }
13
9
 
14
10
  @utility ai-perl-ring {
@@ -17,9 +13,9 @@
17
13
  --ai-perl-c3: var(--color-brand-moderate);
18
14
  --ai-perl-c1-mid: var(--color-brand-soft);
19
15
  --ai-perl-c2-mid: var(--color-brand-light);
20
- --ai-perl-c3-mid: var(--color-brand-default);
16
+ --ai-perl-c3-mid: var(--color-brand-soft);
21
17
  --ai-perl-glow-1: color-mix(in srgb, var(--color-brand-moderate) 35%, transparent);
22
- --ai-perl-glow-2: color-mix(in srgb, var(--color-brand-default) 25%, transparent);
18
+ --ai-perl-glow-2: color-mix(in srgb, var(--color-brand-light) 25%, transparent);
23
19
 
24
20
  @apply absolute inset-0 rounded-full animate-ai-perl-circle pointer-events-none;
25
21
  }
@@ -9,7 +9,6 @@
9
9
  inherits: false;
10
10
  }
11
11
 
12
-
13
12
  @property --ai-orb-angle {
14
13
  syntax: '<angle>';
15
14
  inherits: false;
@@ -141,8 +140,8 @@
141
140
  )
142
141
  both;
143
142
  --animate-jump-top: bounceJumpTop 6s infinite both;
144
- --animate-state-explosion: stateExplosion 0.6s cubic-bezier(0.34, 1.56, 0.64, 1)
145
- forwards;
143
+ --animate-state-explosion: stateExplosion 0.6s
144
+ cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
146
145
  --animate-state-fire-in: stateFireIn 1s cubic-bezier(0.77, 0, 0.175, 1) both;
147
146
  --animate-state-in-top: stateInTop 1s cubic-bezier(0.77, 0, 0.175, 1) both;
148
147
  --animate-emote-animated: emoteAnimated 1.4s linear both infinite;
@@ -428,17 +427,20 @@
428
427
  --animate-flip-in: flipIn 1s cubic-bezier(0.77, 0, 0.175, 1) both;
429
428
  --animate-ripple-out: rippleOut 1s cubic-bezier(0, 0, 0.2, 1) forwards;
430
429
  --animate-success-in-top: successInTop 1s cubic-bezier(0.77, 0, 0.175, 1) both;
431
- --animate-scale-out-big: scaleOutBig 0.5s cubic-bezier(0, 0.4, 0.8, 1.01) forwards;
430
+ --animate-scale-out-big: scaleOutBig 0.5s cubic-bezier(0, 0.4, 0.8, 1.01)
431
+ forwards;
432
432
  --animate-tooltip-in-top: tooltip-in-top 0.2s ease-out;
433
433
  --animate-tooltip-in-bottom: tooltip-in-bottom 0.2s ease-out;
434
434
  --animate-tooltip-in-left: tooltip-in-left 0.2s ease-out;
435
435
  --animate-tooltip-in-right: tooltip-in-right 0.2s ease-out;
436
436
  --animate-shine: shine 10s cubic-bezier(0.7, 0, 0.3, 1) infinite;
437
- --animate-stroke-animate: stroke-animate 1s cubic-bezier(0.075, 0.82, 0.165, 1) both;
438
- --animate-chat-bubble-in: chat-bubble-in 0.2s cubic-bezier(0.77, 0, 0.175, 1) both;
437
+ --animate-stroke-animate: stroke-animate 1s
438
+ cubic-bezier(0.075, 0.82, 0.165, 1) both;
439
+ --animate-chat-bubble-in: chat-bubble-in 0.2s cubic-bezier(0.77, 0, 0.175, 1)
440
+ both;
439
441
  --animate-aurora: aurora 60s linear infinite;
440
442
 
441
- @keyframes uiInBottom {
443
+ @keyframes uiInBottom {
442
444
  0% {
443
445
  transform: translateY(100%);
444
446
  opacity: 0;
@@ -476,22 +478,19 @@
476
478
  0% {
477
479
  opacity: 1;
478
480
  transform: scale(1);
479
- box-shadow:
480
- inset 0 0 0 1rem var(--color-yellow-50),
481
+ box-shadow: inset 0 0 0 1rem var(--color-yellow-50),
481
482
  inset 0 0 0 4rem var(--color-yellow-20);
482
483
  }
483
484
  90% {
484
485
  opacity: 1;
485
486
  transform: scale(2);
486
- box-shadow:
487
- inset 0 0 0 0 var(--color-yellow-50),
487
+ box-shadow: inset 0 0 0 0 var(--color-yellow-50),
488
488
  inset 0 0 0 0 var(--color-yellow-20);
489
489
  }
490
490
  100% {
491
491
  opacity: 0;
492
492
  transform: scale(2);
493
- box-shadow:
494
- inset 0 0 0 0 var(--color-yellow-50),
493
+ box-shadow: inset 0 0 0 0 var(--color-yellow-50),
495
494
  inset 0 0 0 0 var(--color-yellow-20);
496
495
  }
497
496
  }
@@ -526,16 +525,13 @@
526
525
  @keyframes bgPattern {
527
526
  0% {
528
527
  --pattern-size: 120px;
529
- background-position:
530
- 0 0,
531
- 0 calc(var(--pattern-size) / 2),
528
+ background-position: 0 0, 0 calc(var(--pattern-size) / 2),
532
529
  calc(var(--pattern-size) / 2) calc(var(--pattern-size) / -2),
533
530
  calc(var(--pattern-size) / -2) 0;
534
531
  }
535
532
  100% {
536
533
  --pattern-size: 120px;
537
- background-position:
538
- var(--pattern-size) calc(var(--pattern-size) * -1),
534
+ background-position: var(--pattern-size) calc(var(--pattern-size) * -1),
539
535
  var(--pattern-size) calc(var(--pattern-size) * -1),
540
536
  calc(var(--pattern-size) * 1.5) calc(var(--pattern-size) * -1),
541
537
  calc(var(--pattern-size) / 2) calc(var(--pattern-size) * -1);
@@ -1044,8 +1040,7 @@
1044
1040
  @keyframes stateExplosion {
1045
1041
  0% {
1046
1042
  transform: scale(0.8);
1047
- box-shadow:
1048
- inset 0 0 0 2rem var(--color-brand-default),
1043
+ box-shadow: inset 0 0 0 2rem var(--color-brand-default),
1049
1044
  0 0 0 0 var(--color-brand-default),
1050
1045
  0 0 20px 0 var(--color-brand-default);
1051
1046
  opacity: 1;
@@ -1053,8 +1048,7 @@
1053
1048
  }
1054
1049
  50% {
1055
1050
  transform: scale(1.5);
1056
- box-shadow:
1057
- inset 0 0 0 0.5rem var(--color-brand-moderate),
1051
+ box-shadow: inset 0 0 0 0.5rem var(--color-brand-moderate),
1058
1052
  0 0 15px 5px var(--color-brand-moderate),
1059
1053
  0 0 30px 10px var(--color-brand-default);
1060
1054
  opacity: 0.8;
@@ -1062,9 +1056,7 @@
1062
1056
  }
1063
1057
  100% {
1064
1058
  transform: scale(2.5);
1065
- box-shadow:
1066
- inset 0 0 0 0 transparent,
1067
- 0 0 0 0 transparent,
1059
+ box-shadow: inset 0 0 0 0 transparent, 0 0 0 0 transparent,
1068
1060
  0 0 0 0 transparent;
1069
1061
  opacity: 0;
1070
1062
  filter: brightness(100%);
@@ -1526,7 +1518,6 @@
1526
1518
  }
1527
1519
  }
1528
1520
 
1529
-
1530
1521
  @keyframes cashCenter {
1531
1522
  0% {
1532
1523
  position: absolute;
@@ -2037,30 +2028,24 @@
2037
2028
  @keyframes ai-perl-circle {
2038
2029
  0% {
2039
2030
  transform: rotate(90deg);
2040
- box-shadow:
2041
- 0 6px 12px 0 var(--ai-perl-c1) inset,
2031
+ box-shadow: 0 6px 12px 0 var(--ai-perl-c1) inset,
2042
2032
  0 12px 18px 0 var(--ai-perl-c2) inset,
2043
2033
  0 36px 36px 0 var(--ai-perl-c3) inset,
2044
- 0 0 3px 1.2px var(--ai-perl-glow-1),
2045
- 0 0 6px 1.8px var(--ai-perl-glow-2);
2034
+ 0 0 3px 1.2px var(--ai-perl-glow-1), 0 0 6px 1.8px var(--ai-perl-glow-2);
2046
2035
  }
2047
2036
  50% {
2048
2037
  transform: rotate(270deg);
2049
- box-shadow:
2050
- 0 6px 12px 0 var(--ai-perl-c1-mid) inset,
2038
+ box-shadow: 0 6px 12px 0 var(--ai-perl-c1-mid) inset,
2051
2039
  0 12px 18px 0 var(--ai-perl-c2-mid) inset,
2052
2040
  0 36px 36px 0 var(--ai-perl-c3-mid) inset,
2053
- 0 0 3px 1.2px var(--ai-perl-glow-1),
2054
- 0 0 6px 1.8px var(--ai-perl-glow-2);
2041
+ 0 0 3px 1.2px var(--ai-perl-glow-1), 0 0 6px 1.8px var(--ai-perl-glow-2);
2055
2042
  }
2056
2043
  100% {
2057
2044
  transform: rotate(450deg);
2058
- box-shadow:
2059
- 0 6px 12px 0 var(--ai-perl-c1) inset,
2045
+ box-shadow: 0 6px 12px 0 var(--ai-perl-c1) inset,
2060
2046
  0 12px 18px 0 var(--ai-perl-c2) inset,
2061
2047
  0 36px 36px 0 var(--ai-perl-c3) inset,
2062
- 0 0 3px 1.2px var(--ai-perl-glow-1),
2063
- 0 0 6px 1.8px var(--ai-perl-glow-2);
2048
+ 0 0 3px 1.2px var(--ai-perl-glow-1), 0 0 6px 1.8px var(--ai-perl-glow-2);
2064
2049
  }
2065
2050
  }
2066
2051
 
@@ -2075,117 +2060,244 @@
2075
2060
 
2076
2061
  /* Moved from theme.css */
2077
2062
  @keyframes moveDown {
2078
- 0% { transform: translateY(0%); }
2079
- 100% { transform: translateY(100%); }
2063
+ 0% {
2064
+ transform: translateY(0%);
2065
+ }
2066
+ 100% {
2067
+ transform: translateY(100%);
2080
2068
  }
2069
+ }
2081
2070
 
2082
2071
  @keyframes moveUp {
2083
- 0% { transform: translateY(0%); }
2084
- 100% { transform: translateY(-100%); }
2072
+ 0% {
2073
+ transform: translateY(0%);
2074
+ }
2075
+ 100% {
2076
+ transform: translateY(-100%);
2085
2077
  }
2078
+ }
2086
2079
 
2087
2080
  @keyframes moveRight {
2088
- 0% { transform: translateX(0%); }
2089
- 100% { transform: translateX(100%); }
2081
+ 0% {
2082
+ transform: translateX(0%);
2090
2083
  }
2084
+ 100% {
2085
+ transform: translateX(100%);
2086
+ }
2087
+ }
2091
2088
 
2092
2089
  @keyframes moveLeft {
2093
- 0% { transform: translateX(0%); }
2094
- 100% { transform: translateX(-100%); }
2090
+ 0% {
2091
+ transform: translateX(0%);
2092
+ }
2093
+ 100% {
2094
+ transform: translateX(-100%);
2095
2095
  }
2096
+ }
2096
2097
 
2097
2098
  @keyframes modalIn {
2098
- 0% { transform: scale(0.975); opacity: 0; }
2099
- 100% { transform: scale(1); opacity: 1; }
2099
+ 0% {
2100
+ transform: scale(0.975);
2101
+ opacity: 0;
2102
+ }
2103
+ 100% {
2104
+ transform: scale(1);
2105
+ opacity: 1;
2100
2106
  }
2107
+ }
2101
2108
 
2102
2109
  @keyframes popoverInTop {
2103
- 0% { transform: translateY(-0.125rem) scale(1); opacity: 0; }
2104
- 100% { transform: translateY(0) scale(1); opacity: 1; }
2110
+ 0% {
2111
+ transform: translateY(-0.125rem) scale(1);
2112
+ opacity: 0;
2113
+ }
2114
+ 100% {
2115
+ transform: translateY(0) scale(1);
2116
+ opacity: 1;
2105
2117
  }
2118
+ }
2106
2119
 
2107
2120
  @keyframes popoverInBottom {
2108
- 0% { transform: translateY(0.125rem) scale(1); opacity: 0; }
2109
- 100% { transform: translateY(0) scale(1); opacity: 1; }
2121
+ 0% {
2122
+ transform: translateY(0.125rem) scale(1);
2123
+ opacity: 0;
2124
+ }
2125
+ 100% {
2126
+ transform: translateY(0) scale(1);
2127
+ opacity: 1;
2110
2128
  }
2129
+ }
2111
2130
 
2112
2131
  @keyframes flipIn {
2113
- 0% { opacity: 0; transform: translateZ(0) rotateY(-90deg) rotateX(0deg); }
2114
- 100% { opacity: 1; transform: translateZ(0) rotateY(0deg) rotateX(0deg); }
2132
+ 0% {
2133
+ opacity: 0;
2134
+ transform: translateZ(0) rotateY(-90deg) rotateX(0deg);
2115
2135
  }
2136
+ 100% {
2137
+ opacity: 1;
2138
+ transform: translateZ(0) rotateY(0deg) rotateX(0deg);
2139
+ }
2140
+ }
2116
2141
 
2117
2142
  @keyframes successInTop {
2118
- 0% { transform: scale(1.1) translateY(0); filter: blur(4px); opacity: 0; }
2119
- 100% { transform: scale(1) translateY(0); filter: blur(0px); opacity: 1; }
2143
+ 0% {
2144
+ transform: scale(1.1) translateY(0);
2145
+ filter: blur(4px);
2146
+ opacity: 0;
2147
+ }
2148
+ 100% {
2149
+ transform: scale(1) translateY(0);
2150
+ filter: blur(0px);
2151
+ opacity: 1;
2120
2152
  }
2153
+ }
2121
2154
 
2122
2155
  @keyframes scaleOutBig {
2123
- 0% { pointer-events: none; opacity: 1; transform: scale(1); }
2124
- 100% { pointer-events: none; opacity: 0; transform: scale(2); }
2156
+ 0% {
2157
+ pointer-events: none;
2158
+ opacity: 1;
2159
+ transform: scale(1);
2160
+ }
2161
+ 100% {
2162
+ pointer-events: none;
2163
+ opacity: 0;
2164
+ transform: scale(2);
2125
2165
  }
2166
+ }
2126
2167
 
2127
2168
  @keyframes tooltip-in-top {
2128
- 0% { opacity: 0; transform: translateY(4px); }
2129
- 100% { opacity: 1; transform: translateY(0); }
2169
+ 0% {
2170
+ opacity: 0;
2171
+ transform: translateY(4px);
2130
2172
  }
2173
+ 100% {
2174
+ opacity: 1;
2175
+ transform: translateY(0);
2176
+ }
2177
+ }
2131
2178
 
2132
2179
  @keyframes tooltip-in-bottom {
2133
- 0% { opacity: 0; transform: translateY(-4px); }
2134
- 100% { opacity: 1; transform: translateY(0); }
2180
+ 0% {
2181
+ opacity: 0;
2182
+ transform: translateY(-4px);
2183
+ }
2184
+ 100% {
2185
+ opacity: 1;
2186
+ transform: translateY(0);
2135
2187
  }
2188
+ }
2136
2189
 
2137
2190
  @keyframes tooltip-in-left {
2138
- 0% { opacity: 0; transform: translateX(4px); }
2139
- 100% { opacity: 1; transform: translateX(0); }
2191
+ 0% {
2192
+ opacity: 0;
2193
+ transform: translateX(4px);
2140
2194
  }
2195
+ 100% {
2196
+ opacity: 1;
2197
+ transform: translateX(0);
2198
+ }
2199
+ }
2141
2200
 
2142
2201
  @keyframes tooltip-in-right {
2143
- 0% { opacity: 0; transform: translateX(-4px); }
2144
- 100% { opacity: 1; transform: translateX(0); }
2202
+ 0% {
2203
+ opacity: 0;
2204
+ transform: translateX(-4px);
2145
2205
  }
2206
+ 100% {
2207
+ opacity: 1;
2208
+ transform: translateX(0);
2209
+ }
2210
+ }
2146
2211
 
2147
2212
  @keyframes fade-in {
2148
- 0% { opacity: 0; }
2149
- 100% { opacity: 1; }
2213
+ 0% {
2214
+ opacity: 0;
2215
+ }
2216
+ 100% {
2217
+ opacity: 1;
2150
2218
  }
2219
+ }
2151
2220
 
2152
2221
  @keyframes shine {
2153
- 0% { background-size: 300% auto; background-position: 160%; }
2154
- 75%, 100% { background-size: 300% auto; background-position: -30%; }
2222
+ 0% {
2223
+ background-size: 300% auto;
2224
+ background-position: 160%;
2225
+ }
2226
+ 75%,
2227
+ 100% {
2228
+ background-size: 300% auto;
2229
+ background-position: -30%;
2155
2230
  }
2231
+ }
2156
2232
 
2157
2233
  @keyframes stroke-animate {
2158
- 0% { stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 100; stroke-dashoffset: 100; opacity: 1; }
2159
- 100% { stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 100; stroke-dashoffset: 39; opacity: 0.5; }
2234
+ 0% {
2235
+ stroke-linecap: round;
2236
+ stroke-linejoin: round;
2237
+ stroke-dasharray: 100;
2238
+ stroke-dashoffset: 100;
2239
+ opacity: 1;
2160
2240
  }
2241
+ 100% {
2242
+ stroke-linecap: round;
2243
+ stroke-linejoin: round;
2244
+ stroke-dasharray: 100;
2245
+ stroke-dashoffset: 39;
2246
+ opacity: 0.5;
2247
+ }
2248
+ }
2161
2249
 
2162
2250
  @keyframes loading-text-gradient {
2163
- 0% {
2164
- background: linear-gradient(to right, var(--tw-gradient-from) 0%, var(--tw-gradient-to) 12%, var(--tw-gradient-from) 24%, var(--tw-gradient-from) 100%);
2165
- -webkit-background-clip: text;
2166
- -webkit-text-fill-color: transparent;
2167
- background-size: 300% auto;
2168
- background-position: -50%;
2169
- }
2170
- 100% {
2171
- background: linear-gradient(to right, var(--tw-gradient-from) 0%, var(--tw-gradient-to) 12%, var(--tw-gradient-from) 24%, var(--tw-gradient-from) 100%);
2172
- -webkit-background-clip: text;
2173
- -webkit-text-fill-color: transparent;
2174
- background-size: 300% auto;
2175
- background-position: -200%;
2176
- }
2251
+ 0% {
2252
+ background: linear-gradient(
2253
+ to right,
2254
+ var(--tw-gradient-from) 0%,
2255
+ var(--tw-gradient-to) 12%,
2256
+ var(--tw-gradient-from) 24%,
2257
+ var(--tw-gradient-from) 100%
2258
+ );
2259
+ -webkit-background-clip: text;
2260
+ -webkit-text-fill-color: transparent;
2261
+ background-size: 300% auto;
2262
+ background-position: -50%;
2263
+ }
2264
+ 100% {
2265
+ background: linear-gradient(
2266
+ to right,
2267
+ var(--tw-gradient-from) 0%,
2268
+ var(--tw-gradient-to) 12%,
2269
+ var(--tw-gradient-from) 24%,
2270
+ var(--tw-gradient-from) 100%
2271
+ );
2272
+ -webkit-background-clip: text;
2273
+ -webkit-text-fill-color: transparent;
2274
+ background-size: 300% auto;
2275
+ background-position: -200%;
2177
2276
  }
2277
+ }
2178
2278
 
2179
2279
  @keyframes chat-bubble-in {
2180
- 0% { transform: scale(0.8); opacity: 0; }
2181
- 100% { transform: scale(1); opacity: 1; }
2280
+ 0% {
2281
+ transform: scale(0.8);
2282
+ opacity: 0;
2283
+ }
2284
+ 100% {
2285
+ transform: scale(1);
2286
+ opacity: 1;
2182
2287
  }
2288
+ }
2183
2289
 
2184
2290
  @keyframes aurora {
2185
- 0% { background-position: 0% 50%, 0% 50%; }
2186
- 50% { background-position: 100% 50%, 100% 50%; }
2187
- 100% { background-position: 0% 50%, 0% 50%; }
2291
+ 0% {
2292
+ background-position: 0% 50%, 0% 50%;
2188
2293
  }
2294
+ 50% {
2295
+ background-position: 100% 50%, 100% 50%;
2296
+ }
2297
+ 100% {
2298
+ background-position: 0% 50%, 0% 50%;
2299
+ }
2300
+ }
2189
2301
  }
2190
2302
 
2191
2303
  .perspective {