:root{--primary:#7c3aed;--primary-dark:#6d28d9;--primary-light:#ede9fe;--accent:#ec4899;--accent-hover:#db2777;--bg-main:#faf5ff;--bg-card:#fff;--text-main:#0f172a;--text-muted:#64748b;--text-light:#fff;--border-color:#efe7fc;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 20px 25px -5px #7c3aed0d, 0 8px 10px -6px #7c3aed03;--shadow-hover:0 25px 50px -12px #7c3aed40;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-smooth:.3s cubic-bezier(.25, .8, .25, 1)}[data-theme=dark]{--primary:#8b5cf6;--primary-dark:#a78bfa;--primary-light:#2e1065;--accent:#f472b6;--accent-hover:#f9a8d4;--bg-main:#020617;--bg-card:#0f172a;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#1e293b;--shadow-lg:0 20px 25px -5px #00000080;--shadow-hover:0 25px 50px -12px #8b5cf64d}*{box-sizing:border-box;margin:0;padding:0;font-family:Vazirmatn,Tahoma,sans-serif}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}body{background-color:var(--bg-main);color:var(--text-main);transition:background-color var(--transition-smooth), color var(--transition-smooth);direction:rtl;margin:0;padding:0;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}h1{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:1rem;font-size:3rem;font-weight:800;line-height:1.2}h2{color:var(--text-main);font-size:1.8rem;font-weight:700}.subtitle{color:var(--text-muted);margin-bottom:2.5rem;max-width:600px;margin-inline:auto;font-size:1.2rem;font-weight:500;line-height:1.6}.main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:120px 20px 40px}.site-header{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);z-index:1000;border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:background-color var(--transition-smooth), border-color var(--transition-smooth);position:fixed;top:0;left:0;right:0}[data-theme=light] .site-header{background:#ffffffd9}[data-theme=dark] .site-header{background:#0f172ad9}.navbar{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:15px 20px;display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand-icon{background:var(--primary-light);border-radius:var(--radius-md);border:2px solid var(--border-color);justify-content:center;align-items:center;width:48px;height:48px;font-size:2rem;display:flex}.brand-text{color:var(--text-main);letter-spacing:-.5px;font-size:1.5rem;font-weight:800}.nav-links{align-items:center;gap:30px;list-style:none;display:flex}.nav-links a,.nav-links .nav-btn{color:var(--text-muted);transition:var(--transition-fast);font-family:inherit;font-size:1.05rem;font-weight:600;text-decoration:none}.nav-links a:hover,.nav-links .nav-btn:hover{color:var(--primary)}.mobile-menu-btn{color:var(--text-main);cursor:pointer;background:0 0;border:none;padding:5px;display:none}@media (width<=768px){.mobile-menu-btn{justify-content:center;align-items:center;display:flex}.nav-links{background:var(--bg-card);border-bottom:1px solid var(--border-color);flex-direction:column;align-items:stretch;gap:20px;padding:20px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 10px 20px #00000026}.nav-links.mobile-open{animation:.3s fadeIn;display:flex}.nav-links li{text-align:right;width:100%;display:flex}.nav-links li a,.nav-links li button{align-items:center;width:100%;display:flex}}.theme-toggle-btn{background:var(--bg-main);border:1px solid var(--border-color);color:var(--text-muted);border-radius:var(--radius-full);cursor:pointer;width:40px;height:40px;transition:var(--transition-fast);justify-content:center;align-items:center;display:flex}@media (hover:hover){.theme-toggle-btn:hover{background:var(--primary-light);color:var(--primary);transform:rotate(15deg)scale(1.1)}}.theme-toggle-btn:active{background:var(--primary-light);color:var(--primary);transform:scale(.95)}.site-footer{background:var(--bg-card);border-top:1px solid var(--border-color);color:var(--text-muted);text-align:center;margin-top:auto;padding:40px 20px}.footer-content{text-align:center;flex-direction:column;align-items:center;gap:24px;max-width:1200px;margin:0 auto;display:flex;position:relative}@media (width>=768px){.footer-content{flex-direction:row;justify-content:center}.footer-trust-seals{position:absolute;left:0}}.footer-text{flex-direction:column;align-items:center;gap:8px;display:flex}.footer-trust-seals{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;justify-content:center;align-items:center;padding:10px 15px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 6px #0000000d}.footer-trust-seals:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.footer-trust-seals img{width:auto;max-height:80px}.hero-section{text-align:center;flex-direction:column;align-items:center;padding:20px 0 60px;display:flex}.search-container{background:var(--bg-card);z-index:10;width:100%;max-width:750px;transition:var(--transition-smooth);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #ffffff80;border-radius:30px;margin:10px auto;padding:40px;position:relative;box-shadow:0 20px 50px #00000014}[data-theme=dark] .search-container{background:#1e293bcc;border-color:#ffffff0d;box-shadow:0 20px 50px #0006}.search-container:before{content:"";background:linear-gradient(90deg, var(--primary) 0%, var(--accent) 100%);border-radius:30px 30px 0 0;height:4px;position:absolute;top:0;left:0;right:0}.search-container:hover{transform:translateY(-4px);box-shadow:0 25px 60px #7c3aed26}.tabs-header{background:var(--bg-main);border-radius:var(--radius-full);gap:10px;margin-bottom:35px;padding:6px;display:flex;position:relative}.tab-btn{color:var(--text-muted);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 20px;font-size:1.05rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.tab-btn:hover{color:var(--primary);background:#7c3aed0d}.tab-btn.active{background:var(--bg-card);color:var(--primary);box-shadow:0 4px 15px #0000000d}[data-theme=dark] .tab-btn.active{background:var(--primary-dark);color:#fff}.tab-content{animation:.4s cubic-bezier(.16,1,.3,1) slideUpFade;display:none}.tab-content.active{display:block}@keyframes slideUpFade{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.input-group{border-radius:var(--radius-full);background:var(--bg-main);border:2px solid #0000;gap:0;margin-bottom:25px;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000000d}.input-group:focus-within{border-color:var(--primary);box-shadow:0 4px 25px #7c3aed33}.input-group input{color:var(--text-color);background:0 0;border:none;border-radius:0;flex:1;padding:20px 25px;font-size:1.15rem}.input-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.input-group input:focus{box-shadow:none;outline:none}.primary-btn,#add-btn{background:var(--primary);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;gap:12px;padding:18px 36px;font-size:1.15rem;font-weight:800;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}#add-btn{background:var(--bg-main);color:var(--primary);border:none;border-right:2px solid var(--border-color);border-radius:0;padding:0 30px;font-size:1.1rem}#add-btn:hover{background:var(--primary-light);color:var(--primary-dark)}.primary-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);width:100%;margin-top:10px;position:relative;overflow:hidden;box-shadow:0 10px 25px -5px #7c3aed80}.primary-btn:after{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:50%;height:100%;transition:all .5s;position:absolute;top:0;left:-100%;transform:skew(-20deg)}.primary-btn:hover:after{left:150%}.primary-btn:hover{transform:translateY(-3px);box-shadow:0 15px 35px -5px #7c3aed99}.primary-btn:active{transform:translateY(1px)}.tags-container{flex-wrap:wrap;gap:10px;min-height:44px;margin-bottom:25px;display:flex}.tag{background:var(--primary-light);color:var(--primary-dark);border-radius:var(--radius-full);border:1px solid var(--primary);align-items:center;gap:10px;padding:10px 18px;font-size:1.05rem;font-weight:700;animation:.2s ease-out forwards scaleIn;display:flex}[data-theme=dark] .tag{color:#f8fafc;border-color:var(--primary-dark)}.tag span{cursor:pointer;width:32px;height:32px;transition:var(--transition-fast);background:#0000001a;border-radius:50%;justify-content:center;align-items:center;margin-right:4px;display:flex}.tag span:hover{background:var(--accent);color:#fff}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.results-container{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:32px;margin-top:50px;display:grid}.recipe-card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);transition:var(--transition-smooth);opacity:0;flex-direction:column;animation:.5s forwards slideUp;display:flex;overflow:hidden;transform:translateY(30px)}.recipe-card:hover{box-shadow:var(--shadow-hover);border-color:var(--primary-light);transform:translateY(-8px)scale(1.01)}.recipe-card img{object-fit:cover;border-bottom:1px solid var(--border-color);width:100%;height:240px;transition:transform .5s}.card-img-wrapper{overflow:hidden}.recipe-card:hover img{transform:scale(1.05)}.recipe-card-body{z-index:1;background:var(--bg-card);flex-direction:column;flex:1;padding:24px;display:flex}.recipe-title{color:var(--text-main);margin-bottom:14px;font-size:1.5rem;font-weight:800;line-height:1.4}.recipe-meta{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.meta-badge{background:var(--bg-main);color:var(--text-muted);border-radius:var(--radius-full);border:1px solid var(--border-color);align-items:center;gap:6px;padding:6px 14px;font-size:.9rem;font-weight:600;display:flex}.match-badge{color:#10b981;border-radius:var(--radius-full);background:#10b9811a;border:1px solid #10b98133;padding:6px 14px;font-size:.9rem;font-weight:700}.ai-reason{background:var(--primary-light);border-right:4px solid var(--primary);color:var(--primary-dark);border-radius:var(--radius-sm);margin-bottom:20px;padding:14px;font-size:.95rem;font-weight:500;line-height:1.6}[data-theme=dark] .ai-reason{color:#f8fafc}.ingredients-preview{flex:1;margin-bottom:24px}.ingredients-preview h4{color:var(--text-main);margin-bottom:10px;font-size:1.1rem}.ingredients-list{margin:0;padding:0;list-style:none}.ingredients-list li{color:var(--text-muted);align-items:center;padding:6px 0;font-size:1rem;display:flex}.check-icon{color:var(--primary);margin-left:10px;font-weight:700}.instructions-link{text-align:center;background:var(--bg-main);color:var(--primary);border-radius:var(--radius-md);border:2px solid var(--primary-light);transition:var(--transition-fast);margin-top:auto;padding:14px;font-weight:800;text-decoration:none;display:block}.instructions-link:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.recipe-page-container{max-width:1200px;margin:0 auto;animation:.5s forwards slideUp}.recipe-header-card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);margin-bottom:30px;overflow:hidden}.main-image{width:100%;height:auto}.main-image-placeholder{background:linear-gradient(135deg, var(--bg-main), var(--border-color));justify-content:center;align-items:center;width:100%;height:300px;font-size:5rem;display:flex}.recipe-header-content{text-align:center;padding:30px}.recipe-header-content h1{background:0 0;-webkit-background-clip:initial;-webkit-text-fill-color:initial;color:var(--text-main);margin-bottom:15px;font-size:2.5rem}.recipe-header-content .meta-tags{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.meta-tag{background:var(--bg-main);color:var(--text-muted);border-radius:var(--radius-full);border:1px solid var(--border-color);padding:8px 16px;font-size:1rem;font-weight:600}.recipe-details-grid{grid-template-columns:1.2fr 1.8fr;gap:30px;margin-bottom:40px;display:grid}@media (width<=768px){.recipe-details-grid{grid-template-columns:1fr}}.card-box{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);padding:30px}.card-box h2{border-bottom:2px solid var(--border-color);align-items:center;gap:10px;margin-bottom:25px;padding-bottom:15px;display:flex}.card-box h2 .icon{font-size:1.5rem}.recipe-ingredients-section .ingredients-list li{border-bottom:1px dashed var(--border-color);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.recipe-ingredients-section .ingredients-list li:last-child{border-bottom:none}.ing-name{color:var(--text-main);text-align:right;align-items:center;font-weight:700;display:flex}.ing-amount{color:var(--text-muted);text-align:left;min-width:100px}.instruction-step{background:var(--bg-main);border-radius:var(--radius-md);transition:var(--transition-fast);border:1px solid var(--border-color);flex-direction:column;align-items:stretch;gap:20px;margin-bottom:15px;padding:20px;display:flex}.instruction-step.has-image{margin-bottom:30px}.instruction-step:hover{box-shadow:var(--shadow-sm);border-color:var(--primary-light);transform:translate(-5px)}.step-number{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;font-weight:800;display:flex}.instruction-step p{color:var(--text-main);margin:0;padding-right:10px;font-size:1.1rem;line-height:1.8}.back-action{text-align:center;margin-top:40px}.back-action .primary-btn{text-align:center;max-width:300px;margin:0 auto;display:block}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.loader{border:6px solid var(--primary-light);border-top:6px solid var(--primary);border-radius:50%;width:60px;height:60px;margin:60px auto;animation:1s cubic-bezier(.68,-.55,.26,1.55) infinite spin;display:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pagination-container{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:50px;margin-bottom:20px;display:flex}.page-btn{border:2px solid var(--border-color);background:var(--bg-card);color:var(--text-main);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);padding:10px 18px;font-size:1.05rem;font-weight:600}.page-btn:hover:not(:disabled){background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.page-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.page-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-main)}.admin-layout{align-items:flex-start;gap:30px;display:flex}.admin-sidebar{background:var(--bg-main);border-radius:12px;flex-direction:column;flex-shrink:0;gap:10px;width:250px;padding:15px;display:flex}@media (width<=768px){.admin-layout{flex-direction:column}.admin-sidebar{flex-flow:wrap;justify-content:center;width:100%}.admin-sidebar button{flex:1;min-width:fit-content;text-align:center!important}}@keyframes float404{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.error-404-number{background:linear-gradient(135deg, var(--primary), var(--primary-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:8rem;font-weight:900;line-height:1;animation:4s ease-in-out infinite float404}.not-found-btn:hover{box-shadow:var(--shadow-lg);filter:brightness(1.1);transform:translateY(-2px)}.recipe-ingredients-section{align-self:start;height:fit-content}.ingredient-header{box-shadow:none;background:0 0;border-bottom:2px solid #ff7043;justify-content:center;margin-top:20px;padding:5px 0}.ingredient-header strong{color:#d84315;font-size:1.1em}.step-header{align-items:flex-start;width:100%;display:flex}.step-image-wrapper{text-align:center;width:100%;margin-top:15px}.step-image-wrapper img{border-radius:12px;max-width:100%;box-shadow:0 4px 12px #0000001a}.recipe-reference{border-top:1px solid var(--border-color);margin-top:20px;padding-top:20px}.recipe-reference a{color:var(--primary);text-decoration:none;display:inline-block}.recipe-reference a:hover{text-decoration:underline}.related-recipes-section{border-top:2px dashed var(--border-color);margin-top:40px;padding-top:20px}.related-recipes-section h2{text-align:center;color:var(--primary);margin-bottom:20px}.recipes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.loader-active{display:block}.not-found-title{text-align:center;margin-top:50px}.autocomplete-dropdown{background:var(--bg-card);border-radius:var(--radius-lg);z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff1a;max-height:250px;margin-top:5px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 40px #0000001a}[data-theme=dark] .autocomplete-dropdown{border-color:#ffffff0d;box-shadow:0 10px 40px #00000080}.autocomplete-item{cursor:pointer;transition:var(--transition-fast);color:var(--text-color);border-bottom:1px solid #0000000d;padding:12px 20px;font-size:1.05rem}[data-theme=dark] .autocomplete-item{border-bottom:1px solid #ffffff0d}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{color:var(--primary);background:#7c3aed1a}.autocomplete-empty{text-align:center;color:var(--text-muted);padding:15px;font-size:.95rem}
