:root{--bg:#0b1020;--bg-soft:#121a31;--bg-glow:#1b2750;--card:#161f3a;--border:#243152;--text:#e6ecf7;--muted:#9bb0d3;--accent:#4f8cff;--accent-2:#7c5cff;--tag:#1d2a4d;--radius:14px;--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}html[data-theme=steampunk]{--bg:#241812;--bg-soft:#2e2017;--bg-glow:#3a2a1a;--card:#33251a;--border:#5a4632;--text:#f1e3cf;--muted:#c2a983;--accent:#b87333;--accent-2:#8c5a2b;--tag:#3d2c1d;--radius:8px;--font:"Special Elite", Georgia, "Times New Roman", serif}html[data-theme=artdeco]{--bg:#0d0d0d;--bg-soft:#141414;--bg-glow:#2a2410;--card:#1a1a1a;--border:#bfa15a;--text:#f5f0e1;--muted:#c9b98a;--accent:#d4af37;--accent-2:#b8860b;--tag:#1f1c12;--radius:2px;--font:"Cinzel", Georgia, serif}html[data-theme=cyberpunk]{--bg:#0a0014;--bg-soft:#120226;--bg-glow:#2a0a4a;--card:#170a2e;--border:#3a1d6e;--text:#eafcff;--muted:#9b8cc9;--accent:#ff2bd6;--accent-2:#00eaff;--tag:#1e0a3a;--radius:4px;--font:"Orbitron", "Segoe UI", sans-serif}html[data-theme=vaporwave]{--bg:#1a1033;--bg-soft:#241447;--bg-glow:#3a1f6e;--card:#2d1a55;--border:#ff77e1;--text:#f5e9ff;--muted:#c8a7e9;--accent:#ff6ad5;--accent-2:#8be9fd;--tag:#33205f;--radius:14px;--font:"Orbitron", "Segoe UI", sans-serif}html[data-theme=terminal]{--bg:#000800;--bg-soft:#021202;--bg-glow:#062b06;--card:#031703;--border:#0c5c0c;--text:#3f6;--muted:#1fae3f;--accent:#39ff14;--accent-2:#0c4;--tag:#04220a;--radius:0px;--font:"VT323", "Consolas", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:radial-gradient(1200px 600px at 70% -10%, var(--bg-glow) 0%, var(--bg) 55%);color:var(--text);font-family:var(--font);min-height:100vh;line-height:1.6;transition:background .4s,color .4s}.container{max-width:920px;margin:0 auto;padding:0 20px}.hero{text-align:center;border-bottom:1px solid var(--border);background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 10%, transparent), transparent);padding:64px 0 48px}.avatar{color:#fff;background:linear-gradient(135deg, var(--accent), var(--accent-2));width:104px;height:104px;box-shadow:0 8px 30px color-mix(in srgb, var(--accent) 40%, transparent);border-radius:50%;place-items:center;margin:0 auto 18px;font-size:32px;font-weight:700;display:grid;position:relative;overflow:hidden}.avatar-initials{place-items:center;display:grid;position:absolute;inset:0}.avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:relative}.avatar-img:-moz-broken{opacity:0}.hero h1{letter-spacing:-.5px;font-size:2.4rem}.tagline{color:var(--muted);margin-top:6px;font-size:1.05rem}.contacts{flex-wrap:wrap;justify-content:center;gap:18px;margin-top:18px;font-size:.92rem;display:flex}.contacts a,.contacts span{color:var(--muted);text-decoration:none}.contacts a:hover{color:var(--accent)}.hero-headline{background:linear-gradient(120deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:640px;margin:18px auto 0;font-size:1.5rem;font-weight:700;line-height:1.3}.hero-subtitle{color:var(--muted);max-width:620px;margin:12px auto 0;font-size:.95rem}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;display:flex}.cta{border-radius:10px;padding:11px 20px;font-size:.92rem;font-weight:700;text-decoration:none;transition:transform .15s,filter .15s}.cta:hover{transform:translateY(-2px)}.cta-primary{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 40%, transparent)}.cta-secondary{background:var(--card);color:var(--text);border:1px solid var(--accent)}.cta-ghost{color:var(--muted);border:1px solid var(--border);background:0 0}.cta-ghost:hover{color:var(--text);border-color:var(--accent)}#contacto,#trabaja-conmigo{scroll-margin-top:20px}.solutions-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.solution-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:18px}.solution-emoji{font-size:1.8rem}.solution-card h3{margin:8px 0;font-size:1.02rem}.solution-card p{color:var(--muted);font-size:.86rem}.solution-result{font-size:.86rem;font-weight:600;color:var(--accent)!important;margin-top:10px!important}.manifesto{color:var(--text);border-left:3px solid var(--accent);margin-bottom:18px;padding-left:14px;font-size:1.15rem;font-weight:700}.philosophy-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.philosophy-item h3{color:var(--accent);margin-bottom:4px;font-size:.98rem}.philosophy-item p{color:var(--muted);font-size:.88rem}.networking p{color:var(--muted);margin-bottom:12px;font-size:.92rem}.networking .cta{margin-top:6px;display:inline-block}.paths-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.path-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;padding:18px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.path-card:hover{border-color:var(--accent);transform:translateY(-3px)}.path-emoji{font-size:1.7rem}.path-card h3{color:var(--text);margin:8px 0 6px;font-size:.96rem}.path-card p{color:var(--muted);flex:1;font-size:.84rem}.path-link{color:var(--accent);margin-top:12px;font-size:.86rem;font-weight:600}.content{flex-direction:column;gap:22px;padding:36px 20px 80px;display:flex}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:26px 28px}.card h2{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:10px;font-size:1.25rem}.summary{color:var(--muted)}.skills-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.skill-group h3{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.9rem}.tags{flex-wrap:wrap;gap:7px;display:flex}.tag{background:var(--tag);border:1px solid var(--border);color:var(--text);border-radius:999px;padding:4px 11px;font-size:.82rem}.timeline{flex-direction:column;gap:24px;display:flex}.job{border-left:2px solid var(--border);padding-left:18px;position:relative}.job:before{content:"";background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 20%, transparent);border-radius:50%;position:absolute;top:6px;left:-7px}.job-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;display:flex}.job-head h3{font-size:1.05rem}.period{color:var(--muted);white-space:nowrap;font-size:.82rem}.company{color:var(--accent);margin:2px 0 10px;font-size:.92rem}.job-link{color:var(--muted);text-decoration:none}.job-link:hover{color:var(--accent);text-decoration:underline}.job ul,.certs{flex-direction:column;gap:6px;list-style:none;display:flex}.job li,.certs li{color:var(--muted);padding-left:18px;font-size:.92rem;position:relative}.job li:before,.certs li:before{content:"▹";color:var(--accent);position:absolute;left:0}.two-col{grid-template-columns:1fr 1fr;gap:22px;display:grid}.two-col h3{margin-bottom:2px;font-size:1rem}.footer{text-align:center;color:var(--muted);padding-top:10px;font-size:.82rem}.chat-fab{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;cursor:pointer;width:58px;height:58px;box-shadow:0 10px 30px color-mix(in srgb, var(--accent) 45%, transparent);z-index:1000;border:none;border-radius:50%;font-size:24px;transition:transform .15s;position:fixed;bottom:22px;right:22px}.chat-fab:hover{transform:scale(1.07)}.chat-panel{background:var(--bg-soft);border:1px solid var(--border);z-index:1000;border-radius:16px;flex-direction:column;width:min(380px,100vw - 32px);height:min(560px,100vh - 130px);display:flex;position:fixed;bottom:92px;right:22px;overflow:hidden;box-shadow:0 20px 60px #00000080}.chat-header{background:linear-gradient(135deg, var(--accent), var(--accent-2));justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.chat-header strong{font-size:.98rem;display:block}.chat-sub{opacity:.85;font-size:.72rem}.chat-close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:6px;width:26px;height:26px}.chat-body{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;word-wrap:break-word;border-radius:14px;max-width:85%;padding:10px 13px;font-size:.9rem}.bubble.user{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.bubble.assistant{background:var(--card);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.typing{align-items:center;gap:4px;display:flex}.typing span{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1.2s infinite both blink}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.3}40%{opacity:1}}.chat-error{color:#ff9a9a;background:#ff50501f;border:1px solid #ff505066;border-radius:10px;padding:8px 12px;font-size:.83rem}.suggestions{flex-direction:column;gap:8px;margin-top:6px;display:flex}.chip{text-align:left;background:var(--card);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:10px;padding:8px 12px;font-size:.83rem;transition:border-color .15s,color .15s}.chip:hover{border-color:var(--accent);color:var(--text)}.chat-input{border-top:1px solid var(--border);gap:8px;padding:12px;display:flex}.chat-input input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:1;padding:10px 12px;font-size:.9rem}.chat-input input:focus{border-color:var(--accent)}.chat-input button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:0 16px;font-size:.9rem;font-weight:600}.chat-input button:disabled{opacity:.5;cursor:not-allowed}.tinker-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.tinker-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:12px;padding:16px;display:flex}.tinker-emoji{font-size:1.8rem;line-height:1}.tinker-card h3{margin-bottom:4px;font-size:1rem}.tinker-card p{color:var(--muted);font-size:.86rem}.work-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.work-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;padding:18px;display:flex}.work-card h3{margin-bottom:6px;font-size:1rem}.work-card p{color:var(--muted);margin-bottom:12px;font-size:.86rem}.work-card textarea{background:var(--bg-soft);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:10px;outline:none;margin-bottom:10px;padding:10px;font-family:inherit;font-size:.86rem}.work-card textarea:focus{border-color:var(--accent)}.pay-btn{color:#fff;text-align:center;cursor:pointer;background:#0070ba;border:none;border-radius:10px;width:100%;margin-top:auto;padding:11px;font-size:.9rem;font-weight:700;text-decoration:none;display:block}.pay-btn:hover{filter:brightness(1.08)}.pay-btn.coffee{color:#3a2600;background:#ffb300}.pay-btn.quote{background:var(--accent)}.pay-btn:disabled{opacity:.5;cursor:not-allowed}.quote-result{flex-direction:column;display:flex}.quote-summary{color:var(--text);margin-bottom:6px;font-weight:600}.quote-price{color:var(--muted);font-size:.95rem}.quote-price strong{color:var(--accent);font-size:1.2rem}.quote-reason{color:var(--muted);margin:6px 0 12px;font-size:.83rem}.quote-again{color:var(--muted);cursor:pointer;background:0 0;border:none;margin-top:10px;font-size:.83rem}.wa-fab{color:#06291a;cursor:pointer;z-index:1000;background:#25d366;border:none;border-radius:999px;align-items:center;gap:8px;padding:11px 16px 11px 13px;font-size:.9rem;font-weight:700;transition:transform .15s;display:flex;position:fixed;bottom:22px;left:22px;box-shadow:0 10px 30px #25d36673}.wa-fab:hover{transform:scale(1.05)}.wa-overlay{z-index:1100;background:#000000b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.wa-modal{background:var(--bg-soft);border:1px solid var(--border);border-radius:16px;width:min(440px,100%);padding:26px;position:relative;box-shadow:0 20px 60px #00000080}.wa-modal h3{margin-bottom:12px;padding-right:24px;font-size:1.15rem}.wa-modal-close{background:var(--tag);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;width:28px;height:28px;position:absolute;top:14px;right:14px}.wa-intro{color:var(--muted);margin-bottom:14px;font-size:.88rem}.wa-modal textarea{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:10px;outline:none;padding:12px;font-family:inherit;font-size:.9rem}.wa-modal textarea:focus{border-color:#25d366}.wa-submit,.wa-open{color:#06291a;text-align:center;cursor:pointer;background:#25d366;border:none;border-radius:10px;width:100%;margin-top:14px;padding:12px;font-size:.95rem;font-weight:700;text-decoration:none;display:block}.wa-open.alt{background:var(--accent);color:#fff}.wa-submit:disabled{opacity:.5;cursor:not-allowed}.wa-error{color:#ff9a9a;background:#ff50501f;border:1px solid #ff505066;border-radius:10px;margin-top:12px;padding:8px 12px;font-size:.83rem}.wa-approved{color:#25d366;margin-bottom:10px;font-weight:600}.wa-rejected{color:#ff9a9a;margin-bottom:6px;font-weight:600}.wa-reason{color:var(--muted);margin-bottom:14px;font-size:.9rem}.wa-summary{background:var(--card);border:1px solid var(--border);color:var(--text);white-space:pre-wrap;border-radius:10px;padding:12px;font-size:.9rem}.wa-email-label{color:var(--muted);margin-bottom:6px;font-size:.85rem}.wa-link-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;margin:10px auto 0;font-size:1.1rem;display:block}.theme-badge{z-index:1000;background:color-mix(in srgb, var(--card) 85%, transparent);border:1px solid var(--border);color:var(--muted);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;align-items:center;gap:8px;padding:5px 10px 5px 12px;font-size:.74rem;display:flex;position:fixed;top:14px;left:14px}.theme-badge strong{color:var(--text);text-transform:capitalize}.theme-shuffle{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.8rem;line-height:1;display:grid}.theme-shuffle:hover{filter:brightness(1.1)}.launcher{z-index:1000;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:22px;right:22px}.launcher-actions{opacity:0;pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;transition:opacity .18s,transform .18s;display:flex;transform:translateY(12px)}.launcher.open .launcher-actions{opacity:1;pointer-events:auto;transform:none}.launcher-action{cursor:pointer;border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;font-weight:700;display:flex;box-shadow:0 8px 24px #00000059}.launcher-action.chat{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff}.launcher-action.wa{color:#06291a;background:#25d366}.launcher-icon{align-items:center;display:flex}.launcher-main{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;cursor:pointer;box-shadow:0 10px 30px color-mix(in srgb, var(--accent) 45%, transparent);border:none;border-radius:999px;align-items:center;gap:8px;padding:14px 20px;font-size:1.3rem;font-weight:700;transition:transform .15s;display:flex}.launcher-main:hover{transform:scale(1.05)}.launcher-main-label{font-size:.92rem}.lang-toggle{z-index:1000;background:color-mix(in srgb, var(--card) 85%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;gap:2px;padding:3px;display:flex;position:fixed;top:52px;right:14px}.lang-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:3px 9px;font-size:.7rem;font-weight:700}.lang-toggle button.active{background:var(--accent);color:#fff}.persona-chip{z-index:1000;background:color-mix(in srgb, var(--card) 85%, transparent);border:1px solid var(--border);color:var(--muted);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;padding:5px 12px;font-size:.74rem;position:fixed;top:14px;right:14px}.persona-chip:hover{color:var(--text);border-color:var(--accent)}.persona-overlay{z-index:1200;background:#000000bd;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.persona-modal{background:var(--bg-soft);border:1px solid var(--border);text-align:center;border-radius:16px;width:min(580px,100%);padding:30px}.persona-modal h2{margin-bottom:6px;font-size:1.35rem}.persona-sub{color:var(--muted);margin-bottom:20px;font-size:.9rem}.persona-options{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.persona-option{background:var(--card);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:20px 12px;transition:border-color .15s,transform .15s;display:flex}.persona-option:hover{border-color:var(--accent);transform:translateY(-3px)}.persona-option strong{font-size:.92rem}.persona-emoji{font-size:1.9rem}.persona-desc{color:var(--muted);font-size:.78rem;line-height:1.4}.persona-skip{color:var(--muted);cursor:pointer;background:0 0;border:none;margin-top:18px;font-size:.85rem;text-decoration:underline}.content>*{order:20}.content>.footer{order:99}html[data-persona=recruiter] .sec-experience{order:1}html[data-persona=recruiter] .sec-skills{order:2}html[data-persona=recruiter] .sec-howiwork{order:3}html[data-persona=recruiter] .sec-summary{order:4}html[data-persona=recruiter] .sec-educert{order:5}html[data-persona=recruiter] .sec-contact{order:6}html[data-persona=developer] .sec-projects{order:1}html[data-persona=developer] .sec-tinkering{order:2}html[data-persona=developer] .sec-networking{order:3}html[data-persona=developer] .sec-skills{order:4}html[data-persona=developer] .sec-experience{order:5}html[data-persona=developer] .sec-contact{order:6}html[data-persona=client] .sec-solutions{order:1}html[data-persona=client] .sec-work{order:2}html[data-persona=client] .sec-howiwork{order:3}html[data-persona=client] .sec-projects{order:4}html[data-persona=client] .sec-contact{order:5}html[data-persona=recruiter] .sec-experience,html[data-persona=developer] .sec-work,html[data-persona=client] .sec-tinkering,html[data-persona=client] .sec-networking,.recruiter-only{display:none}html[data-persona=recruiter] .recruiter-only{display:inline-block}.ats{color:#111;background:#fff;max-width:800px;min-height:100vh;margin:0 auto;padding:48px 40px;font-family:Georgia,Times New Roman,serif;line-height:1.5}.ats-head h1{margin-bottom:2px;font-size:1.9rem}.ats-title{color:#333;font-size:1.05rem}.ats-contact{color:#444;word-break:break-word;margin-top:6px;font-size:.85rem}.ats section{margin-top:22px}.ats h2{text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #999;margin-bottom:10px;padding-bottom:4px;font-size:1.1rem}.ats h3{margin-top:12px;font-size:1rem}.ats-period{color:#555;font-size:.88rem;font-style:italic}.ats ul{margin:6px 0 6px 20px}.ats-skills{list-style:none;margin-left:0!important}.ats-skills li{margin-bottom:4px}.print-btn{color:#fff;cursor:pointer;background:#111;border:none;border-radius:8px;margin-bottom:20px;padding:10px 16px;font-family:system-ui,sans-serif;font-size:.9rem;display:inline-block}@media print{.no-print,.theme-badge,.persona-chip,.lang-toggle,.launcher{display:none!important}.ats{max-width:100%;padding:0}@page{margin:1.5cm}}@media (max-width:640px){.ats{padding:28px 20px}.skills-grid,.two-col,.tinker-grid,.work-grid,.solutions-grid,.philosophy-grid,.paths-grid,.persona-options{grid-template-columns:1fr}.hero-headline{font-size:1.25rem}.hero h1{font-size:1.9rem}.hero{padding:48px 0 36px}.container{padding:0 14px}.card{padding:20px 16px}.hero-ctas{flex-direction:column;align-items:stretch}.hero-ctas .cta{text-align:center}.theme-badge,.persona-chip{padding:4px 9px;font-size:.68rem}.launcher-main{padding:13px 16px}.persona-modal{padding:22px 18px}.wa-modal{padding:20px 16px}}@media (min-width:641px) and (max-width:900px){.solutions-grid,.paths-grid,.skills-grid,.tinker-grid{grid-template-columns:1fr 1fr}}
