.widget{background:#0d1117b3;-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);border-radius:18px;border:1px solid rgba(48,54,61,.3);box-shadow:0 12px 40px #0003,0 4px 12px #00000026,inset 0 1px #ffffff14;overflow:hidden;transition:all .3s ease;width:280px;height:fit-content;max-height:350px;flex-shrink:0}.github-widget{max-height:400px}.widget:hover{transform:translateY(-6px);border:1px solid rgba(0,122,255,.3);box-shadow:0 20px 60px #0000004d,0 8px 20px #007aff26,inset 0 1px #ffffff1f}.widget-header{display:flex;align-items:center;gap:10px;padding:14px 18px;background:#151a2299;border-bottom:1px solid rgba(48,54,61,.3);font-weight:600;color:#fffffff2;font-size:14px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.widget-header i{font-size:16px;color:#007affe6}.widget-content{padding:16px}.profile-quick{color:#fff;text-align:center}.status-indicator{width:12px;height:12px;border-radius:50%;margin:0 auto 8px}.status-indicator.online{background:#4ade80;box-shadow:0 0 10px #4ade8080}.status-text{font-size:14px;margin-bottom:8px;color:#4ade80}.role{font-size:12px;opacity:.8}.location{font-size:12px;color:#fffc;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:4px}.location i{font-size:11px}.github-stats,.baekjoon-stats{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.stat-row{display:flex;align-items:center;gap:8px;padding:3px 0;min-height:24px}.stat-icon{font-size:14px;width:16px;text-align:center;color:#ffffffe6}.stat-text{font-size:13px;color:#fff;font-weight:500}.tier-text{font-weight:700}.solved-count{font-weight:700;color:#4ade80}.rank-text{font-weight:700;color:#60a5fa}.rating-text{font-weight:700;color:#f59e0b}.experience-summary{display:flex;flex-direction:column;gap:16px}.total-experience{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#4ade801a;border-radius:10px;border:1px solid rgba(74,222,128,.2)}.experience-label{font-size:13px;font-weight:600;color:#4ade80}.experience-duration{font-size:14px;font-weight:700;color:#4ade80}.experience-list{display:flex;flex-direction:column;gap:12px}.experience-item-mini{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#ffffff0d;border-radius:10px;transition:all .3s ease;border:1px solid rgba(255,255,255,.08)}.experience-item-mini:hover{background:#ffffff14;transform:translateY(-1px)}.experience-item-mini.current{background:#4ade800d;border-color:#4ade8033}.experience-dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d;transition:all .3s ease;flex-shrink:0;margin-top:4px}.experience-dot.active{background:#4ade80;box-shadow:0 0 8px #4ade8080;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.experience-info{display:flex;flex-direction:column;gap:4px;flex:1}.company-name{font-size:14px;font-weight:600;color:#fff}.position{font-size:12px;color:#666;line-height:1.3}.period{font-size:11px;color:#888;font-weight:500}.time-display{text-align:center;color:#fffffff2}.current-time{font-size:32px;font-weight:300;margin-bottom:8px;font-family:SF Mono,Monaco,monospace}.current-date{font-size:14px;opacity:.8}@media (max-width: 768px){.widget{width:100%;max-height:none;min-height:120px}.widget-header{padding:8px 12px;font-size:12px}.widget-content{padding:12px}.current-time{font-size:20px}.current-date{font-size:12px}}@media (max-width: 480px){.widget{min-height:100px}.widget-header{padding:6px 10px;font-size:11px}.widget-content{padding:10px}.current-time{font-size:18px}.current-date{font-size:11px}}.desktop{height:100vh;width:100vw;max-width:100vw;position:relative;overflow:hidden;overflow-x:hidden}.desktop-widgets{position:absolute;top:50px;left:30px;right:30px;bottom:100px;display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-start;gap:20px;z-index:10;padding:10px}@media (max-width: 768px){.desktop-widgets{top:50px;left:10px;right:10px;bottom:90px;padding:5px;gap:10px;flex-direction:column;align-content:stretch}}.menu-bar{position:fixed;top:0;left:0;right:0;height:30px;background:#0d1117d9;-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);border-bottom:1px solid rgba(48,54,61,.3);display:flex;justify-content:space-between;align-items:center;padding:0 15px;z-index:1000;font-size:13px;color:#fffffff2;font-weight:500}.menu-left{display:flex;align-items:center;gap:20px}.apple-logo img{margin-top:5px;width:20px;height:20px;border-radius:50%}.menu-item{cursor:pointer;padding:5px 8px;border-radius:4px;transition:background-color .2s}.menu-item:hover{background-color:#ffffff1a}.menu-item.active{font-weight:600}.menu-right{display:flex;align-items:center;gap:10px}.time{font-weight:500}@media (max-width: 768px){.menu-bar{height:40px;padding:0 10px;font-size:12px}.menu-left{gap:10px}.menu-item{padding:4px 6px;font-size:11px}.apple-logo img{width:16px;height:16px;margin-top:3px}}.dock{position:fixed;bottom:15px;left:50%;transform:translate(-50%);display:flex;gap:12px;background:#0d1117cc;-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);padding:12px 20px;border-radius:24px;border:1px solid rgba(48,54,61,.4);box-shadow:0 20px 40px #0000004d,0 8px 16px #0003,inset 0 1px #ffffff14;z-index:1000}.dock-item{position:relative;width:56px;height:56px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:16px;transition:all .3s cubic-bezier(.25,.46,.45,.94);background:#30363d4d;border:1px solid rgba(255,255,255,.05)}.dock-item:hover{transform:translateY(-10px) scale(1.15);background:#007aff26;border:1px solid rgba(0,122,255,.3);box-shadow:0 15px 30px #0006,0 6px 12px #007aff33,inset 0 1px #ffffff1a}.dock-item i{font-size:26px;color:#ffffffe6;transition:all .3s ease}.dock-item:hover i{color:#fff;text-shadow:0 0 10px rgba(0,122,255,.5)}.dock-tooltip{position:absolute;bottom:65px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s}.dock-item:hover .dock-tooltip{opacity:1}@media (max-width: 768px){.dock{bottom:5px;padding:4px 8px;gap:4px;border-radius:15px}.dock-item{width:35px;height:35px;border-radius:8px}.dock-item i{font-size:16px}.dock-item:hover{transform:translateY(-4px) scale(1.05)}}@media (max-width: 480px){.dock{bottom:3px;padding:3px 6px;gap:3px}.dock-item{width:30px;height:30px;flex-shrink:0}.dock-item i{font-size:14px}}.window{position:fixed;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;box-shadow:0 20px 60px #0000004d;border:1px solid rgba(255,255,255,.2);width:800px;height:600px;min-width:400px;min-height:300px;z-index:100;opacity:0;left:0;top:0;transform:scale(.8);-webkit-user-select:none;user-select:none;transition:opacity .3s ease,transform .3s ease}.window.show{opacity:1;transform:scale(1)}.window.dragging{transition:none}.window:not(.dragging){transition:opacity .3s cubic-bezier(.25,.46,.45,.94),transform .3s cubic-bezier(.25,.46,.45,.94)}.window-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px 12px 0 0;cursor:move;border-bottom:1px solid rgba(0,0,0,.1);-webkit-user-select:none;user-select:none}.window-header:active{cursor:grabbing}.window-title{display:flex;align-items:center;gap:8px;font-weight:600;color:#333;pointer-events:none}.window-title i{font-size:16px;color:#666}.window-controls{display:flex;gap:8px;pointer-events:auto}.control-btn{width:16px;height:16px;border-radius:50%;border:none;cursor:pointer;font-size:10px;font-weight:700;transition:all .2s;display:flex;align-items:center;justify-content:center;background:#ff5f56;color:#fff}.control-btn:hover{transform:scale(1.1);opacity:.8}.window-content{padding:20px;height:calc(100% - 60px);overflow:hidden;box-sizing:border-box;position:relative}.resume-content{padding:0;height:calc(100% - 60px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;background:linear-gradient(to bottom,#f8f9fa,#fff)}.resume-header{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:50px;display:flex;gap:50px;align-items:center;color:#fff;box-shadow:0 8px 32px #0000004d;position:relative;overflow:hidden}.resume-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,#667eea1a,#764ba21a);pointer-events:none}.resume-photo-section{flex-shrink:0;z-index:2;position:relative}.resume-photo{width:180px;height:180px;border-radius:50%;overflow:hidden;border:5px solid rgba(255,255,255,.3);box-shadow:0 10px 40px #0000004d;position:relative}.resume-photo img{width:100%;height:100%;object-fit:cover}.status-badge{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#4ade80f2;padding:6px 16px;border-radius:20px;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#fff;box-shadow:0 4px 12px #0003}.status-dot{width:8px;height:8px;border-radius:50%;background:#fff;animation:pulse 2s infinite}.resume-info-section{flex:1;z-index:2;position:relative}.name-title h1{font-size:42px;font-weight:700;margin:0 0 8px;color:#fff;display:flex;align-items:baseline;gap:12px}.eng-name{font-size:24px;font-weight:400;opacity:.9}.job-title{font-size:20px;margin:0 0 24px;opacity:.95;display:flex;align-items:center;gap:8px;font-weight:500}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.contact-grid .contact-item{display:flex;align-items:center;gap:8px;font-size:14px;padding:8px 12px;background:#ffffff26;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.contact-grid .contact-item:hover{background:#ffffff40;transform:translate(4px)}.contact-grid .contact-item i{font-size:14px;width:16px;text-align:center;color:#fff;opacity:.9}.resume-section{padding:40px;border-bottom:1px solid #e9ecef}.resume-section:last-child{border-bottom:none}.section-header{display:flex;align-items:center;gap:16px;margin-bottom:32px;padding-bottom:16px;border-bottom:2px solid #e9ecef;position:relative}.section-header:after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:linear-gradient(90deg,#667eea,#764ba2)}.section-header i{font-size:28px;color:#667eea;background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:12px;border-radius:12px}.section-header h2{font-size:28px;font-weight:700;color:#1a1a2e;margin:0;letter-spacing:-.5px}.summary-section{background:#fff}.summary-content{padding:20px;background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:12px;border-left:4px solid #667eea}.summary-quote{font-size:24px;font-weight:700;color:#667eea;font-style:italic;margin:0 0 16px;text-align:center}.summary-text{font-size:16px;line-height:1.8;color:#555;margin:0 0 16px}.summary-text:last-child{margin-bottom:0}.summary-text strong{color:#333;font-weight:600}.competencies-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.competency-card{background:#fff;padding:32px;border-radius:16px;border:1px solid rgba(102,126,234,.1);transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden;box-shadow:0 4px 20px #0000000d}.competency-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .4s ease}.competency-card:hover{border-color:#667eea4d;box-shadow:0 12px 40px #667eea26;transform:translateY(-8px)}.competency-card:hover:before{transform:scaleX(1)}.competency-icon{width:70px;height:70px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:0 8px 20px #667eea4d}.competency-icon i{font-size:32px;color:#fff}.competency-card h3{font-size:22px;font-weight:700;color:#1a1a2e;margin:0 0 12px;letter-spacing:-.3px}.competency-card>p{font-size:15px;color:#555;line-height:1.7;margin:0 0 20px}.competency-items{list-style:none;padding:0;margin:0}.competency-items li{padding:8px 0;color:#555;font-size:14px;border-bottom:1px dashed #e9ecef;display:flex;align-items:center}.competency-items li:last-child{border-bottom:none}.competency-items li:before{content:"✓";color:#4ade80;font-weight:700;margin-right:8px;font-size:16px}.achievements-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.achievement-box{background:#fff;padding:32px 24px;border-radius:16px;text-align:center;border:1px solid rgba(102,126,234,.1);transition:all .4s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 20px #0000000d;position:relative;overflow:hidden}.achievement-box:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea05,#764ba205);opacity:0;transition:opacity .3s ease}.achievement-box:hover{border-color:#667eea4d;box-shadow:0 12px 40px #667eea26;transform:translateY(-8px)}.achievement-box:hover:before{opacity:1}.achievement-number{font-size:56px;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px;position:relative;z-index:1}.achievement-label{font-size:16px;font-weight:700;color:#1a1a2e;margin-bottom:8px;position:relative;z-index:1;letter-spacing:-.2px}.achievement-desc{font-size:14px;color:#666;position:relative;z-index:1;line-height:1.5}.tech-summary{display:flex;flex-direction:column;gap:16px}.tech-category-summary{display:flex;gap:20px;padding:20px;background:#fff;border-radius:12px;border-left:4px solid #667eea;transition:all .3s ease}.tech-category-summary:hover{box-shadow:0 4px 20px #667eea1a;transform:translate(8px)}.tech-category-icon{width:60px;height:60px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tech-category-icon i{font-size:28px;color:#667eea}.tech-category-content h4{font-size:18px;font-weight:700;color:#333;margin:0 0 8px}.tech-category-content p{font-size:15px;color:#666;line-height:1.6;margin:0}.timeline{position:relative;padding-left:40px}.timeline-item{position:relative;margin-bottom:40px;padding-left:30px}.timeline-item:last-child{margin-bottom:0}.timeline-marker{position:absolute;left:-25px;top:0;width:32px;height:32px;background:#fff;border:3px solid #667eea;border-radius:50%;display:flex;align-items:center;justify-content:center}.timeline-marker i{font-size:10px;color:#667eea}.timeline-item.current .timeline-marker{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;animation:pulse 2s infinite}.timeline-item.current .timeline-marker i{color:#fff}.timeline-content{background:#fff;padding:24px;border-radius:12px;border:2px solid #e9ecef;transition:all .3s ease}.timeline-content:hover{border-color:#667eea;box-shadow:0 4px 20px #667eea1a}.timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.timeline-header h3{font-size:22px;font-weight:700;color:#333;margin:0}.timeline-period{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600}.timeline-position{font-size:16px;color:#667eea;font-weight:600;margin:0 0 16px}.timeline-highlights{list-style:none;padding:0;margin:0}.timeline-highlights li{padding:8px 0 8px 24px;color:#555;font-size:14px;line-height:1.6;position:relative}.timeline-highlights li:before{content:"●";position:absolute;left:0;color:#667eea;font-size:12px}.featured-projects{display:flex;flex-direction:column;gap:20px}.featured-project{background:#fff;padding:24px;border-radius:12px;border:2px solid #e9ecef;transition:all .3s ease}.featured-project:hover{border-color:#667eea;box-shadow:0 4px 20px #667eea1a;transform:translate(8px)}.project-header-mini{display:flex;align-items:center;gap:16px;margin-bottom:12px}.project-icon-mini{width:50px;height:50px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.project-icon-mini i{font-size:24px;color:#fff}.project-header-mini h4{font-size:18px;font-weight:700;color:#333;margin:0 0 4px}.project-badge-mini{font-size:13px;color:#666}.featured-project>p{font-size:14px;color:#555;line-height:1.6;margin:0 0 16px}.project-tech-mini{display:flex;flex-wrap:wrap;gap:8px}.project-tech-mini span{background:linear-gradient(135deg,#667eea1a,#764ba21a);color:#667eea;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.why-me-content{display:flex;flex-direction:column;gap:20px}.why-me-item{display:flex;gap:24px;padding:24px;background:#fff;border-radius:12px;border-left:4px solid #667eea;transition:all .3s ease}.why-me-item:hover{box-shadow:0 4px 20px #667eea1a;transform:translate(8px)}.why-me-number{font-size:48px;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0;line-height:1}.why-me-text h4{font-size:20px;font-weight:700;color:#333;margin:0 0 8px}.why-me-text p{font-size:15px;color:#666;line-height:1.6;margin:0}.about-content{text-align:left;max-width:700px;margin:0 auto;padding:30px;height:calc(100% - 60px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;position:relative}.profile-section{display:flex;gap:30px;margin-bottom:30px;align-items:flex-start}.profile-image{width:200px;height:200px;border-radius:50%;overflow:hidden;flex-shrink:0;box-shadow:0 10px 30px #0003;border:3px solid rgba(102,126,234,.3)}.profile-photo{width:100%;height:100%;object-fit:cover}.profile-info{flex:1}.profile-info h2{color:#333;margin-bottom:8px;font-size:28px;font-weight:700}.profile-info .title{color:#667eea;font-size:18px;font-weight:600;margin-bottom:20px}.personal-info{display:grid;gap:8px}.personal-info p{color:#555;font-size:14px;margin:0;line-height:1.4;display:flex;align-items:center}.personal-info strong{color:#333;font-weight:600;min-width:80px;display:inline-block}.divider{height:2px;background:linear-gradient(90deg,transparent,#667eea,transparent);margin:30px 0;border-radius:1px}.about-description{margin-bottom:30px}.about-description h3{color:#667eea;font-size:20px;font-weight:700;margin-bottom:20px;text-align:center;font-style:italic}.about-description p{color:#555;line-height:1.8;margin-bottom:16px;font-size:15px}.about-description ul{margin:16px 0;padding-left:20px}.about-description li{color:#555;line-height:1.6;margin-bottom:8px;font-size:14px;display:flex;align-items:flex-start;gap:8px}.about-description strong{color:#333;font-weight:600}.skills-grid{display:grid;gap:30px}.skill-category h3{color:#333;margin-bottom:15px;font-size:20px;display:flex;align-items:center;gap:10px}.skill-items{display:flex;flex-wrap:wrap;gap:10px}.skill-tag{background:linear-gradient(145deg,#667eea,#764ba2);color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;box-shadow:0 4px 15px #0000001a;transition:transform .2s}.skill-tag:hover{transform:translateY(-2px)}.projects-container,.experience-container{height:100%;overflow-y:auto;padding-right:10px}.project-card,.experience-card{background:linear-gradient(135deg,#ffffff0f,#ffffff05);border-radius:16px;padding:0;margin-bottom:16px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.08);overflow:hidden;position:relative;transition:all .3s ease}.project-card:hover,.experience-card:hover{transform:translateY(-1px);border-color:#ffffff26}.project-header,.experience-header{display:flex;align-items:center;gap:16px;margin-bottom:0;cursor:pointer;transition:all .3s ease;position:relative;padding:18px 20px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-header:hover,.experience-header:hover{background:#ffffff0d;border-bottom-color:#ffffff1f}.project-toggle,.experience-toggle{position:absolute;right:20px;top:50%;transform:translateY(-50%);transition:all .3s ease;color:#ffffffb3;font-size:14px;background:#ffffff1a;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);z-index:2}.project-header.expanded .project-toggle,.experience-header.expanded .experience-toggle{transform:translateY(-50%) rotate(180deg);background:#4ade8033;border-color:#4ade8066;color:#4ade80}.project-icon,.experience-icon{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;flex-shrink:0}.project-title,.experience-title{flex:1;margin-right:10px}.project-title h3,.experience-title h3{color:#333;margin:0 0 4px;font-size:20px;font-weight:700}.project-subtitle,.experience-title .company{color:#666;margin:0;font-size:14px}.project-badge,.experience-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;flex-shrink:0;color:#fff;margin-right:40px;display:flex;align-items:center;gap:4px}.project-badge.team-lead{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#ef4444}.project-badge.solo,.experience-badge.current{background:#4ade8033;border:1px solid rgba(74,222,128,.4);color:#4ade80}.experience-badge.past{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#ef4444}.project-details,.experience-details{max-height:0;overflow:hidden;transition:all .4s ease;opacity:0;transform:translateY(-5px);display:flex;flex-direction:column;gap:16px;padding:0 24px}.project-details.expanded,.experience-details.expanded{max-height:3000px;opacity:1;transform:translateY(0);margin-top:0}.project-meta,.experience-meta{display:flex;flex-wrap:wrap;gap:16px;padding:12px 16px;background:#667eea0d;border-radius:8px;border-left:4px solid #667eea}.project-meta span,.experience-meta span{display:flex;align-items:center;gap:6px;color:#555;font-size:13px;font-weight:500}.project-description,.experience-description{color:#555}.project-description h4,.experience-description h4{color:#333;margin:20px 0 12px;font-size:16px;font-weight:600;border-bottom:2px solid #667eea;padding-bottom:8px}.project-description h4:first-child,.experience-description h4:first-child{margin-top:0}.project-description ul,.experience-description ul{margin:0;padding-left:20px}.project-description li,.experience-description li{color:#555;line-height:1.6;margin-bottom:8px;font-size:14px}.project-description strong,.experience-description strong{color:#333;font-weight:600}.project-description p{margin:12px 0}.project-tech{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background:#667eea1a;color:#667eea;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.achievement-highlight{display:flex;gap:16px;margin:16px 0;flex-wrap:wrap}.achievement-item{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(102,126,234,.2);border-radius:20px;color:#667eea;font-size:13px;font-weight:600;transition:all .3s ease}.achievement-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.tech-stack-section{margin:24px 0;padding:16px;background:#667eea08;border-radius:12px;border:1px solid rgba(102,126,234,.1)}.tech-stack-section h5{color:#333;margin:0 0 12px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.tech-stack-tags{display:flex;flex-wrap:wrap;gap:8px}.tech-stack-tags .tech-tag{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:500;transition:all .3s ease}.tech-stack-tags .tech-tag:hover{transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.expertise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:20px}.expertise-item{display:flex;gap:16px;padding:20px;background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border-radius:16px;border:1px solid rgba(102,126,234,.1);box-shadow:0 4px 20px #0000000d;transition:all .3s ease}.expertise-item:hover{transform:translateY(-4px);box-shadow:0 8px 30px #667eea26;border-color:#667eea4d}.expertise-icon{width:50px;height:50px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;flex-shrink:0;transition:all .3s ease}.expertise-item:hover .expertise-icon{transform:scale(1.1);box-shadow:0 4px 12px #667eea66}.expertise-content h5{color:#333;margin:0 0 8px;font-size:16px;font-weight:600}.expertise-content p{color:#666;margin:0;font-size:13px;line-height:1.5}.contact-info{display:grid;gap:20px}.contact-item{display:flex;align-items:center;gap:16px;padding:16px;background:#fff9;border-radius:12px;transition:all .2s;cursor:pointer}.contact-item:hover{background:#fffc;transform:translate(8px)}.contact-item i{font-size:20px;color:#667eea;width:24px;text-align:center}.contact-item span{color:#333;font-weight:500}.terminal-window-content{background:#1e1e1e;height:100%;padding:16px;overflow-y:auto;display:flex;flex-direction:column;font-family:Monaco,Menlo,Ubuntu Mono,monospace;color:#0f0}.terminal-output{flex:1;overflow-y:auto;margin-bottom:16px;padding-right:8px}.terminal-line{margin-bottom:4px;line-height:1.4;word-wrap:break-word}.terminal-input-line{display:flex;align-items:center;flex-shrink:0;margin-top:auto}.terminal-prompt{color:#0f0;margin-right:8px}.terminal-input{background:transparent;border:none;color:#0f0;outline:none;flex:1;font-family:inherit;font-size:14px}.resume-content::-webkit-scrollbar,.about-content::-webkit-scrollbar,.projects-container::-webkit-scrollbar,.experience-container::-webkit-scrollbar,.terminal-output::-webkit-scrollbar{width:8px}.resume-content::-webkit-scrollbar-track,.about-content::-webkit-scrollbar-track,.projects-container::-webkit-scrollbar-track,.experience-container::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.terminal-output::-webkit-scrollbar-track{background:#333;border-radius:4px}.resume-content::-webkit-scrollbar-thumb,.about-content::-webkit-scrollbar-thumb,.projects-container::-webkit-scrollbar-thumb,.experience-container::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.terminal-output::-webkit-scrollbar-thumb{background:#666;border-radius:4px}.resume-content::-webkit-scrollbar-thumb:hover,.about-content::-webkit-scrollbar-thumb:hover,.projects-container::-webkit-scrollbar-thumb:hover,.experience-container::-webkit-scrollbar-thumb:hover{background:#5a67d8}.terminal-output::-webkit-scrollbar-thumb:hover{background:#888}@media (max-width: 768px){.window{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;min-width:100vw!important;min-height:100vh!important;max-width:100vw!important;max-height:100vh!important;transform:none!important;border-radius:0!important;margin:0!important}.window.show{transform:none!important}.window-header{border-radius:0!important;padding:15px 20px;height:60px;cursor:default!important}.window-title{font-size:16px}.control-btn{width:24px;height:24px;font-size:14px}.window-content{padding:15px;height:calc(100vh - 60px)!important;overflow-y:auto}.resume-content{padding:0}.resume-header{flex-direction:column;padding:24px;gap:24px;text-align:center}.resume-photo{width:120px;height:120px}.name-title h1{font-size:28px;flex-direction:column;gap:4px}.eng-name{font-size:18px}.job-title{font-size:16px;justify-content:center}.contact-grid{grid-template-columns:repeat(2,1fr);gap:8px}.contact-grid .contact-item{font-size:12px;padding:6px 10px}.resume-section{padding:24px 16px}.section-header h2,.section-header i{font-size:20px}.summary-quote{font-size:18px}.summary-text{font-size:14px}.competencies-grid{grid-template-columns:1fr;gap:16px}.competency-card{padding:20px}.competency-icon{width:50px;height:50px}.competency-icon i{font-size:24px}.competency-card h3{font-size:18px}.achievements-showcase{grid-template-columns:repeat(2,1fr);gap:12px}.achievement-box{padding:16px}.achievement-number{font-size:36px}.achievement-label{font-size:14px}.achievement-desc{font-size:12px}.tech-category-summary{flex-direction:column;gap:12px;padding:16px}.tech-category-icon{width:50px;height:50px}.tech-category-icon i{font-size:24px}.tech-category-content h4{font-size:16px}.tech-category-content p{font-size:13px}.timeline{padding-left:30px}.timeline:before{left:10px}.timeline-marker{left:-19px;width:24px;height:24px}.timeline-header{flex-direction:column;align-items:flex-start;gap:8px}.timeline-header h3{font-size:18px}.timeline-period{font-size:12px}.timeline-position{font-size:14px}.timeline-highlights li{font-size:13px}.featured-project{padding:16px}.project-icon-mini{width:40px;height:40px}.project-icon-mini i{font-size:20px}.project-header-mini h4{font-size:16px}.why-me-item{flex-direction:column;gap:16px;padding:20px}.why-me-number{font-size:36px}.why-me-text h4{font-size:18px}.why-me-text p{font-size:14px}.about-content{padding:15px;height:calc(100vh - 90px)!important}.profile-section{flex-direction:column;align-items:center;text-align:center}.profile-image{width:120px;height:120px}.profile-info h2{font-size:24px;text-align:center}.project-header,.experience-header{flex-direction:column;align-items:flex-start;gap:12px;padding:15px}.project-icon,.experience-icon{width:50px;height:50px;font-size:20px}}@media (max-width: 480px){.resume-header{padding:20px 16px}.resume-photo{width:100px;height:100px}.name-title h1{font-size:24px}.eng-name{font-size:16px}.job-title{font-size:14px}.contact-grid{grid-template-columns:1fr;gap:6px}.contact-grid .contact-item{font-size:11px;padding:6px 8px}.resume-section{padding:20px 12px}.section-header h2{font-size:18px}.summary-quote{font-size:16px}.summary-text{font-size:13px}.competency-card{padding:16px}.competency-icon{width:45px;height:45px}.competency-icon i{font-size:20px}.competency-card h3{font-size:16px}.competency-card>p{font-size:13px}.competency-items li{font-size:13px}.achievements-showcase{grid-template-columns:1fr;gap:12px}.achievement-number{font-size:32px}.achievement-label{font-size:13px}.achievement-desc{font-size:11px}.tech-category-summary{padding:12px}.tech-category-icon{width:40px;height:40px}.tech-category-icon i{font-size:20px}.tech-category-content h4{font-size:15px}.tech-category-content p{font-size:12px}.timeline{padding-left:25px}.timeline-marker{width:20px;height:20px;left:-17px}.timeline-content{padding:16px}.timeline-header h3{font-size:16px}.timeline-position{font-size:13px}.timeline-highlights li{font-size:12px}.featured-project{padding:12px}.project-icon-mini{width:35px;height:35px}.project-icon-mini i{font-size:18px}.project-header-mini{gap:12px}.project-header-mini h4{font-size:15px}.project-badge-mini{font-size:11px}.featured-project>p{font-size:13px}.project-tech-mini span{font-size:11px;padding:3px 10px}.why-me-item{padding:16px;gap:12px}.why-me-number{font-size:32px}.why-me-text h4{font-size:16px}.why-me-text p{font-size:13px}}.welcome-modal{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;background:#000000b3;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);display:flex!important;align-items:center!important;justify-content:center!important;z-index:2000!important;opacity:1;transition:opacity .5s;margin:0!important;padding:0!important;box-sizing:border-box!important}.welcome-modal.hidden{opacity:0;pointer-events:none}.welcome-content{background:linear-gradient(135deg,#fffffff2,#f8fafcf2);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);padding:40px;border-radius:24px;text-align:center;box-shadow:0 25px 80px #0006;border:1px solid rgba(255,255,255,.3);max-width:600px;width:90vw;max-height:90vh;overflow-y:auto;transform:scale(.8);animation:welcomeIn .8s cubic-bezier(.25,.46,.45,.94) forwards;margin:auto;box-sizing:border-box}@keyframes welcomeIn{to{transform:scale(1)}}.welcome-header{margin-bottom:30px}.welcome-avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 20px;overflow:hidden;border:4px solid rgba(102,126,234,.3);box-shadow:0 8px 25px #00000026}.welcome-photo{width:100%;height:100%;object-fit:cover}.welcome-content h2{color:#333;margin-bottom:20px;font-size:28px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-body{margin-bottom:30px}.welcome-intro{color:#667eea;font-size:18px;font-weight:600;margin-bottom:20px}.welcome-message{text-align:left;margin-bottom:25px}.welcome-message p{color:#555;line-height:1.8;margin-bottom:12px;font-size:15px}.welcome-message strong{color:#333;font-weight:700}.welcome-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:25px}.welcome-features .feature-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#667eea1a;border-radius:12px;border:1px solid rgba(102,126,234,.2);transition:all .3s ease}.welcome-features .feature-item:hover{background:#667eea26;transform:translateY(-2px)}.welcome-features .feature-item i{color:#667eea;font-size:16px}.welcome-features .feature-item span{color:#333;font-weight:500;font-size:14px}.welcome-btn{background:linear-gradient(145deg,#667eea,#764ba2);color:#fff;border:none;padding:16px 32px;border-radius:50px;font-weight:600;font-size:16px;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 25px #667eea4d;display:flex;align-items:center;gap:10px;margin:0 auto}.welcome-btn:hover{transform:translateY(-3px);box-shadow:0 12px 35px #667eea66}.welcome-btn i{font-size:14px}.help-modal{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;background:#0009;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex!important;align-items:center!important;justify-content:center!important;z-index:3000!important;opacity:1;transition:opacity .3s;margin:0!important;padding:0!important;box-sizing:border-box!important}.help-modal.hidden{opacity:0;pointer-events:none}.help-content{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 20px 60px #0000004d;border:1px solid rgba(255,255,255,.2);max-width:800px;max-height:90vh;width:90vw;overflow:hidden;transform:scale(.9);animation:helpIn .3s cubic-bezier(.25,.46,.45,.94) forwards;margin:auto;box-sizing:border-box}@keyframes helpIn{to{transform:scale(1)}}.help-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.help-header h2{margin:0;font-size:20px;display:flex;align-items:center;gap:10px}.help-close-btn{background:#fff3;border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s}.help-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.help-body{padding:30px;max-height:calc(90vh - 160px);overflow-y:auto}.help-section{margin-bottom:30px}.help-section h3{color:#333;margin-bottom:15px;font-size:18px;display:flex;align-items:center;gap:10px;border-bottom:2px solid #667eea;padding-bottom:8px}.help-item{margin-bottom:12px;padding:12px;background:#667eea0d;border-radius:8px;border-left:4px solid #667eea}.help-item strong{color:#333}.help-item code{background:#0000001a;padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:13px}.tech-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.tech-item{text-align:center;padding:20px;background:#ffffffb3;border-radius:12px;border:1px solid rgba(102,126,234,.2);transition:all .2s}.tech-item:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a}.tech-item i{font-size:32px;color:#667eea;margin-bottom:8px}.tech-item span{display:block;font-weight:600;color:#333;margin-bottom:4px}.tech-item small{color:#666;font-size:12px}.feature-list{display:grid;gap:15px}.feature-list .feature-item{display:flex;gap:15px;padding:15px;background:#ffffffb3;border-radius:12px;border:1px solid rgba(102,126,234,.2);transition:all .2s}.feature-list .feature-item:hover{transform:translate(8px);box-shadow:0 5px 20px #0000001a}.feature-list .feature-item i{font-size:24px;color:#667eea;margin-top:5px}.feature-list .feature-item strong{color:#333;display:block;margin-bottom:4px}.feature-list .feature-item p{color:#666;margin:0;font-size:14px;line-height:1.4}.design-concept{display:grid;gap:12px}.concept-item{padding:12px 15px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:8px;border-left:4px solid #667eea}.concept-item strong{color:#667eea}.help-footer{padding:20px 30px;background:#667eea0d;text-align:center;color:#666;border-top:1px solid rgba(102,126,234,.1)}.help-footer i{color:#e74c3c}@media (max-width: 768px){.welcome-content{padding:25px;max-width:95vw;width:95vw;max-height:90vh;overflow-y:auto}.welcome-avatar{width:60px;height:60px}.welcome-content h2{font-size:22px;margin-bottom:15px}.welcome-intro{font-size:16px;margin-bottom:15px}.welcome-message p{font-size:14px;line-height:1.6;margin-bottom:10px}.welcome-features{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.help-content{width:95vw;max-height:95vh;height:95vh}.help-body{padding:15px;max-height:calc(95vh - 110px)}.tech-grid{grid-template-columns:repeat(2,1fr);gap:8px}.tech-item{padding:10px}.tech-item i{font-size:18px}.tech-item span{font-size:11px}.tech-item small{font-size:9px}}@media (max-width: 480px){.welcome-content{padding:20px}.welcome-avatar{width:50px;height:50px}.welcome-content h2{font-size:20px}.welcome-intro{font-size:15px}.welcome-message p{font-size:13px}.welcome-features{grid-template-columns:1fr;gap:8px}.tech-grid{grid-template-columns:1fr;gap:6px}}.particle-canvas{position:fixed;top:0;left:0;pointer-events:none;z-index:1;opacity:.6;width:100%;height:100%}.desktop{height:100vh;width:100vw;max-width:100vw;position:relative;overflow:hidden;overflow-x:hidden;background:radial-gradient(circle at 15% 25%,rgba(0,122,255,.08) 0%,transparent 35%),radial-gradient(circle at 85% 15%,rgba(88,86,214,.06) 0%,transparent 40%),radial-gradient(circle at 25% 75%,rgba(52,199,89,.04) 0%,transparent 30%),radial-gradient(circle at 75% 85%,rgba(255,59,48,.03) 0%,transparent 25%),linear-gradient(125deg,#1a1a2ee6,#16213ed9,#0f3460cc,#192734d9,#0d1117e6),linear-gradient(225deg,#0d1117,#161b22,#21262d,#30363d,#21262d);background-size:150% 150%,120% 120%,100% 100%,80% 80%,100% 100%,100% 100%;background-position:0% 0%,100% 100%,50% 50%,0% 100%,100% 0%,center;animation:developerFlow 20s ease-in-out infinite}@keyframes developerFlow{0%,to{background-position:0% 0%,100% 100%,50% 50%,0% 100%,100% 0%,center;filter:brightness(1) hue-rotate(0deg)}25%{background-position:100% 100%,0% 0%,40% 60%,100% 0%,0% 100%,center;filter:brightness(1.05) hue-rotate(5deg)}50%{background-position:50% 100%,50% 0%,60% 40%,50% 50%,50% 50%,center;filter:brightness(1.1) hue-rotate(10deg)}75%{background-position:0% 100%,100% 0%,40% 60%,0% 0%,100% 100%,center;filter:brightness(1.05) hue-rotate(5deg)}}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;width:100%;max-width:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;overflow:hidden;overflow-x:hidden;height:100vh;width:100vw;max-width:100vw;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);-webkit-user-select:none;user-select:none;position:relative}#root{width:100%;height:100%}
