@import"https://fonts.googleapis.com/css2?family=Cinzel+Decorative&display=swap";@import"https://fonts.googleapis.com/css2?family=ZCOOL+XiaoWei&display=swap";@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;900&display=swap";:root{--cursor-default: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cdefs%3E%3CradialGradient id='cursor-gradient' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc' stop-opacity='1'/%3E%3Cstop offset='50%25' stop-color='%238e24aa' stop-opacity='0.8'/%3E%3Cstop offset='100%25' stop-color='%234a148c' stop-opacity='0.6'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='10' cy='10' r='8' fill='url(%23cursor-gradient)' stroke='%23ffffff' stroke-width='1' opacity='0.9'/%3E%3Ccircle cx='10' cy='10' r='3' fill='%23ffffff' opacity='0.8'/%3E%3C/svg%3E") 10 10, auto;--cursor-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cdefs%3E%3CradialGradient id='cursor-hover-gradient' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc' stop-opacity='1'/%3E%3Cstop offset='40%25' stop-color='%238e24aa' stop-opacity='0.9'/%3E%3Cstop offset='100%25' stop-color='%234a148c' stop-opacity='0.7'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='14' cy='14' r='12' fill='url(%23cursor-hover-gradient)' stroke='%23ffffff' stroke-width='2' opacity='0.95'/%3E%3Ccircle cx='14' cy='14' r='4' fill='%23ffffff' opacity='0.9'/%3E%3Cpath d='M14 8 L14 20 M8 14 L20 14' stroke='%23ffffff' stroke-width='1.5' opacity='0.7'/%3E%3C/svg%3E") 14 14, pointer;--cursor-link: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CradialGradient id='cursor-link-gradient' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc' stop-opacity='1'/%3E%3Cstop offset='60%25' stop-color='%238e24aa' stop-opacity='0.8'/%3E%3Cstop offset='100%25' stop-color='%234a148c' stop-opacity='0.6'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='12' r='10' fill='url(%23cursor-link-gradient)' stroke='%23ffffff' stroke-width='1.5' opacity='0.9'/%3E%3Cpath d='M8 12 L16 12 M13 9 L16 12 L13 15' stroke='%23ffffff' stroke-width='2' fill='none'/%3E%3C/svg%3E") 12 12, pointer;--cursor-expand: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cdefs%3E%3CradialGradient id='cursor-expand-gradient' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc' stop-opacity='1'/%3E%3Cstop offset='50%25' stop-color='%238e24aa' stop-opacity='0.9'/%3E%3Cstop offset='100%25' stop-color='%234a148c' stop-opacity='0.7'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='13' cy='13' r='11' fill='url(%23cursor-expand-gradient)' stroke='%23ffffff' stroke-width='1.8' opacity='0.95'/%3E%3Cpath d='M9 13 L17 13 M13 9 L13 17' stroke='%23ffffff' stroke-width='2.5' fill='none'/%3E%3C/svg%3E") 13 13, pointer;--cursor-card: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'%3E%3Cdefs%3E%3CradialGradient id='cursor-card-gradient' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc' stop-opacity='0.8'/%3E%3Cstop offset='60%25' stop-color='%238e24aa' stop-opacity='0.6'/%3E%3Cstop offset='100%25' stop-color='%234a148c' stop-opacity='0.4'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='11' cy='11' r='9' fill='url(%23cursor-card-gradient)' stroke='%23ffffff' stroke-width='1.5' opacity='0.8'/%3E%3Ccircle cx='11' cy='11' r='3' fill='%23ffffff' opacity='0.7'/%3E%3C/svg%3E") 11 11, pointer}*{cursor:var(--cursor-default)!important}button,.MuiButton-root,input[type=submit],input[type=button]{cursor:var(--cursor-default)!important;transition:all .2s ease!important}button:hover,.MuiButton-root:hover,input[type=submit]:hover,input[type=button]:hover{cursor:var(--cursor-hover)!important;transform:translateY(-1px)!important}a,a *,.link,.MuiLink-root{cursor:var(--cursor-default)!important;transition:all .2s ease!important}a:hover,a:hover *,.link:hover,.MuiLink-root:hover{cursor:var(--cursor-link)!important}.MuiAccordion-root,.MuiAccordionSummary-root,.MuiExpansionPanel-root,.MuiExpansionPanelSummary-root,[role=button][aria-expanded],.accordion,.expandable,.collapsible{cursor:var(--cursor-default)!important;transition:all .2s ease!important}.MuiAccordion-root:hover,.MuiAccordionSummary-root:hover,.MuiExpansionPanel-root:hover,.MuiExpansionPanelSummary-root:hover,[role=button][aria-expanded]:hover,.accordion:hover,.expandable:hover,.collapsible:hover{cursor:var(--cursor-expand)!important}.MuiCard-root,.MuiPaper-root.clickable,.card,.interactive-card,[role=button]:not(.MuiButton-root),.MuiIconButton-root,.MuiMenuItem-root,.MuiChip-root{cursor:var(--cursor-default)!important;transition:all .2s ease!important}.MuiCard-root:hover,.MuiPaper-root.clickable:hover,.card:hover,.interactive-card:hover,[role=button]:not(.MuiButton-root):hover,.MuiIconButton-root:hover,.MuiMenuItem-root:hover,.MuiChip-root:hover{cursor:var(--cursor-card)!important;transform:translateY(-2px) scale(1.02)!important}nav,.MuiAppBar-root,.MuiToolbar-root,.navbar,.nav-item{cursor:var(--cursor-default)!important}nav *:hover,.MuiAppBar-root *:hover,.MuiToolbar-root *:hover,.navbar *:hover,.nav-item:hover{cursor:var(--cursor-hover)!important}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],textarea,.MuiTextField-root input,.MuiOutlinedInput-input,.MuiInput-input{cursor:text!important}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,textarea:focus{cursor:text!important;box-shadow:0 0 0 2px #bb86fc4d!important}p:not(.clickable),span:not(.clickable):not([role=button]),div:not(.clickable):not([role=button]):not(.card):not(.interactive-card),img:not(.clickable):not([role=button]),h1,h2,h3,h4,h5,h6{cursor:default!important}.no-custom-cursor,.no-custom-cursor *{cursor:default!important}::-webkit-scrollbar{cursor:var(--cursor-default)!important}button,a,.MuiButton-root,.MuiIconButton-root,.MuiCard-root,[role=button]{transition:transform .2s ease,box-shadow .2s ease!important}@keyframes cursorGlow{0%{opacity:.8}50%{opacity:1}to{opacity:.8}}@keyframes bodyVioletShimmer{0%{background-color:#8a2be203}50%{background-color:#9370db05}to{background-color:#8a2be203}}body{animation:cursorGlow 4s ease-in-out infinite,bodyVioletShimmer 6s ease-in-out infinite}.cursor-download{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CradialGradient id='download-grad' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc'/%3E%3Cstop offset='100%25' stop-color='%234a148c'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='12' r='10' fill='url(%23download-grad)' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M12 6 L12 14 M9 11 L12 14 L15 11' stroke='white' stroke-width='2' fill='none'/%3E%3Cpath d='M8 16 L16 16' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E") 12 12,pointer!important}.cursor-view{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CradialGradient id='view-grad' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc'/%3E%3Cstop offset='100%25' stop-color='%234a148c'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='12' r='10' fill='url(%23view-grad)' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M12 8 C8 8 5 12 5 12 S8 16 12 16 S19 12 19 12 S16 8 12 8 Z' stroke='white' stroke-width='1.5' fill='none'/%3E%3Ccircle cx='12' cy='12' r='2' fill='white'/%3E%3C/svg%3E") 12 12,pointer!important}.cursor-contact{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CradialGradient id='contact-grad' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc'/%3E%3Cstop offset='100%25' stop-color='%234a148c'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='12' r='10' fill='url(%23contact-grad)' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M8 10 L12 13 L16 10' stroke='white' stroke-width='1.5' fill='none'/%3E%3Crect x='7' y='8' width='10' height='8' rx='1' stroke='white' stroke-width='1.5' fill='none'/%3E%3C/svg%3E") 12 12,pointer!important}.cursor-play{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CradialGradient id='play-grad' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc'/%3E%3Cstop offset='100%25' stop-color='%234a148c'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='12' r='10' fill='url(%23play-grad)' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M10 8 L16 12 L10 16 Z' fill='white'/%3E%3C/svg%3E") 12 12,pointer!important}.cursor-social{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'%3E%3Cdefs%3E%3CradialGradient id='social-grad' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0%25' stop-color='%23bb86fc'/%3E%3Cstop offset='100%25' stop-color='%234a148c'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='11' cy='11' r='9' fill='url(%23social-grad)' stroke='white' stroke-width='1.5'/%3E%3Ccircle cx='8' cy='8' r='1.5' fill='white'/%3E%3Ccircle cx='14' cy='8' r='1.5' fill='white'/%3E%3Ccircle cx='11' cy='14' r='1.5' fill='white'/%3E%3Cpath d='M8 10 L11 12 L14 10' stroke='white' stroke-width='1' fill='none'/%3E%3C/svg%3E") 11 11,pointer!important}.skills-item,.skill-card{cursor:var(--cursor-card)!important;transition:all .3s ease!important}.skills-item:hover,.skill-card:hover{transform:translateY(-3px) rotate(1deg) scale(1.03)!important;box-shadow:0 10px 25px #bb86fc4d!important}.project-card{cursor:var(--cursor-view)!important;transition:all .3s ease!important}.project-card:hover{transform:translateY(-5px) scale(1.02)!important;box-shadow:0 15px 35px #bb86fc66!important}.certificate-card{cursor:var(--cursor-view)!important}.work-card,.experience-card{cursor:var(--cursor-expand)!important;transition:all .3s ease!important}.work-card:hover,.experience-card:hover{transform:translate(5px) scale(1.01)!important;box-shadow:-5px 5px 20px #bb86fc4d!important}.contact-form button{cursor:var(--cursor-hover)!important}.social-link,.social-icon{cursor:var(--cursor-social)!important;transition:all .3s ease!important}.social-link:hover,.social-icon:hover{transform:translateY(-2px) rotate(5deg) scale(1.1)!important}.footer a,.footer-link{cursor:var(--cursor-link)!important}@keyframes skillGlow{0%,to{box-shadow:0 0 10px #bb86fc4d}50%{box-shadow:0 0 20px #bb86fc99}}@keyframes projectPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes violetShimmer{0%{background-position:-200px 0;box-shadow:0 0 5px #8a2be233}50%{box-shadow:0 0 20px #8a2be299}to{background-position:200px 0;box-shadow:0 0 5px #8a2be233}}@keyframes violetGlow{0%,to{box-shadow:0 0 10px #8a2be266,0 0 20px #9370db4d,0 0 30px #ba86fc33}50%{box-shadow:0 0 20px #8a2be2b3,0 0 40px #9370db80,0 0 60px #ba86fc4d}}@keyframes violetPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 10px rgba(138,43,226,.3))}50%{transform:scale(1.03);filter:drop-shadow(0 0 20px rgba(138,43,226,.6))}}.skills-item:hover{animation:violetGlow 1.5s ease-in-out infinite;background:linear-gradient(90deg,transparent 0%,rgba(138,43,226,.1) 25%,rgba(147,112,219,.2) 50%,rgba(186,134,252,.1) 75%,transparent 100%);background-size:200px 100%;animation:violetShimmer 2s infinite}.project-card:hover{animation:violetPulse 2s ease-in-out infinite}.work-card:hover,.experience-card:hover{animation:violetGlow 1.8s ease-in-out infinite;background:linear-gradient(45deg,transparent 0%,rgba(138,43,226,.08) 30%,rgba(147,112,219,.15) 50%,rgba(186,134,252,.08) 70%,transparent 100%);background-size:300px 300px;animation:violetShimmer 2.5s infinite}.certificate-card:hover{animation:violetPulse 1.2s ease-in-out infinite}.social-link:hover,.social-icon:hover{animation:violetGlow 1s ease-in-out infinite;filter:drop-shadow(0 0 15px rgba(138,43,226,.5))}.interactive-card:hover{background:linear-gradient(135deg,transparent 0%,rgba(138,43,226,.05) 20%,rgba(147,112,219,.1) 40%,rgba(186,134,252,.15) 60%,rgba(147,112,219,.1) 80%,transparent 100%);background-size:400px 400px;animation:violetShimmer 3s infinite}.tooltip-container{position:relative;display:inline-block}.fancy-tooltip{position:absolute;bottom:125%;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#8a2be2f2,#9370dbe6,#ba86fcd9);color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-family:Gilroy Light,sans-serif;white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 25px #8a2be266,0 4px 15px #9370db4d,inset 0 1px #fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:tooltipGlow 2s ease-in-out infinite}.fancy-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#8a2be2f2;filter:drop-shadow(0 2px 4px rgba(138,43,226,.3))}.tooltip-container:hover .fancy-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(-5px)}@keyframes tooltipGlow{0%,to{box-shadow:0 8px 25px #8a2be266,0 4px 15px #9370db4d,inset 0 1px #fff3}50%{box-shadow:0 12px 35px #8a2be299,0 6px 20px #9370db66,inset 0 1px #ffffff4d}}.accordion-header-tooltip{position:relative;cursor:var(--cursor-expand)!important}.accordion-header-tooltip:before{content:"👆 Click to expand/collapse";position:absolute;top:-45px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#8a2be2f2,#9370dbe6);color:#fff;padding:6px 10px;border-radius:6px;font-size:11px;font-family:Gilroy Light,sans-serif;white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease;border:1px solid rgba(255,255,255,.2);box-shadow:0 6px 20px #8a2be266}.accordion-header-tooltip:after{content:"";position:absolute;top:-15px;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#8a2be2f2;opacity:0;visibility:hidden;transition:all .3s ease}.accordion-header-tooltip:hover:before,.accordion-header-tooltip:hover:after{opacity:1;visibility:visible}.skills-accordion-header{position:relative}.skills-accordion-header:before{content:"🔧 Click to view skills details";position:absolute;top:-50px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#8a2be2f2,#9370dbe6,#ba86fcd9);color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-family:Gilroy Light,sans-serif;white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.3);box-shadow:0 10px 30px #8a2be280;animation:skillTooltipShimmer 3s ease-in-out infinite}.education-accordion-header:before{content:"🎓 Click to view education details";position:absolute;top:-50px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#8a2be2f2,#9370dbe6,#ba86fcd9);color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-family:Gilroy Light,sans-serif;white-space:nowrap;z-index:1000;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.3);box-shadow:0 10px 30px #8a2be280;animation:educationTooltipShimmer 3s ease-in-out infinite}.skills-accordion-header:hover:before,.education-accordion-header:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(-8px)}@keyframes skillTooltipShimmer{0%,to{background:linear-gradient(135deg,#8a2be2f2,#9370dbe6,#ba86fcd9)}50%{background:linear-gradient(135deg,#ba86fcf2,#8a2be2e6,#9370dbd9)}}@keyframes educationTooltipShimmer{0%,to{background:linear-gradient(135deg,#8a2be2f2,#9370dbe6,#ba86fcd9)}50%{background:linear-gradient(135deg,#9370dbf2,#ba86fce6,#8a2be2d9)}}@font-face{font-family:Gilroy Light;src:url(/assets/Gilroy-Light-CVM2ydYb.otf) format("opentype")}@font-face{font-family:Gilroy Bold;src:url(/assets/Gilroy-ExtraBold-BDcfmT-i.otf) format("opentype")}:root{--font-gilroy-light: "Gilroy Light", sans-serif;--font-gilroy-bold: "Gilroy Bold", sans-serif;--font-allura: "Allura", cursive;--color-primary: #f5afec;--color-secondary: #f4e0fa;--color-accent: #c274c6;--color-bg: #ffa9e2;--color-heading: #ffe8fd;--color-heading-sub: #6530b9;--color-heading-hover: #7337bd;--color-text: #401552;--color-skillchip: #69247C;--color-skillchip-hover: #da49da;--color-skillchip-bg: #FAC67A;--color-skillchip-bg-hover: #F9E6CF;--color-card-bg: #ffffff;--color-card-bg2: #fec3fe;--color-particle1: #69247C;--color-particle2: #DA498D;--color-particle-shadow: rgba(218, 73, 141, .5);--color-typewriter: #69247C;--color-typewriter-border: #DA498D;--color-contact-bg: #F9E6CF;--color-contact-card-bg: #F9E6CF;--color-contact-dot-bg: #69247C;--color-contact-floating-icon-bg: #DA498D;--color-contact-title-bg: #DA498D;--color-contact-title-shadow: rgba(218, 73, 141, .5);--color-contact-title-shadow-hover: rgba(218, 73, 141, .7);--color-contact-title-underline: #DA498D;--color-contact-title-underline-shadow: rgba(218, 73, 141, .5);--color-contact-card-title: #69247C;--color-contact-card-link: #DA498D;--color-footer-bg: #DA498D}.font-gilroy-light{font-family:var(--font-gilroy-light)}.font-gilroy-bold{font-family:var(--font-gilroy-bold)}.font-allura{font-family:var(--font-allura)}body{margin:0;font-family:Gilroy Light,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-accent) 50%,var(--color-secondary) 100%);min-height:100vh}html{background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-accent) 50%,var(--color-secondary) 100%)}.link{color:inherit;word-break:break-all}
