@font-face{font-family:Iran Yekan;src:url(/fonts/IRANYekanXFaNum-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Iran Yekan;src:url(/fonts/IRANYekanXFaNum-Medium.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Iran Yekan;src:url(/fonts/IRANYekanXFaNum-DemiBold.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Iran Yekan;src:url(/fonts/IRANYekanXFaNum-Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--theme-ease:cubic-bezier(.22, 1, .36, 1);--bg:#121519;--surface:#20252c;--surface-hover:#2c323b;--text:#eef0f4;--secondary:#b9bec8;--muted:#9299a5;--line:#262b32;--accent:#aaa6ee;--focus:#c0bcff;font-family:Iran Yekan,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e7eaee;--surface:#d8dde5;--surface-hover:#ccd3de;--text:#20252c;--secondary:#4b5360;--muted:#626c7a;--line:#cbd1db;--accent:#605ac4;--focus:#5049ac}*{box-sizing:border-box}html{min-width:320px}body{background:var(--bg);min-width:320px;min-height:100vh;color:var(--text);font-synthesis:none;transition:background-color .52s var(--theme-ease), color .52s var(--theme-ease);margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.site-shell{min-height:100vh}.site-shell[dir=ltr]{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}.site-header{border-bottom:1px solid var(--line);height:66px;transition:border-color .52s var(--theme-ease)}.header-inner{justify-content:space-between;align-items:center;width:min(100% - 80px,1280px);height:100%;margin-inline:auto;display:flex}.brand{white-space:nowrap;view-transition-name:site-brand;align-items:center;gap:12px;font-size:15px;font-weight:700;display:inline-flex}.brand svg{color:var(--accent);transition:color .52s var(--theme-ease)}.brand-short{display:none}.header-actions,.main-nav{align-items:center;display:flex}.header-actions{gap:28px;height:100%}.header-controls{align-items:center;gap:4px;display:flex}.main-nav{view-transition-name:site-nav;gap:36px;height:100%}.nav-link{height:100%;color:var(--muted);transition:color .52s var(--theme-ease);align-content:center;font-size:13px;font-weight:500;position:relative}.nav-link>span{transition:transform .48s var(--theme-ease);display:inline-block}.nav-link:hover{color:var(--accent)}.nav-link.active{color:var(--text);font-weight:600}.nav-link.active:after{content:"";background:var(--accent);height:2px;transition:background-color .52s var(--theme-ease);position:absolute;bottom:-1px;left:0;right:0}.theme-toggle,.language-toggle{width:42px;height:42px;color:var(--muted);cursor:pointer;transition:color .45s var(--theme-ease), background-color .45s var(--theme-ease);background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:relative}.theme-toggle:hover,.language-toggle:hover,.social-links a:hover{color:var(--accent);background:var(--surface)}.theme-toggle svg{transition:opacity .36s ease, transform .56s var(--theme-ease);position:absolute}.moon-icon{opacity:1;transform:rotate(0)scale(1)}.sun-icon{opacity:0;transform:rotate(-70deg)scale(.55)}:root[data-theme=light] .moon-icon{opacity:0;transform:rotate(70deg)scale(.55)}:root[data-theme=light] .sun-icon{opacity:1;transform:rotate(0)scale(1)}.language-toggle svg{transition:transform .48s var(--theme-ease)}@media (hover:hover) and (pointer:fine){.language-toggle:hover svg,.theme-toggle:hover .moon-icon,.theme-toggle:hover .sun-icon{transform:rotate(12deg)scale(1.05)}.nav-link:hover>span{transform:rotate(5deg)scale(1.03)}}.content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:clamp(48px,7vw,118px);width:min(100% - 80px,1280px);margin:0 auto;padding-top:132px;display:grid}.projects-page{width:min(100% - 108px,1280px);margin-inline:auto;padding:29px 0 80px}.projects-heading h1{font-size:34px;line-height:1.5}.projects-heading:after{background:var(--accent);content:"";width:39px;height:2px;margin-top:10px;display:block}.project-filters{flex-wrap:wrap;gap:10px;margin-top:31px;display:flex}.project-filter{min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:5px 14px;font-size:12px;font-weight:500;transition:background-color .22s,color .22s}.project-filter:hover{color:var(--text)}.project-filter.selected{color:var(--text);background:#292d40}:root[data-theme=light] .project-filter.selected{background:#d5d5ed}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:21px;display:grid}.project-card{border:1px solid var(--line);min-width:0;transition:border-color .22s ease, background-color .52s var(--theme-ease);background:#191e25;border-radius:5px;overflow:hidden}.project-card:hover,.project-card:focus-within{border-color:var(--accent)}.project-card-link{height:100%;display:block}.project-image{aspect-ratio:2;border-bottom:1px solid var(--line);background:#111;overflow:hidden}.project-image img{object-fit:cover;object-position:center 40%;width:100%;height:100%;display:block}.project-card-body{padding:12px 12px 15px}.project-card-title{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.project-card-title h2{min-width:0;margin:0;font-size:14px;font-weight:600;line-height:1.5}.project-year{color:var(--muted);direction:ltr;font-size:12px}.project-category{color:var(--secondary);margin-top:3px;font-size:12px}.project-tags{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.project-tag{color:#d8dce5;direction:ltr;background:#29313d;border-radius:5px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;line-height:1.5;display:inline-flex}.project-tag svg{fill:currentColor;flex:none;width:14px;height:14px}.project-tag-mark{place-items:center;width:14px;height:14px;font-size:12px;font-weight:700;line-height:1;display:inline-grid}:root[data-theme=light] .project-card{background:#f1f3f7}:root[data-theme=light] .project-tag{color:#343c49;background:#dce2eb}.project-detail{width:min(100% - 96px,1280px);margin-inline:auto;padding:34px 0 90px}.project-detail.is-persian{font-family:Iran Yekan,sans-serif}.project-back{width:fit-content;min-height:36px;color:var(--accent);align-items:center;gap:9px;font-size:13px;font-weight:500;transition:color .22s;display:inline-flex}.project-back:hover{color:var(--text)}.project-detail-heading{grid-template-columns:minmax(0,2fr) minmax(270px,1fr);align-items:start;gap:48px;margin-top:20px;display:grid}.project-title-group{text-align:start;min-width:0}.project-github{border:1px solid var(--line);background:var(--surface);min-height:46px;color:var(--secondary);white-space:nowrap;border-radius:6px;justify-content:center;justify-self:end;align-items:center;gap:10px;padding:0 16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px;font-weight:600;transition:color .22s,background-color .22s,border-color .22s;display:inline-flex}.project-github:hover{border-color:var(--accent);background:var(--surface-hover);color:var(--accent)}.project-github svg{fill:currentColor;flex-shrink:0;width:22px;height:22px}.project-github .project-github-arrow{fill:none;width:18px;height:18px}.project-detail .detail-name{font-size:36px;line-height:1.2}.detail-meta{color:var(--secondary);align-items:center;gap:13px;margin-top:7px;font-size:13px;display:flex}.detail-meta-separator{background:var(--muted);border-radius:50%;width:3px;height:3px}.project-detail-layout{grid-template-columns:minmax(0,2fr) minmax(270px,1fr);align-items:start;gap:48px;margin-top:30px;display:grid}.project-gallery{grid-template-columns:minmax(0,1fr) minmax(90px,116px);align-items:start;gap:22px;min-width:0;display:grid}.project-hero-image{aspect-ratio:1.88;border:1px solid var(--line);background:#111;border-radius:5px;overflow:hidden}.project-hero-image img,.project-thumbnail img{object-fit:contain;width:100%;height:100%;display:block}.project-thumbnail{aspect-ratio:1.45;border:2px solid var(--accent);background:#111;border-radius:5px;overflow:hidden;box-shadow:0 0 0 3px #aaa6ee1f}.project-overview{border-left:1px solid var(--line);text-align:start;min-width:0;padding-left:48px}.project-overview h2{border-bottom:1px solid var(--line);margin:0 0 17px;padding-bottom:12px;font-size:16px;font-weight:600}.overview-list{gap:22px;margin:0;display:grid}.overview-list>div{grid-template-columns:30px minmax(0,1fr);align-items:center;column-gap:14px;display:grid}.overview-list svg{color:var(--accent);grid-row:span 2}.overview-list dt{color:var(--muted);font-size:12px}.overview-list dd{color:var(--secondary);margin:2px 0 0;font-size:13px}.detail-section{margin-top:37px}.project-overview .project-tags{margin-top:0}.project-description{color:var(--secondary);font-size:13px;line-height:1.9}.project-description[lang=fa]{font-family:Iran Yekan,sans-serif}.intro{align-items:flex-start;gap:36px;padding-top:38px;display:flex}.portrait{view-transition-name:profile-portrait;width:184px;height:184px;transition:background-color .52s var(--theme-ease), border-color .52s var(--theme-ease), box-shadow .52s var(--theme-ease), transform .68s var(--theme-ease);background:#171b29;border:1px solid #323c58;border-radius:50%;flex:0 0 184px;margin-top:8px;box-shadow:inset 0 0 0 4px #0000001a}.site-shell[dir=ltr] .portrait{transform:scaleX(-1)}:root[data-theme=light] .portrait{background:#dce1ed;border-color:#c9cce5;box-shadow:inset 0 0 0 4px #ffffff59}.intro-copy{min-width:0}.greeting{color:var(--secondary);view-transition-name:profile-greeting;transition:color .52s var(--theme-ease);margin:0 0 7px;font-size:16px;font-weight:500}h1,h2,h3,p{margin-block:0}h1{view-transition-name:profile-name;transition:color .52s var(--theme-ease);font-size:40px;font-weight:700;line-height:1.5}.site-shell[dir=ltr] h1{font-size:35px;line-height:1.2}.role{color:var(--secondary);view-transition-name:profile-role;transition:color .52s var(--theme-ease);margin-top:1px;font-size:17px;font-weight:500}.social-links{view-transition-name:profile-social;align-items:center;gap:1px;margin-top:18px;margin-right:-10px;display:flex}.site-shell[dir=ltr] .social-links{margin-left:-10px;margin-right:0}.social-links a{width:42px;height:42px;color:var(--secondary);transition:color .45s var(--theme-ease), background-color .45s var(--theme-ease);border-radius:6px;place-items:center;display:grid}.social-links svg{width:21px;height:21px}.social-links svg path{fill:currentColor}.linkedin-mark{letter-spacing:0;font-family:Arial,sans-serif;font-size:20px;font-weight:700;line-height:1}.contact-button{width:max-content;min-height:45px;color:var(--text);view-transition-name:profile-contact;transition:background-color .52s var(--theme-ease), border-color .52s var(--theme-ease), color .52s var(--theme-ease);background:#222334;border:1px solid #0000;border-radius:6px;align-items:center;gap:11px;margin-top:20px;padding:0 18px;font-size:13px;font-weight:600;display:inline-flex}.contact-button:hover{border-color:var(--accent);background:#2b2b44}:root[data-theme=light] .contact-button{background:#e7e5f6}:root[data-theme=light] .contact-button:hover{background:#dad6f2}.details{view-transition-name:profile-details;min-width:0}h2{margin-bottom:17px;font-size:17px;font-weight:600}.skills-list{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.skills-list li{background:var(--surface);min-height:31px;color:var(--secondary);white-space:nowrap;transition:background-color .52s var(--theme-ease), color .52s var(--theme-ease);direction:ltr;border-radius:20px;align-items:center;gap:7px;padding:5px 12px;font-size:12px;font-weight:500;line-height:1.55;display:inline-flex}.skills-list svg,.elysia-mark{fill:currentColor;flex:0 0 15px;width:15px;height:15px}.elysia-mark{color:#e9a5bd;border:1px solid #e9a5bd;border-radius:50%;place-items:center;font-family:sans-serif;font-size:9px;font-weight:700;line-height:1;display:grid}.experience-section{margin-top:42px}.timeline{margin:0;padding:0 32px 0 0;list-style:none}.timeline li{border-right:1px solid var(--line);min-height:114px;transition:border-color .52s var(--theme-ease);padding:0 24px 18px 0;position:relative}.timeline li:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 5px var(--bg);transition:background-color .52s var(--theme-ease), box-shadow .52s var(--theme-ease);border-radius:50%;position:absolute;top:5px;right:-4px}.experience-date{color:var(--muted);font-size:12px}h3{margin-top:5px;font-size:16px;font-weight:600}.company{color:var(--secondary);margin-top:2px;font-size:14px}.site-shell[dir=ltr] .timeline{padding:0 0 0 32px}.site-shell[dir=ltr] .timeline li{border-right:0;border-left:1px solid var(--line);padding:0 0 18px 24px}.site-shell[dir=ltr] .timeline li:before{left:-4px;right:auto}.greeting,.role,.experience-date,.company,h2,h3{transition:color .52s var(--theme-ease)}::view-transition-group(site-brand){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(site-nav){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-portrait){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-greeting){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-name){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-role){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-social){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-contact){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-group(profile-details){animation-duration:.68s;animation-timing-function:var(--theme-ease)}::view-transition-old(site-brand){animation:.26s ease-in both morph-out}::view-transition-old(site-nav){animation:.26s ease-in both morph-out}::view-transition-old(profile-greeting){animation:.26s ease-in both morph-out}::view-transition-old(profile-name){animation:.26s ease-in both morph-out}::view-transition-old(profile-role){animation:.26s ease-in both morph-out}::view-transition-old(profile-contact){animation:.26s ease-in both morph-out}::view-transition-old(profile-details){animation:.26s ease-in both morph-out}::view-transition-new(site-brand){animation:.48s var(--theme-ease) 90ms both morph-in}::view-transition-new(site-nav){animation:.48s var(--theme-ease) 90ms both morph-in}::view-transition-new(profile-greeting){animation:.48s var(--theme-ease) 90ms both morph-in}::view-transition-new(profile-name){animation:.48s var(--theme-ease) 90ms both morph-in}::view-transition-new(profile-role){animation:.48s var(--theme-ease) 90ms both morph-in}::view-transition-new(profile-contact){animation:.48s var(--theme-ease) 90ms both morph-in}::view-transition-new(profile-details){animation:.48s var(--theme-ease) 90ms both morph-in}@keyframes morph-out{to{opacity:0;filter:blur(7px);transform:translateY(-5px)scale(.97)}}@keyframes morph-in{0%{opacity:0;filter:blur(7px);transform:translateY(7px)scale(1.03)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@media (width<=1100px){h1{font-size:32px}.site-shell[dir=ltr] h1{font-size:29px}}@media (width<=960px){.header-inner,.content,.projects-page,.project-detail{width:min(100% - 48px,760px)}.project-detail-layout{grid-template-columns:minmax(0,1fr);gap:40px}.project-detail-heading{grid-template-columns:minmax(0,1fr) auto;gap:24px}.project-overview{border-left:0;padding-left:0}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{column-gap:36px}.intro{gap:22px}.portrait{flex-basis:136px;width:136px;height:136px}}@media (width<=900px){.content{flex-direction:column;gap:68px;padding-top:75px;padding-bottom:80px;display:flex}.intro{width:100%;padding-top:0}.details{width:100%}}@media (width<=480px){.site-header{height:60px}.header-inner,.content,.projects-page,.project-detail{width:calc(100% - 40px)}.project-detail{padding-top:24px}.project-detail .detail-name{font-size:30px}.project-detail-layout{margin-top:24px}.project-gallery{display:block}.project-hero-image{aspect-ratio:1.4}.project-thumbnail{display:none}.projects-page{padding-top:34px}.projects-heading h1{font-size:28px}.project-filters{margin-top:27px}.projects-grid{grid-template-columns:minmax(0,1fr);gap:20px}.brand{gap:6px;font-size:13px}.brand svg{width:26px}.brand-full{display:none}.brand-short{display:inline}.header-actions{gap:8px}.main-nav{gap:17px}.nav-link{font-size:11px}.theme-toggle,.language-toggle{width:40px}.content{gap:60px;padding-top:47px}.intro{gap:16px}.portrait{flex-basis:96px;width:96px;height:96px;margin-top:10px}.greeting{font-size:13px}h1{font-size:26px;line-height:1.5}.site-shell[dir=ltr] h1{font-size:23px;line-height:1.22}.role{font-size:14px}.social-links{margin-top:12px}.contact-button{margin-top:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}::view-transition-group(*){animation-duration:.01ms!important;animation-delay:0s!important}::view-transition-old(*){animation-duration:.01ms!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:.01ms!important;animation-delay:0s!important}}
