:root{--primary-bg: #f1ede6;--primary-text: #0b0b0b;--secondary-text: #54504a;--border-color: #efe7dc;--accent-color: #CFAF3A;--card-bg: #ffffff;--hover-bg: rgba(212,175,55,.06);--section-tint: rgba(207,175,58,.06);--accent-glow: rgba(207,175,58,.8);--accent-ghost: rgba(207,175,58,.06)}[data-theme=dark]{--primary-bg: #070707;--primary-text: #f7efd9;--secondary-text: #bfb6a1;--border-color: #1f1b18;--accent-color: #FFD166;--card-bg: #070707;--hover-bg: rgba(212,175,55,.1)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--primary-bg);color:var(--primary-text);position:relative;overflow-x:hidden}#root{position:relative;z-index:0}.app{display:flex;flex-direction:column;min-height:100vh;width:100%;background:transparent;position:relative}.app:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(1200px 600px at 10% 10%,#000000fc,#ffd1661a),radial-gradient(1000px 400px at 90% 80%,#000000fc,#ffce7300),radial-gradient(1400px 400px at 50% 95%,#000000fc,#ffce7300);background-attachment:fixed;pointer-events:none;z-index:-100}[data-theme=dark] .app:before{background:radial-gradient(1200px 600px at 10% 10%,#ffd166f2,#ffd1661a),radial-gradient(1000px 400px at 90% 80%,#ffce73cc,#ffce7300),radial-gradient(1400px 400px at 50% 95%,#ffce7380,#ffce7300);background-attachment:fixed}a{color:var(--accent-color);text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.7}button{cursor:pointer;font-family:inherit;border:none;background:none;padding:0}main{flex:1}.header{background-color:var(--primary-bg);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100;transition:all .3s ease}.header-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between}.logo{font-size:1.25rem;font-weight:700;color:var(--primary-text);display:inline-flex;align-items:center;gap:.75rem}.logo-badge{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--accent-color),var(--accent-glow));color:#111;border-radius:10px;font-weight:700}.nav{display:flex;gap:2rem;align-items:center}.nav button{color:var(--secondary-text);font-size:1rem;transition:color .2s ease}.nav button:hover{color:var(--accent-color)}.header-controls{display:flex;align-items:center;gap:1rem}.theme-toggle{display:flex;align-items:center;justify-content:center;color:var(--primary-text);transition:transform .2s ease}.theme-toggle:hover{transform:rotate(20deg)}.menu-toggle{display:none;color:var(--primary-text)}@media (max-width: 768px){.header-container{padding:1rem 1.5rem}.menu-toggle{display:flex}.nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background-color:var(--primary-bg);border-bottom:1px solid var(--border-color);padding:1rem;gap:.5rem}.nav.active{display:flex}.nav button{padding:.75rem;text-align:left}}.hero{min-height:60vh;display:flex;align-items:center;justify-content:center;background-color:#f1ede6cc;padding:2rem}[data-theme=dark] .hero{background-color:#070707bf}.hero-container{max-width:1200px;width:100%;display:flex;gap:2.5rem;align-items:center}.hero-content{display:flex;flex-direction:column;gap:1.5rem}.hero-title{font-size:3.5rem;line-height:1.2;font-weight:700;color:var(--primary-text)}.hero-subtitle{font-size:1.25rem;color:var(--secondary-text);max-width:600px;line-height:1.6}.cta-button{display:inline-flex;align-items:center;gap:.5rem;background-color:var(--accent-color);color:#000;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;transition:all .3s ease;width:fit-content}.cta-button:hover{opacity:.9;transform:translate(4px)}.hero-avatar{width:140px;height:140px;border-radius:9999px;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--accent-ghost),rgba(229,192,99,.03))}.hero-avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:9999px;box-shadow:0 6px 18px #0206171f,0 0 0 4px var(--accent-ghost)}@media (max-width: 768px){.hero{min-height:50vh;padding:1rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.hero-container{flex-direction:column;text-align:center;gap:1rem}.hero-avatar img{width:100px;height:100px}}@media (max-width: 480px){.header-container{padding:.75rem 1rem}.logo{font-size:1rem}.cta-button{padding:.6rem 1rem;font-size:.95rem}.hero-title{font-size:1.75rem}.hero-subtitle{font-size:.95rem}.hero-avatar{width:100px;height:100px}.projects-grid{gap:1rem}.about,.projects,.skills,.contact{padding:2rem 1rem}}.about{padding:4rem 2rem;background-color:#f1ede6cc}[data-theme=dark] .about{background-color:#070707bf}.about-container{max-width:1200px;margin:0 auto}.about h2{font-size:2.5rem;margin-bottom:2rem;color:var(--primary-text)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.about-text{display:flex;flex-direction:column;gap:1rem}.about-text p{color:var(--secondary-text);line-height:1.8;font-size:1rem}.download-cv{display:inline-flex;align-items:center;justify-content:center;background-color:var(--accent-color);color:#000;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;transition:all .3s ease;width:fit-content}.download-cv:hover{opacity:.9;transform:translateY(-2px)}@media (max-width: 768px){.about{padding:2rem 1rem}.about h2{font-size:2rem}.about-content{grid-template-columns:1fr;gap:2rem}}.projects{padding:4rem 2rem;background-color:#f1ede6cc}[data-theme=dark] .projects{background-color:#070707bf}.projects-container{max-width:1200px;margin:0 auto}.projects h2{font-size:2.5rem;margin-bottom:2rem;color:var(--primary-text)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.project-card{background-color:var(--primary-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:all .3s ease}.project-card:hover{border-color:var(--accent-color);transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}[data-theme=dark] .project-card:hover{box-shadow:0 4px 12px #ffffff1a}.project-header h3{font-size:1.25rem;color:var(--primary-text);margin-bottom:.5rem}.project-description{color:var(--secondary-text);line-height:1.6;margin-bottom:1rem;font-size:.95rem}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background-color:var(--card-bg);color:var(--accent-color);padding:.25rem .75rem;border-radius:4px;font-size:.85rem;font-weight:500}.project-links{display:flex;gap:1rem}.project-links a{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-color);font-weight:600;transition:opacity .2s ease}.project-links a:hover{opacity:.7}@media (max-width: 768px){.projects{padding:2rem 1rem}.projects h2{font-size:2rem}.projects-grid{grid-template-columns:1fr}}.skills{padding:4rem 2rem;background-color:#f1ede6cc}[data-theme=dark] .skills{background-color:#070707bf}.skills-container{max-width:1200px;margin:0 auto}.skills h2{font-size:2.5rem;margin-bottom:2rem;color:var(--primary-text)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.skill-category{background-color:var(--card-bg);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color)}.skill-category h3{font-size:1.25rem;color:var(--primary-text);margin-bottom:1rem}.skill-list{display:flex;flex-wrap:wrap;gap:.75rem}.skill-item{background-color:var(--primary-bg);color:var(--accent-color);padding:.5rem 1rem;border-radius:6px;font-size:.95rem;border:1px solid var(--accent-color);transition:all .2s ease}.skill-item:hover{background-color:var(--accent-color);color:#fff;border-color:var(--accent-color)}@media (max-width: 768px){.skills{padding:2rem 1rem}.skills h2{font-size:2rem}.skills-grid{grid-template-columns:1fr}}.contact{padding:4rem 2rem;background-color:#f1ede6cc}[data-theme=dark] .contact{background-color:#070707bf}.contact-container{max-width:1200px;margin:0 auto}.contact h2{font-size:2.5rem;margin-bottom:2rem;color:var(--primary-text)}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.contact-form-wrapper{background-color:var(--primary-bg);padding:2rem;border-radius:8px;border:3px solid var(--border-color)}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--primary-text);font-weight:600;font-size:.95rem}.form-group input,.form-group textarea{padding:.75rem;border:3px solid var(--border-color);border-radius:6px;background-color:var(--primary-bg);color:var(--primary-text);font-family:inherit;font-size:1rem;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color)}.submit-btn{background-color:var(--accent-color);color:#000;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;transition:all .3s ease;margin-top:.5rem}.submit-btn:hover{opacity:.9;transform:translateY(-2px)}.success-message{color:#22c55e;text-align:center;font-weight:600}.contact-info{display:flex;flex-direction:column;justify-content:center;gap:2rem}.info-section h3{font-size:1.5rem;color:var(--primary-text);margin-bottom:.5rem}.info-section p{color:var(--secondary-text);line-height:1.6}.social-links{display:flex;flex-direction:column;gap:1rem}.social-link{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:var(--primary-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--accent-color);transition:all .2s ease;text-decoration:none}.social-link:hover{border-color:var(--accent-color);transform:translate(4px)}.social-link span{font-weight:600}@media (max-width: 768px){.contact{padding:2rem 1rem}.contact h2{font-size:2rem}.contact-content{grid-template-columns:1fr;gap:2rem}.contact-form-wrapper{padding:1.5rem}}.footer{background-color:#f1ede6cc;border-top:1px solid var(--border-color);padding:2rem}[data-theme=dark] .footer{background-color:#070707bf}.footer-container{max-width:1200px;margin:0 auto}.footer-content{display:flex;align-items:center;justify-content:space-between}.footer-content p{color:var(--secondary-text);font-size:.95rem}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:var(--secondary-text);transition:color .2s ease}.footer-links a:hover{color:var(--accent-color)}@media (max-width: 768px){.footer{padding:1.5rem 1rem}.footer-content{flex-direction:column;gap:1rem;text-align:center}}
