:root{--primary-color:#3b82f6;--secondary-color:#10b981;--accent-color:#f59e0b;--text-primary:#1f2937;--text-secondary:#6b7280;--text-muted:#9ca3af;--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--border-color:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--gradient-primary:linear-gradient(135deg,#667eea 0%,#764ba2 100%);--gradient-secondary:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);--gradient-accent:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}[data-theme=dark]{--text-primary:#f9fafb;--text-secondary:#d1d5db;--text-muted:#9ca3af;--bg-primary:#111827;--bg-secondary:#1f2937;--bg-tertiary:#374151;--border-color:#4b5563;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #0006;--shadow-xl:0 20px 25px -5px #0006}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-primary);background-color:var(--bg-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;transition:all .3s}.section{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(40px)}.section.visible{opacity:1;transform:translateY(0)}.section.fade-out{opacity:0;transform:translateY(-40px)}.about-container{background-color:var(--bg-primary);opacity:0;min-height:100vh;transition:all .8s;transform:translateY(20px)}.about-container.visible{opacity:1;transform:translateY(0)}.hero-section-floating{background:radial-gradient(#0a0a23,#050516);justify-content:center;align-items:flex-end;height:100vh;padding-bottom:3rem;display:flex;position:relative;overflow:hidden}.center-profile{z-index:2}.profile-main{width:400px;height:auto;box-shadow:#0009;object-fit:cover}.center-profile .profile-main{content:url(/images/another/han2.png);transition:all .3s;top:10px}.center-profile:hover .profile-main{content:url(/images/another/han1.png);width:350px}.floating1{width:350px;animation:5s ease-in-out infinite float;position:absolute}.floating2{width:250px;animation:5s ease-in-out infinite float;position:absolute}.floating3{width:350px;animation:5s ease-in-out infinite float;position:absolute}.floating4{width:250px;animation:5s ease-in-out infinite float;position:absolute}.floating5{width:220px;animation:5s ease-in-out infinite float;position:absolute}.floating6{width:250px;animation:5s ease-in-out infinite float;position:absolute}.floating1{animation-delay:0s;top:10%;left:10%}.floating2{animation-delay:3s;bottom:2%;right:10%}.floating3{animation-delay:4s;bottom:61%;left:35%}.floating4{animation-delay:1.5s;top:10%;right:15%}.floating5{animation-delay:2.5s;top:60%;left:10%}.floating6{animation-delay:3.5s;bottom:41%;right:21%}.magic-area{cursor:crosshair;position:relative;overflow:hidden}.sparkle-layer{pointer-events:none;position:absolute;inset:0}.sparkle{pointer-events:none;pointer-events:none;filter:drop-shadow(0 0 6px);width:10px;height:10px;animation:.8s ease-out forwards sparkleOut;animation-delay:calc(var(--i)*.1s);background:radial-gradient(circle,#ff69b4,#0000);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}@keyframes sparkleOut{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}30%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}70%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.8)}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(3deg)}}@media screen and (max-width:768px){.profile-main{width:180px}.floating{width:50px}}.status-indicator{background-color:var(--secondary-color);border:3px solid #fff;border-radius:50%;width:20px;height:20px;animation:2s infinite pulse;position:absolute;bottom:10px;right:10px}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.profile-info{text-align:center;max-width:400px;font-style:bolt;position:absolute;left:642px}.main-title{background:linear-gradient(45deg,#fff,#e0e7ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;margin-bottom:1rem;font-size:3rem;font-weight:700}.name-variants{text-align:center;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.1rem;display:flex}.name-primary{font-weight:600}.name-nickname{color:#ffffffe6;font-weight:500}.name-vietnamese{font-style:bold;color:#fffc}.name-separator{color:#fff9}.location-status{flex-wrap:wrap;justify-content:center;gap:2rem;margin-bottom:1.5rem;display:flex}.location,.status{color:#ffffffe6;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.location .icon,.status .icon{width:16px;height:16px}.status{font-style:normal}.tagline{color:#ffffffe6;margin-bottom:2rem;font-size:1.2rem;font-style:italic}.hero-actions{justify-content:center;display:flex}.cv-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background-color:#ffffff26;border:1px solid #fff3;border-radius:50px;align-items:center;gap:.5rem;padding:1rem 2rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.cv-button:hover{box-shadow:var(--shadow-lg);background-color:#ffffff40;transform:translateY(-2px)}.cv-button .icon{width:18px;height:18px}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{color:var(--text-primary);margin-bottom:1rem;font-size:2.5rem;font-weight:700}.section-line{background:var(--gradient-accent);border-radius:2px;width:80px;height:4px;margin:0 auto}.about-section{max-width:1200px;margin:0 auto;padding:5rem 2rem}.about-content{grid-template-columns:1fr;align-items:start;gap:3rem;display:grid}.about-text{color:var(--text-secondary);font-size:1.1rem;line-height:1.8}.about-text p{margin-bottom:1.5rem}.about-text strong{color:var(--primary-color);font-weight:600}.interests-grid{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.interest-tag{background:var(--gradient-secondary);color:#fff;box-shadow:var(--shadow-md);border-radius:25px;padding:.75rem 1.5rem;font-weight:500;transition:transform .3s}.interest-tag:hover{transform:translateY(-2px)}.education-section{background-color:var(--bg-secondary);padding:5rem 2rem}.education-timeline{flex-direction:column;gap:2rem;max-width:1000px;margin:0 auto;display:flex}.education-card{background-color:var(--bg-primary);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);border-radius:16px;padding:2rem;transition:all .3s;position:relative;overflow:hidden}.education-card:before{content:"";background:var(--gradient-primary);width:4px;height:100%;position:absolute;top:0;left:0}.education-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.education-header{gap:1.5rem;margin-bottom:1rem;display:flex}.education-icon{background:var(--gradient-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.education-icon .icon{color:#fff;width:24px;height:24px}.education-main h3{color:var(--text-primary);margin-bottom:.5rem;font-size:1.4rem;font-weight:700}.education-main h4{color:var(--primary-color);margin-bottom:1rem;font-size:1.1rem;font-weight:600}.education-meta{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.timeline,.location{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.timeline .icon,.location .icon{width:14px;height:14px}.status{text-transform:uppercase;border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.status.current{color:var(--secondary-color);background-color:#10b9811a}.status.graduated{color:var(--primary-color);background-color:#3b82f61a}.education-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.specializations{flex-wrap:wrap;gap:.5rem;display:flex}.specialization-tag{background-color:var(--bg-tertiary);color:var(--text-secondary);border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:500}.skills-section{background-color:var(--bg-secondary);max-width:1400px;margin:0 auto;padding:5rem 2rem}.skills-categories{grid-template-columns:1fr;gap:3rem;display:grid}.skill-category{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;padding:2rem}.category-title{color:var(--text-primary);text-align:center;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.skill-card{background-color:var(--bg-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:12px;padding:1.5rem;transition:all .3s;position:relative;overflow:hidden}.skill-card:before{content:"";background:var(--gradient-accent);width:100%;height:2px;transition:transform .3s;position:absolute;top:0;left:0;transform:scaleX(0)}.skill-card:hover:before,.skill-card.selected:before{transform:scaleX(1)}.skill-card:hover,.skill-card.selected{box-shadow:var(--shadow-lg);border-color:var(--primary-color);transform:translateY(-2px)}.skill-card{align-items:center;gap:1rem;display:flex}.skill-icon{background-color:var(--bg-tertiary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.skill-icon img{object-fit:contain;width:32px;height:32px}.skill-info{flex-grow:1}.skill-name{color:var(--text-primary);margin-bottom:.5rem;font-weight:600;display:block}.skill-level{align-items:center;gap:.75rem;display:flex}.skill-bar{background-color:var(--bg-tertiary);border-radius:3px;flex-grow:1;height:6px;overflow:hidden}.skill-progress{background:var(--gradient-accent);border-radius:3px;height:100%;transition:width .8s}.skill-percentage{color:var(--text-muted);min-width:35px;font-size:.85rem;font-weight:600}.work-section{padding:5rem 2rem}.work-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.work-card{background-color:var(--bg-secondary);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);border-radius:20px;padding:2rem;transition:all .3s;position:relative;overflow:hidden}.work-card:before{content:"";background:var(--gradient-secondary);width:100%;height:4px;position:absolute;top:0;left:0}.work-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-5px)}.work-card:hover .work-icon{transform:scale(1.1)rotate(-5deg)}.work-header{gap:1rem;margin-bottom:1.5rem;display:flex}.work-icon{background:var(--gradient-secondary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.work-icon .icon{color:#fff;width:24px;height:24px}.work-title-section h3{color:var(--text-primary);margin-bottom:.5rem;font-size:1.3rem;font-weight:700}.work-meta{align-items:center;gap:1rem;display:flex}.role{background-color:var(--bg-tertiary);color:var(--text-secondary);border-radius:15px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.timeline{color:var(--text-muted);font-size:.9rem}.work-description{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.achievements h4{color:var(--text-primary);margin-bottom:.75rem;font-size:1rem;font-weight:600}.achievements ul{padding:0;list-style:none}.achievements li{color:var(--text-secondary);margin-bottom:.5rem;padding-left:1.5rem;position:relative}.achievements li:before{content:"✓";color:var(--secondary-color);font-weight:700;position:absolute;left:0}.theme-toggle-container{z-index:1000;top:2rem;right:2rem;top:calc(16px + var(--toggle-travel,0vh));z-index:1000;pointer-events:auto;transition:top .15s ease-out;position:fixed}.theme-toggle{background:var(--gradient-primary);color:#fff;cursor:pointer;width:60px;height:60px;box-shadow:var(--shadow-lg);border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:flex}.theme-toggle:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)scale(1.05)}.theme-toggle .icon{width:24px;height:24px}@media (min-width:768px){.profile-section{text-align:left;flex-direction:row}.profile-info{text-align:left}.main-title{font-size:4rem}.about-content{grid-template-columns:2fr 1fr}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (min-width:1024px){.skills-categories{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.hero-section{padding:2rem 1rem}.main-title{font-size:2.5rem}.name-variants{flex-direction:column;gap:.25rem}.location-status{flex-direction:column;gap:.5rem}.about-section,.education-section,.skills-section,.work-section{padding:3rem 1rem}.section-header h2{font-size:2rem}.education-header{flex-direction:column;gap:1rem}.work-grid,.skills-grid{grid-template-columns:1fr}.skill-card{text-align:center;flex-direction:column}.skill-level{width:100%}}
