@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Outfit:wght@400;500;600;700;800&display=swap";:root{--primary-color: #FFD700;--primary-hover: #E6C200;--bg-color: #0c0c0e;--surface-color: rgba(24, 24, 27, .6);--surface-border: var(--overlay-5);--surface-hover: var(--overlay-8);--text-primary: #F4F4F5;--text-secondary: #A1A1AA;--transition: all .3s cubic-bezier(.25, .8, .25, 1);--glass-bg: rgba(24, 24, 27, .4);--glass-border: rgba(255, 255, 255, .05);--date-bg: rgba(15, 15, 20, .75);--date-current-bg: rgba(20, 18, 5, .8);--overlay-3: rgba(255, 255, 255, .035);--overlay-4: rgba(255, 255, 255, .04);--overlay-5: rgba(255, 255, 255, .05);--overlay-8: rgba(255, 255, 255, .08);--overlay-10: rgba(255, 255, 255, .1);--overlay-12: rgba(255, 255, 255, .12);--overlay-20: rgba(255, 255, 255, .2);--overlay-30: rgba(255, 255, 255, .3);--overlay-50: rgba(255, 255, 255, .5);--overlay-60: rgba(255, 255, 255, .6);--overlay-75: rgba(255, 255, 255, .75);--card-bg-60: rgba(30, 30, 35, .6);--card-bg-70: rgba(30, 30, 35, .7);--card-bg-75: rgba(30, 30, 35, .75);--card-bg-80: rgba(35, 35, 40, .8);--card-bg-85: rgba(30, 30, 35, .85)}[data-theme=light]{--primary-color: #D4AF37;--primary-hover: #B8860B;--bg-color: #f8f9fa;--surface-color: rgba(255, 255, 255, .75);--surface-border: rgba(0, 0, 0, .1);--surface-hover: rgba(0, 0, 0, .05);--text-primary: #212529;--text-secondary: #495057;--glass-bg: rgba(255, 255, 255, .6);--glass-border: rgba(0, 0, 0, .1);--date-bg: rgba(255, 255, 255, .85);--date-current-bg: rgba(255, 250, 230, .9);--overlay-3: rgba(0, 0, 0, .035);--overlay-4: rgba(0, 0, 0, .04);--overlay-5: rgba(0, 0, 0, .05);--overlay-8: rgba(0, 0, 0, .08);--overlay-10: rgba(0, 0, 0, .1);--overlay-12: rgba(0, 0, 0, .12);--overlay-20: rgba(0, 0, 0, .2);--overlay-30: rgba(0, 0, 0, .3);--overlay-50: rgba(0, 0, 0, .5);--overlay-60: rgba(0, 0, 0, .6);--overlay-75: rgba(0, 0, 0, .75);--card-bg-60: rgba(255, 255, 255, .7);--card-bg-70: rgba(255, 255, 255, .8);--card-bg-75: rgba(255, 255, 255, .85);--card-bg-80: rgba(255, 255, 255, .9);--card-bg-85: rgba(255, 255, 255, .95)}.theme-toggle-btn{position:fixed;top:24px;right:24px;width:44px;height:44px;border-radius:50%;background:var(--surface-color);border:1px solid var(--surface-border);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;z-index:1000;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:var(--transition);box-shadow:0 4px 12px #0000001a}.theme-toggle-btn:hover{transform:scale(1.1) rotate(15deg);border-color:var(--primary-color);color:var(--primary-color)}*{margin:0;padding:0;box-sizing:border-box;scroll-behavior:smooth}body{font-family:Inter,sans-serif;background-color:var(--bg-color);color:var(--text-primary);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:Outfit,sans-serif;color:var(--text-primary)}a{text-decoration:none;color:inherit;transition:var(--transition)}.glass{background:var(--surface-color);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--surface-border);border-radius:20px;box-shadow:0 4px 30px #0000001a}.layout-split{display:flex;min-height:100vh;max-width:1600px;margin:0 auto}.sidebar{width:320px;height:100vh;position:sticky;top:0;padding:40px;display:flex;flex-direction:column;border-right:1px solid var(--surface-border)}.sidebar-inner{display:flex;flex-direction:column;justify-content:space-between;flex-grow:1;gap:32px}.profile-image{width:140px;height:140px;border-radius:24px;object-fit:cover;margin-bottom:24px;border:2px solid var(--surface-border);box-shadow:0 0 40px #ffd7001a;transition:var(--transition)}.profile-image:hover{transform:scale(1.05) rotate(-2deg);border-color:var(--primary-color)}.profile-section h1{font-size:2.2rem;font-weight:700;line-height:1.1;margin-bottom:8px;letter-spacing:-.5px}.profile-section h2{font-size:1.1rem;color:var(--primary-color);font-weight:500;margin-bottom:16px}.tagline{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.sidebar-nav ul{list-style:none;display:flex;flex-direction:column;gap:16px}.nav-link{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:500;color:var(--text-secondary);position:relative;padding-left:0;transition:var(--transition)}.nav-link:before{content:"";position:absolute;left:-15px;top:50%;transform:translateY(-50%);width:0;height:2px;background-color:var(--primary-color);transition:var(--transition)}.nav-link:hover,.nav-link.active{color:var(--text-primary);padding-left:15px}.nav-link:hover:before,.nav-link.active:before{width:8px}.social-links{display:grid;grid-template-columns:repeat(3,40px);gap:12px}.social-links a{width:40px;height:40px;border-radius:12px;background:var(--surface-color);border:1px solid var(--surface-border);display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--text-secondary)}.social-links a:hover{background:var(--primary-color);color:var(--bg-color);border-color:var(--primary-color);transform:translateY(-3px)}.mobile-header{display:none;position:fixed;top:0;width:100%;padding:16px 24px;background:#0c0c0ed9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--surface-border);z-index:1000;align-items:center;justify-content:space-between}.mobile-logo{font-family:Outfit,sans-serif;font-weight:800;font-size:1.5rem;color:var(--text-primary)}.hamburger{cursor:pointer}.hamburger .bar{display:block;width:24px;height:2px;margin:5px 0;background-color:var(--text-primary);transition:var(--transition)}.content-area{flex-grow:1;padding:60px;max-width:1000px}.section-block{margin-bottom:100px}.section-title{font-size:2.5rem;margin-bottom:30px;font-weight:700;position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-5px;left:0;width:40px;height:3px;background-color:var(--primary-color);border-radius:2px}.bento-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;grid-auto-flow:dense}.bento-item{padding:30px;display:flex;flex-direction:column;transition:var(--transition)}.bento-item:hover{transform:translateY(-5px);border-color:var(--surface-hover);background:var(--card-bg-70)}.skill-card{cursor:pointer;transition:var(--transition);padding:20px}.skill-card .bento-header{margin-bottom:10px}.skill-card .tags{margin-top:5px}.skill-card:hover{transform:translateY(-5px) scale(1.02);border-color:var(--primary-color);background:var(--card-bg-80);box-shadow:0 8px 32px #ffd7001a}.bento-item.span-2{grid-column:span 2}.bento-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.bento-icon{font-size:2rem;color:var(--primary-color)}.bento-item h3{font-size:1.4rem;margin:0}.bento-item p{color:var(--text-secondary);font-size:1rem}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.tag{background:#ffd70014;color:var(--primary-color);padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:500;border:1px solid rgba(255,215,0,.15);font-family:Outfit,sans-serif}.timeline-container{position:relative;max-width:1000px;margin:0 auto;padding:40px 0}.timeline-container:after{content:"";position:absolute;width:2px;background-color:var(--surface-border);top:0;bottom:0;left:50%;margin-left:-1px}.timeline-item{padding:10px 40px;position:relative;background-color:inherit;width:50%;cursor:pointer}.timeline-item:hover .timeline-content{transform:translateY(-4px);border-color:var(--overlay-10);background:var(--card-bg-75);box-shadow:0 12px 35px #00000040,0 0 0 1px var(--comp-color, var(--overlay-5))}.timeline-item.left{left:0}.timeline-item.right{left:50%}.timeline-dot{position:absolute;width:20px;height:20px;border-radius:50%;top:30px;z-index:1}.timeline-item.left .timeline-dot{right:0;transform:translate(50%)}.timeline-item.right .timeline-dot{left:0;transform:translate(-50%)}.timeline-content{padding:20px 24px;position:relative;border-radius:16px;transition:transform .3s cubic-bezier(.25,.8,.25,1),background .3s ease,box-shadow .3s ease,border-color .3s ease,border-radius .3s ease}.timeline-item.left .company-border{border-right:4px solid var(--comp-color)}.timeline-item.right .company-border{border-left:4px solid var(--comp-color)}.exp-header{display:flex;align-items:center;gap:12px;margin-bottom:0}.exp-icon-wrap{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.exp-title{flex:1;min-width:0}.exp-title h3{font-size:1.2rem;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exp-title h4{font-size:.9rem;color:var(--text-secondary);font-weight:400;white-space:normal;overflow:visible;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.4}.exp-date-outside{position:absolute;top:22px;font-family:Outfit,sans-serif;color:var(--text-primary);font-size:.85rem;font-weight:600;white-space:nowrap;background:var(--date-bg);border:1px solid var(--overlay-12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:5px 14px;border-radius:20px;pointer-events:none;letter-spacing:.3px;box-shadow:0 0 14px -2px var(--comp-color, var(--overlay-10))}.exp-date-outside.right{right:-10px;transform:translate(100%)}.exp-date-outside.left{left:-10px;transform:translate(-100%)}.exp-date-outside.current{color:var(--primary-color);background:var(--date-current-bg);border-color:#ffd7004d;box-shadow:0 0 18px -2px #ffd70080}.exp-company-logo{width:28px;height:28px;object-fit:contain;border-radius:6px}.exp-list{list-style:none;color:var(--text-secondary)}.exp-list li{margin-bottom:8px;padding-left:20px;position:relative}.exp-list li:before{content:"▹";color:var(--primary-color);position:absolute;left:0;top:0}.exp-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.exp-header>.exp-chevron{margin-left:auto;flex-shrink:0}.exp-chevron{width:26px;height:26px;border-radius:50%;background:var(--overlay-5);border:1px solid var(--surface-border);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--text-secondary);transition:transform .4s cubic-bezier(.25,.8,.25,1),color .3s ease,border-color .3s ease,background .3s ease;flex-shrink:0}.timeline-item.expanded .exp-chevron{transform:rotate(180deg);color:var(--comp-color);border-color:var(--comp-color);background:var(--overlay-8)}.exp-tasks-wrapper{max-height:0;overflow:hidden;opacity:0;margin-top:0;transition:max-height .5s cubic-bezier(.25,.8,.25,1),opacity .35s ease,margin-top .35s ease}.timeline-item.expanded .exp-tasks-wrapper{max-height:700px;opacity:1;margin-top:16px}.exp-tasks-inner{padding-top:4px}.timeline-item.expanded .timeline-content{background:var(--card-bg-85);box-shadow:0 8px 40px #00000059}.timeline-item.left.expanded .company-border{border-right-width:6px}.timeline-item.right.expanded .company-border{border-left-width:6px}.exp-filter-btn{display:inline-flex;align-items:center;gap:7px;margin-top:16px;padding:7px 15px;background:var(--overlay-4);border:1px solid var(--surface-border);border-radius:8px;color:var(--text-secondary);font-family:Outfit,sans-serif;font-size:.85rem;cursor:pointer;transition:var(--transition)}.exp-filter-btn:hover{background:#ffd7001a;border-color:#ffd70066;color:var(--primary-color);transform:translate(4px)}.exp-filter-btn i{font-size:.8rem}@media screen and (max-width: 768px){.timeline-container:after{left:20px}.timeline-item{width:100%;padding-left:50px;padding-right:0;margin-top:0!important}.timeline-item.left,.timeline-item.right{left:0}.timeline-item.left .timeline-dot,.timeline-item.right .timeline-dot{left:10px;right:auto;transform:none}.timeline-item.left .company-border,.timeline-item.right .company-border{border-right:none;border-left:4px solid var(--comp-color)}.exp-date-outside{display:none}.exp-header{flex-wrap:wrap}}.timeline-single-sided:after{left:20px}.timeline-single-sided .timeline-item{width:100%;padding-left:50px;padding-right:0;left:0!important}.timeline-single-sided .timeline-item .timeline-dot{left:10px;right:auto;transform:none}.timeline-single-sided .timeline-item .company-border{border-right:none;border-left:4px solid var(--comp-color)}.timeline-single-sided .timeline-item.expanded .company-border{border-left-width:6px;border-right-width:0}.timeline-badge{position:relative;left:20px;transform:translate(-50%);background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:6px 16px;border-radius:20px;display:inline-block;font-size:.9rem;font-weight:600;color:var(--text-primary);margin:20px 0;z-index:2;box-shadow:0 4px 6px #0000001a;clear:both}.edu-achievements{margin-top:40px;padding:30px}.edu-achievements ul{list-style:none;padding-left:0}.edu-achievements li{margin-bottom:12px;padding-left:25px;position:relative;color:var(--text-secondary)}.edu-achievements li:before{content:"🏆";position:absolute;left:0;top:0}.projects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.projects-header .section-title{margin-bottom:0}.filter-label{font-size:1rem;font-family:Outfit,sans-serif;color:var(--primary-color);background:#ffd7001a;padding:4px 12px;border-radius:12px;margin-left:10px;display:inline-block;vertical-align:middle}.clear-filter-btn{background:var(--overlay-5);border:1px solid var(--surface-border);color:var(--text-secondary);padding:8px 16px;border-radius:8px;cursor:pointer;transition:var(--transition);font-family:Outfit,sans-serif;font-size:.9rem}.clear-filter-btn:hover{background:#ff32321a;color:#ff5252;border-color:#ff32324d}.clear-filter-btn.hidden,.filter-label.hidden,.hidden:not(.modal-overlay){display:none!important}.projects-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.interactive-project{padding:20px;display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}.interactive-project:hover{border-color:var(--primary-color);background:var(--card-bg-70);transform:translateY(-4px);box-shadow:0 12px 35px #00000040}.proj-card-header{display:flex;align-items:flex-start;gap:14px}.proj-mini-placeholder{width:48px;height:48px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 10px #0000004d}.proj-mini-icon{width:48px;height:48px;border-radius:12px;object-fit:cover;flex-shrink:0}.proj-mini-letter{font-family:Outfit,sans-serif;font-size:1.3rem;font-weight:800;color:var(--overlay-50);line-height:1}.proj-card-title{font-size:1.05rem;font-weight:600;line-height:1.3;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}.proj-short-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.compact-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.compact-tags .tag{font-size:.75rem;padding:3px 8px;background:var(--overlay-5)}.company-dot{width:12px;height:12px;border-radius:50%;display:inline-block;cursor:help}.tooltip-wrapper{position:relative}.tooltip-wrapper .tooltip-text{visibility:hidden;width:max-content;background-color:var(--surface-light);color:#fff;text-align:center;border-radius:6px;padding:4px 8px;position:absolute;z-index:10;bottom:150%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .3s;font-size:.8rem;border:1px solid var(--surface-border)}.tooltip-wrapper:hover .tooltip-text{visibility:visible;opacity:1}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0a0c99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;justify-content:center;align-items:center;padding:20px;opacity:1;transition:opacity .3s ease}.modal-overlay.hidden{opacity:0;pointer-events:none}.modal-container{width:100%;max-width:800px;max-height:90vh;overflow-y:auto;position:relative;padding:40px;border-radius:20px;border:1px solid var(--overlay-10);box-shadow:0 25px 50px -12px #00000080;background:var(--card-bg-60)}.modal-container::-webkit-scrollbar{width:8px}.modal-container::-webkit-scrollbar-track{background:transparent}.modal-container::-webkit-scrollbar-thumb{background:var(--overlay-20);border-radius:4px}.modal-close-btn{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--text-secondary);font-size:2rem;cursor:pointer;transition:color .3s;z-index:10}.modal-close-btn:hover{color:var(--primary-color)}.modal-header{margin-bottom:30px}.modal-body{color:var(--text-secondary)}.modal-tags{display:flex;flex-wrap:wrap;gap:8px}.modal-tags .tag{background:#ffd7001a;color:var(--primary-color);border:1px solid rgba(255,215,0,.2)}.skill-modal-container{max-width:680px;max-height:82vh;display:flex;flex-direction:column;padding:0;overflow:hidden}.skill-modal-header{display:flex;align-items:center;gap:14px;padding:28px 32px 20px;border-bottom:1px solid var(--surface-border);flex-shrink:0}.skill-modal-header .bento-icon{font-size:1.6rem}.skill-modal-header h2{font-size:1.4rem;margin:0;font-weight:700}.skill-modal-container .modal-close-btn{position:absolute;top:18px;right:20px}.skill-modal-list{overflow-y:auto;padding:8px 32px 28px;flex:1;scrollbar-width:thin;scrollbar-color:var(--overlay-10) transparent}.skill-modal-item{padding:20px 0}.skill-modal-divider{border-top:1px solid var(--surface-border)}.skill-modal-name{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0 0 6px}.skill-modal-desc{font-size:.88rem;color:var(--text-secondary);line-height:1.55;margin:0 0 10px}.skill-modal-usage{font-size:.88rem;color:var(--text-secondary);line-height:1.55;margin:0;display:flex;gap:8px;align-items:flex-start;background:var(--overlay-3);border-radius:8px;padding:10px 12px;border-left:2px solid var(--primary-color)}.skill-usage-icon{flex-shrink:0;font-size:.9rem;line-height:1.55}.proj-media-placeholder{width:100%;height:220px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;box-shadow:inset 0 0 20px #00000080}.media-letter{font-size:5rem;font-family:Outfit,sans-serif;font-weight:800;color:var(--overlay-30)}.proj-link-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#ffd7001a;color:var(--primary-color);border:1px solid rgba(255,215,0,.2);border-radius:8px;text-decoration:none;font-weight:500;font-size:.9rem;transition:var(--transition)}.proj-link-btn:hover{background:var(--primary-color);color:var(--bg-color)}.proj-desc{color:var(--text-secondary);margin-bottom:24px;font-size:1.1rem;line-height:1.6}.proj-subheading{font-size:1.2rem;color:var(--primary-color);margin-bottom:12px;font-family:Outfit,sans-serif}.proj-tasks{list-style:none;color:var(--text-secondary);margin-bottom:30px}.proj-tasks li{margin-bottom:10px;padding-left:20px;position:relative;line-height:1.5}.proj-tasks li:before{content:"▹";color:var(--primary-color);position:absolute;left:0;top:0}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.25,.8,.25,1),transform .6s cubic-bezier(.25,.8,.25,1)}.fade-in.visible{opacity:1;transform:translateY(0)}@media (max-width: 1024px){.sidebar{width:280px;padding:30px}.content-area{padding:40px}}@media (max-width: 768px){.layout-split{flex-direction:column}.mobile-header{display:flex}.sidebar{width:100%;height:auto;position:relative;padding:100px 24px 40px;border-right:none;border-bottom:1px solid var(--surface-border);background:var(--bg-color)}.sidebar-nav{display:none}.sidebar.menu-open .sidebar-nav{display:block;margin-top:30px;margin-bottom:30px}.profile-section{text-align:center;display:flex;flex-direction:column;align-items:center}.profile-image{width:120px;height:120px}.social-links{justify-content:center}.content-area{padding:30px 20px}.bento-grid{grid-template-columns:1fr}.bento-item.span-2,.project-bento.span-2{grid-column:span 1}.projects-list{grid-template-columns:1fr}.hamburger.active .bar:nth-child(2){opacity:0}.hamburger.active .bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.active .bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}}@media (max-width: 900px) and (min-width: 769px){.projects-list{grid-template-columns:repeat(2,1fr)}}
