|
1 | | -:root { |
| 1 | + :root { |
2 | 2 | --primary: #3b82f6; |
3 | 3 | --secondary: #a855f7; |
4 | 4 | --dark: #1e293b; |
|
225 | 225 | grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); |
226 | 226 | gap: 2rem; |
227 | 227 | } |
228 | | -.skill-category { |
| 228 | +.quottegory { |
229 | 229 | background: rgba(30,41,59,0.7); |
230 | 230 | border-radius: 15px; |
231 | 231 | padding: 2rem; |
@@ -269,59 +269,47 @@ h1 { |
269 | 269 | transform: translateX(3px); |
270 | 270 | } |
271 | 271 |
|
272 | | -/* Typing Quote */ |
273 | | -.quote { |
274 | | - font-family: 'Roboto Mono', monospace; |
275 | | - background: rgba(30,41,59,0.9); |
276 | | - padding: 2.5rem; |
277 | | - border-radius: 15px; |
278 | | - border-left: 6px solid var(--primary); |
279 | | - box-shadow: 0 0 15px rgba(59,130,246,0.3); |
280 | | - overflow: hidden; |
281 | | - margin: 2.5rem 0; |
282 | | - position: relative; |
283 | | -} |
284 | 272 | .quote span.typing { |
285 | | - display: inline-block; |
286 | | - white-space: pre-wrap; |
287 | | - overflow: hidden; |
288 | | - font-size: 1.3rem; |
289 | | - line-height: 1.6; |
290 | | - width: 0ch; |
291 | | - animation: typing 4s steps(80,end) forwards; |
| 273 | + display: inline-block; |
| 274 | + white-space: pre-wrap; /* Para respetar saltos de línea */ |
| 275 | + overflow: hidden; |
| 276 | + font-family: 'Roboto Mono', monospace; |
| 277 | + font-size: 1.3rem; |
| 278 | + line-height: 1.6; |
| 279 | + /* Anima de 0 hasta N caracteres, y steps(N) asegura 1 paso = 1 letra */ |
| 280 | + animation: typing 4s steps(70, end) forwards; |
292 | 281 | } |
| 282 | + |
| 283 | +/* Ajusta “70ch” al número de caracteres de tu frase. */ |
293 | 284 | @keyframes typing { |
294 | | - from { width: 0ch; } |
295 | | - to { width: 80ch; } |
| 285 | + from { width: 0ch; } |
| 286 | + to { width: 70ch; } |
296 | 287 | } |
| 288 | + |
| 289 | +/* Cursor que parpadea */ |
297 | 290 | .quote span.typing::after { |
298 | | - content: ''; |
299 | | - position: absolute; |
300 | | - top: 0; |
301 | | - left: 100%; |
302 | | - width: 2px; |
303 | | - height: 1.6em; |
304 | | - background: var(--primary); |
305 | | - animation: blink-caret .75s step-end infinite; |
| 291 | + content: ''; |
| 292 | + display: inline-block; |
| 293 | + width: 2px; |
| 294 | + height: 1.6em; |
| 295 | + background: var(--primary); |
| 296 | + margin-left: 2px; |
| 297 | + vertical-align: bottom; |
| 298 | + animation: blink-caret .75s step-end infinite; |
306 | 299 | } |
| 300 | + |
307 | 301 | @keyframes blink-caret { |
308 | | - 0%,100% { opacity: 0; } |
309 | | - 50% { opacity: 1; } |
310 | | -} |
311 | | -.quote span.author { |
312 | | - display: block; |
313 | | - opacity: 0; |
314 | | - font-size: 1.3rem; |
315 | | - line-height: 1.6; |
316 | | - margin-top: .5rem; |
317 | | - animation: fadeInAuthor .6s ease forwards; |
318 | | - animation-delay: 4s; |
| 302 | + 0%,100% { opacity: 0; } |
| 303 | + 50% { opacity: 1; } |
319 | 304 | } |
| 305 | + |
| 306 | + |
320 | 307 | @keyframes fadeInAuthor { |
321 | | - from { opacity: 0; transform: translateY(10px); } |
322 | | - to { opacity: 1; transform: translateY(0); } |
| 308 | + from { opacity: 0; transform: translateY(10px); } |
| 309 | + to { opacity: 1; transform: translateY(0); } |
323 | 310 | } |
324 | 311 |
|
| 312 | + |
325 | 313 | /* Roadmap */ |
326 | 314 | .roadmap-container { |
327 | 315 | overflow-x: auto; |
@@ -442,4 +430,73 @@ h1 { |
442 | 430 | background: rgba(59,130,246,0.3); |
443 | 431 | color: var(--primary); |
444 | 432 | border-radius: 50px; |
445 | | - text-decoration |
| 433 | + text-decoration: none; |
| 434 | + font-weight: 500; |
| 435 | + transition: all 0.3s ease; |
| 436 | +} |
| 437 | +.project-link:hover { |
| 438 | + background: rgba(59,130,246,0.6); |
| 439 | + transform: scale(1.05); |
| 440 | +} |
| 441 | + |
| 442 | +/* Contact Methods */ |
| 443 | +.contact-methods { |
| 444 | + display: grid; |
| 445 | + grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); |
| 446 | + gap: 2rem; |
| 447 | +} |
| 448 | +.contact-card { |
| 449 | + background: rgba(30,41,59,0.7); |
| 450 | + border-radius: 15px; |
| 451 | + padding: 2rem; |
| 452 | + text-align: center; |
| 453 | + transition: transform 0.4s ease, background 0.4s ease; |
| 454 | +} |
| 455 | +.contact-card:hover { |
| 456 | + transform: translateY(-10px); |
| 457 | + background: rgba(30,41,59,0.9); |
| 458 | + box-shadow: 0 8px 25px rgba(59,130,246,0.3); |
| 459 | +} |
| 460 | +.contact-card i { |
| 461 | + font-size: 2.2rem; |
| 462 | + color: var(--primary); |
| 463 | + margin-bottom: 1rem; |
| 464 | + transition: transform 0.3s ease; |
| 465 | +} |
| 466 | +.contact-card:hover i { |
| 467 | + transform: translateY(-5px); |
| 468 | +} |
| 469 | +.contact-title { |
| 470 | + font-size: 1.2rem; |
| 471 | + margin-bottom: 0.5rem; |
| 472 | +} |
| 473 | +.contact-info { |
| 474 | + color: var(--gray); |
| 475 | + margin-bottom: 1rem; |
| 476 | +} |
| 477 | +.contact-link { |
| 478 | + color: var(--primary); |
| 479 | + text-decoration: none; |
| 480 | + font-weight: 500; |
| 481 | + transition: color 0.3s ease; |
| 482 | +} |
| 483 | +.contact-link:hover { |
| 484 | + color: var(--secondary); |
| 485 | +} |
| 486 | + |
| 487 | +/* Footer */ |
| 488 | +footer { |
| 489 | + text-align: center; |
| 490 | + color: var(--gray); |
| 491 | + font-size: 0.9rem; |
| 492 | + padding: 2rem 0; |
| 493 | + border-top: 1px solid rgba(255,255,255,0.1); |
| 494 | +} |
| 495 | + |
| 496 | +/* Responsive */ |
| 497 | +@media (max-width: 768px) { |
| 498 | + .about-content, .projects-grid, .skills-container, .contact-methods { |
| 499 | + grid-template-columns: 1fr; |
| 500 | + } |
| 501 | + .roadmap { min-width: unset; flex-direction: column; } |
| 502 | +} |
0 commit comments