:root{--primary-blue: #2563eb;--primary-blue-dark: #1d4ed8;--secondary-green: #059669;--accent-purple: #7c3aed;--accent-orange: #ea580c;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--background: #ffffff;--surface: #f9fafb;--card-bg: #ffffff;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--border: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out;--navbar-height: 70px}[data-theme=dark]{--background: #0f172a;--surface: #1e293b;--card-bg: #1e293b;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-tertiary: #64748b;--border: #334155;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .4), 0 8px 10px -6px rgb(0 0 0 / .4)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;overflow-x:hidden;width:100%}body{font-family:var(--font-family);font-size:1rem;line-height:1.6;color:var(--text-primary);background-color:var(--background);background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:40px 40px;overflow-x:hidden;width:100%;min-height:100vh;padding-top:var(--navbar-height)}.section-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:800;color:var(--text-primary);text-align:center;margin-bottom:var(--space-4);letter-spacing:-.025em}.section-subtitle{font-size:1.125rem;color:var(--text-secondary);text-align:center;max-width:600px;margin:0 auto;line-height:1.6}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-weight:600;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;border:none;font-size:1rem;font-family:inherit}.btn-primary{background:linear-gradient(135deg,var(--primary-blue),var(--primary-blue-dark));color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--card-bg);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface);border-color:var(--primary-blue);color:var(--primary-blue);transform:translateY(-1px)}.btn-icon{font-size:1rem}.text-gradient{background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-effect{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .glass-effect{background:#0003;border:1px solid rgba(255,255,255,.1)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.navbar{position:fixed;top:0;left:0;right:0;padding:var(--space-4);background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:100;transition:all var(--transition-fast);display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;width:100%}[data-theme=dark] .navbar{background:#0f172ae6}.navbar-logo{font-size:1.25rem;font-weight:800;color:var(--text-primary);text-decoration:none;text-transform:uppercase;letter-spacing:.1em}.navbar-items{display:flex;align-items:center;gap:var(--space-6);list-style:none}.navbar-item{color:var(--text-secondary);font-weight:500;text-transform:uppercase;font-size:.875rem;letter-spacing:.05em;cursor:pointer;transition:color var(--transition-fast);position:relative}.navbar-item:hover{color:var(--primary-blue)}.navbar-item:after{content:"";position:absolute;bottom:-4px;left:50%;width:0;height:2px;background:var(--primary-blue);transition:all var(--transition-fast);transform:translate(-50%)}.navbar-item:hover:after{width:100%}.theme-toggle-btn{padding:var(--space-2) var(--space-4);background:var(--primary-blue);color:#fff;border:none;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all var(--transition-fast);font-size:.875rem}.theme-toggle-btn:hover{background:var(--primary-blue-dark);transform:scale(1.05)}.dropdown{display:none;color:var(--text-primary);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast)}.dropdown:hover{background:var(--surface)}.hero-container{min-height:100vh;padding:var(--space-8) var(--space-4);display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--background) 0%,var(--surface) 100%);position:relative;overflow:hidden}.hero-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(37,99,235,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(124,58,237,.1) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(5,150,105,.1) 0%,transparent 50%);pointer-events:none}.hero-content{display:grid;grid-template-columns:1fr 300px;gap:var(--space-16);align-items:center;max-width:1200px;width:100%;position:relative;z-index:1}.hero-badge{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-4);background:linear-gradient(135deg,var(--primary-blue),var(--primary-blue-dark));color:#fff;border-radius:var(--radius-2xl);font-size:.875rem;font-weight:500;margin-bottom:var(--space-6);box-shadow:var(--shadow-md)}.badge-text{white-space:nowrap}.hero-title{font-size:clamp(2.5rem,5vw,3.75rem);font-weight:800;line-height:1.1;color:var(--text-primary);margin-bottom:var(--space-4);letter-spacing:-.025em}.hero-highlight{background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:clamp(1.125rem,2.5vw,1.5rem);color:var(--text-secondary);margin-bottom:var(--space-6);line-height:1.4}.company-highlight{color:var(--primary-blue);font-weight:600}.hero-description{font-size:1.125rem;line-height:1.7;color:var(--text-secondary);margin-bottom:var(--space-8);max-width:600px}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:var(--space-8);padding:var(--space-6);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.stat-item{text-align:center}.stat-number{display:block;font-size:1.875rem;font-weight:800;color:var(--primary-blue);line-height:1}.stat-label{display:block;font-size:.875rem;color:var(--text-tertiary);margin-top:var(--space-1)}.hero-tech-stack{margin-bottom:var(--space-8)}.tech-label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-3)}.tech-badges{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tech-badge{padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--text-primary);transition:all var(--transition-fast)}.tech-badge:hover{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue);transform:translateY(-1px)}.hero-buttons{display:flex;gap:var(--space-4);margin-bottom:var(--space-8)}.hero-info{display:flex;align-items:center;justify-content:space-between}.info-item{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--text-secondary)}.info-icon{font-size:1rem;color:var(--primary-blue)}.hero-socials{display:flex;gap:var(--space-3)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-fast)}.social-link:hover{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue);transform:translateY(-2px)}.hero-visual{position:relative;display:flex;flex-direction:column;align-items:center}.hero-image{position:relative;margin-bottom:var(--space-16);border-radius:50%}.hero-image:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;box-shadow:0 0 20px #2563eb4d,0 0 40px #7c3aed4d,0 0 60px #0596694d;animation:float 6s ease-in-out infinite;pointer-events:none}.hero-img{position:relative;width:300px;height:300px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow-xl);border:4px solid var(--surface);z-index:1}.placeholder-avatar{width:200px;height:200px;border-radius:50%;background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));display:flex;align-items:center;justify-content:center;color:#fff;font-size:3rem;font-weight:800;box-shadow:var(--shadow-xl)}.avatar-initials{font-weight:800}.floating-cards{position:relative;width:100%}.floating-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-lg);margin-bottom:var(--space-4);animation:float 6s ease-in-out infinite}.floating-card.card-1{animation-delay:0s}.floating-card.card-2{animation-delay:3s}.card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.company-logo{width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.75rem}.neojapan-logo{background:var(--primary-blue)}.jouhou-logo{background:var(--secondary-green)}.card-company{font-weight:600;color:var(--text-primary);font-size:.875rem}.card-role{font-size:.75rem;color:var(--text-tertiary)}.card-achievement{font-size:.875rem;color:var(--text-secondary)}.professional-experience{padding:var(--space-16) var(--space-4);max-width:1200px;margin:0 auto}.experience-header{text-align:center;margin-bottom:var(--space-12)}.experience-tabs{display:flex;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-12)}.tab-button{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-normal);text-align:left}.tab-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.tab-button.active{background:linear-gradient(135deg,var(--tab-color, var(--primary-blue)),var(--primary-blue-dark));color:#fff;border-color:var(--tab-color, var(--primary-blue));box-shadow:var(--shadow-lg)}.tab-logo{width:40px;height:40px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.875rem}.tab-company{font-weight:600;font-size:.875rem}.tab-role{font-size:.75rem;opacity:.8}.experience-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-8)}.experience-header-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.company-info{display:flex;gap:var(--space-4)}.company-logo-large{width:60px;height:60px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:1.125rem;flex-shrink:0}.company-name{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin-bottom:var(--space-1)}.role-title{font-size:1.125rem;color:var(--text-secondary);margin-bottom:var(--space-3)}.experience-meta{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.meta-item{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--text-tertiary)}.experience-description{font-size:1rem;line-height:1.6;color:var(--text-secondary)}.achievements-grid{display:grid;gap:var(--space-4)}.achievement-card{display:flex;gap:var(--space-4);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-fast)}.achievement-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.achievement-icon{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.achievement-title{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.achievement-description{color:var(--text-secondary);line-height:1.5;margin-bottom:var(--space-2)}.achievement-impact{background:var(--surface);color:var(--primary-blue);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;display:inline-block}.experience-sidebar{display:flex;flex-direction:column;gap:var(--space-6)}.technologies-card,.learnings-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm)}.card-title{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-4)}.tech-item{margin-bottom:var(--space-4)}.tech-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.tech-info{display:flex;align-items:center;gap:var(--space-2)}.tech-name{font-weight:500;color:var(--text-primary)}.tech-icon{font-size:1rem}.tech-percentage{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.tech-progress{height:6px;background:var(--surface);border-radius:var(--radius-sm);overflow:hidden}.tech-progress-fill{height:100%;border-radius:var(--radius-sm);transition:width var(--transition-slow)}.learnings-list{list-style:none}.learning-item{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--text-secondary);line-height:1.5}.learning-bullet{width:6px;height:6px;border-radius:50%;margin-top:8px;flex-shrink:0}.enhanced-projects{padding:var(--space-16) var(--space-4);max-width:1200px;margin:0 auto}.projects-header{text-align:center;margin-bottom:var(--space-12)}.featured-projects-section{margin-bottom:var(--space-16)}.subsection-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-8)}.featured-projects-grid{display:grid;gap:var(--space-8)}.featured-project-card{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-8);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-2xl);padding:var(--space-8);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.featured-project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple))}.featured-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.featured-title{font-size:1.875rem;font-weight:800;color:var(--text-primary);margin-bottom:var(--space-2)}.featured-company{color:var(--text-secondary);font-weight:500}.status-badge{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.large{padding:var(--space-3) var(--space-4);font-size:.875rem}.status-badge.production{background:#0596691a;color:var(--secondary-green)}.featured-description{font-size:1.125rem;line-height:1.7;color:var(--text-secondary);margin-bottom:var(--space-6)}.featured-highlights{display:grid;gap:var(--space-3);margin-bottom:var(--space-6)}.featured-highlight{display:flex;align-items:center;gap:var(--space-3);color:var(--text-primary)}.highlight-icon{color:var(--secondary-green);font-size:1.125rem}.featured-bottom{display:flex;justify-content:space-between;align-items:flex-end}.featured-tech{display:flex;flex-wrap:wrap;gap:var(--space-2)}.featured-tech-tag{padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--text-primary)}.featured-links{display:flex;gap:var(--space-3)}.featured-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);font-weight:600;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;border:none}.featured-link.primary{background:linear-gradient(135deg,var(--primary-blue),var(--primary-blue-dark));color:#fff}.featured-link.secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.featured-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.featured-metrics{display:grid;gap:var(--space-6);padding:var(--space-6);background:var(--surface);border-radius:var(--radius-xl)}.featured-metric{text-align:center}.metric-value-large{display:block;font-size:2rem;font-weight:800;color:var(--primary-blue);line-height:1}.metric-label-large{display:block;font-size:.875rem;color:var(--text-tertiary);margin-top:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.projects-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.project-filters{display:flex;gap:var(--space-3)}.filter-button{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.filter-button:hover{background:var(--surface);color:var(--text-primary)}.filter-button.active{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.filter-count{background:#fff3;padding:2px 6px;border-radius:var(--radius-sm);font-size:.75rem}.projects-count{color:var(--text-tertiary);font-size:.875rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-6)}.project-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);position:relative}.project-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.project-card.featured{border-color:var(--primary-blue);background:linear-gradient(135deg,#2563eb05,#7c3aed05)}.featured-badge{position:absolute;top:var(--space-4);right:var(--space-4);background:var(--primary-blue);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase}.project-header{margin-bottom:var(--space-4)}.project-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2)}.project-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}.project-actions{display:flex;gap:var(--space-2);align-items:center}.company-tag{background:var(--primary-blue);color:#fff;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.project-description{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-4)}.project-highlights{margin-bottom:var(--space-4)}.highlight-item{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-size:.875rem;color:var(--text-primary)}.project-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-4);background:var(--surface);border-radius:var(--radius-lg)}.metric-item{text-align:center}.metric-value{display:block;font-size:1.125rem;font-weight:700;color:var(--primary-blue)}.metric-label{display:block;font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.project-tech{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.tech-tag{padding:var(--space-1) var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;color:var(--text-primary)}.tech-more{color:var(--text-tertiary);font-size:.75rem;font-style:italic}.project-actions-bottom{display:flex;gap:var(--space-3)}.project-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:500;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;border:none;font-size:.875rem}.project-link.primary{background:var(--primary-blue);color:#fff}.project-link.secondary{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.project-link:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.link-icon{font-size:1rem}.projects-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-20);color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top:3px solid var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--space-4)}.no-projects{text-align:center;padding:var(--space-12);color:var(--text-secondary);background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border)}.education-container,.work-container{padding:var(--space-8);max-width:1000px;margin:0 auto;text-align:center}.education-paragraph,.work-paragraph{font-size:1.125rem;line-height:1.7;color:var(--text-secondary);margin-bottom:var(--space-8);max-width:800px;margin-left:auto;margin-right:auto}.education-logos,.work-logos{display:flex;justify-content:center;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}.education-logo,.work-logo{background:#fff;padding:var(--space-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.education-logo:hover,.work-logo:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.education-logo img,.work-logo img{width:120px;height:60px;object-fit:contain;display:block}.footer{background:var(--surface);border-top:1px solid var(--border);padding:var(--space-8) var(--space-4);text-align:center;color:var(--text-tertiary)}.footer p{font-size:.875rem;margin:0}.about-section{padding:var(--space-16) var(--space-4);background:var(--surface)}.about-container{max-width:1200px;margin:0 auto}.about-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-12);margin-top:var(--space-8)}.about-story{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}.about-subtitle{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-6);background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-paragraph{font-size:1.125rem;line-height:1.7;color:var(--text-secondary);margin-bottom:var(--space-6)}.about-paragraph:last-child{margin-bottom:0}.about-highlights{display:flex;flex-direction:column;gap:var(--space-4)}.highlight-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.highlight-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-blue)}.highlight-card h4{font-weight:600;color:var(--primary-blue);margin-bottom:var(--space-2);font-size:1rem}.highlight-card p{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}.skills-section{padding:var(--space-16) var(--space-4)}.skills-container{max-width:1200px;margin:0 auto}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-8);margin-top:var(--space-8)}.skill-category{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.skill-category:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.category-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:2px solid var(--primary-blue)}.skills-list{display:flex;flex-direction:column;gap:var(--space-4)}.skill-item{display:flex;flex-direction:column;gap:var(--space-2)}.skill-header{display:flex;justify-content:space-between;align-items:center}.skill-name{font-weight:500;color:var(--text-primary);font-size:.875rem}.skill-percentage{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.skill-progress{height:8px;background:var(--surface);border-radius:var(--radius-sm);overflow:hidden}.skill-progress-fill{height:100%;background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));border-radius:var(--radius-sm);transition:width 1s ease-in-out;transform-origin:left}.resume-section{padding:var(--space-16) var(--space-4);background:var(--surface)}.resume-container{max-width:1200px;margin:0 auto}.resume-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-12);margin-top:var(--space-8)}.resume-summary{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}.resume-summary h3{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-4)}.resume-summary p{font-size:1.125rem;line-height:1.7;color:var(--text-secondary);margin-bottom:var(--space-8)}.resume-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);padding:var(--space-6);background:var(--surface);border-radius:var(--radius-lg)}.resume-stat{text-align:center}.resume-stat .stat-number{display:block;font-size:1.875rem;font-weight:800;color:var(--primary-blue);line-height:1}.resume-stat .stat-label{display:block;font-size:.875rem;color:var(--text-tertiary);margin-top:var(--space-1)}.resume-download{background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));color:#fff;border-radius:var(--radius-xl);padding:var(--space-8);text-align:center;box-shadow:var(--shadow-lg)}.resume-download p{font-size:1.125rem;margin-bottom:var(--space-6);opacity:.9}.resume-download-btn{display:inline-flex;align-items:center;gap:var(--space-2);background:#fff;color:var(--primary-blue);padding:var(--space-4) var(--space-8);border-radius:var(--radius-lg);font-weight:600;text-decoration:none;transition:all var(--transition-fast);font-size:1rem;border:none;cursor:pointer}.resume-download-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl);background:var(--gray-50)}.background-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);max-width:1200px;margin:0 auto;padding:0 var(--space-4)}.background-section{display:flex;flex-direction:column}.background-subtitle{color:var(--text-primary);margin-bottom:var(--space-4);font-size:1.5rem;font-weight:600}.contact-container{padding:var(--space-16) var(--space-4);max-width:1200px;margin:0 auto}.contact-header{text-align:center;margin-bottom:var(--space-12)}.contact-cta{background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));color:#fff;padding:var(--space-8);border-radius:var(--radius-xl);text-align:center;margin-bottom:var(--space-12);box-shadow:var(--shadow-lg)}.cta-title{font-size:1.5rem;font-weight:700;margin-bottom:var(--space-6)}.cta-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);margin-bottom:var(--space-6);text-align:left;max-width:600px;margin-left:auto;margin-right:auto}.cta-item{font-size:1.125rem;opacity:.9}.cta-description{font-size:1.125rem;opacity:.9;margin-bottom:var(--space-6)}.cta-button{background:#fff;color:var(--primary-blue);padding:var(--space-4) var(--space-8);border:none;border-radius:var(--radius-lg);font-weight:600;font-size:1rem;cursor:pointer;transition:all var(--transition-fast)}.cta-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:start}.contact-info-enhanced{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}.contact-info-enhanced h3{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-6)}.contact-item-enhanced{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);margin-bottom:var(--space-4);background:var(--surface);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.contact-item-enhanced:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.contact-item-enhanced:last-child{margin-bottom:0}.contact-icon-enhanced{width:48px;height:48px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));color:#fff;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.contact-label{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.contact-link-enhanced{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color var(--transition-fast);font-size:1rem;display:block;margin-bottom:var(--space-1)}.contact-link-enhanced:hover{color:var(--primary-blue)}.contact-note{font-size:.75rem;color:var(--text-tertiary);font-style:italic}.contact-info-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}.contact-info-card h4{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-6)}.quick-facts{display:flex;flex-direction:column;gap:var(--space-4)}.fact-item{color:var(--text-secondary);line-height:1.5}.fact-item strong{color:var(--text-primary)}@media (max-width: 1024px){.hero-content{grid-template-columns:1fr;text-align:center;gap:var(--space-12)}.experience-content{grid-template-columns:1fr;gap:var(--space-8)}.featured-project-card{grid-template-columns:1fr;gap:var(--space-6)}.about-content,.resume-content,.contact-content{grid-template-columns:1fr;gap:var(--space-8)}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width: 768px){body{padding-top:80px}.navbar{flex-direction:column;padding:var(--space-3)}.navbar-items{display:none;position:absolute;top:100%;left:0;right:0;background:var(--background);border-bottom:1px solid var(--border);flex-direction:column;padding:var(--space-4);gap:var(--space-3);box-shadow:var(--shadow-lg)}.navbar-items.dropdown-active{display:flex}.dropdown{display:block}.hero-buttons{flex-direction:column;width:100%}.hero-stats{grid-template-columns:1fr;gap:var(--space-4);text-align:left}.stat-item{display:flex;justify-content:space-between;align-items:center}.projects-grid{grid-template-columns:1fr}.experience-tabs{flex-direction:column;gap:var(--space-3)}.tab-button{width:100%}.skills-grid{grid-template-columns:1fr}.resume-highlights{grid-template-columns:1fr;gap:var(--space-4);text-align:left}.resume-stat{display:flex;justify-content:space-between;align-items:center;text-align:left}.cta-list{grid-template-columns:1fr;gap:var(--space-2);text-align:center}.project-metrics{grid-template-columns:repeat(2,1fr)}.featured-project-card{padding:var(--space-6)}.featured-header{flex-direction:column;gap:var(--space-4)}.featured-bottom{flex-direction:column;gap:var(--space-4);align-items:stretch}.featured-links{width:100%}.featured-link{flex:1;justify-content:center}.background-content,.about-section .about-content,.resume-section .resume-content,.contact-container .contact-content,.about-content{display:flex;flex-direction:column;gap:var(--space-8)}}@media (max-width: 640px){.hero-container{padding:var(--space-6) var(--space-3)}.hero-stats{grid-template-columns:1fr;gap:var(--space-4);text-align:left}.stat-item{display:flex;justify-content:space-between;align-items:center}.navbar-logo{font-size:1rem}.theme-toggle-btn{padding:var(--space-2) var(--space-3);font-size:.75rem}.projects-controls{flex-direction:column;gap:var(--space-4);align-items:stretch}.project-filters{flex-wrap:wrap;justify-content:center}.project-metrics{grid-template-columns:1fr}.featured-metrics{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1.125rem}.placeholder-avatar{width:150px;height:150px;font-size:2rem}.floating-card{padding:var(--space-3)}.project-card,.about-story,.contact-info-enhanced,.contact-info-card,.skill-category,.resume-summary,.resume-download,.contact-cta{padding:var(--space-4)}.contact-item-enhanced{padding:var(--space-3)}.contact-icon-enhanced{width:40px;height:40px;font-size:1rem}.education-logo img,.work-logo img{width:100px;height:50px}.featured-metrics{grid-template-columns:1fr}.achievement-card{flex-direction:column;text-align:center}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.floating-card,.loading-spinner{animation:none}}.btn:focus,.filter-button:focus,.tab-button:focus,.contact-link-enhanced:focus,.resume-download-btn:focus,.cta-button:focus,.navbar-item:focus,.project-link:focus,.education-link:focus{outline:2px solid var(--primary-blue);outline-offset:2px}@media (prefers-contrast: high){:root{--border: #000000;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .3)}[data-theme=dark]{--border: #ffffff}}@media print{.navbar,.theme-toggle-btn,.floating-cards,.hero-socials,.cta-button,.project-link,.featured-link{display:none}body{padding-top:0;background:#fff;color:#000}.hero-container,.section{break-inside:avoid}.project-card,.achievement-card{break-inside:avoid;box-shadow:none;border:1px solid #ccc}}.fade-in{opacity:0;transform:translateY(30px);animation:fadeIn .6s ease-out forwards}.fade-in-delay-1{animation-delay:.1s}.fade-in-delay-2{animation-delay:.2s}.fade-in-delay-3{animation-delay:.3s}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}.contact-info{display:flex;align-items:center;justify-content:space-around;margin:0 auto;width:100%;background:none;padding:var(--space-8) var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.contact-item{display:flex;align-items:center;gap:var(--space-3);font-size:1em;color:var(--text-primary)}.contact-icon{width:2em;height:2em;color:var(--primary-blue);flex-shrink:0}.contact-link{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color .2s}.contact-link:hover{color:var(--primary-blue);text-decoration:underline}.project-carousel{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);margin:var(--space-8) 0}.carousel-track{display:flex;gap:var(--space-6);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:var(--space-4);scrollbar-width:thin;scrollbar-color:var(--primary-blue) var(--border);width:100%}.carousel-track::-webkit-scrollbar{height:8px}.carousel-track::-webkit-scrollbar-track{background:var(--border);border-radius:4px}.carousel-track::-webkit-scrollbar-thumb{background:var(--primary-blue);border-radius:4px}.carousel-item{flex:0 0 auto;width:300px;background:var(--card-bg);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);scroll-snap-align:center;border:1px solid var(--border);transition:all var(--transition-fast)}.carousel-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.carousel-item h3{color:var(--primary-blue);margin-bottom:var(--space-3)}.carousel-dots{display:flex;justify-content:center;gap:var(--space-2);margin-top:var(--space-4)}.dot{width:10px;height:10px;border-radius:50%;background:var(--border);cursor:pointer;transition:background .2s ease}.dot.active{background:var(--primary-blue)}.enhanced-education{padding:var(--space-16) var(--space-4);max-width:1200px;margin:0 auto;background:linear-gradient(135deg,var(--background) 0%,var(--surface) 50%,var(--background) 100%)}.education-intro{text-align:center;margin-bottom:var(--space-12)}.education-journey{display:flex;flex-direction:column;gap:var(--space-16)}.subsection-title{display:flex;align-items:center;gap:var(--space-3);font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-8);position:relative}.subsection-title:after{content:"";flex:1;height:2px;background:linear-gradient(90deg,var(--primary-blue),transparent);margin-left:var(--space-4)}.title-icon{font-size:1.5rem;color:var(--primary-blue)}.education-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-6)}.learning-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-6)}.education-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);position:relative;overflow:hidden}.education-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-blue),var(--accent-purple));opacity:0;transition:opacity var(--transition-normal)}.education-card:hover:before{opacity:1}.education-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--primary-blue)}.education-card.formal{border-left:4px solid var(--primary-blue)}.education-card.continuous{border-left:4px solid var(--secondary-green)}.education-card-header{display:flex;gap:var(--space-4);align-items:flex-start;margin-bottom:var(--space-5)}.education-logo{width:80px;height:60px;object-fit:contain;border-radius:var(--radius-lg);background:#fff;padding:var(--space-2);box-shadow:var(--shadow-sm);flex-shrink:0}.education-logo-placeholder{width:80px;height:60px;background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;flex-shrink:0}.education-info{flex:1;min-width:0}.education-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-1);line-height:1.3}.education-subtitle{font-size:1rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-3);line-height:1.4}.education-meta{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--text-tertiary);margin-bottom:var(--space-1)}.education-meta:last-child{margin-bottom:0}.meta-icon{font-size:1rem;color:var(--primary-blue)}.education-description{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin-bottom:var(--space-5)}.achievements-section,.skills-section{margin-bottom:var(--space-5)}.achievements-title,.skills-title{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3)}.section-icon{font-size:1rem;color:var(--primary-blue)}.achievements-list{list-style:none;padding:0;margin:0}.achievement-item{position:relative;padding-left:var(--space-5);margin-bottom:var(--space-2);font-size:.875rem;color:var(--text-secondary);line-height:1.5}.achievement-item:before{content:"✓";position:absolute;left:0;top:0;color:var(--secondary-green);font-weight:700;font-size:1rem}.achievement-item:last-child{margin-bottom:0}.skills-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.skill-tag{background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-2xl);font-size:.75rem;font-weight:500;white-space:nowrap;transition:transform var(--transition-fast)}.skill-tag:hover{transform:scale(1.05)}.education-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:transparent;color:var(--primary-blue);border:1px solid var(--primary-blue);border-radius:var(--radius-lg);text-decoration:none;font-size:.875rem;font-weight:500;transition:all var(--transition-fast);margin-top:var(--space-4)}.education-link:hover{background:var(--primary-blue);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.education-summary{margin-top:var(--space-16)}.summary-card{background:linear-gradient(135deg,var(--primary-blue),var(--accent-purple));color:#fff;padding:var(--space-8);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.summary-card:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:float 6s ease-in-out infinite}.summary-card h4{font-size:1.5rem;font-weight:700;margin-bottom:var(--space-4);position:relative;z-index:1}.summary-card p{font-size:1.125rem;line-height:1.7;opacity:.95;position:relative;z-index:1;max-width:800px;margin:0 auto}.formal-education-section{margin-bottom:var(--space-12)}.continuous-learning-section{margin-bottom:var(--space-8)}@media (max-width: 1024px){.education-grid,.learning-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-5)}.education-journey{gap:var(--space-12)}}@media (max-width: 768px){.enhanced-education{padding:var(--space-12) var(--space-3)}.education-grid,.learning-grid{grid-template-columns:1fr;gap:var(--space-4)}.education-card{padding:var(--space-5)}.education-card-header{flex-direction:column;text-align:center;gap:var(--space-3)}.education-logo,.education-logo-placeholder{width:100px;height:70px;align-self:center}.subsection-title{font-size:1.5rem;flex-direction:column;text-align:center}.subsection-title:after{display:none}.summary-card{padding:var(--space-6)}.summary-card h4{font-size:1.25rem}.summary-card p{font-size:1rem}}@media (max-width: 480px){.enhanced-education{padding:var(--space-10) var(--space-2)}.education-card{padding:var(--space-4)}.education-logo,.education-logo-placeholder{width:80px;height:60px}.skills-tags{justify-content:center}.education-journey{gap:var(--space-8)}}.education-card{animation:slideInUp .6s ease-out}.education-card:nth-child(1){animation-delay:.1s}.education-card:nth-child(2){animation-delay:.2s}.education-card:nth-child(3){animation-delay:.3s}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .education-logo{background:var(--surface);border:1px solid var(--border)}[data-theme=dark] .summary-card:before{background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%)}.education-link:focus{outline:2px solid var(--primary-blue);outline-offset:2px}@media print{.enhanced-education{background:none}.education-card{break-inside:avoid;box-shadow:none;border:1px solid #ccc}.education-card:hover{transform:none}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
