:root{--bg-base:#eef3f9;--bg-surface:#fff;--bg-surface-soft:#f8fbff;--text-primary:#10182b;--text-secondary:#3c4960;--text-muted:#65758f;--brand:#0d7a6f;--brand-strong:#0a5f57;--brand-soft:#d8f2ee;--accent:#0d7ecf;--accent-soft:#d6ebfb;--border-soft:#d5e2f0;--shadow-sm:0 10px 20px #0d172814;--shadow-md:0 18px 36px #0d172824;--radius-sm:12px;--radius-md:18px;--radius-lg:26px;--content-width:1140px}*,:after,:before{box-sizing:border-box}#root,body,html{min-height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 6% 2%,#d9edff 0,#0000 34%),radial-gradient(circle at 94% 8%,#e2fbf3 0,#0000 38%),radial-gradient(circle at 50% 100%,#deedfd 0,#0000 28%),linear-gradient(180deg,#f9fcff,#eef3f9);background:radial-gradient(circle at 6% 2%,#d9edff 0,#0000 34%),radial-gradient(circle at 94% 8%,#e2fbf3 0,#0000 38%),radial-gradient(circle at 50% 100%,#deedfd 0,#0000 28%),linear-gradient(180deg,#f9fcff 0,var(--bg-base) 100%);color:#10182b;color:var(--text-primary);font-family:Manrope,Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.6;margin:0}#root{isolation:isolate}a{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #0d7ecf;outline:2px solid var(--accent);outline-offset:2px}img{display:block;max-width:100%}code{font-family:Cascadia Code,Consolas,Courier New,monospace}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{animation:page-enter .42s ease-out;flex:1 1;margin:2rem auto 3rem;width:min(var(--content-width),calc(100% - 2.2rem))}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.main-content{margin-bottom:2rem;margin-top:1.2rem;width:calc(100% - 1rem)}}.home-container{grid-gap:1.2rem;color:var(--text-primary);display:grid;gap:1.2rem;padding:.2rem .1rem 1rem}.intro-container{background:linear-gradient(140deg,#fffffff5,#eef9ffe6);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:clamp(1.1rem,2vw,1.9rem);text-align:center}.intro-container h1{font-size:clamp(1.5rem,4vw,2.2rem);margin:0 0 .55rem}.intro-container h2{font-size:clamp(1.25rem,3.6vw,1.8rem);margin:0 0 .35rem}.intro-container h3{color:var(--text-secondary);font-size:clamp(1rem,2.3vw,1.2rem);margin:0 0 1rem}.intro-container p{color:var(--text-secondary);margin:.7rem auto;max-width:74ch}.highlight{color:var(--brand)}.blur-toggle-btn{background-color:#007acc;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.6rem 1.2rem;transition:background .3s}.blur-toggle-btn:hover{background-color:#005fa3}.profile-container{display:flex;justify-content:center;padding:.4rem 0 .8rem}.profile-frame{background:linear-gradient(160deg,#fffffff5,#e2f4ffcc);border:1px solid #85b5d047;border-radius:30px;box-shadow:0 24px 60px #0c304e2e,inset 0 1px 0 #ffffffeb;overflow:hidden;padding:.85rem;position:relative;width:min(100%,340px)}.profile-spotlight{background:radial-gradient(circle,#76d5ff3d,#76d5ff00);border-radius:50%;height:180px;inset:-10% auto auto -12%;pointer-events:none;position:absolute;width:180px}.profile-image{aspect-ratio:4/5;border:1px solid #ffffffdb;border-radius:24px;box-shadow:0 18px 40px #0b4c603d,0 0 0 8px #ffffff94;display:block;min-height:400px;object-fit:cover;object-position:center 18%;position:relative;width:100%}.skill-set-container h4{font-size:clamp(1.2rem,2.7vw,1.6rem);margin:0 0 .9rem;text-align:center}.skills-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.skill-card{grid-gap:.35rem;background:linear-gradient(180deg,#fffffffa,#f7fcfff5);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:grid;gap:.35rem;min-height:178px;padding:1rem .85rem;place-items:center;text-align:center;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}.skill-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.skill-icon{height:56px;margin-bottom:.45rem;object-fit:contain;width:56px}.blur{filter:blur(3px)}.level-badge{background:var(--brand-soft);border-radius:999px;color:#085f58;font-size:.78rem;font-weight:700;padding:.2rem .56rem}.tools-container{background-color:#ffffffd1;border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.2rem clamp(.8rem,2vw,1.6rem)}.tools-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-top:.9rem}.tools-container h4{font-size:clamp(1.2rem,2.7vw,1.6rem);margin:0;text-align:center}.tool-card{grid-gap:.3rem;background:var(--bg-surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;gap:.3rem;min-height:168px;padding:1rem;place-items:center;text-align:center}.tool-icon{height:48px;margin-bottom:.5rem;object-fit:contain;width:48px}.tool-use{color:var(--text-muted);font-size:.77rem;margin-top:0}.ai-section{background:linear-gradient(152deg,#e2fcf5a3,#eff7ffd6);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.2rem clamp(.8rem,2vw,1.6rem)}.ai-section h4{color:var(--text-primary);font-size:clamp(1.2rem,2.7vw,1.6rem);margin:0 0 .9rem;text-align:center}.ai-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.ai-card{background-color:#ffffffd6;border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1rem 1rem 1.1rem;transition:transform .22s ease,box-shadow .22s ease}.ai-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.ai-card h5{color:#123054;font-size:1.05rem;margin:0 0 .45rem}.ai-card p{color:var(--text-secondary);font-size:.93rem;margin:0}.footer-container{background:linear-gradient(160deg,#0b2231f2,#0d4c5aed);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(1.6rem,4vw,2.5rem) 1rem;text-align:center}.footer-content{margin:auto;max-width:600px}.footer-heading{color:#f4feff;font-size:clamp(1.35rem,4vw,1.9rem);margin:0 0 .5rem}.footer-text{color:#d5ecff;font-size:.98rem;margin-bottom:1.5rem}.resume-btn{background:linear-gradient(120deg,#f5ffff,#dcf5ff 55%,#caecff);border:1px solid #ffffff8c;border-radius:999px;box-shadow:0 6px 15px #0000002e;color:#092841;display:inline-block;font-weight:800;padding:.7rem 1.2rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.resume-btn:hover{box-shadow:0 10px 20px #00000038;transform:translateY(-2px)}@media (max-width:768px){.home-container{gap:1rem}.profile-frame{border-radius:24px;padding:.7rem;width:min(100%,300px)}.profile-image{border-radius:20px;min-height:340px}.intro-container p{text-align:left}.skill-icon{height:52px;width:52px}.ai-grid,.skills-grid,.tools-grid{grid-template-columns:1fr}.skill-card,.tool-card{min-height:0;min-height:auto}}.projects-container{min-height:68vh;padding:.2rem .1rem 1rem}.loading-container{align-items:center;display:flex;justify-content:center;min-height:4.2rem;text-align:center}.loading-text{animation:fadeIn .65s ease-in-out forwards;color:#153455;font-size:clamp(1.05rem,3vw,1.7rem);margin:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.projects-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));padding-top:.2rem}.project-card{background:linear-gradient(165deg,#fffffff7,#f2f9ffeb);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.65rem;padding:1.15rem 1.05rem;transition:transform .22s ease,box-shadow .22s ease}.project-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.project-card h3{color:#0e4b7d;font-size:1.16rem;margin:0}.project-card p{color:var(--text-secondary);font-size:.93rem;margin:0;text-align:left}.tech-stack{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.85rem}.tech-badge{background:#e1f4ff;border:1px solid #c5e8ff;border-radius:999px;color:#0d5d93;cursor:default;font-size:.75rem;font-weight:650;padding:.35rem .7rem}.project-links{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:auto}.project-link{background:linear-gradient(120deg,var(--brand),#1d8a82);border:1px solid #fff3;border-radius:999px;color:#f7ffff;font-size:.8rem;font-weight:700;padding:.46rem .86rem;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.project-link:hover{box-shadow:0 7px 15px #093f3a3d;transform:translateY(-2px)}@media (max-width:768px){.project-card{padding:1rem}.projects-grid{grid-template-columns:1fr}}.about-container{grid-gap:.9rem;animation:fade-in .46s ease-in;color:var(--text-primary);display:grid;gap:.9rem;padding:.2rem .1rem 1rem}.section-title{font-size:clamp(1.35rem,3.2vw,2rem);letter-spacing:.01em;margin:0;text-align:center}.sub-section-title{color:#007acc;font-size:1.4rem;margin-bottom:1rem;margin-top:2.5rem}.about-intro{background:linear-gradient(155deg,#fffffff7,#eef8ffe0);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--text-secondary);font-size:1rem;line-height:1.7;margin:0 auto;max-width:860px;padding:clamp(1rem,2vw,1.55rem);text-align:center}.about-intro p{margin:.45rem 0}.language-grid{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1rem}.language-card{background:#fff;border-radius:10px;box-shadow:0 6px 20px #0000000f;padding:1.2rem;text-align:center;transition:transform .3s ease;width:250px}.language-card:hover{transform:translateY(-5px)}.lang-icon{font-size:2.8rem;margin-bottom:.5rem}.python{color:#3472a6}.java{color:#ec2025}.kotlin{color:#7961f1}.social-links{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:center;margin-top:.25rem}.connect-text{color:var(--text-secondary);margin:0;text-align:center}.fade-in{animation:fade-in .6s ease-in-out}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.about-intro{text-align:left}.language-grid{align-items:center;flex-direction:column}.language-card{width:80%}}.publications-container{grid-gap:.85rem;display:grid;gap:.85rem;min-height:68vh;padding:.2rem .1rem 1rem}.publications-header{padding:.3rem 0 .2rem;text-align:center}.publications-header h1{font-size:clamp(1.35rem,3.2vw,2rem);letter-spacing:.01em;margin:0}.publications-header p{color:var(--text-secondary);font-size:.95rem;margin:.4rem 0 0}.publications-grid{grid-gap:1rem;display:grid;gap:1rem}.publication-card{background:linear-gradient(165deg,#fffffff7,#f2f9ffeb);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.7rem;padding:1.15rem 1.05rem;transition:transform .22s ease,box-shadow .22s ease}.publication-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.publication-header{grid-gap:.4rem;display:grid;gap:.4rem}.publication-header h3{color:#0e4b7d;font-size:1.16rem;line-height:1.35;margin:0}.publication-badge{background:#e1f4ff;border:1px solid #c5e8ff;border-radius:999px;color:#0d5d93;font-size:.74rem;font-weight:650;padding:.3rem .68rem;width:fit-content}.publication-section{grid-gap:.45rem;display:grid;gap:.45rem}.publication-section h4{color:var(--text-primary);font-size:.95rem;margin:0}.authors-list{grid-gap:.5rem;display:grid;gap:.5rem;list-style:none;margin:0;padding:0}.authors-list li{background:#ffffffd1;border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:.55rem .65rem}.authors-list strong{display:block;margin-bottom:.16rem}.authors-list p,.publication-abstract{color:var(--text-secondary);font-size:.92rem;margin:0;text-align:left}.publication-meta-grid{grid-gap:.45rem;display:grid;gap:.45rem;grid-template-columns:1fr}.publication-meta-grid p{background:#fffc;border:1px solid var(--border-soft);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.9rem;margin:0;padding:.5rem .62rem}.publication-link{background:linear-gradient(120deg,var(--brand),#1d8a82);border:1px solid #fff3;border-radius:999px;color:#f7ffff;font-size:.8rem;font-weight:700;padding:.46rem .86rem;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease;width:fit-content}.publication-link:hover{box-shadow:0 7px 15px #093f3a3d;transform:translateY(-2px)}@media (max-width:768px){.publication-card{padding:1rem}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(96deg,#0a2231f5,#0c4a57ed),radial-gradient(circle at 10% 15%,#ffffff14,#0000 32%);border-bottom:1px solid #ffffff2e;box-shadow:0 12px 26px #07182342;padding:.85rem 1.2rem;position:sticky;top:0;z-index:1000}.navbar-container{align-items:baseline;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;width:min(var(--content-width),calc(100% - .4rem))}.navbar-logo{color:#f6fbff;font-family:Sora,Segoe UI,sans-serif;font-size:clamp(1.2rem,2.3vw,1.5rem);font-weight:800;letter-spacing:.02em;margin:0;text-shadow:0 2px 10px #00000038;white-space:nowrap}.navbar-logo:hover{color:#dcfff9}.navbar-links{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.nav-link{border:1px solid #0000;border-radius:999px;color:#dff3ff;display:inline-block;font-size:.92rem;font-weight:650;padding:.52rem .85rem;position:relative;text-decoration:none;transition:.22s ease}.nav-link:hover{background-color:#ffffff26;border-color:#ffffff3d;color:#fff}.nav-link:focus-visible{outline:2px solid #7ee7ff;outline-offset:2px}.nav-link.active{background:linear-gradient(120deg,#12b3a6,#198fd7);border-color:#ffffff57;box-shadow:0 8px 18px #00000038;color:#f8feff}@media (max-width:768px){.navbar{padding:.72rem .75rem}.navbar-container{align-items:stretch;gap:.72rem;justify-content:center}.navbar-links{gap:.35rem;justify-content:center;width:100%}.nav-link{min-width:86px;text-align:center}}
/*# sourceMappingURL=main.3f0998e5.css.map*/