*{margin:0;padding:0;box-sizing:border-box}:root{color-scheme:dark;--page-background:#0b1120;--surface-background:#172033;--surface-subtle:#25304a;--text-primary:#ffffff;--accent:#3b82f6;--accent-soft:#60a5fa;--button-background:#2563eb;--button-hover:#1d4ed8;--button-foreground:#ffffff;--accent-shadow:rgba(59,130,246,.5);--surface-shadow:rgba(59,130,246,.4);--border-color:rgba(255,255,255,.16)}:root[data-theme=light]{color-scheme:light;--page-background:#f5ecd9;--surface-background:#eee2cb;--surface-subtle:#e4d3b6;--text-primary:#4b3626;--accent:#765338;--accent-soft:#8a6948;--button-background:#765338;--button-hover:#5f422d;--button-foreground:#fff8eb;--accent-shadow:rgba(104,69,40,.2);--surface-shadow:rgba(104,69,40,.16);--border-color:rgba(75,54,38,.22)}html{scroll-behavior:smooth}body{background:var(--page-background);color:var(--text-primary);font-family:Poppins,sans-serif;line-height:1.8;transition:background-color .25s ease,color .25s ease}nav{position:sticky;top:0;z-index:1000;background:var(--surface-background);display:flex;justify-content:space-between;align-items:center;padding:20px 10%;transition:background-color .25s ease}.logo{font-size:2rem;font-weight:700;color:var(--accent)}.nav-links{display:flex;gap:30px;list-style:none}.nav-links a{text-decoration:none;color:var(--text-primary);transition:.3s}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.hamburger{display:none;flex-direction:column;gap:6px;cursor:pointer}.hamburger span{width:30px;height:3px;background:var(--text-primary)}.hero{min-height:80vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 10%}.hero h1{font-size:5rem;color:var(--accent)}.hero h2{margin:20px 0}.typing-line{color:var(--accent-soft);margin-bottom:20px}.intro{max-width:900px}.hero-buttons{display:flex;gap:20px;flex-wrap:wrap;margin-top:40px}.btn{background:var(--button-background);color:var(--button-foreground);text-decoration:none;padding:15px 30px;border-radius:12px;transition:.3s}.btn:hover{background:var(--button-hover);transform:translateY(-5px);box-shadow:0 0 20px var(--accent-shadow)}.page-header{text-align:center;padding:100px 10% 50px}.page-header h1{font-size:4rem;color:var(--accent)}.content-section{padding:0 10% 80px}.card{background:var(--surface-background);padding:35px;border-radius:20px;margin-bottom:35px;transition:transform .4s,box-shadow .4s,background-color .25s,color .25s}.card:hover{transform:translateY(-8px);box-shadow:0 0 25px var(--surface-shadow)}.card h2{color:var(--accent);margin-bottom:20px}.skill-container{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px}.skill-container span{background:var(--surface-subtle);padding:12px 20px;border-radius:30px;transition:.3s}.skill-container span:hover{background:var(--button-background);transform:translateY(-5px)}.project-gallery{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin-top:20px;max-height:0;overflow:hidden;opacity:0;transition:max-height .6s ease,opacity .4s ease}.project-card:hover .project-gallery{max-height:600px;opacity:1}.project-gallery img{width:350px;height:220px;object-fit:cover;border-radius:20px;transition:.4s}.project-gallery img:hover{transform:scale(1.03);box-shadow:0 0 25px var(--accent-shadow)}.project-card:hover .project-gallery.mobile-screenshots{max-height:900px}.project-gallery.mobile-screenshots img.mobile-screenshot{width:190px;max-width:42vw;height:420px;object-fit:contain;background:#0c1712}.stats{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;padding-bottom:100px}.stat-card{background:var(--surface-background);width:220px;padding:40px;border-radius:20px;text-align:center;transition:.3s}.stat-card:hover{transform:translateY(-10px);box-shadow:0 0 20px var(--surface-shadow)}.stat-card h2{color:var(--accent);font-size:3rem}input,textarea{width:100%;padding:15px;background:var(--surface-subtle);color:var(--text-primary);border:none;border-radius:10px;margin-bottom:20px}button{border:none;background:var(--button-background);color:var(--button-foreground);padding:15px 30px;border-radius:10px;cursor:pointer;transition:.3s}button:hover{background:var(--button-hover);transform:translateY(-5px)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:999px;background:var(--button-background);color:var(--button-foreground);font:inherit;line-height:1.2;white-space:nowrap;transition:background-color .25s ease,color .25s ease,border-color .25s ease}.theme-toggle:hover{background:var(--button-hover);color:var(--button-foreground);transform:none;box-shadow:0 4px 12px var(--surface-shadow)}.theme-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:3px}footer{background:var(--surface-background);text-align:center;padding:50px;margin-top:80px}@media(min-width:901px)and (max-width:1150px){nav{padding:20px 5%}.nav-links{gap:16px}.theme-toggle span{display:none}}@media(max-width:900px){nav{padding:18px 6%}.hamburger{display:flex}.theme-toggle{gap:6px;padding:8px 10px;font-size:.85rem}.nav-links{display:none;position:absolute;top:80px;left:0;width:100%;background:var(--surface-background);flex-direction:column;text-align:center;padding:30px 0}.nav-links.active{display:flex}.hero h1{font-size:3rem}.hero h2{font-size:1.3rem}.stats{flex-direction:column;align-items:center}.project-gallery img{width:100%;height:220px}}.cert-gallery{display:flex;justify-content:center;margin-top:30px}.cert-gallery img{width:500px;max-width:100%;border-radius:20px;cursor:pointer;transition:.3s}.cert-gallery img:hover{transform:scale(1.02)}body{animation:fadeIn .4s ease-in-out}.card{animation:fadeUp .6s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-transition{animation:pageEnter .24s ease both}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-error{padding:3rem;color:#fff;background:#0b1120;min-height:100vh}.form-status{margin-top:16px}@media(prefers-reduced-motion:reduce){.page-transition{animation:none}}
