@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary:#080c16;--bg-secondary:#121621;--bg-tertiary:#1b202d;--surface:#191f2e8c;--surface-hover:#20283cb3;--surface-border:#36496340;--bg-overlay:#080c16b8;--accent-start:#2bd4bd;--accent-end:#0da2e7;--accent-solid:#25c2d0;--text-primary:#f1f5f9;--text-secondary:#8f9cae;--text-muted:#677383;--badge-bg:#297ca326;--badge-border:#339ccc40;--badge-text:#75cfd7;--radius:.75rem;--radius-sm:.5rem;--shadow-glow:0 0 20px #25c2d01f;--shadow-card:0 4px 24px #00000040;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration:.3s}[data-theme=light]{--bg-primary:#f0f2f5;--bg-secondary:#e0e6eb;--bg-tertiary:#d3d9de;--surface:#ffffff73;--surface-hover:#ffffffbf;--surface-border:#00000014;--bg-overlay:#f0f4f8c2;--accent-start:#0a88c2;--accent-end:#1162d4;--accent-solid:#0b8bcb;--text-primary:#10192d;--text-secondary:#47566b;--text-muted:#707d8f;--badge-bg:#297ca314;--badge-border:#297ca326;--badge-text:#0f86bd;--shadow-glow:0 0 20px #0a88c214;--shadow-card:0 4px 24px #0000000f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:var(--text-primary);background:var(--bg-primary);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;position:relative}body:before{content:"";z-index:-2;background-image:url(/background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0}body:after{content:"";z-index:-1;background:var(--bg-overlay);-webkit-backdrop-filter:blur(40px);transition:background var(--duration) var(--ease-out);position:fixed;inset:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.page-container{width:95%;max-width:1800px;margin:0 auto;padding:3rem 2rem 4rem}@media (width>=1200px){.page-container{padding:4rem 5rem 5rem}}.section{margin-bottom:2.5rem}.section-title{letter-spacing:-.02em;background:linear-gradient(135deg, var(--accent-start), var(--accent-end));-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1.25rem;font-size:1.25rem;font-weight:700;display:inline-block}.header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2.5rem;display:flex}.header-info{flex:1;min-width:0}.header-name{letter-spacing:-.03em;margin-bottom:.35rem;font-size:2rem;font-weight:800;line-height:1.15}.header-title{color:var(--text-secondary);margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.85rem}.header-location{color:var(--text-muted);transition:color var(--duration) var(--ease-out);align-items:center;gap:.35rem;font-family:JetBrains Mono,monospace;font-size:.75rem;display:inline-flex}.header-location:hover{color:var(--accent-solid)}.header-location svg{flex-shrink:0;width:14px;height:14px}.header-socials{gap:.5rem;margin-top:.75rem;display:flex}.social-btn{border-radius:var(--radius-sm);border:1px solid var(--surface-border);background:var(--surface);backdrop-filter:blur(12px);width:36px;height:36px;color:var(--text-secondary);transition:all var(--duration) var(--ease-out);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.social-btn:hover{color:var(--accent-solid);border-color:var(--accent-solid);background:var(--surface-hover);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.social-btn svg{width:16px;height:16px}.avatar-container{flex-shrink:0;position:relative}.avatar{object-fit:cover;border:2px solid var(--surface-border);width:112px;height:112px;transition:border-color var(--duration) var(--ease-out), box-shadow var(--duration) var(--ease-out);border-radius:50%}.avatar:hover{border-color:var(--accent-solid);box-shadow:0 0 24px #25c2d033}.avatar-fallback{background:var(--surface);border:2px solid var(--surface-border);width:112px;height:112px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;font-weight:700;display:flex}.about-text{color:var(--text-secondary);font-family:Inter,sans-serif;font-size:.95rem;line-height:1.75}.skills-grid{flex-wrap:wrap;gap:.5rem;display:flex}.skill-badge{color:var(--badge-text);background:var(--badge-bg);border:1px solid var(--badge-border);transition:all var(--duration) var(--ease-out);animation:fadeInUp .5s var(--ease-out) both;border-radius:999px;align-items:center;padding:.3rem .75rem;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:500;display:inline-flex}.skill-badge:hover{background:#297ca340;border-color:#339ccc66;transform:translateY(-1px)}.exp-card{border-radius:var(--radius);border:1px solid var(--surface-border);background:var(--surface);backdrop-filter:blur(16px);transition:all var(--duration) var(--ease-out);margin-bottom:1rem;padding:1.25rem;position:relative}.exp-card:hover{background:var(--surface-hover);box-shadow:var(--shadow-card);border-color:#339ccc4d;transform:translateY(-2px)}.exp-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.35rem;display:flex}.exp-company{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:inline-flex}.exp-company a{transition:color var(--duration) var(--ease-out)}.exp-company a:hover{color:var(--accent-solid)}.exp-dates{color:var(--text-muted);white-space:nowrap;flex-shrink:0;padding-top:.15rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.exp-title{color:var(--text-secondary);margin-bottom:.75rem;font-family:JetBrains Mono,monospace;font-size:.8rem}.exp-badges{flex-wrap:wrap;gap:.35rem;display:inline-flex}.exp-badge{background:var(--badge-bg);border:1px solid var(--badge-border);color:var(--badge-text);border-radius:999px;padding:.15rem .45rem;font-family:JetBrains Mono,monospace;font-size:.6rem}.exp-bullets{padding:0;list-style:none}.exp-bullets li{color:var(--text-secondary);margin-bottom:.35rem;padding-left:1rem;font-size:.8rem;line-height:1.65;position:relative}.exp-bullets li:before{content:"";background:var(--accent-solid);opacity:.6;border-radius:50%;width:4px;height:4px;position:absolute;top:.55rem;left:0}.edu-card{border-radius:var(--radius);border:1px solid var(--surface-border);background:var(--surface);backdrop-filter:blur(16px);transition:all var(--duration) var(--ease-out);margin-bottom:.75rem;padding:1rem 1.25rem}.edu-card:hover{background:var(--surface-hover);border-color:#339ccc4d;transform:translateY(-1px)}.edu-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.25rem;display:flex}.edu-school{font-size:.95rem;font-weight:600}.edu-dates{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:.75rem}.edu-degree{color:var(--text-secondary);font-size:.8rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.project-card{border-radius:var(--radius);border:1px solid var(--surface-border);background:var(--surface);backdrop-filter:blur(16px);transition:all var(--duration) var(--ease-out);flex-direction:column;height:100%;padding:1.25rem;display:flex}.project-card:hover{background:var(--surface-hover);box-shadow:var(--shadow-card);border-color:#339ccc4d;transform:translateY(-2px)}.project-card-title{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.95rem;font-weight:600;display:inline-flex}.project-card-title a{transition:color var(--duration) var(--ease-out)}.project-card-title a:hover{color:var(--accent-solid)}.project-link-dot{background:var(--accent-start);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite pulse}.project-card-desc{color:var(--text-secondary);flex:1;margin-bottom:.75rem;font-family:JetBrains Mono,monospace;font-size:.72rem;line-height:1.65}.project-card-tags{flex-wrap:wrap;gap:.35rem;margin-top:auto;display:flex}.project-tag{background:var(--badge-bg);border:1px solid var(--badge-border);color:var(--badge-text);border-radius:999px;padding:.15rem .45rem;font-family:JetBrains Mono,monospace;font-size:.6rem}.project-publication-tag{color:var(--accent-solid);text-transform:uppercase;letter-spacing:.04em;background:#25c2d01a;border:1px solid #25c2d04d;border-radius:4px;align-items:center;gap:.35rem;width:fit-content;margin-bottom:.6rem;padding:.2rem .5rem;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:700;transition:all .2s;display:inline-flex}[data-theme=light] .project-publication-tag{background:#0b8bcb14;border-color:#0b8bcb40}.project-publication-tag .pub-icon{color:var(--accent-solid);flex-shrink:0}.footer{border-top:1px solid var(--surface-border);text-align:center;margin-top:3rem;padding-top:1.5rem}.footer-text{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.7rem}.print-btn{color:var(--text-secondary);background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration) var(--ease-out);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem 1.25rem;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:500;display:inline-flex}.print-btn:hover{color:var(--accent-solid);border-color:var(--accent-solid);background:var(--surface-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.print-btn svg{width:14px;height:14px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.skill-badge:first-child{animation-delay:0s}.skill-badge:nth-child(2){animation-delay:30ms}.skill-badge:nth-child(3){animation-delay:60ms}.skill-badge:nth-child(4){animation-delay:90ms}.skill-badge:nth-child(5){animation-delay:.12s}.skill-badge:nth-child(6){animation-delay:.15s}.skill-badge:nth-child(7){animation-delay:.18s}.skill-badge:nth-child(8){animation-delay:.21s}.skill-badge:nth-child(9){animation-delay:.24s}.skill-badge:nth-child(10){animation-delay:.27s}.skill-badge:nth-child(11){animation-delay:.3s}.skill-badge:nth-child(12){animation-delay:.33s}.skill-badge:nth-child(13){animation-delay:.36s}.skill-badge:nth-child(14){animation-delay:.39s}.skill-badge:nth-child(15){animation-delay:.42s}.skill-badge:nth-child(16){animation-delay:.45s}.skill-badge:nth-child(17){animation-delay:.48s}.section{animation:fadeInUp .6s var(--ease-out) both}.section:first-child{animation-delay:0s}.section:nth-child(2){animation-delay:80ms}.section:nth-child(3){animation-delay:.16s}.section:nth-child(4){animation-delay:.24s}.section:nth-child(5){animation-delay:.32s}.section:nth-child(6){animation-delay:.4s}.section:nth-child(7){animation-delay:.48s}.sections-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:1.25rem;margin-bottom:2.5rem;display:grid}.grid-card{border-radius:var(--radius);border:1px solid var(--surface-border);background:var(--surface);backdrop-filter:blur(16px);transition:all .4s var(--ease-out);cursor:pointer;flex-direction:column;min-height:120px;padding:1.25rem;display:flex;position:relative;overflow:hidden}.grid-card:hover{background:var(--surface-hover);box-shadow:var(--shadow-glow);border-color:#25c2d066;transform:translateY(-2px)}.grid-card.is-expanded{cursor:default;background:var(--surface-hover);box-shadow:var(--shadow-glow);border-color:#25c2d080;grid-column:1/-1}.grid-card-header{user-select:none;justify-content:space-between;align-items:center;display:flex}.grid-card-title-group-wrapper{align-items:center;gap:.85rem;min-width:0;display:flex}.grid-card-category-icon{background:var(--surface);border:1px solid var(--surface-border);width:32px;height:32px;color:var(--accent-solid);transition:all var(--duration) var(--ease-out);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.grid-card:hover .grid-card-category-icon{background:var(--surface-hover);border-color:#25c2d066;transform:scale(1.05);box-shadow:0 0 10px #25c2d026}.grid-card-header-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.grid-card-orgs{align-items:center;gap:.4rem;display:flex}.org-logo-btn{background:var(--surface);border:1px solid var(--surface-border);width:28px;height:28px;transition:all var(--duration) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;padding:4px;display:flex;overflow:hidden;box-shadow:0 2px 6px #00000014}.org-logo-btn:hover{background:var(--surface-hover);box-shadow:var(--shadow-glow);border-color:#25c2d080;transform:translateY(-1.5px)}.org-logo-btn svg{flex-shrink:0;display:block}.grid-card.is-expanded .grid-card-header{border-bottom:1px solid var(--surface-border);margin-bottom:1.25rem;padding-bottom:.75rem}.grid-card-title-group{flex-direction:column;gap:.15rem;display:flex}.grid-card-title{background:linear-gradient(135deg, var(--accent-start), var(--accent-end));-webkit-text-fill-color:transparent;background-clip:text;margin:0;font-size:1.1rem;font-weight:700}.grid-card-meta{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.7rem}.grid-card-summary{color:var(--text-secondary);-webkit-line-clamp:2;text-overflow:ellipsis;transition:opacity .3s var(--ease-out), max-height .3s var(--ease-out), margin .3s var(--ease-out);-webkit-box-orient:vertical;margin-top:.5rem;font-size:.75rem;line-height:1.45;display:-webkit-box;overflow:hidden}.grid-card.is-expanded .grid-card-summary{opacity:0;max-height:0;margin:0;overflow:hidden}.grid-card-action{color:var(--text-muted);transition:all var(--duration) var(--ease-out);justify-content:center;align-items:center;display:flex}.grid-card:hover .grid-card-action{color:var(--accent-solid)}.grid-card-action svg{width:18px;height:18px;transition:transform .4s var(--ease-out)}.theme-icon-light{display:none}.theme-icon-dark,[data-theme=light] .theme-icon-light{display:block}[data-theme=light] .theme-icon-dark{display:none}.theme-toggle-btn{color:var(--text-muted);transition:all var(--duration) var(--ease-out)}.theme-toggle-btn:hover{color:var(--accent-solid)!important;background:var(--surface-hover)!important;border-color:#25c2d066!important}[data-theme=light] .theme-toggle-btn{color:var(--text-secondary)}.grid-card.is-expanded .grid-card-action svg{color:var(--accent-solid);transform:rotate(180deg)}.grid-card-body{opacity:0;pointer-events:none;max-height:0;transition:max-height .5s cubic-bezier(.16,1,.3,1),opacity .4s;overflow:hidden}.grid-card.is-expanded .grid-card-body{opacity:1;pointer-events:auto;max-height:2500px}.grid-card-body .section-title{display:none!important}@media (width<=900px){.sections-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.page-container{padding:2rem 1rem 3rem}.sections-grid{grid-template-columns:1fr}.header{text-align:center;flex-direction:column-reverse;align-items:center}.header-socials{justify-content:center}.avatar,.avatar-fallback{width:96px;height:96px}.header-name{font-size:1.6rem}.projects-grid{grid-template-columns:1fr}.exp-card-header{flex-direction:column;gap:.25rem}}@media print{:root{--text-primary:#1a1a1a;--text-secondary:#4d4d4d;--text-muted:gray;--badge-text:#4d4d4d;--badge-bg:#f2f2f2;--badge-border:#d9d9d9;--surface:transparent;--surface-hover:transparent;--surface-border:#d9d9d9}body{color:#1a1a1a;background:#fff}.page-container{max-width:100%;padding:.5cm}.sections-grid{display:block!important}.grid-card{page-break-inside:avoid;background:0 0!important;border:none!important;min-height:auto!important;margin-bottom:2rem!important;padding:0!important;display:block!important}.grid-card-header,.grid-card-summary{display:none!important}.grid-card-body{opacity:1!important;pointer-events:auto!important;max-height:none!important;display:block!important}.grid-card-body .section-title{color:#1a1a1a!important;border-bottom:1px solid #d9d9d9!important;margin-bottom:1rem!important;padding-bottom:.25rem!important;font-size:1.25rem!important;font-weight:700!important;display:block!important}.section,.skill-badge{animation:none!important}.social-btn,.print-btn,.footer{display:none!important}.exp-card,.edu-card,.project-card{backdrop-filter:none;box-shadow:none;break-inside:avoid}.exp-card:hover,.edu-card:hover,.project-card:hover,.skill-badge:hover{box-shadow:none;transform:none}.projects-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}}.header-name-row[data-astro-cid-nen7h5rs]{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.35rem;display:flex}.header-name[data-astro-cid-nen7h5rs]{margin-bottom:0!important}.header-certs[data-astro-cid-nen7h5rs]{align-items:center;gap:.5rem;display:flex}.cert-logo-btn[data-astro-cid-nen7h5rs]{background:var(--surface);border:1px solid var(--surface-border);width:32px;height:32px;transition:all var(--duration) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;padding:6px;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.cert-logo-btn[data-astro-cid-nen7h5rs]:hover{background:var(--surface-hover);box-shadow:var(--shadow-glow);border-color:#25c2d066;transform:translateY(-2px)}.cert-logo-btn[data-astro-cid-nen7h5rs] svg{flex-shrink:0;display:block}.hobbies-grid[data-astro-cid-ab4uoaez]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;padding:.5rem 0;display:grid}.hobby-card[data-astro-cid-ab4uoaez]{background:var(--surface);border:1px solid var(--surface-border);transition:all var(--duration) var(--ease-out);border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.hobby-card[data-astro-cid-ab4uoaez]:hover{background:var(--surface-hover);border-color:#25c2d04d;transform:translateY(-1px)}.hobby-dot[data-astro-cid-ab4uoaez]{background:linear-gradient(135deg, var(--accent-start), var(--accent-end));width:6px;height:6px;box-shadow:0 0 8px var(--accent-solid);border-radius:50%}.hobby-name[data-astro-cid-ab4uoaez]{color:var(--text-primary);font-size:.9rem;font-weight:500}
