├── .gitignore ├── .vscode └── settings.json ├── assets ├── inter.woff2 ├── me-big.webp ├── output.css └── sprite.svg ├── index.html ├── input.css ├── package.json ├── pnpm-lock.yaml └── tailwind.config.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "files.associations": { 3 | "*.css": "tailwindcss" 4 | } 5 | } -------------------------------------------------------------------------------- /assets/inter.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/midudev/curso-tailwind-abril-2025/bd20449dac5457468146213ebb3b0b1c774cf9ae/assets/inter.woff2 -------------------------------------------------------------------------------- /assets/me-big.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/midudev/curso-tailwind-abril-2025/bd20449dac5457468146213ebb3b0b1c774cf9ae/assets/me-big.webp -------------------------------------------------------------------------------- /assets/output.css: -------------------------------------------------------------------------------- 1 | /*! tailwindcss v4.1.5 | MIT License | https://tailwindcss.com */ 2 | @layer properties; 3 | @layer theme, base, components, utilities; 4 | @layer theme { 5 | :root, :host { 6 | --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", 7 | "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; 8 | --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", 9 | "Courier New", monospace; 10 | --color-orange-300: oklch(83.7% 0.128 66.29); 11 | --color-yellow-300: oklch(90.5% 0.182 98.111); 12 | --color-cyan-500: oklch(71.5% 0.143 215.221); 13 | --color-cyan-700: oklch(52% 0.105 223.128); 14 | --color-cyan-900: oklch(39.8% 0.07 227.392); 15 | --color-sky-400: oklch(74.6% 0.16 232.661); 16 | --color-sky-500: oklch(68.5% 0.169 237.323); 17 | --color-sky-950: oklch(29.3% 0.066 243.157); 18 | --color-purple-100: oklch(94.6% 0.033 307.174); 19 | --color-purple-600: oklch(55.8% 0.288 302.321); 20 | --color-pink-600: oklch(59.2% 0.249 0.584); 21 | --color-gray-800: oklch(27.8% 0.033 256.848); 22 | --color-zinc-900: oklch(21% 0.006 285.885); 23 | --color-black: #000; 24 | --color-white: #fff; 25 | --spacing: 0.25rem; 26 | --container-xl: 36rem; 27 | --text-xs: 0.75rem; 28 | --text-xs--line-height: calc(1 / 0.75); 29 | --text-sm: 0.875rem; 30 | --text-sm--line-height: calc(1.25 / 0.875); 31 | --text-xl: 1.25rem; 32 | --text-xl--line-height: calc(1.75 / 1.25); 33 | --text-2xl: 1.5rem; 34 | --text-2xl--line-height: calc(2 / 1.5); 35 | --text-3xl: 1.875rem; 36 | --text-3xl--line-height: calc(2.25 / 1.875); 37 | --font-weight-bold: 700; 38 | --font-weight-extrabold: 800; 39 | --leading-tight: 1.25; 40 | --radius-xl: 0.75rem; 41 | --radius-3xl: 1.5rem; 42 | --default-transition-duration: 150ms; 43 | --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 44 | --default-font-family: var(--font-sans); 45 | --default-mono-font-family: var(--font-mono); 46 | --color-midu-lol: #f8dbff; 47 | --color-html: #E44D26; 48 | --font-display: 'Inter', system-ui, sans-serif; 49 | } 50 | } 51 | @layer base { 52 | *, ::after, ::before, ::backdrop, ::file-selector-button { 53 | box-sizing: border-box; 54 | margin: 0; 55 | padding: 0; 56 | border: 0 solid; 57 | } 58 | html, :host { 59 | line-height: 1.5; 60 | -webkit-text-size-adjust: 100%; 61 | tab-size: 4; 62 | font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"); 63 | font-feature-settings: var(--default-font-feature-settings, normal); 64 | font-variation-settings: var(--default-font-variation-settings, normal); 65 | -webkit-tap-highlight-color: transparent; 66 | } 67 | hr { 68 | height: 0; 69 | color: inherit; 70 | border-top-width: 1px; 71 | } 72 | abbr:where([title]) { 73 | -webkit-text-decoration: underline dotted; 74 | text-decoration: underline dotted; 75 | } 76 | h1, h2, h3, h4, h5, h6 { 77 | font-size: inherit; 78 | font-weight: inherit; 79 | } 80 | a { 81 | color: inherit; 82 | -webkit-text-decoration: inherit; 83 | text-decoration: inherit; 84 | } 85 | b, strong { 86 | font-weight: bolder; 87 | } 88 | code, kbd, samp, pre { 89 | font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace); 90 | font-feature-settings: var(--default-mono-font-feature-settings, normal); 91 | font-variation-settings: var(--default-mono-font-variation-settings, normal); 92 | font-size: 1em; 93 | } 94 | small { 95 | font-size: 80%; 96 | } 97 | sub, sup { 98 | font-size: 75%; 99 | line-height: 0; 100 | position: relative; 101 | vertical-align: baseline; 102 | } 103 | sub { 104 | bottom: -0.25em; 105 | } 106 | sup { 107 | top: -0.5em; 108 | } 109 | table { 110 | text-indent: 0; 111 | border-color: inherit; 112 | border-collapse: collapse; 113 | } 114 | :-moz-focusring { 115 | outline: auto; 116 | } 117 | progress { 118 | vertical-align: baseline; 119 | } 120 | summary { 121 | display: list-item; 122 | } 123 | ol, ul, menu { 124 | list-style: none; 125 | } 126 | img, svg, video, canvas, audio, iframe, embed, object { 127 | display: block; 128 | vertical-align: middle; 129 | } 130 | img, video { 131 | max-width: 100%; 132 | height: auto; 133 | } 134 | button, input, select, optgroup, textarea, ::file-selector-button { 135 | font: inherit; 136 | font-feature-settings: inherit; 137 | font-variation-settings: inherit; 138 | letter-spacing: inherit; 139 | color: inherit; 140 | border-radius: 0; 141 | background-color: transparent; 142 | opacity: 1; 143 | } 144 | :where(select:is([multiple], [size])) optgroup { 145 | font-weight: bolder; 146 | } 147 | :where(select:is([multiple], [size])) optgroup option { 148 | padding-inline-start: 20px; 149 | } 150 | ::file-selector-button { 151 | margin-inline-end: 4px; 152 | } 153 | ::placeholder { 154 | opacity: 1; 155 | } 156 | @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) { 157 | ::placeholder { 158 | color: currentcolor; 159 | @supports (color: color-mix(in lab, red, red)) { 160 | color: color-mix(in oklab, currentcolor 50%, transparent); 161 | } 162 | } 163 | } 164 | textarea { 165 | resize: vertical; 166 | } 167 | ::-webkit-search-decoration { 168 | -webkit-appearance: none; 169 | } 170 | ::-webkit-date-and-time-value { 171 | min-height: 1lh; 172 | text-align: inherit; 173 | } 174 | ::-webkit-datetime-edit { 175 | display: inline-flex; 176 | } 177 | ::-webkit-datetime-edit-fields-wrapper { 178 | padding: 0; 179 | } 180 | ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field { 181 | padding-block: 0; 182 | } 183 | :-moz-ui-invalid { 184 | box-shadow: none; 185 | } 186 | button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button { 187 | appearance: button; 188 | } 189 | ::-webkit-inner-spin-button, ::-webkit-outer-spin-button { 190 | height: auto; 191 | } 192 | [hidden]:where(:not([hidden="until-found"])) { 193 | display: none !important; 194 | } 195 | } 196 | @layer utilities { 197 | .absolute { 198 | position: absolute; 199 | } 200 | .relative { 201 | position: relative; 202 | } 203 | .top-2 { 204 | top: calc(var(--spacing) * 2); 205 | } 206 | .-right-4 { 207 | right: calc(var(--spacing) * -4); 208 | } 209 | .-bottom-4 { 210 | bottom: calc(var(--spacing) * -4); 211 | } 212 | .bottom-2 { 213 | bottom: calc(var(--spacing) * 2); 214 | } 215 | .left-4 { 216 | left: calc(var(--spacing) * 4); 217 | } 218 | .z-10 { 219 | z-index: 10; 220 | } 221 | .col-span-1 { 222 | grid-column: span 1 / span 1; 223 | } 224 | .col-span-2 { 225 | grid-column: span 2 / span 2; 226 | } 227 | .mx-auto { 228 | margin-inline: auto; 229 | } 230 | .-mt-4 { 231 | margin-top: calc(var(--spacing) * -4); 232 | } 233 | .mt-1 { 234 | margin-top: calc(var(--spacing) * 1); 235 | } 236 | .mt-4 { 237 | margin-top: calc(var(--spacing) * 4); 238 | } 239 | .mb-8 { 240 | margin-bottom: calc(var(--spacing) * 8); 241 | } 242 | .ml-1 { 243 | margin-left: calc(var(--spacing) * 1); 244 | } 245 | .flex { 246 | display: flex; 247 | } 248 | .grid { 249 | display: grid; 250 | } 251 | .inline { 252 | display: inline; 253 | } 254 | .size-28 { 255 | width: calc(var(--spacing) * 28); 256 | height: calc(var(--spacing) * 28); 257 | } 258 | .h-5 { 259 | height: calc(var(--spacing) * 5); 260 | } 261 | .h-\[50vh\] { 262 | height: 50vh; 263 | } 264 | .min-h-\[180px\] { 265 | min-height: 180px; 266 | } 267 | .min-h-dvh { 268 | min-height: 100dvh; 269 | } 270 | .w-5 { 271 | width: calc(var(--spacing) * 5); 272 | } 273 | .w-full { 274 | width: 100%; 275 | } 276 | .max-w-xl { 277 | max-width: var(--container-xl); 278 | } 279 | .-rotate-6 { 280 | rotate: calc(6deg * -1); 281 | } 282 | .transform { 283 | transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,); 284 | } 285 | .animate-pulse-fade-in { 286 | animation: pulse-fade-in 0.6s ease-out both; 287 | } 288 | .animate-slide-up-fade { 289 | animation: slide-up-fade 0.6s ease-out both; 290 | } 291 | .cursor-crosshair { 292 | cursor: crosshair; 293 | } 294 | .grid-cols-3 { 295 | grid-template-columns: repeat(3, minmax(0, 1fr)); 296 | } 297 | .grid-rows-2 { 298 | grid-template-rows: repeat(2, minmax(0, 1fr)); 299 | } 300 | .flex-col { 301 | flex-direction: column; 302 | } 303 | .items-center { 304 | align-items: center; 305 | } 306 | .items-start { 307 | align-items: flex-start; 308 | } 309 | .justify-center { 310 | justify-content: center; 311 | } 312 | .gap-2 { 313 | gap: calc(var(--spacing) * 2); 314 | } 315 | .overflow-hidden { 316 | overflow: hidden; 317 | } 318 | .rounded-3xl { 319 | border-radius: var(--radius-3xl); 320 | } 321 | .rounded-full { 322 | border-radius: calc(infinity * 1px); 323 | } 324 | .rounded-xl { 325 | border-radius: var(--radius-xl); 326 | } 327 | .border { 328 | border-style: var(--tw-border-style); 329 | border-width: 1px; 330 | } 331 | .border-\[\#215732\] { 332 | border-color: #215732; 333 | } 334 | .border-\[\#663399\] { 335 | border-color: #663399; 336 | } 337 | .border-cyan-900 { 338 | border-color: var(--color-cyan-900); 339 | } 340 | .border-html { 341 | border-color: var(--color-html); 342 | } 343 | .border-sky-500\/50 { 344 | border-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 50%, transparent); 345 | @supports (color: color-mix(in lab, red, red)) { 346 | border-color: color-mix(in oklab, var(--color-sky-500) 50%, transparent); 347 | } 348 | } 349 | .bg-black { 350 | background-color: var(--color-black); 351 | } 352 | .bg-black\/65 { 353 | background-color: color-mix(in srgb, #000 65%, transparent); 354 | @supports (color: color-mix(in lab, red, red)) { 355 | background-color: color-mix(in oklab, var(--color-black) 65%, transparent); 356 | } 357 | } 358 | .bg-purple-100 { 359 | background-color: var(--color-purple-100); 360 | } 361 | .bg-white { 362 | background-color: var(--color-white); 363 | } 364 | .bg-zinc-900 { 365 | background-color: var(--color-zinc-900); 366 | } 367 | .bg-gradient-to-b { 368 | --tw-gradient-position: to bottom in oklab; 369 | background-image: linear-gradient(var(--tw-gradient-stops)); 370 | } 371 | .bg-gradient-to-br { 372 | --tw-gradient-position: to bottom right in oklab; 373 | background-image: linear-gradient(var(--tw-gradient-stops)); 374 | } 375 | .bg-gradient-to-tr { 376 | --tw-gradient-position: to top right in oklab; 377 | background-image: linear-gradient(var(--tw-gradient-stops)); 378 | } 379 | .from-\[\#215732\] { 380 | --tw-gradient-from: #215732; 381 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 382 | } 383 | .from-\[\#663399\] { 384 | --tw-gradient-from: #663399; 385 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 386 | } 387 | .from-black { 388 | --tw-gradient-from: var(--color-black); 389 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 390 | } 391 | .from-cyan-900 { 392 | --tw-gradient-from: var(--color-cyan-900); 393 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 394 | } 395 | .from-html { 396 | --tw-gradient-from: var(--color-html); 397 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 398 | } 399 | .from-yellow-300 { 400 | --tw-gradient-from: var(--color-yellow-300); 401 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 402 | } 403 | .via-\[\#3C873A\] { 404 | --tw-gradient-via: #3C873A; 405 | --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); 406 | --tw-gradient-stops: var(--tw-gradient-via-stops); 407 | } 408 | .via-\[\#8e44ad\] { 409 | --tw-gradient-via: #8e44ad; 410 | --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); 411 | --tw-gradient-stops: var(--tw-gradient-via-stops); 412 | } 413 | .via-cyan-700 { 414 | --tw-gradient-via: var(--color-cyan-700); 415 | --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); 416 | --tw-gradient-stops: var(--tw-gradient-via-stops); 417 | } 418 | .via-orange-300 { 419 | --tw-gradient-via: var(--color-orange-300); 420 | --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); 421 | --tw-gradient-stops: var(--tw-gradient-via-stops); 422 | } 423 | .via-pink-600 { 424 | --tw-gradient-via: var(--color-pink-600); 425 | --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); 426 | --tw-gradient-stops: var(--tw-gradient-via-stops); 427 | } 428 | .via-sky-950 { 429 | --tw-gradient-via: var(--color-sky-950); 430 | --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); 431 | --tw-gradient-stops: var(--tw-gradient-via-stops); 432 | } 433 | .to-\[\#8CC84B\] { 434 | --tw-gradient-to: #8CC84B; 435 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 436 | } 437 | .to-cyan-500 { 438 | --tw-gradient-to: var(--color-cyan-500); 439 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 440 | } 441 | .to-gray-800 { 442 | --tw-gradient-to: var(--color-gray-800); 443 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 444 | } 445 | .to-purple-600 { 446 | --tw-gradient-to: var(--color-purple-600); 447 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 448 | } 449 | .to-white { 450 | --tw-gradient-to: var(--color-white); 451 | --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); 452 | } 453 | .mask-radial-from-45\% { 454 | mask-image: var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic); 455 | mask-composite: intersect; 456 | --tw-mask-radial-stops: var(--tw-mask-radial-shape) var(--tw-mask-radial-size) at var(--tw-mask-radial-position), var(--tw-mask-radial-from-color) var(--tw-mask-radial-from-position), var(--tw-mask-radial-to-color) var(--tw-mask-radial-to-position); 457 | --tw-mask-radial: radial-gradient(var(--tw-mask-radial-stops)); 458 | --tw-mask-radial-from-position: 45%; 459 | } 460 | .mask-radial-to-80\% { 461 | mask-image: var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic); 462 | mask-composite: intersect; 463 | --tw-mask-radial-stops: var(--tw-mask-radial-shape) var(--tw-mask-radial-size) at var(--tw-mask-radial-position), var(--tw-mask-radial-from-color) var(--tw-mask-radial-from-position), var(--tw-mask-radial-to-color) var(--tw-mask-radial-to-position); 464 | --tw-mask-radial: radial-gradient(var(--tw-mask-radial-stops)); 465 | --tw-mask-radial-to-position: 80%; 466 | } 467 | .mask-radial-at-center { 468 | --tw-mask-radial-position: center; 469 | } 470 | .object-cover { 471 | object-fit: cover; 472 | } 473 | .p-7 { 474 | padding: calc(var(--spacing) * 7); 475 | } 476 | .px-1 { 477 | padding-inline: calc(var(--spacing) * 1); 478 | } 479 | .px-3 { 480 | padding-inline: calc(var(--spacing) * 3); 481 | } 482 | .px-4 { 483 | padding-inline: calc(var(--spacing) * 4); 484 | } 485 | .py-0\.5 { 486 | padding-block: calc(var(--spacing) * 0.5); 487 | } 488 | .py-1 { 489 | padding-block: calc(var(--spacing) * 1); 490 | } 491 | .pt-4 { 492 | padding-top: calc(var(--spacing) * 4); 493 | } 494 | .pb-16 { 495 | padding-bottom: calc(var(--spacing) * 16); 496 | } 497 | .text-center { 498 | text-align: center; 499 | } 500 | .font-display { 501 | font-family: var(--font-display); 502 | } 503 | .font-mono { 504 | font-family: var(--font-mono); 505 | } 506 | .text-2xl { 507 | font-size: var(--text-2xl); 508 | line-height: var(--tw-leading, var(--text-2xl--line-height)); 509 | } 510 | .text-3xl { 511 | font-size: var(--text-3xl); 512 | line-height: var(--tw-leading, var(--text-3xl--line-height)); 513 | } 514 | .text-sm { 515 | font-size: var(--text-sm); 516 | line-height: var(--tw-leading, var(--text-sm--line-height)); 517 | } 518 | .text-xl { 519 | font-size: var(--text-xl); 520 | line-height: var(--tw-leading, var(--text-xl--line-height)); 521 | } 522 | .text-xs { 523 | font-size: var(--text-xs); 524 | line-height: var(--tw-leading, var(--text-xs--line-height)); 525 | } 526 | .leading-tight { 527 | --tw-leading: var(--leading-tight); 528 | line-height: var(--leading-tight); 529 | } 530 | .font-bold { 531 | --tw-font-weight: var(--font-weight-bold); 532 | font-weight: var(--font-weight-bold); 533 | } 534 | .font-extrabold { 535 | --tw-font-weight: var(--font-weight-extrabold); 536 | font-weight: var(--font-weight-extrabold); 537 | } 538 | .text-balance { 539 | text-wrap: balance; 540 | } 541 | .text-midu-lol { 542 | color: var(--color-midu-lol); 543 | } 544 | .text-sky-400 { 545 | color: var(--color-sky-400); 546 | } 547 | .text-white { 548 | color: var(--color-white); 549 | } 550 | .shadow-sm { 551 | --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); 552 | box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); 553 | } 554 | .transition { 555 | transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events; 556 | transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); 557 | transition-duration: var(--tw-duration, var(--default-transition-duration)); 558 | } 559 | .transition-transform { 560 | transition-property: transform, translate, scale, rotate; 561 | transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); 562 | transition-duration: var(--tw-duration, var(--default-transition-duration)); 563 | } 564 | .animate-delay-100 { 565 | animation-delay: 100ms; 566 | } 567 | .animate-delay-200 { 568 | animation-delay: 200ms; 569 | } 570 | .animate-delay-300 { 571 | animation-delay: 300ms; 572 | } 573 | .animate-delay-400 { 574 | animation-delay: 400ms; 575 | } 576 | .animate-delay-500 { 577 | animation-delay: 500ms; 578 | } 579 | .group-hover\:-translate-y-1 { 580 | &:is(:where(.group):hover *) { 581 | @media (hover: hover) { 582 | --tw-translate-y: calc(var(--spacing) * -1); 583 | translate: var(--tw-translate-x) var(--tw-translate-y); 584 | } 585 | } 586 | } 587 | .group-hover\:scale-125 { 588 | &:is(:where(.group):hover *) { 589 | @media (hover: hover) { 590 | --tw-scale-x: 125%; 591 | --tw-scale-y: 125%; 592 | --tw-scale-z: 125%; 593 | scale: var(--tw-scale-x) var(--tw-scale-y); 594 | } 595 | } 596 | } 597 | .group-hover\:-rotate-12 { 598 | &:is(:where(.group):hover *) { 599 | @media (hover: hover) { 600 | rotate: calc(12deg * -1); 601 | } 602 | } 603 | } 604 | .hover\:scale-105 { 605 | &:hover { 606 | @media (hover: hover) { 607 | --tw-scale-x: 105%; 608 | --tw-scale-y: 105%; 609 | --tw-scale-z: 105%; 610 | scale: var(--tw-scale-x) var(--tw-scale-y); 611 | } 612 | } 613 | } 614 | .hover\:contrast-125 { 615 | &:hover { 616 | @media (hover: hover) { 617 | --tw-contrast: contrast(125%); 618 | filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,); 619 | } 620 | } 621 | } 622 | } 623 | @font-face { 624 | font-family: 'Inter'; 625 | src: url('/assets/inter.woff2') format('woff2'); 626 | font-style: normal; 627 | font-weight: 100 700; 628 | font-display: swap; 629 | } 630 | .social-button { 631 | display: flex; 632 | width: calc(var(--spacing) * 10); 633 | height: calc(var(--spacing) * 10); 634 | align-items: center; 635 | justify-content: center; 636 | border-radius: calc(infinity * 1px); 637 | padding: calc(var(--spacing) * 2); 638 | transition-property: transform, translate, scale, rotate; 639 | transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); 640 | transition-duration: var(--tw-duration, var(--default-transition-duration)); 641 | &:hover { 642 | @media (hover: hover) { 643 | --tw-scale-x: 110%; 644 | --tw-scale-y: 110%; 645 | --tw-scale-z: 110%; 646 | scale: var(--tw-scale-x) var(--tw-scale-y); 647 | } 648 | } 649 | @media (width >= 350px) { 650 | width: calc(var(--spacing) * 12); 651 | height: calc(var(--spacing) * 12); 652 | } 653 | } 654 | @property --tw-rotate-x { 655 | syntax: "*"; 656 | inherits: false; 657 | } 658 | @property --tw-rotate-y { 659 | syntax: "*"; 660 | inherits: false; 661 | } 662 | @property --tw-rotate-z { 663 | syntax: "*"; 664 | inherits: false; 665 | } 666 | @property --tw-skew-x { 667 | syntax: "*"; 668 | inherits: false; 669 | } 670 | @property --tw-skew-y { 671 | syntax: "*"; 672 | inherits: false; 673 | } 674 | @property --tw-border-style { 675 | syntax: "*"; 676 | inherits: false; 677 | initial-value: solid; 678 | } 679 | @property --tw-gradient-position { 680 | syntax: "*"; 681 | inherits: false; 682 | } 683 | @property --tw-gradient-from { 684 | syntax: ""; 685 | inherits: false; 686 | initial-value: #0000; 687 | } 688 | @property --tw-gradient-via { 689 | syntax: ""; 690 | inherits: false; 691 | initial-value: #0000; 692 | } 693 | @property --tw-gradient-to { 694 | syntax: ""; 695 | inherits: false; 696 | initial-value: #0000; 697 | } 698 | @property --tw-gradient-stops { 699 | syntax: "*"; 700 | inherits: false; 701 | } 702 | @property --tw-gradient-via-stops { 703 | syntax: "*"; 704 | inherits: false; 705 | } 706 | @property --tw-gradient-from-position { 707 | syntax: ""; 708 | inherits: false; 709 | initial-value: 0%; 710 | } 711 | @property --tw-gradient-via-position { 712 | syntax: ""; 713 | inherits: false; 714 | initial-value: 50%; 715 | } 716 | @property --tw-gradient-to-position { 717 | syntax: ""; 718 | inherits: false; 719 | initial-value: 100%; 720 | } 721 | @property --tw-mask-linear { 722 | syntax: "*"; 723 | inherits: false; 724 | initial-value: linear-gradient(#fff, #fff); 725 | } 726 | @property --tw-mask-radial { 727 | syntax: "*"; 728 | inherits: false; 729 | initial-value: linear-gradient(#fff, #fff); 730 | } 731 | @property --tw-mask-conic { 732 | syntax: "*"; 733 | inherits: false; 734 | initial-value: linear-gradient(#fff, #fff); 735 | } 736 | @property --tw-mask-radial-from-position { 737 | syntax: "*"; 738 | inherits: false; 739 | initial-value: 0%; 740 | } 741 | @property --tw-mask-radial-to-position { 742 | syntax: "*"; 743 | inherits: false; 744 | initial-value: 100%; 745 | } 746 | @property --tw-mask-radial-from-color { 747 | syntax: "*"; 748 | inherits: false; 749 | initial-value: black; 750 | } 751 | @property --tw-mask-radial-to-color { 752 | syntax: "*"; 753 | inherits: false; 754 | initial-value: transparent; 755 | } 756 | @property --tw-mask-radial-shape { 757 | syntax: "*"; 758 | inherits: false; 759 | initial-value: ellipse; 760 | } 761 | @property --tw-mask-radial-size { 762 | syntax: "*"; 763 | inherits: false; 764 | initial-value: farthest-corner; 765 | } 766 | @property --tw-mask-radial-position { 767 | syntax: "*"; 768 | inherits: false; 769 | initial-value: center; 770 | } 771 | @property --tw-leading { 772 | syntax: "*"; 773 | inherits: false; 774 | } 775 | @property --tw-font-weight { 776 | syntax: "*"; 777 | inherits: false; 778 | } 779 | @property --tw-shadow { 780 | syntax: "*"; 781 | inherits: false; 782 | initial-value: 0 0 #0000; 783 | } 784 | @property --tw-shadow-color { 785 | syntax: "*"; 786 | inherits: false; 787 | } 788 | @property --tw-shadow-alpha { 789 | syntax: ""; 790 | inherits: false; 791 | initial-value: 100%; 792 | } 793 | @property --tw-inset-shadow { 794 | syntax: "*"; 795 | inherits: false; 796 | initial-value: 0 0 #0000; 797 | } 798 | @property --tw-inset-shadow-color { 799 | syntax: "*"; 800 | inherits: false; 801 | } 802 | @property --tw-inset-shadow-alpha { 803 | syntax: ""; 804 | inherits: false; 805 | initial-value: 100%; 806 | } 807 | @property --tw-ring-color { 808 | syntax: "*"; 809 | inherits: false; 810 | } 811 | @property --tw-ring-shadow { 812 | syntax: "*"; 813 | inherits: false; 814 | initial-value: 0 0 #0000; 815 | } 816 | @property --tw-inset-ring-color { 817 | syntax: "*"; 818 | inherits: false; 819 | } 820 | @property --tw-inset-ring-shadow { 821 | syntax: "*"; 822 | inherits: false; 823 | initial-value: 0 0 #0000; 824 | } 825 | @property --tw-ring-inset { 826 | syntax: "*"; 827 | inherits: false; 828 | } 829 | @property --tw-ring-offset-width { 830 | syntax: ""; 831 | inherits: false; 832 | initial-value: 0px; 833 | } 834 | @property --tw-ring-offset-color { 835 | syntax: "*"; 836 | inherits: false; 837 | initial-value: #fff; 838 | } 839 | @property --tw-ring-offset-shadow { 840 | syntax: "*"; 841 | inherits: false; 842 | initial-value: 0 0 #0000; 843 | } 844 | @property --tw-translate-x { 845 | syntax: "*"; 846 | inherits: false; 847 | initial-value: 0; 848 | } 849 | @property --tw-translate-y { 850 | syntax: "*"; 851 | inherits: false; 852 | initial-value: 0; 853 | } 854 | @property --tw-translate-z { 855 | syntax: "*"; 856 | inherits: false; 857 | initial-value: 0; 858 | } 859 | @property --tw-scale-x { 860 | syntax: "*"; 861 | inherits: false; 862 | initial-value: 1; 863 | } 864 | @property --tw-scale-y { 865 | syntax: "*"; 866 | inherits: false; 867 | initial-value: 1; 868 | } 869 | @property --tw-scale-z { 870 | syntax: "*"; 871 | inherits: false; 872 | initial-value: 1; 873 | } 874 | @property --tw-blur { 875 | syntax: "*"; 876 | inherits: false; 877 | } 878 | @property --tw-brightness { 879 | syntax: "*"; 880 | inherits: false; 881 | } 882 | @property --tw-contrast { 883 | syntax: "*"; 884 | inherits: false; 885 | } 886 | @property --tw-grayscale { 887 | syntax: "*"; 888 | inherits: false; 889 | } 890 | @property --tw-hue-rotate { 891 | syntax: "*"; 892 | inherits: false; 893 | } 894 | @property --tw-invert { 895 | syntax: "*"; 896 | inherits: false; 897 | } 898 | @property --tw-opacity { 899 | syntax: "*"; 900 | inherits: false; 901 | } 902 | @property --tw-saturate { 903 | syntax: "*"; 904 | inherits: false; 905 | } 906 | @property --tw-sepia { 907 | syntax: "*"; 908 | inherits: false; 909 | } 910 | @property --tw-drop-shadow { 911 | syntax: "*"; 912 | inherits: false; 913 | } 914 | @property --tw-drop-shadow-color { 915 | syntax: "*"; 916 | inherits: false; 917 | } 918 | @property --tw-drop-shadow-alpha { 919 | syntax: ""; 920 | inherits: false; 921 | initial-value: 100%; 922 | } 923 | @property --tw-drop-shadow-size { 924 | syntax: "*"; 925 | inherits: false; 926 | } 927 | @keyframes slide-up-fade { 928 | 0% { 929 | opacity: 0; 930 | transform: translateY(50px); 931 | } 932 | 100% { 933 | opacity: 1; 934 | transform: translateY(0); 935 | } 936 | } 937 | @keyframes pulse-fade-in { 938 | 0% { 939 | transform: scale(0.9); 940 | opacity: 0; 941 | } 942 | 50% { 943 | transform: scale(1.05); 944 | opacity: 0.5; 945 | } 946 | 100% { 947 | transform: scale(1); 948 | opacity: 1; 949 | } 950 | } 951 | @layer properties { 952 | @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) { 953 | *, ::before, ::after, ::backdrop { 954 | --tw-rotate-x: initial; 955 | --tw-rotate-y: initial; 956 | --tw-rotate-z: initial; 957 | --tw-skew-x: initial; 958 | --tw-skew-y: initial; 959 | --tw-border-style: solid; 960 | --tw-gradient-position: initial; 961 | --tw-gradient-from: #0000; 962 | --tw-gradient-via: #0000; 963 | --tw-gradient-to: #0000; 964 | --tw-gradient-stops: initial; 965 | --tw-gradient-via-stops: initial; 966 | --tw-gradient-from-position: 0%; 967 | --tw-gradient-via-position: 50%; 968 | --tw-gradient-to-position: 100%; 969 | --tw-mask-linear: linear-gradient(#fff, #fff); 970 | --tw-mask-radial: linear-gradient(#fff, #fff); 971 | --tw-mask-conic: linear-gradient(#fff, #fff); 972 | --tw-mask-radial-from-position: 0%; 973 | --tw-mask-radial-to-position: 100%; 974 | --tw-mask-radial-from-color: black; 975 | --tw-mask-radial-to-color: transparent; 976 | --tw-mask-radial-shape: ellipse; 977 | --tw-mask-radial-size: farthest-corner; 978 | --tw-mask-radial-position: center; 979 | --tw-leading: initial; 980 | --tw-font-weight: initial; 981 | --tw-shadow: 0 0 #0000; 982 | --tw-shadow-color: initial; 983 | --tw-shadow-alpha: 100%; 984 | --tw-inset-shadow: 0 0 #0000; 985 | --tw-inset-shadow-color: initial; 986 | --tw-inset-shadow-alpha: 100%; 987 | --tw-ring-color: initial; 988 | --tw-ring-shadow: 0 0 #0000; 989 | --tw-inset-ring-color: initial; 990 | --tw-inset-ring-shadow: 0 0 #0000; 991 | --tw-ring-inset: initial; 992 | --tw-ring-offset-width: 0px; 993 | --tw-ring-offset-color: #fff; 994 | --tw-ring-offset-shadow: 0 0 #0000; 995 | --tw-translate-x: 0; 996 | --tw-translate-y: 0; 997 | --tw-translate-z: 0; 998 | --tw-scale-x: 1; 999 | --tw-scale-y: 1; 1000 | --tw-scale-z: 1; 1001 | --tw-blur: initial; 1002 | --tw-brightness: initial; 1003 | --tw-contrast: initial; 1004 | --tw-grayscale: initial; 1005 | --tw-hue-rotate: initial; 1006 | --tw-invert: initial; 1007 | --tw-opacity: initial; 1008 | --tw-saturate: initial; 1009 | --tw-sepia: initial; 1010 | --tw-drop-shadow: initial; 1011 | --tw-drop-shadow-color: initial; 1012 | --tw-drop-shadow-alpha: 100%; 1013 | --tw-drop-shadow-size: initial; 1014 | } 1015 | } 1016 | } 1017 | -------------------------------------------------------------------------------- /assets/sprite.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | midu.links - Enlaces de midudev y cursos 8 | 9 | 10 | 11 | 16 |
17 | midudev sonriendo 19 | 20 |
21 | 29 | @midudev 30 | 35 | 36 | 37 |

38 | Miguel Ángel Durán 39 |

40 |
41 | 42 |
43 | 49 | 50 | 56 | 57 | 58 | 64 | 65 | 66 | 72 | 73 | 74 | 80 | 81 | 82 | 88 |
89 | 90 |

91 | Divulgador de programación, streamer y creador de contenido. Enseñando JavaScript, React, Node.js de forma 92 | divertida 93 |

94 | 95 |
96 | 185 |
186 | 187 |
188 | 189 | 190 | 191 | -------------------------------------------------------------------------------- /input.css: -------------------------------------------------------------------------------- 1 | @import "tailwindcss"; 2 | @plugin "@midudev/tailwind-animations"; 3 | 4 | @font-face { 5 | font-family: 'Inter'; 6 | src: url('/assets/inter.woff2') format('woff2'); 7 | font-style: normal; 8 | font-weight: 100 700; 9 | font-display: swap; 10 | } 11 | 12 | @theme { 13 | /* Colores */ 14 | --color-primary: #09f; 15 | --color-primary-light: #ceecff; 16 | --color-primary-dark: rgb(0, 22, 83); 17 | --color-midu-lol: #f8dbff; 18 | --color-midu-lol-light: #ceecff; 19 | 20 | --color-html: #E44D26; 21 | 22 | /* Fuentes */ 23 | --font-display: 'Inter', system-ui, sans-serif; 24 | 25 | /* Breakpoints */ 26 | --breakpoint-xs: 350px; 27 | } 28 | 29 | .social-button { 30 | @apply p-2 size-10 xs:size-12 flex items-center justify-center rounded-full hover:scale-110 transition-transform; 31 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "midu-links", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "build:styles": "pnpx @tailwindcss/cli -i ./input.css -o ./assets/output.css --watch" 8 | }, 9 | "keywords": [], 10 | "author": "", 11 | "license": "ISC", 12 | "packageManager": "pnpm@10.8.0", 13 | "dependencies": { 14 | "@midudev/tailwind-animations": "^0.2.0", 15 | "@tailwindcss/cli": "^4.1.5", 16 | "tailwindcss": "^4.1.5" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@midudev/tailwind-animations': 12 | specifier: ^0.2.0 13 | version: 0.2.0(tailwindcss@4.1.5) 14 | '@tailwindcss/cli': 15 | specifier: ^4.1.5 16 | version: 4.1.5 17 | tailwindcss: 18 | specifier: ^4.1.5 19 | version: 4.1.5 20 | 21 | packages: 22 | 23 | '@midudev/tailwind-animations@0.2.0': 24 | resolution: {integrity: sha512-4mktb060dA7SZz0LjMfhBT30HWPmQENwF4AJC7/etESWohe4pukST0ohC2yAePS5GNinhY3MXmZZ8//2ywafOQ==} 25 | peerDependencies: 26 | tailwindcss: ^3.0.0 || ^4.0.0 27 | 28 | '@parcel/watcher-android-arm64@2.5.1': 29 | resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==} 30 | engines: {node: '>= 10.0.0'} 31 | cpu: [arm64] 32 | os: [android] 33 | 34 | '@parcel/watcher-darwin-arm64@2.5.1': 35 | resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==} 36 | engines: {node: '>= 10.0.0'} 37 | cpu: [arm64] 38 | os: [darwin] 39 | 40 | '@parcel/watcher-darwin-x64@2.5.1': 41 | resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==} 42 | engines: {node: '>= 10.0.0'} 43 | cpu: [x64] 44 | os: [darwin] 45 | 46 | '@parcel/watcher-freebsd-x64@2.5.1': 47 | resolution: {integrity: sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==} 48 | engines: {node: '>= 10.0.0'} 49 | cpu: [x64] 50 | os: [freebsd] 51 | 52 | '@parcel/watcher-linux-arm-glibc@2.5.1': 53 | resolution: {integrity: sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==} 54 | engines: {node: '>= 10.0.0'} 55 | cpu: [arm] 56 | os: [linux] 57 | 58 | '@parcel/watcher-linux-arm-musl@2.5.1': 59 | resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==} 60 | engines: {node: '>= 10.0.0'} 61 | cpu: [arm] 62 | os: [linux] 63 | 64 | '@parcel/watcher-linux-arm64-glibc@2.5.1': 65 | resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==} 66 | engines: {node: '>= 10.0.0'} 67 | cpu: [arm64] 68 | os: [linux] 69 | 70 | '@parcel/watcher-linux-arm64-musl@2.5.1': 71 | resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==} 72 | engines: {node: '>= 10.0.0'} 73 | cpu: [arm64] 74 | os: [linux] 75 | 76 | '@parcel/watcher-linux-x64-glibc@2.5.1': 77 | resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==} 78 | engines: {node: '>= 10.0.0'} 79 | cpu: [x64] 80 | os: [linux] 81 | 82 | '@parcel/watcher-linux-x64-musl@2.5.1': 83 | resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==} 84 | engines: {node: '>= 10.0.0'} 85 | cpu: [x64] 86 | os: [linux] 87 | 88 | '@parcel/watcher-win32-arm64@2.5.1': 89 | resolution: {integrity: sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==} 90 | engines: {node: '>= 10.0.0'} 91 | cpu: [arm64] 92 | os: [win32] 93 | 94 | '@parcel/watcher-win32-ia32@2.5.1': 95 | resolution: {integrity: sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==} 96 | engines: {node: '>= 10.0.0'} 97 | cpu: [ia32] 98 | os: [win32] 99 | 100 | '@parcel/watcher-win32-x64@2.5.1': 101 | resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==} 102 | engines: {node: '>= 10.0.0'} 103 | cpu: [x64] 104 | os: [win32] 105 | 106 | '@parcel/watcher@2.5.1': 107 | resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==} 108 | engines: {node: '>= 10.0.0'} 109 | 110 | '@tailwindcss/cli@4.1.5': 111 | resolution: {integrity: sha512-Kr567rDwDjY1VUnfqh5/+DCpRf4B8lPs5O9flP4kri7n4AM2aubrIxGSh5GN8s+awUKw/U4+6kNlEnZbBNfUeg==} 112 | hasBin: true 113 | 114 | '@tailwindcss/node@4.1.5': 115 | resolution: {integrity: sha512-CBhSWo0vLnWhXIvpD0qsPephiaUYfHUX3U9anwDaHZAeuGpTiB3XmsxPAN6qX7bFhipyGBqOa1QYQVVhkOUGxg==} 116 | 117 | '@tailwindcss/oxide-android-arm64@4.1.5': 118 | resolution: {integrity: sha512-LVvM0GirXHED02j7hSECm8l9GGJ1RfgpWCW+DRn5TvSaxVsv28gRtoL4aWKGnXqwvI3zu1GABeDNDVZeDPOQrw==} 119 | engines: {node: '>= 10'} 120 | cpu: [arm64] 121 | os: [android] 122 | 123 | '@tailwindcss/oxide-darwin-arm64@4.1.5': 124 | resolution: {integrity: sha512-//TfCA3pNrgnw4rRJOqavW7XUk8gsg9ddi8cwcsWXp99tzdBAZW0WXrD8wDyNbqjW316Pk2hiN/NJx/KWHl8oA==} 125 | engines: {node: '>= 10'} 126 | cpu: [arm64] 127 | os: [darwin] 128 | 129 | '@tailwindcss/oxide-darwin-x64@4.1.5': 130 | resolution: {integrity: sha512-XQorp3Q6/WzRd9OalgHgaqgEbjP3qjHrlSUb5k1EuS1Z9NE9+BbzSORraO+ecW432cbCN7RVGGL/lSnHxcd+7Q==} 131 | engines: {node: '>= 10'} 132 | cpu: [x64] 133 | os: [darwin] 134 | 135 | '@tailwindcss/oxide-freebsd-x64@4.1.5': 136 | resolution: {integrity: sha512-bPrLWbxo8gAo97ZmrCbOdtlz/Dkuy8NK97aFbVpkJ2nJ2Jo/rsCbu0TlGx8joCuA3q6vMWTSn01JY46iwG+clg==} 137 | engines: {node: '>= 10'} 138 | cpu: [x64] 139 | os: [freebsd] 140 | 141 | '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.5': 142 | resolution: {integrity: sha512-1gtQJY9JzMAhgAfvd/ZaVOjh/Ju/nCoAsvOVJenWZfs05wb8zq+GOTnZALWGqKIYEtyNpCzvMk+ocGpxwdvaVg==} 143 | engines: {node: '>= 10'} 144 | cpu: [arm] 145 | os: [linux] 146 | 147 | '@tailwindcss/oxide-linux-arm64-gnu@4.1.5': 148 | resolution: {integrity: sha512-dtlaHU2v7MtdxBXoqhxwsWjav7oim7Whc6S9wq/i/uUMTWAzq/gijq1InSgn2yTnh43kR+SFvcSyEF0GCNu1PQ==} 149 | engines: {node: '>= 10'} 150 | cpu: [arm64] 151 | os: [linux] 152 | 153 | '@tailwindcss/oxide-linux-arm64-musl@4.1.5': 154 | resolution: {integrity: sha512-fg0F6nAeYcJ3CriqDT1iVrqALMwD37+sLzXs8Rjy8Z1ZHshJoYceodfyUwGJEsQoTyWbliFNRs2wMQNXtT7MVA==} 155 | engines: {node: '>= 10'} 156 | cpu: [arm64] 157 | os: [linux] 158 | 159 | '@tailwindcss/oxide-linux-x64-gnu@4.1.5': 160 | resolution: {integrity: sha512-SO+F2YEIAHa1AITwc8oPwMOWhgorPzzcbhWEb+4oLi953h45FklDmM8dPSZ7hNHpIk9p/SCZKUYn35t5fjGtHA==} 161 | engines: {node: '>= 10'} 162 | cpu: [x64] 163 | os: [linux] 164 | 165 | '@tailwindcss/oxide-linux-x64-musl@4.1.5': 166 | resolution: {integrity: sha512-6UbBBplywkk/R+PqqioskUeXfKcBht3KU7juTi1UszJLx0KPXUo10v2Ok04iBJIaDPkIFkUOVboXms5Yxvaz+g==} 167 | engines: {node: '>= 10'} 168 | cpu: [x64] 169 | os: [linux] 170 | 171 | '@tailwindcss/oxide-wasm32-wasi@4.1.5': 172 | resolution: {integrity: sha512-hwALf2K9FHuiXTPqmo1KeOb83fTRNbe9r/Ixv9ZNQ/R24yw8Ge1HOWDDgTdtzntIaIUJG5dfXCf4g9AD4RiyhQ==} 173 | engines: {node: '>=14.0.0'} 174 | cpu: [wasm32] 175 | bundledDependencies: 176 | - '@napi-rs/wasm-runtime' 177 | - '@emnapi/core' 178 | - '@emnapi/runtime' 179 | - '@tybys/wasm-util' 180 | - '@emnapi/wasi-threads' 181 | - tslib 182 | 183 | '@tailwindcss/oxide-win32-arm64-msvc@4.1.5': 184 | resolution: {integrity: sha512-oDKncffWzaovJbkuR7/OTNFRJQVdiw/n8HnzaCItrNQUeQgjy7oUiYpsm9HUBgpmvmDpSSbGaCa2Evzvk3eFmA==} 185 | engines: {node: '>= 10'} 186 | cpu: [arm64] 187 | os: [win32] 188 | 189 | '@tailwindcss/oxide-win32-x64-msvc@4.1.5': 190 | resolution: {integrity: sha512-WiR4dtyrFdbb+ov0LK+7XsFOsG+0xs0PKZKkt41KDn9jYpO7baE3bXiudPVkTqUEwNfiglCygQHl2jklvSBi7Q==} 191 | engines: {node: '>= 10'} 192 | cpu: [x64] 193 | os: [win32] 194 | 195 | '@tailwindcss/oxide@4.1.5': 196 | resolution: {integrity: sha512-1n4br1znquEvyW/QuqMKQZlBen+jxAbvyduU87RS8R3tUSvByAkcaMTkJepNIrTlYhD+U25K4iiCIxE6BGdRYA==} 197 | engines: {node: '>= 10'} 198 | 199 | braces@3.0.3: 200 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 201 | engines: {node: '>=8'} 202 | 203 | detect-libc@1.0.3: 204 | resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} 205 | engines: {node: '>=0.10'} 206 | hasBin: true 207 | 208 | detect-libc@2.0.4: 209 | resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} 210 | engines: {node: '>=8'} 211 | 212 | enhanced-resolve@5.18.1: 213 | resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} 214 | engines: {node: '>=10.13.0'} 215 | 216 | fill-range@7.1.1: 217 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 218 | engines: {node: '>=8'} 219 | 220 | graceful-fs@4.2.11: 221 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 222 | 223 | is-extglob@2.1.1: 224 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 225 | engines: {node: '>=0.10.0'} 226 | 227 | is-glob@4.0.3: 228 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 229 | engines: {node: '>=0.10.0'} 230 | 231 | is-number@7.0.0: 232 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 233 | engines: {node: '>=0.12.0'} 234 | 235 | jiti@2.4.2: 236 | resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} 237 | hasBin: true 238 | 239 | lightningcss-darwin-arm64@1.29.2: 240 | resolution: {integrity: sha512-cK/eMabSViKn/PG8U/a7aCorpeKLMlK0bQeNHmdb7qUnBkNPnL+oV5DjJUo0kqWsJUapZsM4jCfYItbqBDvlcA==} 241 | engines: {node: '>= 12.0.0'} 242 | cpu: [arm64] 243 | os: [darwin] 244 | 245 | lightningcss-darwin-x64@1.29.2: 246 | resolution: {integrity: sha512-j5qYxamyQw4kDXX5hnnCKMf3mLlHvG44f24Qyi2965/Ycz829MYqjrVg2H8BidybHBp9kom4D7DR5VqCKDXS0w==} 247 | engines: {node: '>= 12.0.0'} 248 | cpu: [x64] 249 | os: [darwin] 250 | 251 | lightningcss-freebsd-x64@1.29.2: 252 | resolution: {integrity: sha512-wDk7M2tM78Ii8ek9YjnY8MjV5f5JN2qNVO+/0BAGZRvXKtQrBC4/cn4ssQIpKIPP44YXw6gFdpUF+Ps+RGsCwg==} 253 | engines: {node: '>= 12.0.0'} 254 | cpu: [x64] 255 | os: [freebsd] 256 | 257 | lightningcss-linux-arm-gnueabihf@1.29.2: 258 | resolution: {integrity: sha512-IRUrOrAF2Z+KExdExe3Rz7NSTuuJ2HvCGlMKoquK5pjvo2JY4Rybr+NrKnq0U0hZnx5AnGsuFHjGnNT14w26sg==} 259 | engines: {node: '>= 12.0.0'} 260 | cpu: [arm] 261 | os: [linux] 262 | 263 | lightningcss-linux-arm64-gnu@1.29.2: 264 | resolution: {integrity: sha512-KKCpOlmhdjvUTX/mBuaKemp0oeDIBBLFiU5Fnqxh1/DZ4JPZi4evEH7TKoSBFOSOV3J7iEmmBaw/8dpiUvRKlQ==} 265 | engines: {node: '>= 12.0.0'} 266 | cpu: [arm64] 267 | os: [linux] 268 | 269 | lightningcss-linux-arm64-musl@1.29.2: 270 | resolution: {integrity: sha512-Q64eM1bPlOOUgxFmoPUefqzY1yV3ctFPE6d/Vt7WzLW4rKTv7MyYNky+FWxRpLkNASTnKQUaiMJ87zNODIrrKQ==} 271 | engines: {node: '>= 12.0.0'} 272 | cpu: [arm64] 273 | os: [linux] 274 | 275 | lightningcss-linux-x64-gnu@1.29.2: 276 | resolution: {integrity: sha512-0v6idDCPG6epLXtBH/RPkHvYx74CVziHo6TMYga8O2EiQApnUPZsbR9nFNrg2cgBzk1AYqEd95TlrsL7nYABQg==} 277 | engines: {node: '>= 12.0.0'} 278 | cpu: [x64] 279 | os: [linux] 280 | 281 | lightningcss-linux-x64-musl@1.29.2: 282 | resolution: {integrity: sha512-rMpz2yawkgGT8RULc5S4WiZopVMOFWjiItBT7aSfDX4NQav6M44rhn5hjtkKzB+wMTRlLLqxkeYEtQ3dd9696w==} 283 | engines: {node: '>= 12.0.0'} 284 | cpu: [x64] 285 | os: [linux] 286 | 287 | lightningcss-win32-arm64-msvc@1.29.2: 288 | resolution: {integrity: sha512-nL7zRW6evGQqYVu/bKGK+zShyz8OVzsCotFgc7judbt6wnB2KbiKKJwBE4SGoDBQ1O94RjW4asrCjQL4i8Fhbw==} 289 | engines: {node: '>= 12.0.0'} 290 | cpu: [arm64] 291 | os: [win32] 292 | 293 | lightningcss-win32-x64-msvc@1.29.2: 294 | resolution: {integrity: sha512-EdIUW3B2vLuHmv7urfzMI/h2fmlnOQBk1xlsDxkN1tCWKjNFjfLhGxYk8C8mzpSfr+A6jFFIi8fU6LbQGsRWjA==} 295 | engines: {node: '>= 12.0.0'} 296 | cpu: [x64] 297 | os: [win32] 298 | 299 | lightningcss@1.29.2: 300 | resolution: {integrity: sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA==} 301 | engines: {node: '>= 12.0.0'} 302 | 303 | micromatch@4.0.8: 304 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 305 | engines: {node: '>=8.6'} 306 | 307 | mri@1.2.0: 308 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 309 | engines: {node: '>=4'} 310 | 311 | node-addon-api@7.1.1: 312 | resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} 313 | 314 | picocolors@1.1.1: 315 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 316 | 317 | picomatch@2.3.1: 318 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 319 | engines: {node: '>=8.6'} 320 | 321 | tailwindcss@4.1.5: 322 | resolution: {integrity: sha512-nYtSPfWGDiWgCkwQG/m+aX83XCwf62sBgg3bIlNiiOcggnS1x3uVRDAuyelBFL+vJdOPPCGElxv9DjHJjRHiVA==} 323 | 324 | tapable@2.2.1: 325 | resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} 326 | engines: {node: '>=6'} 327 | 328 | to-regex-range@5.0.1: 329 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 330 | engines: {node: '>=8.0'} 331 | 332 | snapshots: 333 | 334 | '@midudev/tailwind-animations@0.2.0(tailwindcss@4.1.5)': 335 | dependencies: 336 | tailwindcss: 4.1.5 337 | 338 | '@parcel/watcher-android-arm64@2.5.1': 339 | optional: true 340 | 341 | '@parcel/watcher-darwin-arm64@2.5.1': 342 | optional: true 343 | 344 | '@parcel/watcher-darwin-x64@2.5.1': 345 | optional: true 346 | 347 | '@parcel/watcher-freebsd-x64@2.5.1': 348 | optional: true 349 | 350 | '@parcel/watcher-linux-arm-glibc@2.5.1': 351 | optional: true 352 | 353 | '@parcel/watcher-linux-arm-musl@2.5.1': 354 | optional: true 355 | 356 | '@parcel/watcher-linux-arm64-glibc@2.5.1': 357 | optional: true 358 | 359 | '@parcel/watcher-linux-arm64-musl@2.5.1': 360 | optional: true 361 | 362 | '@parcel/watcher-linux-x64-glibc@2.5.1': 363 | optional: true 364 | 365 | '@parcel/watcher-linux-x64-musl@2.5.1': 366 | optional: true 367 | 368 | '@parcel/watcher-win32-arm64@2.5.1': 369 | optional: true 370 | 371 | '@parcel/watcher-win32-ia32@2.5.1': 372 | optional: true 373 | 374 | '@parcel/watcher-win32-x64@2.5.1': 375 | optional: true 376 | 377 | '@parcel/watcher@2.5.1': 378 | dependencies: 379 | detect-libc: 1.0.3 380 | is-glob: 4.0.3 381 | micromatch: 4.0.8 382 | node-addon-api: 7.1.1 383 | optionalDependencies: 384 | '@parcel/watcher-android-arm64': 2.5.1 385 | '@parcel/watcher-darwin-arm64': 2.5.1 386 | '@parcel/watcher-darwin-x64': 2.5.1 387 | '@parcel/watcher-freebsd-x64': 2.5.1 388 | '@parcel/watcher-linux-arm-glibc': 2.5.1 389 | '@parcel/watcher-linux-arm-musl': 2.5.1 390 | '@parcel/watcher-linux-arm64-glibc': 2.5.1 391 | '@parcel/watcher-linux-arm64-musl': 2.5.1 392 | '@parcel/watcher-linux-x64-glibc': 2.5.1 393 | '@parcel/watcher-linux-x64-musl': 2.5.1 394 | '@parcel/watcher-win32-arm64': 2.5.1 395 | '@parcel/watcher-win32-ia32': 2.5.1 396 | '@parcel/watcher-win32-x64': 2.5.1 397 | 398 | '@tailwindcss/cli@4.1.5': 399 | dependencies: 400 | '@parcel/watcher': 2.5.1 401 | '@tailwindcss/node': 4.1.5 402 | '@tailwindcss/oxide': 4.1.5 403 | enhanced-resolve: 5.18.1 404 | mri: 1.2.0 405 | picocolors: 1.1.1 406 | tailwindcss: 4.1.5 407 | 408 | '@tailwindcss/node@4.1.5': 409 | dependencies: 410 | enhanced-resolve: 5.18.1 411 | jiti: 2.4.2 412 | lightningcss: 1.29.2 413 | tailwindcss: 4.1.5 414 | 415 | '@tailwindcss/oxide-android-arm64@4.1.5': 416 | optional: true 417 | 418 | '@tailwindcss/oxide-darwin-arm64@4.1.5': 419 | optional: true 420 | 421 | '@tailwindcss/oxide-darwin-x64@4.1.5': 422 | optional: true 423 | 424 | '@tailwindcss/oxide-freebsd-x64@4.1.5': 425 | optional: true 426 | 427 | '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.5': 428 | optional: true 429 | 430 | '@tailwindcss/oxide-linux-arm64-gnu@4.1.5': 431 | optional: true 432 | 433 | '@tailwindcss/oxide-linux-arm64-musl@4.1.5': 434 | optional: true 435 | 436 | '@tailwindcss/oxide-linux-x64-gnu@4.1.5': 437 | optional: true 438 | 439 | '@tailwindcss/oxide-linux-x64-musl@4.1.5': 440 | optional: true 441 | 442 | '@tailwindcss/oxide-wasm32-wasi@4.1.5': 443 | optional: true 444 | 445 | '@tailwindcss/oxide-win32-arm64-msvc@4.1.5': 446 | optional: true 447 | 448 | '@tailwindcss/oxide-win32-x64-msvc@4.1.5': 449 | optional: true 450 | 451 | '@tailwindcss/oxide@4.1.5': 452 | optionalDependencies: 453 | '@tailwindcss/oxide-android-arm64': 4.1.5 454 | '@tailwindcss/oxide-darwin-arm64': 4.1.5 455 | '@tailwindcss/oxide-darwin-x64': 4.1.5 456 | '@tailwindcss/oxide-freebsd-x64': 4.1.5 457 | '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.5 458 | '@tailwindcss/oxide-linux-arm64-gnu': 4.1.5 459 | '@tailwindcss/oxide-linux-arm64-musl': 4.1.5 460 | '@tailwindcss/oxide-linux-x64-gnu': 4.1.5 461 | '@tailwindcss/oxide-linux-x64-musl': 4.1.5 462 | '@tailwindcss/oxide-wasm32-wasi': 4.1.5 463 | '@tailwindcss/oxide-win32-arm64-msvc': 4.1.5 464 | '@tailwindcss/oxide-win32-x64-msvc': 4.1.5 465 | 466 | braces@3.0.3: 467 | dependencies: 468 | fill-range: 7.1.1 469 | 470 | detect-libc@1.0.3: {} 471 | 472 | detect-libc@2.0.4: {} 473 | 474 | enhanced-resolve@5.18.1: 475 | dependencies: 476 | graceful-fs: 4.2.11 477 | tapable: 2.2.1 478 | 479 | fill-range@7.1.1: 480 | dependencies: 481 | to-regex-range: 5.0.1 482 | 483 | graceful-fs@4.2.11: {} 484 | 485 | is-extglob@2.1.1: {} 486 | 487 | is-glob@4.0.3: 488 | dependencies: 489 | is-extglob: 2.1.1 490 | 491 | is-number@7.0.0: {} 492 | 493 | jiti@2.4.2: {} 494 | 495 | lightningcss-darwin-arm64@1.29.2: 496 | optional: true 497 | 498 | lightningcss-darwin-x64@1.29.2: 499 | optional: true 500 | 501 | lightningcss-freebsd-x64@1.29.2: 502 | optional: true 503 | 504 | lightningcss-linux-arm-gnueabihf@1.29.2: 505 | optional: true 506 | 507 | lightningcss-linux-arm64-gnu@1.29.2: 508 | optional: true 509 | 510 | lightningcss-linux-arm64-musl@1.29.2: 511 | optional: true 512 | 513 | lightningcss-linux-x64-gnu@1.29.2: 514 | optional: true 515 | 516 | lightningcss-linux-x64-musl@1.29.2: 517 | optional: true 518 | 519 | lightningcss-win32-arm64-msvc@1.29.2: 520 | optional: true 521 | 522 | lightningcss-win32-x64-msvc@1.29.2: 523 | optional: true 524 | 525 | lightningcss@1.29.2: 526 | dependencies: 527 | detect-libc: 2.0.4 528 | optionalDependencies: 529 | lightningcss-darwin-arm64: 1.29.2 530 | lightningcss-darwin-x64: 1.29.2 531 | lightningcss-freebsd-x64: 1.29.2 532 | lightningcss-linux-arm-gnueabihf: 1.29.2 533 | lightningcss-linux-arm64-gnu: 1.29.2 534 | lightningcss-linux-arm64-musl: 1.29.2 535 | lightningcss-linux-x64-gnu: 1.29.2 536 | lightningcss-linux-x64-musl: 1.29.2 537 | lightningcss-win32-arm64-msvc: 1.29.2 538 | lightningcss-win32-x64-msvc: 1.29.2 539 | 540 | micromatch@4.0.8: 541 | dependencies: 542 | braces: 3.0.3 543 | picomatch: 2.3.1 544 | 545 | mri@1.2.0: {} 546 | 547 | node-addon-api@7.1.1: {} 548 | 549 | picocolors@1.1.1: {} 550 | 551 | picomatch@2.3.1: {} 552 | 553 | tailwindcss@4.1.5: {} 554 | 555 | tapable@2.2.1: {} 556 | 557 | to-regex-range@5.0.1: 558 | dependencies: 559 | is-number: 7.0.0 560 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/midudev/curso-tailwind-abril-2025/bd20449dac5457468146213ebb3b0b1c774cf9ae/tailwind.config.js --------------------------------------------------------------------------------