*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #06b6d4;--primary-dark: #0891b2;--secondary: #14b8a6;--teal: #14b8a6;--accent: #3b82f6;--success: #10b981;--error: #ef4444;--background: #0f172a;--surface: #1e293b;--surface-light: #334155;--text: #f8fafc;--text-muted: #cbd5e1;--gradient: linear-gradient(135deg, #06b6d4 0%, #14b8a6 100%);--gradient-animated: linear-gradient(-45deg, #06b6d4, #0891b2, #14b8a6, #0d9488);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4)}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;color:var(--text);background:var(--background)}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.navbar{background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--surface-light);box-shadow:var(--shadow)}.navbar .container{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem}.nav-brand{font-size:1.5rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-decoration:none;cursor:pointer}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;z-index:101}.hamburger span{width:25px;height:3px;background:var(--text);border-radius:2px;transition:all .3s ease}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.nav-links{display:flex;gap:2rem}.nav-links a{color:var(--text-muted);text-decoration:none;font-weight:500;transition:color .3s ease}.nav-links a:hover{color:var(--primary)}.section{padding:6rem 0}.section-alt{background:var(--surface)}.section-title{font-size:2.5rem;font-weight:700;text-align:center;margin-bottom:1rem}.section-subtitle{text-align:center;color:var(--text-muted);font-size:1.125rem;max-width:700px;margin:0 auto 3rem;line-height:1.8}.hero{padding:8rem 0;background:linear-gradient(135deg,#1e293b,#0f172a);position:relative;overflow:hidden}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0;opacity:.15}.animated-gradient{width:100%;height:100%;background:var(--gradient-animated);background-size:400% 400%;animation:gradient 15s ease infinite}@keyframes gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.hero-content{text-align:center;max-width:800px;margin:0 auto 4rem;position:relative;z-index:1}.hero-title{font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem}.gradient-text{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle-large{font-size:2rem;font-weight:600;color:var(--secondary);margin-bottom:1rem}.hero-subtitle{font-size:1.25rem;color:var(--text-muted);line-height:1.8;margin-bottom:2rem}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:900px;margin:0 auto;position:relative;z-index:1}.stat-card{background:var(--surface);padding:2rem;border-radius:12px;text-align:center;border:1px solid var(--surface-light);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.stat-icon{font-size:2.5rem;margin-bottom:.5rem}.stat-number{font-size:1.5rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.stat-label{color:var(--text-muted);font-size:.875rem}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .3s ease;cursor:pointer;border:none;font-size:1rem}.btn-primary{background:var(--gradient);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--surface-light);color:var(--text);border:1px solid var(--surface-light)}.btn-secondary:hover{background:var(--surface);border-color:var(--primary)}.btn-small{padding:.5rem 1rem;font-size:.875rem}.btn-large{padding:1rem 2rem;font-size:1.125rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.project-card{background:var(--surface);border-radius:12px;overflow:hidden;border:1px solid var(--surface-light);transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.project-image{width:100%;height:200px;overflow:hidden;background:var(--surface-light)}.project-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.project-content{padding:1.5rem}.project-title{font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.project-description{color:var(--text-muted);margin-bottom:1rem;line-height:1.6}.project-features{margin:1rem 0;padding:1rem;background:var(--background);border-radius:8px}.project-features h4{font-size:.875rem;color:var(--primary);margin-bottom:.5rem}.project-features ul{list-style:none;font-size:.875rem;color:var(--text-muted)}.project-features li{padding:.25rem 0 .25rem 1rem;position:relative}.project-features li:before{content:"✓";position:absolute;left:0;color:var(--success)}.tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.tech-tag{background:var(--background);color:var(--primary);padding:.25rem .75rem;border-radius:6px;font-size:.875rem;border:1px solid var(--primary)}.project-links{display:flex;gap:.75rem;margin-top:1.5rem}.learning-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.milestone-card{background:var(--background);padding:1.5rem;border-radius:12px;border:1px solid var(--surface-light);transition:transform .3s ease}.milestone-card:hover{transform:translateY(-5px)}.milestone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.milestone-category{color:var(--primary);font-weight:600;font-size:.875rem}.milestone-status{font-size:.75rem;padding:.25rem .75rem;border-radius:12px;font-weight:600}.status-in_progress{background:#0ea5e933;color:var(--primary)}.status-completed{background:#10b98133;color:var(--success)}.milestone-title{font-size:1.25rem;margin-bottom:.75rem}.milestone-description{color:var(--text-muted);margin-bottom:1rem;line-height:1.6}.progress-bar{height:8px;background:var(--surface-light);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--gradient);transition:width .3s ease}.progress-label{font-size:.875rem;color:var(--text-muted);text-align:right}.experience-timeline{max-width:800px;margin:0 auto}.experience-card{background:var(--background);padding:2rem;border-radius:12px;border:1px solid var(--surface-light);margin-bottom:2rem;position:relative;transition:transform .3s ease,box-shadow .3s ease}.experience-card:hover{transform:translate(5px);box-shadow:var(--shadow-lg)}.experience-header{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1rem}.experience-icon{background:var(--gradient);color:var(--background);width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.experience-title-group{flex:1}.experience-position{font-size:1.25rem;font-weight:700;margin-bottom:.25rem;color:var(--text)}.experience-company{font-size:1rem;font-weight:600;color:var(--primary)}.experience-meta{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--surface-light)}.experience-meta-item{display:flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.875rem}.experience-meta-item svg{color:var(--primary)}.experience-description{color:var(--text-muted);line-height:1.6;margin-bottom:1rem}.experience-highlights{list-style:none;display:flex;flex-direction:column;gap:.5rem}.experience-highlights li{padding-left:1.5rem;position:relative;color:var(--text-muted);line-height:1.6}.experience-highlights li:before{content:"→";position:absolute;left:0;color:var(--primary);font-weight:700}.experience-connector{position:absolute;bottom:-2rem;left:2rem;width:2px;height:2rem;background:var(--primary);opacity:.3}.contact-form{max-width:600px;margin:0 auto;background:var(--background);padding:2rem;border-radius:12px;border:1px solid var(--surface-light)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--text)}.form-group input,.form-group textarea{width:100%;padding:.75rem;border-radius:8px;border:1px solid var(--surface-light);background:var(--surface);color:var(--text);font-family:inherit;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.form-group input:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.alert{padding:1rem;border-radius:8px;margin-bottom:1rem;font-weight:500}.alert-success{background:#10b98133;color:var(--success);border:1px solid var(--success)}.alert-error{background:#ef444433;color:var(--error);border:1px solid var(--error)}.loading{text-align:center;padding:3rem;color:var(--text-muted);font-size:1.125rem}.project-documentation{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--surface-light)}.documentation-toggle{background:var(--background);border:1px solid var(--primary);color:var(--primary);padding:.75rem 1rem;border-radius:8px;font-weight:600;cursor:pointer;width:100%;text-align:left;transition:all .3s ease;font-size:.875rem}.documentation-toggle:hover{background:var(--primary);color:var(--background)}.documentation-loading{text-align:center;padding:1rem;color:var(--text-muted);font-size:.875rem}.documentation-steps{margin-top:1rem}.documentation-step{background:var(--background);padding:1.5rem;margin-bottom:1rem;border-radius:8px;border:1px solid var(--surface-light)}.step-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.step-number{background:var(--primary);color:var(--background);padding:.25rem .75rem;border-radius:6px;font-weight:700;font-size:.875rem}.step-title{font-size:1.125rem;font-weight:600;margin:0}.step-commands,.step-rationale,.step-evidence{margin-bottom:1rem}.step-commands strong,.step-rationale strong,.step-evidence strong{display:block;color:var(--primary);font-size:.875rem;margin-bottom:.5rem}.command-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.command{display:block;background:var(--surface);color:var(--secondary);padding:.75rem;border-radius:6px;font-family:Courier New,monospace;font-size:.875rem;border:1px solid var(--surface-light);overflow-x:auto}.step-rationale p,.step-evidence p{color:var(--text-muted);line-height:1.6;font-size:.875rem;margin:0}.footer{background:var(--surface);padding:2rem 0;text-align:center;color:var(--text-muted);border-top:1px solid var(--surface-light)}@media (max-width: 768px){.hero-title{font-size:2.5rem}.section-title{font-size:2rem}.hamburger{display:flex}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:250px;background:var(--surface);flex-direction:column;gap:0;padding:5rem 2rem 2rem;transition:right .3s ease;box-shadow:-5px 0 15px #00000080;z-index:100}.nav-links.active{right:0}.nav-links a{padding:1rem 0;border-bottom:1px solid var(--surface-light);font-size:1.125rem}.projects-grid,.learning-grid,.form-row{grid-template-columns:1fr}.experience-card{padding:1.5rem}.experience-meta{flex-direction:column;gap:.75rem}}.nav-auth-button{display:flex;align-items:center;gap:.5rem;background:none;border:1px solid var(--primary);color:var(--primary);padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:all .3s ease;font-weight:500;font-size:.9rem}.nav-auth-button:hover{background:var(--primary);color:var(--background)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--surface);border-radius:16px;padding:2.5rem;max-width:450px;width:100%;position:relative;border:1px solid var(--surface-light);box-shadow:0 20px 25px -5px #00000080}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease}.modal-close:hover{background:var(--background);color:var(--text)}.modal-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text)}.modal-subtitle{color:var(--text-muted);margin-bottom:2rem;line-height:1.6}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form .form-group{margin-bottom:.5rem}.auth-form input::-moz-placeholder{color:var(--text-muted);opacity:.5}.auth-form input::placeholder{color:var(--text-muted);opacity:.5}.auth-toggle{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--surface-light)}.auth-toggle p{color:var(--text-muted)}.link-button{background:none;border:none;color:var(--primary);cursor:pointer;font-weight:600;padding:0;text-decoration:underline;transition:color .3s ease}.link-button:hover{color:var(--primary-dark)}@media (max-width: 768px){.nav-auth-button{width:100%;justify-content:center;margin-top:1rem;padding:1rem}}@media (max-width: 480px){.container{padding:0 1rem}.hero,.section{padding:4rem 0}.hero-title{font-size:2rem}.hero-cta{flex-direction:column}.hero-cta .btn{width:100%}.modal-content{padding:2rem 1.5rem}.modal-title{font-size:1.5rem}}
