*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;direction:rtl;font-family:Vazirmatn,sans-serif}body{color:#1e293b;background:linear-gradient(#f8fafc,#fff);flex-direction:column;min-height:100vh;line-height:1.6;display:flex}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,Vazirmatn,sans-serif;font-weight:700;line-height:1.2}h1{color:#0f172a;font-size:2rem}h3{color:#1e293b;font-size:1.125rem}p{color:#64748b}a{color:#1e40af;text-decoration:none;transition:color .3s}a:hover{color:#1e3a8a}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}main{flex:1}.header{z-index:50;background:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0;box-shadow:0 1px 3px #0000000d}.header .container{padding:1.5rem 1rem}.header-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.header-title{align-items:center;gap:1rem;display:flex}.logo{background:linear-gradient(135deg,#1e40af 0%,#1e3a8a 100%);border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.5rem;display:flex}.header-title h1{margin-bottom:.25rem;font-size:1.875rem}.subtitle{color:#64748b;font-size:.875rem}.omor-link{color:#1e40af;white-space:nowrap;background:#eff6ff;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .3s;display:inline-flex}.omor-link:hover{background:#dbeafe}.external-icon{font-size:1rem}.branding{text-align:center;border-top:1px solid #e2e8f0;padding-top:.5rem}.branding p{color:#475569;font-size:.875rem;font-weight:500}.main{padding:2rem 0}.search-section{margin-bottom:2rem}.search-box{margin-bottom:.75rem;position:relative}.search-icon{pointer-events:none;font-size:1.25rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.search-input{border:1px solid #e2e8f0;border-radius:.5rem;width:100%;padding:.75rem 1rem .75rem 3rem;font-family:Vazirmatn,sans-serif;font-size:1rem;transition:border-color .3s,box-shadow .3s}.search-input:focus{border-color:#1e40af;outline:none;box-shadow:0 0 0 3px #1e40af1a}.course-count{color:#64748b;margin-top:.5rem;font-size:.875rem}.filter-section{margin-bottom:2rem}.filter-title{color:#475569;margin-bottom:.75rem;font-size:.875rem;font-weight:600}.filter-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.filter-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;padding:.5rem 1rem;font-family:Vazirmatn,sans-serif;font-size:.875rem;font-weight:500;transition:all .3s}.filter-btn:hover{color:#1e40af;border-color:#1e40af}.filter-btn.active{color:#fff;background:#1e40af;border-color:#1e40af}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.course-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;transition:box-shadow .3s,transform .3s;overflow:hidden}.course-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px #0000001a}.course-card-content{padding:1.5rem}.course-category{border-radius:.25rem;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.category-specialized{color:#1e40af;background:#dbeafe}.category-general-non-religious{color:#15803d;background:#dcfce7}.category-general-religious{color:#6b21a8;background:#f3e8ff}.course-name{color:#0f172a;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.75rem;font-size:1.125rem;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.course-details{color:#64748b;space-y:.5rem;margin-bottom:1rem;font-size:.875rem}.detail-item{align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:flex}.detail-label{color:#94a3b8;flex-shrink:0;min-width:50px}.detail-value{color:#0f172a;font-weight:500}.join-button{color:#fff;cursor:pointer;background:#1e40af;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.625rem 1rem;font-family:Vazirmatn,sans-serif;font-size:.875rem;font-weight:600;transition:background-color .3s;display:flex}.join-button:hover{background:#1e3a8a}.join-button:active{transform:scale(.98)}.no-results{text-align:center;padding:3rem 1rem}.no-results-icon{opacity:.5;margin-bottom:1rem;font-size:4rem}.no-results h3{color:#0f172a;margin-bottom:.5rem;font-size:1.25rem}.no-results p{color:#64748b}.footer{background:#f1f5f9;border-top:1px solid #e2e8f0;margin-top:auto;padding:1.5rem 0}.footer .container{text-align:center}.footer p{color:#64748b;margin-bottom:.5rem;font-size:.875rem}.footer-secondary{margin-bottom:0}.footer a{color:#1e40af;font-weight:500}.footer a:hover{text-decoration:underline}@media (width<=768px){.header-content{flex-direction:column;align-items:flex-start}.header-title h1{font-size:1.5rem}.omor-link{align-self:flex-end}.courses-grid{grid-template-columns:1fr}.container{padding:0 1rem}.main{padding:1rem 0}}@media (width<=480px){.header-title{gap:.75rem}.logo{width:2rem;height:2rem;font-size:1.25rem}.header-title h1{font-size:1.25rem}.subtitle{font-size:.75rem}.search-input{font-size:16px}.filter-buttons{gap:.375rem}.filter-btn{padding:.375rem .75rem;font-size:.8125rem}.course-card-content{padding:1rem}.course-name{font-size:1rem}.course-details{font-size:.8125rem}.join-button{padding:.5rem .75rem;font-size:.8125rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{border:2px solid #e2e8f0;border-top-color:#1e40af;border-radius:50%;width:1rem;height:1rem;animation:.6s linear infinite spin;display:inline-block}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}