@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--primary-color:#2e7d32;--primary-glow:#2e7d3266;--secondary-color:#4caf50;--accent-color:#f9a826;--bg-color-light:#f4f7f6;--bg-gradient-light:radial-gradient(circle at 15% 50%, #4caf5014, transparent 25%), radial-gradient(circle at 85% 30%, #2e7d3214, transparent 25%);--text-color-light:#2c3e50;--card-bg-light:#ffffffe0;--card-border-light:#fffc;--timeline-shadow-light:#fff;--gradient-text-light:linear-gradient(135deg, #4caf50, #2e7d32);--nav-bg-light:#f4f7f6d9;--bg-color-dark:#0a0f12;--bg-gradient-dark:radial-gradient(circle at 15% 50%, #4caf501f, transparent 30%), radial-gradient(circle at 85% 30%, #2e7d321f, transparent 30%);--text-color-dark:#f8f9fa;--card-bg-dark:#14191ed9;--card-border-dark:#ffffff1a;--timeline-shadow-dark:#14191e;--gradient-text-dark:linear-gradient(135deg, #81c784, #4caf50);--nav-bg-dark:#0a0f12d9;--transition-speed:.3s}html{scroll-behavior:smooth}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color-light);background-image:var(--bg-gradient-light);color:var(--text-color-light);transition:background-color var(--transition-speed), color var(--transition-speed);background-attachment:fixed;font-family:Inter,sans-serif;line-height:1.7;overflow-x:hidden}[data-theme=dark] body,body.dark-theme{background-color:var(--bg-color-dark);background-image:var(--bg-gradient-dark);color:var(--text-color-dark)}@media (prefers-color-scheme:dark){body:not([data-theme=light]){background-color:var(--bg-color-dark);background-image:var(--bg-gradient-dark);color:var(--text-color-dark)}}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;margin-bottom:1rem;font-family:Outfit,sans-serif;font-weight:700}.header-nav{z-index:100;-webkit-backdrop-filter:blur(16px);background:var(--nav-bg-light);transition:background var(--transition-speed);border-bottom:1px solid #4caf5026;padding:1rem 0;position:sticky;top:0}[data-theme=dark] .header-nav,body.dark-theme .header-nav{background:var(--nav-bg-dark)}@media (prefers-color-scheme:dark){body:not([data-theme=light]) .header-nav{background:var(--nav-bg-dark)}}.nav-links{align-items:center;gap:1.5rem;list-style:none;display:flex}.nav-links a{color:inherit;font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--secondary-color)}.gradient-text{background:var(--gradient-text-light);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=dark] .gradient-text,body.dark-theme .gradient-text{background:var(--gradient-text-dark);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@media (prefers-color-scheme:dark){body:not([data-theme=light]) .gradient-text{background:var(--gradient-text-dark);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}}.glass-panel{background:var(--card-bg-light);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border-light);transition:all var(--transition-speed) cubic-bezier(.25, .8, .25, 1);border-radius:20px;padding:2rem;position:relative;overflow:hidden;box-shadow:0 8px 30px #0000000a}[data-theme=dark] .glass-panel,body.dark-theme .glass-panel{background:var(--card-bg-dark);border:1px solid var(--card-border-dark);box-shadow:0 10px 40px #0003}@media (prefers-color-scheme:dark){body:not([data-theme=light]) .glass-panel{background:var(--card-bg-dark);border:1px solid var(--card-border-dark);box-shadow:0 10px 40px #0003}}.glass-panel:hover{transform:translateY(-6px);box-shadow:0 18px 45px #00000014}[data-theme=dark] .glass-panel:hover,body.dark-theme .glass-panel:hover{box-shadow:0 20px 50px #0006, 0 0 20px var(--primary-glow)}@media (prefers-color-scheme:dark){body:not([data-theme=light]) .glass-panel:hover{box-shadow:0 20px 50px #0006, 0 0 20px var(--primary-glow)}}.btn-primary{background:linear-gradient(135deg, var(--secondary-color) 0%, var(--primary-color) 100%);cursor:pointer;box-shadow:0 4px 15px var(--primary-glow);border:none;border-radius:50px;justify-content:center;align-items:center;padding:.8rem 2rem;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;color:#fff!important}.btn-primary:hover{box-shadow:0 8px 25px var(--primary-glow);transform:translateY(-2px)}.btn-outline{color:var(--secondary-color);border:2px solid var(--secondary-color);cursor:pointer;background:0 0;border-radius:50px;justify-content:center;align-items:center;padding:.6rem 1.4rem;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn-outline:hover{background:#4caf501a;transform:translateY(-2px)}.theme-toggle-btn{color:inherit;cursor:pointer;background:#4caf5026;border:1px solid #4caf504d;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.2rem;transition:all .3s;display:flex}.theme-toggle-btn:hover{background:#4caf5040;transform:rotate(20deg)scale(1.1)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.timeline{border-left:2px dashed #4caf504d;margin-left:1rem;padding-left:2.5rem;position:relative}.timeline-item{margin-bottom:3rem;position:relative}.timeline-item:before{content:"";background:var(--secondary-color);width:20px;height:20px;box-shadow:0 0 0 4px var(--timeline-shadow-light);border-radius:50%;margin-left:-11.5px;transition:all .3s;position:absolute;top:.3rem;left:-2.05rem}[data-theme=dark] .timeline-item:before,body.dark-theme .timeline-item:before{box-shadow:0 0 0 4px var(--timeline-shadow-dark)}@media (prefers-color-scheme:dark){body:not([data-theme=light]) .timeline-item:before{box-shadow:0 0 0 4px var(--timeline-shadow-dark)}}.timeline-item:hover:before{transform:scale(1.3);box-shadow:0 0 0 5px #4caf5040}.grid-layout{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;display:grid}section{padding:4.5rem 0}.section-title{text-align:center;margin-bottom:2.5rem;font-size:2.2rem;position:relative}.skill-badge{color:inherit;background:#4caf501f;border:1px solid #4caf5040;border-radius:20px;margin:.3rem;padding:.35rem .95rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-block}.skill-badge:hover{background:#4caf5040;transform:translateY(-2px)scale(1.04)}.tech-pills-container{flex-wrap:wrap;gap:.5rem;margin:.8rem 0;display:flex}.tech-pill{color:var(--secondary-color);background:#4caf501a;border:1px solid #4caf5033;border-radius:12px;padding:.25rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s}.tech-pill:hover{background:var(--secondary-color);color:#fff;transform:translateY(-1px)}.stats-badge-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#4caf5014;border:1px solid #4caf5040;border-radius:30px;align-items:center;gap:1.2rem;margin-top:1.2rem;padding:.45rem 1.2rem;font-size:.88rem;font-weight:600;display:inline-flex}.stats-item{align-items:center;gap:.4rem;display:flex}.filter-tabs{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:2rem;display:flex}.filter-tab{color:inherit;cursor:pointer;background:#4caf5014;border:1px solid #4caf5033;border-radius:30px;padding:.5rem 1.2rem;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;transition:all .3s}.filter-tab:hover,.filter-tab.active{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color);box-shadow:0 4px 15px var(--primary-glow);transform:translateY(-2px)}.timeline-header-logo{object-fit:cover;background:#fff;border:1px solid #4caf504d;border-radius:10px;width:44px;height:44px;padding:3px;box-shadow:0 4px 12px #0000001a}dialog.project-modal{background:var(--card-bg-light);width:90%;max-width:650px;color:var(--text-color-light);-webkit-backdrop-filter:blur(20px);border:none;border-radius:24px;margin:auto;padding:2.5rem;position:fixed;inset:0;box-shadow:0 25px 60px #0000004d}[data-theme=dark] dialog.project-modal,body.dark-theme dialog.project-modal{background:var(--card-bg-dark);color:var(--text-color-dark);border:1px solid var(--card-border-dark)}@media (prefers-color-scheme:dark){body:not([data-theme=light]) dialog.project-modal{background:var(--card-bg-dark);color:var(--text-color-dark);border:1px solid var(--card-border-dark)}}dialog.project-modal::backdrop{-webkit-backdrop-filter:blur(6px);background:#000000a6}.modal-close-btn{color:inherit;cursor:pointer;background:#4caf5026;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;transition:all .2s;display:flex;position:absolute;top:1.2rem;right:1.2rem}.modal-close-btn:hover{background:var(--secondary-color);color:#fff;transform:rotate(90deg)}.skeleton-card{background:linear-gradient(90deg,#c8c8c81a 25%,#c8c8c833 37%,#c8c8c81a 63%) 0 0/400% 100%;border-radius:20px;height:220px;animation:1.4s infinite skeletonLoading}@keyframes skeletonLoading{0%{background-position:100%}to{background-position:0%}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{opacity:0;animation:.8s cubic-bezier(.25,.8,.25,1) forwards fadeInUp}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}@media (width<=768px){.nav-links{display:none}.container{padding:0 1.2rem}section{padding:3rem 0}.section-title{font-size:1.8rem}.timeline{margin-left:.5rem;padding-left:1.8rem}.timeline-header-logo{width:36px;height:36px}}@media print{.header-nav,.theme-toggle-btn,.btn-primary,.filter-tabs,button{display:none!important}body{color:#000!important;background:#fff!important}.glass-panel{box-shadow:none!important;border:1px solid #ccc!important}}
