*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #fffdf5;--bg-secondary: #fce7f3;--bg-card: #ffffff;--text-primary: #050505;--text-secondary: #333333;--accent: #ff6b6b;--accent-hover: #ff8787;--border: #000000;--shadow-color: #000000;--card-border-width: 3px;--dot-color: #000}[data-theme=dark]{--bg-primary: #0a0e27;--bg-secondary: #1a1f3d;--bg-card: #12162e;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--accent: #635bff;--accent-hover: #7a73ff;--border: #2d3258;--shadow-color: #000000;--dot-color: #1e2347}.tab-content[hidden]{display:none}body{font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background-image:radial-gradient(var(--dot-color) 1px,transparent 0);background-size:40px 40px}a{color:var(--text-primary);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--accent);transition:all .2s ease;font-weight:700}a:hover{background-color:var(--accent);color:var(--text-primary);text-decoration:none}h1,h2,h3,h4,h5,h6{line-height:1.1;color:var(--text-primary);font-weight:900;text-transform:uppercase;letter-spacing:-.02em}button{font-family:inherit;cursor:pointer;border:none;outline:none}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary);border-left:2px solid var(--border)}::-webkit-scrollbar-thumb{background:var(--accent);border:2px solid var(--border)}::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}.app{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:2rem}.folder{max-width:900px;width:100%}.folder-header{display:flex;align-items:center;justify-content:space-between}.folder-header h1{font-size:clamp(2rem,5vw,3rem);font-weight:900;text-shadow:3px 3px 0 var(--accent);-webkit-text-stroke:1px var(--text-primary)}.header-links{display:flex;align-items:center;gap:.5rem}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--bg-card);border:2px solid var(--border);color:var(--text-primary);box-shadow:3px 3px 0 var(--shadow-color);transition:all .2s ease}.social-link:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--accent);background-color:var(--accent)}.resume-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;height:40px;padding:0 .65rem 0 .5rem;background-color:var(--bg-card);border:2px solid var(--border);color:var(--text-primary);box-shadow:3px 3px 0 var(--shadow-color);transition:all .2s ease;text-decoration:none;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;line-height:1}.resume-button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--accent);background-color:var(--accent);color:var(--text-primary);text-decoration:none}.theme-toggle{width:40px;height:40px;background-color:var(--bg-card);border:2px solid var(--border);color:var(--text-primary);box-shadow:3px 3px 0 var(--shadow-color);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.theme-toggle:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--accent);background-color:var(--accent)}.hero-row{display:flex;align-items:flex-start;gap:1.5rem;padding:0 .5rem}.hero-right{flex:1;display:flex;flex-direction:column;gap:.75rem}.headshot-wrapper{flex-shrink:0}.headshot{width:140px;height:140px;object-fit:cover;border:3px solid var(--border);box-shadow:4px 4px 0 var(--shadow-color)}.about-body{flex:1;background-color:var(--bg-card);border:2px solid var(--border);box-shadow:4px 4px 0 var(--shadow-color);padding:1rem 1.2rem}.mobile-only{display:none}.about-body .about-text{margin-bottom:0;font-style:italic;font-weight:500;line-height:1.7;letter-spacing:.01em}.tab-bar{display:flex;gap:0;margin-top:1rem;padding-left:.5rem}.nav-tab{color:var(--text-primary);font-weight:700;font-size:.85rem;padding:.5rem 1.2rem;border:3px solid var(--border);border-bottom:none;background:var(--bg-primary);transition:background-color .15s ease;text-transform:uppercase;letter-spacing:.03em;position:relative;top:3px;margin-right:-1px}.nav-tab:hover{background-color:var(--accent-hover)}.nav-tab.active{background-color:var(--bg-card);z-index:1;top:3px}.folder-body{background-color:var(--bg-card);border:3px solid var(--border);box-shadow:6px 6px 0 var(--shadow-color);padding:2rem;position:relative}.about-text{font-size:1.05rem;color:var(--text-primary);line-height:1.6;font-weight:500;margin-bottom:1.5rem}.cta-button{display:inline-block;padding:.6rem 1.5rem;background-color:var(--accent);color:var(--text-primary);font-weight:800;font-size:.95rem;text-decoration:none;border:2px solid var(--border);box-shadow:3px 3px 0 var(--shadow-color);transition:all .2s ease;text-transform:uppercase}.cta-button:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--shadow-color);background-color:var(--accent-hover);color:var(--text-primary)}.cta-button.secondary{background-color:var(--bg-primary);color:var(--text-primary)}.cta-button.secondary:hover{background-color:var(--bg-secondary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.project-card{background-color:var(--bg-primary);border:2px solid var(--border);padding:1.2rem;transition:all .2s ease;box-shadow:4px 4px 0 var(--shadow-color);display:flex;flex-direction:column}.project-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--accent)}.project-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.6rem;border-bottom:2px solid var(--border);padding-bottom:.6rem}.project-card h3{font-size:1.1rem;margin:0}.project-title-link{color:var(--text-primary);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:var(--accent);text-underline-offset:3px}.project-title-link:hover{background-color:var(--accent);color:var(--text-primary);text-decoration:none}.title-github-link{display:flex;align-items:center;justify-content:center;color:var(--text-primary);transition:color .2s ease;flex-shrink:0;padding:4px;border:2px solid var(--border);background:var(--bg-secondary)}.title-github-link:hover{background-color:var(--accent);color:var(--text-primary)}.project-card p{color:var(--text-secondary);margin-bottom:1rem;font-weight:500;font-size:.9rem;flex-grow:1}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{padding:.2rem .5rem;background-color:var(--bg-card);border:2px solid var(--border);font-size:.75rem;font-weight:700;color:var(--text-primary);box-shadow:2px 2px 0 var(--shadow-color)}.see-more-link{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1.5rem;padding:.5rem 1rem;background-color:var(--bg-primary);border:2px solid var(--border);box-shadow:3px 3px 0 var(--shadow-color);font-weight:700;font-size:.85rem;text-decoration:none;width:fit-content;margin-left:auto;margin-right:auto}.see-more-link:hover{background-color:var(--accent);transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--shadow-color)}.timeline{position:relative;padding-left:1.5rem;border-left:3px solid var(--border)}.timeline-item{position:relative;margin-bottom:2rem;padding-left:1.5rem}.timeline-item:last-child{margin-bottom:0}.timeline-item:before{content:"";position:absolute;left:-2rem;top:.4rem;width:14px;height:14px;background-color:var(--accent);border:2px solid var(--border)}.timeline-item h3{font-size:1.1rem;margin-bottom:.3rem;background:var(--bg-secondary);display:inline-block;padding:.1rem .4rem;border:2px solid var(--border)}.timeline-item .company{color:var(--text-primary);font-weight:800;font-size:.95rem;text-transform:uppercase;display:block;margin-bottom:.1rem}.timeline-item .date{color:var(--text-secondary);font-family:monospace;font-weight:700;font-size:.85rem;margin-bottom:.5rem;display:block}.timeline-item p{font-size:.9rem}.skills-grid{display:flex;flex-direction:column;gap:1.5rem}.skill-category{display:flex;flex-direction:column;gap:1rem;background:var(--bg-primary);border:2px solid var(--border);padding:1.2rem;box-shadow:4px 4px 0 var(--shadow-color)}.skill-category h3{font-size:.9rem;font-weight:800;color:var(--text-primary);text-transform:uppercase;border-bottom:2px solid var(--border);padding-bottom:.6rem;margin-bottom:0}.skill-list{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.skill-item-icon{display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s ease;width:80px}.skill-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--bg-card);border:2px solid var(--border);transition:all .2s ease;box-shadow:3px 3px 0 var(--shadow-color)}.skill-icon img{width:28px;height:28px;object-fit:contain}.skill-item-icon:hover .skill-icon{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--accent);background-color:var(--bg-secondary)}.skill-item-icon span{font-weight:700;font-size:.7rem;text-align:center;background:var(--text-primary);color:var(--bg-primary);padding:.1rem .3rem}.hover-scale,.hover-lift,.hover-scale-sm,.hover-lift-sm{transition:transform .2s,box-shadow .2s}.hover-scale:hover,.hover-lift:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--accent)}.hover-scale-sm:hover,.hover-lift-sm:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--accent)}@media(max-width:768px){.app{padding:.75rem}.folder-header{flex-direction:column;align-items:flex-start;gap:.35rem}.folder-header h1{-webkit-text-stroke:0;font-size:1.8rem;text-shadow:2px 2px 0 var(--accent)}.social-link,.theme-toggle{width:34px;height:34px;box-shadow:2px 2px 0 var(--shadow-color)}.resume-button{height:34px;padding:0 .5rem;font-size:.7rem;box-shadow:2px 2px 0 var(--shadow-color);gap:.25rem}.resume-button svg{width:16px;height:16px}.social-link svg{width:16px;height:16px}.theme-toggle svg{width:16px;height:16px}.hero-row{flex-direction:row;align-items:center;gap:.75rem;padding:0 .25rem}.hero-right{gap:.25rem}.headshot{width:80px;height:80px;box-shadow:3px 3px 0 var(--shadow-color)}.desktop-only{display:none}.mobile-only{display:block;margin-top:.75rem;padding:0 .25rem}.about-text{font-size:.8rem}.tab-bar{flex-wrap:wrap;gap:0;padding-left:.25rem}.nav-tab,.nav-tab.active{font-size:.65rem;padding:.35rem .6rem;border-width:2px;top:2px}.folder-body{padding:1rem;border-width:2px;box-shadow:4px 4px 0 var(--shadow-color)}.projects-grid{grid-template-columns:1fr;gap:1rem}.project-card{padding:.8rem;box-shadow:3px 3px 0 var(--shadow-color)}.project-card h3{font-size:.95rem}.project-card p{font-size:.8rem;margin-bottom:.75rem}.tech-tag{font-size:.65rem;padding:.15rem .4rem}.see-more-link{font-size:.75rem;margin-top:1rem;padding:.4rem .8rem}.timeline{padding-left:1rem;border-left-width:2px}.timeline-item{margin-bottom:1.5rem;padding-left:1rem}.timeline-item:before{width:10px;height:10px;left:-1.45rem;top:.35rem}.timeline-item h3{font-size:.85rem;padding:.1rem .3rem}.timeline-item .company{font-size:.8rem}.timeline-item .date{font-size:.75rem;margin-bottom:.3rem}.timeline-item p{font-size:.8rem}.skill-category{padding:.8rem;gap:.75rem;box-shadow:3px 3px 0 var(--shadow-color)}.skill-category h3{font-size:.75rem;padding-bottom:.4rem;border-bottom-width:2px}.skills-grid{gap:1rem}.skill-list{gap:.75rem}.skill-item-icon{width:60px;gap:.3rem}.skill-icon{width:38px;height:38px;box-shadow:2px 2px 0 var(--shadow-color)}.skill-icon img{width:22px;height:22px}.skill-item-icon span{font-size:.55rem}.resume-actions{flex-wrap:wrap;gap:.5rem;justify-content:center}.cta-button{font-size:.75rem;padding:.4rem 1rem}}@media(max-width:400px){.nav-tab{font-size:.6rem;padding:.3rem .5rem}.about-text{font-size:.75rem}}
