:root{--bg-base: #0a0a0f;--bg-base-alt: #0f0f18;--bg-gradient: radial-gradient(ellipse 120% 80% at 50% -20%, rgba(88, 80, 236, .25), transparent 50%), radial-gradient(ellipse 80% 50% at 100% 50%, rgba(139, 92, 246, .12), transparent 45%), var(--bg-base);--glass-bg: rgba(255, 255, 255, .06);--glass-bg-strong: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .12);--glass-highlight: rgba(255, 255, 255, .08);--glass-blur: 20px;--glass-blur-strong: 32px;--glass-radius: 20px;--glass-radius-sm: 14px;--text-primary: rgba(255, 255, 255, .95);--text-secondary: rgba(255, 255, 255, .7);--text-muted: rgba(255, 255, 255, .5);--accent: #6366f1;--accent-soft: rgba(99, 102, 241, .35);--accent-glow: rgba(99, 102, 241, .25);--shadow-glass: 0 8px 32px rgba(0, 0, 0, .35), inset 0 1px 0 var(--glass-highlight);--shadow-card: 0 4px 24px rgba(0, 0, 0, .25)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Vazirmatn,Segoe UI,system-ui,sans-serif;background:var(--bg-gradient);color:var(--text-primary);min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--shadow-glass)}.glass-strong{background:var(--glass-bg-strong);backdrop-filter:blur(var(--glass-blur-strong));-webkit-backdrop-filter:blur(var(--glass-blur-strong));border:1px solid var(--glass-border);border-radius:var(--glass-radius);box-shadow:var(--shadow-glass)}a{color:var(--accent);text-decoration:none;transition:color .2s,opacity .2s}a:hover{color:#818cf8;opacity:.9}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.section{padding:clamp(2rem,5vw,4rem) 0}.container{width:100%;max-width:900px;margin:0 auto;padding:0 1.5rem}h1,h2,h3{font-weight:700;line-height:1.25}h1{font-size:clamp(1.75rem,4vw,2.5rem)}h2{font-size:clamp(1.35rem,3vw,1.75rem);margin-bottom:1rem}h3{font-size:1.1rem}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.loading-card{padding:2.5rem;text-align:center;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;margin:0 auto 1rem;border:3px solid var(--glass-border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hero{padding-top:clamp(3rem,8vw,5rem);padding-bottom:clamp(2.5rem,6vw,4rem)}.hero-card{padding:clamp(2rem,5vw,3.5rem);text-align:center}.hero-content{display:flex;flex-direction:column;align-items:center;gap:.75rem}.hero-avatar,.hero-avatar-placeholder{width:120px;height:120px;border-radius:50%;object-fit:cover;border:2px solid var(--glass-border);box-shadow:var(--shadow-card)}.hero-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:var(--accent-soft);font-size:2.5rem;font-weight:700;color:var(--text-primary)}.hero-name{font-size:clamp(1.75rem,4vw,2.5rem);background:linear-gradient(135deg,#fff,#ffffffd9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-title{color:var(--accent);font-weight:600;font-size:1.1rem}.hero-tagline{color:var(--text-secondary);font-size:.95rem;max-width:420px}.hero-links{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:.5rem}.hero-link{padding:.5rem 1rem;border-radius:var(--glass-radius-sm);font-size:.9rem;color:var(--text-primary);transition:transform .2s,box-shadow .2s}.hero-link:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--accent-glow)}.section-title{text-align:center;margin-bottom:1.5rem;color:var(--text-primary)}.about-card{padding:2rem 2.5rem}.about-bio{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.75}.about-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.about-meta dt{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.about-meta dd{color:var(--text-primary);font-weight:500}.timeline{list-style:none;display:flex;flex-direction:column;gap:1.25rem}.timeline-item{padding:1.5rem 2rem;transition:transform .2s,box-shadow .2s}.timeline-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-glass),0 12px 40px #0003}.timeline-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.35rem}.timeline-header h3{color:var(--text-primary)}.timeline-period{color:var(--text-muted);font-size:.9rem}.badge{background:var(--accent-soft);color:var(--accent);font-size:.75rem;padding:.2rem .5rem;border-radius:6px;font-weight:600}.timeline-company{color:var(--accent);font-weight:500;font-size:.95rem;margin-bottom:.5rem}.timeline-desc{color:var(--text-secondary);font-size:.95rem;margin-bottom:.75rem;line-height:1.6}.tag-list{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:var(--glass-bg-strong);color:var(--text-secondary);font-size:.8rem;padding:.25rem .6rem;border-radius:8px;border:1px solid var(--glass-border)}.edu-list{list-style:none;display:flex;flex-direction:column;gap:1rem}.edu-card{padding:1.5rem 2rem}.edu-card h3{color:var(--text-primary);margin-bottom:.35rem}.edu-degree{color:var(--accent);font-weight:500;font-size:.95rem}.edu-period{color:var(--text-muted);font-size:.9rem;margin-top:.25rem}.edu-desc{color:var(--text-secondary);font-size:.9rem;margin-top:.5rem}.skills-card{padding:2rem 2.5rem}.skill-group{margin-bottom:1.5rem}.skill-group:last-child{margin-bottom:0}.skill-category{font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.skill-list{list-style:none;display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.skill-item{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.skill-name{color:var(--text-primary);font-weight:500}.skill-level{display:inline-block;width:64px;height:6px;background:var(--glass-bg-strong);border-radius:3px;overflow:hidden}.skill-level-fill{display:block;height:100%;width:calc(var(--level, 0) * 1%);background:linear-gradient(90deg,var(--accent),#818cf8);border-radius:3px;transition:width .6s ease}.project-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.project-card{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-glass),0 12px 40px #0003}.project-card h3{color:var(--text-primary)}.project-card p{color:var(--text-secondary);font-size:.95rem;flex:1}.project-link{align-self:flex-start;font-weight:600;margin-top:.25rem}.contact-card{padding:2.5rem;text-align:center}.contact-text{color:var(--text-secondary);margin-bottom:1rem}.contact-cta{display:inline-block;padding:.75rem 1.5rem;background:var(--accent-soft);color:var(--accent);font-weight:600;border-radius:var(--glass-radius-sm);border:1px solid rgba(99,102,241,.4);transition:background .2s,transform .2s}.contact-cta:hover{background:#6366f180;color:#fff;transform:scale(1.02)}.contact-social{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}.contact-social-link{padding:.5rem 1rem;border-radius:var(--glass-radius-sm);font-size:.9rem;color:var(--text-primary)}.footer{padding:2rem 0;margin-top:2rem}.footer-inner{padding:1.25rem 2rem;text-align:center}.footer-copy{color:var(--text-muted);font-size:.9rem}
