@import"https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;700&display=swap";html{scroll-behavior:smooth}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:var(--gray-200);border-radius:7px}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:7px;border:3px solid var(--gray-200)}::-webkit-scrollbar-thumb:hover{background:var(--blue-dark)}html{scrollbar-width:auto;scrollbar-color:var(--primary) var(--gray-200)}a,a:hover{text-decoration:none!important}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Vazirmatn,sans-serif;background:linear-gradient(135deg,var(--light-blue) 0%,var(--indigo) 100%);margin:0;padding:0;overflow-x:hidden}.fade-in{animation:fadeIn 1.2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hover-scale{transition:transform .4s ease,box-shadow .4s ease}.hover-scale:hover{transform:translateY(-5px);box-shadow:0 8px 16px var(--shadow-15)}.modal{animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.progress-bar{transition:width 1.5s ease-in-out}.custom-toast{font-family:Vazirmatn,sans-serif;direction:rtl;border-radius:8px;background:var(--white);color:var(--gray-900);padding:1rem 1.5rem;box-shadow:0 4px 12px var(--shadow-15);min-width:250px;display:flex;align-items:center;gap:.75rem;animation:slideInToast .3s ease-out}.custom-toast .Toastify__toast-icon{width:24px;height:24px}.toast-success{border:2px solid green;padding:16px;background:#fff}.toast-success .Toastify__toast-icon svg{fill:green}.toast-error{border:2px solid var(--red-dark);padding:16px;background:#fff}.toast-error .Toastify__toast-icon svg{fill:var(--red-dark)}.toast-loading{border:2px solid var(--secondary);padding:16px;background:linear-gradient(to left,var(--white),var(--indigo))}.toast-loading .Toastify__toast-icon svg{fill:var(--secondary)}.toast-custom{border:2px solid var(--gray-600);padding:16px;background:var(--gray-50)}.toast-custom .Toastify__toast-icon svg{fill:var(--gray-600)}@keyframes slideInToast{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.header{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:var(--white);padding:6rem 1rem;text-align:center;position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.social_box{position:absolute;right:1%;top:1.5%;color:#d3d3d3;display:flex;flex-direction:column;gap:.5rem;z-index:1}.social_icon{font-size:2rem;cursor:pointer}.header .shapes{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.25}.header .shapes svg{position:absolute;animation:float 10s infinite ease-in-out}.header .shapes .shape1{top:10%;left:10%;transform:rotate(45deg);animation-delay:0s}.header .shapes .shape2{bottom:15%;right:15%;transform:rotate(-30deg);animation-delay:2s}.header .shapes .shape3{top:50%;left:50%;transform:rotate(90deg);animation-delay:4s}.header .shapes .shape4{top:20%;right:25%;transform:rotate(60deg);animation-delay:6s}.header .shapes .shape5{bottom:30%;left:20%;transform:rotate(-45deg);animation-delay:8s}@keyframes float{0%{transform:translateY(0) rotate(45deg)}50%{transform:translateY(-20px) rotate(45deg)}to{transform:translateY(0) rotate(45deg)}}.header img{width:10rem;height:10rem;border-radius:50%;margin:0 auto 1.5rem;border:6px solid var(--white);box-shadow:0 6px 12px var(--shadow-20);position:relative;z-index:1}.header h1{font-size:3rem;font-weight:700;margin-bottom:.75rem;position:relative;z-index:1;opacity:0;animation:fadeIn 1.2s ease-out forwards;animation-delay:.2s}.header p{font-size:1.5rem;font-weight:400;margin-bottom:2rem;position:relative;z-index:1;color:var(--light-blue);opacity:0;animation:fadeIn 1.2s ease-out forwards;animation-delay:.4s}.header .btn{display:inline-block;padding:.85rem 2rem;border-radius:50px;text-decoration:none;margin:0 .75rem;transition:all .3s ease;position:relative;z-index:1;opacity:0;cursor:pointer}.header .btn-primary{background:linear-gradient(to right,var(--white),var(--light-blue));color:var(--primary);box-shadow:0 4px 8px var(--shadow-20);animation:fadeIn 1.2s ease-out forwards;animation-delay:.6s}.header .btn-primary:hover{background:linear-gradient(to right,var(--light-blue),var(--white));transform:translateY(-2px)}.header .btn-secondary{border:3px solid var(--white);color:var(--white);background:transparent;animation:fadeIn 1.2s ease-out forwards;animation-delay:.8s}.header .btn-secondary:hover{background:var(--white);color:var(--primary);transform:translateY(-2px)}[dir=rtl] .header{font-family:Vazirmatn,sans-serif;direction:rtl}[dir=ltr] .header{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;direction:ltr}[dir=rtl] .header h1,[dir=rtl] .header p{text-align:right}[dir=ltr] .header h1,[dir=ltr] .header p{text-align:center}[dir=rtl] .shapes .shape1{left:auto;right:10%}[dir=rtl] .shapes .shape2{right:auto;left:15%}[dir=rtl] .shapes .shape3{left:auto;right:50%}[dir=rtl] .shapes .shape4{right:auto;left:25%}[dir=rtl] .shapes .shape5{left:auto;right:20%}@media (max-width: 640px){.header{padding:4rem 1rem}.header h1{font-size:2rem}.header p{font-size:1.25rem}.header img{width:8rem;height:8rem}.header .btn{padding:.75rem 1.5rem;font-size:.9rem;margin:.5rem}.btn-lang{padding:.5rem 1rem;font-size:.8rem}.shapes svg{transform:scale(.7)}}.about{padding:5rem 1rem;max-width:72rem;margin:0 auto}.about h2{font-size:2.5rem;font-weight:700;color:var(--gray-900);text-align:center;margin-bottom:2rem;text-shadow:0 2px 4px var(--shadow-10)}.about p{color:var(--gray-600);line-height:1.8;font-size:1.1rem;text-align:justify;background:var(--white);padding:1.5rem;border-radius:10px;box-shadow:0 4px 12px var(--shadow-10)}.skills{padding:5rem 1rem;background:linear-gradient(to bottom,var(--white),var(--gray-50))}.skills h2{font-size:2.5rem;font-weight:700;color:var(--gray-900);text-align:center;margin-bottom:2rem}.skills-container{max-width:72rem;margin:0 auto}.skill-item{margin-bottom:1.5rem;background:var(--white);padding:1rem;border-radius:10px;box-shadow:0 4px 12px var(--shadow-10)}.skill-item .skill-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.skill-item .skill-name{font-weight:600;color:var(--gray-900);font-size:1.1rem}.skill-item .skill-level{color:var(--gray-600)}.skill-item .progress-container{width:100%;background-color:var(--gray-200);border-radius:9999px;height:.75rem}.skill-item .progress{background:linear-gradient(to right,var(--primary),var(--secondary));height:100%;border-radius:9999px}.portfolio{padding:5rem 0rem;max-width:100vw;margin:0 auto}.portfolio h2{font-size:2.5rem;font-weight:700;color:var(--gray-900);text-align:center;margin-bottom:2rem}.portfolio-slider{position:relative}.slider-container{display:flex;transition:transform .5s ease-in-out}.portfolio-card{flex:0 0 33.333%;background:var(--white);padding:1.5rem;border-radius:15px;box-shadow:0 6px 16px var(--shadow-10);margin:0 1rem;z-index:100000}@media (max-width: 768px){.portfolio-card{flex:0 0 80%}}.portfolio-card img{width:100%;height:12rem;object-fit:cover;border-radius:10px;margin-bottom:1rem;transition:transform .3s ease}.portfolio-card:hover{transform:scale(1.1)}.portfolio-card h3{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin-bottom:.75rem}.portfolio-card p{color:var(--gray-600);margin-bottom:1rem}.portfolio-card a{color:var(--primary);text-decoration:none}.portfolio-card a:hover{text-decoration:underline}.portfolio-card .preview-btn{color:var(--primary);background:none;border:none;cursor:pointer;margin-top:1rem;font-size:1rem}.slider-controls{display:flex;justify-content:center;margin-top:2rem}.slider-btn{background:var(--primary);color:var(--white);border:none;padding:.75rem 1.5rem;border-radius:50px;margin:0 .5rem;cursor:pointer;transition:background .3s ease}.slider-btn:hover{background:var(--blue-dark)}.slider-btn:disabled{background:var(--gray-300);cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--black-op-70);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content{background:var(--white);padding:2rem;border-radius:15px;max-width:36rem;width:90%;box-shadow:0 8px 24px var(--shadow-20)}.modal-content h3{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin-bottom:1rem}.modal-content img{width:100%;height:14rem;object-fit:cover;border-radius:10px;margin-bottom:1rem}.modal-content p{color:var(--gray-600);margin-bottom:1.5rem}.modal-content .modal-footer{display:flex;justify-content:space-between;align-items:center}.modal-content .modal-footer a{color:var(--primary);text-decoration:none;font-size:1rem}.modal-content .modal-footer a:hover{text-decoration:underline}.modal-content .modal-footer button{background:linear-gradient(to right,var(--red-dark),var(--red-light));color:var(--white);padding:.75rem 1.5rem;border:none;border-radius:10px;cursor:pointer;transition:background .3s ease}.modal-content .modal-footer button:hover{background:linear-gradient(to right,var(--red-darker),var(--red-dark))}.experience{padding:5rem 1rem;background:linear-gradient(to bottom,var(--gray-50),var(--light-blue))}.experience h2{font-size:2.5rem;font-weight:700;color:var(--gray-900);text-align:center;margin-bottom:2rem}.experience-container{max-width:72rem;margin:0 auto}.experience-item{background:var(--white);padding:1.5rem;border-radius:15px;box-shadow:0 6px 16px var(--shadow-10);margin-bottom:2rem}.experience-item h3{font-size:1.5rem;font-weight:600;color:var(--gray-900)}.experience-item p{color:var(--gray-600);margin-top:.5rem;line-height:1.6}.contact{padding:5rem 10vw;margin:0 auto;background:var(--light-primary)}.contact h2{font-size:2.5rem;font-weight:700;color:var(--gray-900);text-align:center;margin-bottom:2rem}.contact-form{background:var(--white);padding:2rem;border-radius:15px;box-shadow:0 6px 16px var(--shadow-10)}.contact-form .form-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.contact-form .form-grid{grid-template-columns:1fr 1fr}}.contact-form input,.contact-form textarea{width:100%;padding:1rem;box-shadow:5px 5px inset var(--gray-300);border-radius:10px;background:var(--light-primary);font-family:Vazirmatn,sans-serif;font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#fff;opacity:1}.contact-form input::-ms-input-placeholder,.contact-form textarea::-ms-input-placeholder{color:#fff}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--primary)}.contact-form textarea{margin-top:1.5rem;resize:vertical;min-height:10rem}.contact-form button{margin-top:1.5rem;background:linear-gradient(to right,var(--primary),var(--secondary));color:var(--white);padding:1rem 2rem;border:none;border-radius:10px;cursor:pointer;transition:background .3s ease,transform .3s ease}.contact-form button:hover{background:linear-gradient(to right,var(--secondary),var(--primary));transform:translateY(-2px)}.language-switcher{display:flex;gap:.75rem;position:absolute;left:5px;top:5px;z-index:1}.language-switch{border:none;cursor:pointer;font-size:28px;background-color:#fff;padding:10px;border-radius:5px;color:var(--primary)}.language-switch-box{position:absolute;top:100%;left:0;margin-top:5px;background:#fff;border:1px solid #ddd;border-radius:6px;padding:1px 0;min-width:120px;box-shadow:0 4px 12px #0000001a;z-index:1000}.language{text-align:center;padding:8px 12px;cursor:pointer}.active-language{border-radius:5px;text-align:center;color:var(--primary);padding:8px 12px;cursor:pointer}.hovered-language{text-align:center;border-radius:5px;background:var(--primary);color:var(--white)}[dir=rtl] .language-switcher{justify-content:flex-end}[dir=ltr] .language-switcher{justify-content:center}@media (max-width: 640px){.language-switcher{flex-direction:column;align-items:center}}.error-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--indigo);display:flex;justify-content:center;align-items:center;z-index:1000}.error-container{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;gap:1rem}.error-image{max-width:70vw;max-height:60vh}.error-message{text-align:center;font-size:2.2rem;color:var(--gray-900)}.reload-button{margin-top:1rem;padding:1rem;border-radius:.5rem;font-size:1.2rem;display:flex;justify-content:center;background-color:var(--primary);text-align:center;color:var(--gray-50);border:none}.spinner-container{display:flex;justify-content:center;align-items:center}.spinner{width:40px;height:40px;background:conic-gradient(from 0deg,var(--white),var(--primary),var(--secondary));border-radius:50%;animation:spin 1.5s linear infinite;position:relative;aspect-ratio:1/1}.spinner:before{content:"";position:absolute;top:5px;left:5px;right:5px;bottom:5px;background:var(--white);border-radius:50%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--white);display:flex;justify-content:center;align-items:center;z-index:1000}.loading-dots{display:flex;justify-content:center;align-items:center;gap:10px}.loading-dots .dot{width:2rem;height:2rem;background-color:var(--primary);border-radius:50%;animation:dot-pulse 1.5s ease-in-out infinite}.loading-dots .dot:nth-child(1){animation-delay:0s}.loading-dots .dot:nth-child(2){animation-delay:.2s}.loading-dots .dot:nth-child(3){animation-delay:.4s}@keyframes dot-pulse{0%,80%,to{transform:scale(.8);opacity:1}40%{transform:scale(1.2);opacity:1}}:root{--primary: #2563eb;--light-primary: #C6D0FE;--secondary: #7c3aed;--white: #fff;--light-blue: #e0e7ff;--indigo: #a5b4fc;--gray-50: #f8fafc;--gray-900: #1e293b;--gray-600: #475569;--gray-300: #d1d5db;--gray-200: #e2e8f0;--blue-dark: #1d4ed8;--gray-500: #6b7280;--red-dark: #dc2626;--red-light: #f87171;--red-darker: #b91c1c;--black-op-70: rgba(0, 0, 0, .7);--white-op-90: rgba(250, 248, 248, .9);--primary-op-20: rgba(37, 99, 235, .2);--shadow-10: rgba(0, 0, 0, .1);--shadow-15: rgba(0, 0, 0, .15);--shadow-20: rgba(0, 0, 0, .2);--shadow-25: rgba(0, 0, 0, .25)}@font-face{font-family:Vazirmatn;src:url(https://cdn.fontcdn.ir/Font/Persian/Vazir/Vazir-Regular.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:Vazirmatn;src:url(https://cdn.fontcdn.ir/Font/Persian/Vazir/Vazir-Bold.woff2) format("woff2");font-weight:700;font-style:normal}*{font-family:Vazirmatn,iransans,sans-serif}button{cursor:pointer}
