*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--bg-card:#161616;--border:#ffffff24;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--text-primary:#fff;--text-secondary:#999;--accent:#4a90e2;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Fira Code", monospace}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-primary)}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-image:url(/portfolio_bkg.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#0a0a0a4d 0%,#0a0a0a99 50%,#0a0a0acc 100%);position:fixed;inset:0}::selection{background:var(--accent);color:#fff}.container{width:100%;max-width:1260px;margin:0 auto;padding:0 48px}main{z-index:1;position:relative}section{padding:86px 0;scroll-margin-top:70px;position:relative}section:nth-child(2n){background-color:#1a1a1a4d}.section-light{background:#ececec}.section-label{color:#8f8f8f;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:.8rem;display:inline-block}.divider{background:#ffffff59;width:56px;height:1px;margin:12px 0 24px}.gradient-text{color:#fff}.section-title{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:20px;font-size:clamp(2rem,6vw,3.5rem);font-weight:700;line-height:1.2}.section-subtitle{color:var(--text-secondary);max-width:650px;margin-bottom:40px;font-size:1rem;line-height:1.7}.btn{cursor:pointer;font-size:.95rem;font-weight:500;font-family:var(--font-sans);border:none;border-radius:4px;outline:none;align-items:center;gap:10px;padding:12px 28px;text-decoration:none;transition:all .3s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}.btn-primary:hover{opacity:.9;transform:translateY(-2px)}.btn-outline{color:var(--text-primary);border:1px solid var(--text-secondary);background:0 0}.btn-outline:hover{border-color:var(--text-primary);color:var(--text-primary)}.card{background:#1a1a1a80;border:1px solid #ffffff1a;border-radius:4px;padding:30px;transition:all .3s;position:relative;overflow:hidden}.card:hover{background:#1a1a1ab3;border-color:#fff3;transform:translateY(-4px)}.badge{letter-spacing:.05em;font-size:.75rem;font-weight:600;font-family:var(--font-mono);color:var(--accent);background:#4a90e226;border:1px solid #4a90e24d;border-radius:3px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.badge-cyan{color:#9ed2ff;background:#4a90e226;border:1px solid #4a90e259}.skill-tag{color:var(--text-secondary);cursor:default;background:#1a1a1a80;border:1px solid #ffffff1a;border-radius:3px;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .2s;display:inline-flex}.skill-tag:hover{color:var(--text-primary);background:#1a1a1acc;border-color:#ffffff4d}.noise{opacity:.015;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:0;opacity:.5;background:radial-gradient(circle,#4a90e20d 0%,#0000 70%);border-radius:50%;width:300px;height:300px;position:fixed;transform:translate(-50%,-50%)}@media (width<=768px){.container{padding:0 22px}section{padding:60px 0}.section-title{font-size:2rem}}@media (width<=480px){.container{padding:0 16px}section{padding:50px 0}.section-title{font-size:1.5rem}}.timeline-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:10px;height:10px}.timeline-line{background:#ffffff1a;flex:1;width:1px;margin-left:5px}
