* { box-sizing: border-box; }
body { font-family: 'Plus Jakarta Sans', sans-serif; margin:0; }
.font-amiri { font-family: 'Amiri', serif; }
.islamic-pattern {
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0L60 30L30 60L0 30Z' fill='none' stroke='%23059669' stroke-width='0.5' opacity='0.08'/%3E%3Cpath d='M30 10L50 30L30 50L10 30Z' fill='none' stroke='%23059669' stroke-width='0.3' opacity='0.06'/%3E%3C/svg%3E");
}
.toast-enter { animation: toastIn 0.3s ease-out; }
.toast-exit { animation: toastOut 0.3s ease-in forwards; }
@keyframes toastIn { from { transform: translateY(-20px); opacity:0; } to { transform: translateY(0); opacity:1; } }
@keyframes toastOut { from { opacity:1; } to { opacity:0; transform: translateY(-10px); } }
@keyframes fadeIn { from { opacity:0; transform: translateY(8px); } to { opacity:1; transform: translateY(0); } }
.fade-in { animation: fadeIn 0.3s ease-out; }
@keyframes spin { to { transform: rotate(360deg); } }
.spinner { animation: spin 0.6s linear infinite; }
.schedule-cell { transition: all 0.15s ease; }
.schedule-cell:hover { transform: scale(1.02); }
select, input { font-family: 'Plus Jakarta Sans', sans-serif; }
@media print {
  .no-print { display: none !important; }
  body { background: white !important; }
}
body { box-sizing: border-box; }

tailwind.config = {
  theme: {
    extend: {
      colors: {
        emerald: { 50:'#ecfdf5',100:'#d1fae5',200:'#a7f3d0',300:'#6ee7b7',400:'#34d399',500:'#10b981',600:'#059669',700:'#047857',800:'#065f46',900:'#064e3b' },
        gold: { 50:'#fffbeb',100:'#fef3c7',200:'#fde68a',300:'#fcd34d',400:'#fbbf24',500:'#f59e0b',600:'#d97706',700:'#b45309' }
      }
    }
  }
}