.admin-stat-tile--emerald{background-color:#e7f8f1;border-color:#c5e7da}.admin-stat-tile--blue{background-color:#ecf4fd;border-color:#c3d8f4}.admin-stat-tile--amber{background-color:#fef6e1;border-color:#f7deab}.admin-stat-tile--red{background-color:#fef1f1;border-color:#f6caca}.admin-stat-tile--violet{background-color:#f6f1fe;border-color:#dccff2}.dark .admin-stat-tile--emerald{background-color:#022c2233;border-color:#064e3b66}.dark .admin-stat-tile--blue{background-color:#17255433;border-color:#1e3a8a66}.dark .admin-stat-tile--amber{background-color:#451a0333;border-color:#78350f66}.dark .admin-stat-tile--red{background-color:#450a0a33;border-color:#7f1d1d66}.dark .admin-stat-tile--violet{background-color:#2e106533;border-color:#5b21b666}.student-surface-emerald-chip{color:#226249;background-color:#e7f8f1;border-color:#c5e7da}.student-surface-sky-chip{color:#2b5264;background-color:#e1f5fe;border-color:#cae8f6}.student-surface-emerald-iconbox{background-color:#e7f8f1;border-color:#c5e7da}.student-surface-sky-iconbox{background-color:#e1f5fe;border-color:#cae8f6}.dark .student-surface-emerald-iconbox{background-color:#112c2173;border-color:#2d584780}.dark .student-surface-emerald-chip{color:#94dbbf;background-color:#112c2173;border-color:#2d584780}.dark .student-surface-sky-iconbox{background-color:#0c4a6e59;border-color:#0e749073}.dark .student-surface-sky-chip{color:#99d8f5;background-color:#0c4a6e59;border-color:#0e749073}.schedule-slot-cell{color:#0d1526;-webkit-font-smoothing:antialiased}.dark .schedule-slot-cell{color:#f2f5fb}.schedule-slot-cell .schedule-slot-meta{color:#0d1526e0}.dark .schedule-slot-cell .schedule-slot-meta{color:#f2f5fbe0}.admin-alert-strip--success{color:#1e7150;background-color:#e4f6ef;border:1px solid #c6e7d9}.admin-alert-strip--warning{color:#9b5608;background-color:#fef5dc;border:1px solid #f5ddad}.admin-alert-strip--warning:hover{background-color:#fef0c7}.dark .admin-alert-strip--success{color:#94dbbf;background-color:#112c2173;border-color:#2d584780}.dark .admin-alert-strip--warning{color:#f3c968;background-color:#2c201173;border-color:#563f2580}.dark .admin-alert-strip--warning:hover{background-color:#3425148c}.islamic-border-top{position:relative}.islamic-border-top:before{content:"";background:linear-gradient(90deg, hsl(var(--primary)) 0%, hsl(var(--secondary)) 25%, hsl(var(--primary)) 50%, hsl(var(--secondary)) 75%, hsl(var(--primary)) 100%);background-size:40px 4px;height:4px;position:absolute;top:0;left:0;right:0}.islamic-divider{align-items:center;gap:1rem;margin:2rem 0;display:flex}.islamic-divider:before,.islamic-divider:after{content:"";background:linear-gradient(90deg, transparent, hsl(var(--secondary)), transparent);flex:1;height:1px}.islamic-divider-node{background:hsl(var(--secondary));width:8px;height:8px;box-shadow:0 0 0 2px hsl(var(--background)), 0 0 0 4px hsl(var(--secondary) / .3);border-radius:50%}.islamic-pattern-bg{background-image:radial-gradient(circle at 25% 25%, hsl(var(--primary) / .03) 1px, transparent 1px), radial-gradient(circle at 75% 75%, hsl(var(--secondary) / .05) 1px, transparent 1px);background-size:24px 24px}.mosque-silhouette{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 60' fill='%23136F4E' opacity='0.05'%3E%3Cpath d='M50 5c-3 0-5 8-5 15h-5V15c-2 0-3 3-3 8v-3c-2 0-3 3-3 6H20v34h60V31H66c0-3-1-6-3-6v3c0-5-1-8-3-8v5h-5c0-7-2-15-5-15z'/%3E%3C/svg%3E");background-position:bottom;background-repeat:repeat-x;background-size:200px}.card-islamic{background:hsl(var(--card));border-radius:var(--radius-lg);box-shadow:0 1px 3px hsl(var(--foreground) / .04), 0 4px 12px hsl(var(--foreground) / .03);border:1px solid hsl(var(--border));transition:box-shadow .2s,transform .2s}.card-islamic:hover{box-shadow:0 2px 6px hsl(var(--foreground) / .06), 0 8px 24px hsl(var(--foreground) / .05)}.btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));transition:all .2s}.btn-primary:hover{box-shadow:0 4px 12px hsl(var(--primary) / .3);background:#106040;transform:translateY(-1px)}.btn-gold{background:linear-gradient(135deg, hsl(var(--secondary)), #f2bc40);color:hsl(var(--secondary-foreground));transition:all .2s}.btn-gold:hover{box-shadow:0 4px 12px hsl(var(--secondary) / .4);transform:translateY(-1px)}.scrollbar-islamic{scrollbar-width:thin;scrollbar-color:hsl(var(--primary) / .3) transparent}.scrollbar-islamic::-webkit-scrollbar{width:6px;height:6px}.scrollbar-islamic::-webkit-scrollbar-track{background:0 0;border-radius:3px;margin:4px 0}.scrollbar-islamic::-webkit-scrollbar-thumb{background:hsl(var(--primary) / .2);border-radius:3px;transition:background .2s}.scrollbar-islamic::-webkit-scrollbar-thumb:hover{background:hsl(var(--primary) / .4)}.scrollbar-hidden{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hidden::-webkit-scrollbar{display:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-gold{0%,to{box-shadow:0 0 0 0 hsl(var(--secondary) / .4)}50%{box-shadow:0 0 0 8px hsl(var(--secondary) / 0)}}.animate-fade-in{opacity:0;animation:.5s ease-out forwards fadeIn}.animate-slide-in{animation:.4s ease-out forwards slideInRight}.animate-pulse-gold{animation:2s infinite pulse-gold}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}@keyframes page-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes page-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.page-transition{will-change:opacity, transform}.page-enter{animation:.35s cubic-bezier(.25,.46,.45,.94) forwards page-enter}.page-exit{animation:.15s cubic-bezier(.55,.06,.68,.19) forwards page-exit}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{opacity:0;animation:.4s cubic-bezier(.25,.46,.45,.94) forwards slide-up-fade}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-in{opacity:0;animation:.3s cubic-bezier(.25,.46,.45,.94) forwards scale-in}@keyframes slide-in-rtl{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-rtl{opacity:0;animation:.4s cubic-bezier(.25,.46,.45,.94) forwards slide-in-rtl}@keyframes blur-in{0%{opacity:0;filter:blur(4px);transform:scale(1.02)}to{opacity:1;filter:blur();transform:scale(1)}}.animate-blur-in{opacity:0;animation:.4s ease-out forwards blur-in}@keyframes content-reveal{0%{opacity:0;clip-path:inset(0 0 100%)}to{opacity:1;clip-path:inset(0)}}.animate-content-reveal{animation:.5s cubic-bezier(.25,.46,.45,.94) forwards content-reveal}.card-lift{transition:transform .2s,box-shadow .2s}.card-lift:hover{box-shadow:0 8px 25px -5px hsl(var(--foreground) / .1), 0 10px 10px -5px hsl(var(--foreground) / .04);transform:translateY(-2px)}.transition-smooth{transition:all .2s cubic-bezier(.25,.46,.45,.94)}.stagger-children>*{opacity:0;animation:.4s cubic-bezier(.25,.46,.45,.94) forwards slide-up-fade}.stagger-children>:first-child{animation-delay:50ms}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.35s}.stagger-children>:nth-child(8){animation-delay:.4s}.stagger-children>:nth-child(9){animation-delay:.45s}.stagger-children>:nth-child(10){animation-delay:.5s}@media (prefers-reduced-motion:reduce){.page-enter,.page-exit,.animate-fade-in,.animate-slide-up,.animate-scale-in,.animate-slide-in-rtl,.animate-blur-in,.animate-content-reveal,.stagger-children>*{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}}.scanner-success{background:linear-gradient(135deg, hsl(var(--primary) / .1), hsl(var(--secondary) / .1));border:2px solid hsl(var(--primary))}.scanner-error{background:linear-gradient(135deg, hsl(var(--destructive) / .1), hsl(var(--destructive) / .05));border:2px solid hsl(var(--destructive))}@keyframes success-pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.animate-success-pulse{animation:.5s ease-out success-pulse}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.animate-shake{animation:.5s ease-out shake}@keyframes bounce-in{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.animate-bounce-in{animation:.4s ease-out forwards bounce-in}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.7;transform:scale(1.3)rotate(180deg)}}.animate-sparkle{animation:1s ease-in-out infinite sparkle}.confetti-container{z-index:10}.confetti-particle{border-radius:50%;width:8px;height:8px;animation:2s ease-out forwards confetti-fall;position:absolute}@keyframes confetti-fall{0%{opacity:1;top:-10px;transform:translate(0)rotate(0)}to{opacity:0;transform:translateX(calc((var(--random,.5) - .5) * 100px)) rotate(720deg);top:100%}}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}@media print{.no-print{display:none!important}body{color:#000!important;background:#fff!important}body *{visibility:hidden}.qr-print-card,.qr-print-card *{visibility:visible!important}.qr-print-card{width:100mm!important;max-width:100mm!important;box-shadow:none!important;border:1px solid #ddd!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}.qr-print-card img{width:48mm!important;height:48mm!important}}.ai-markdown{word-break:break-word;overflow-wrap:break-word}.ai-markdown>:first-child{margin-top:0}.ai-markdown>:last-child{margin-bottom:0}.ai-markdown p{margin:.4em 0;line-height:1.7}.ai-markdown strong{color:inherit;font-weight:700}.ai-markdown ul,.ai-markdown ol{margin:.5em 0;padding-inline-start:1.4em}.ai-markdown li{margin:.2em 0;line-height:1.6}.ai-markdown li::marker{color:hsl(var(--primary))}.ai-markdown h1,.ai-markdown h2,.ai-markdown h3,.ai-markdown h4{margin:.8em 0 .3em;font-weight:700;line-height:1.3}.ai-markdown h1{font-size:1.15em}.ai-markdown h2{font-size:1.05em}.ai-markdown h3{font-size:1em}.ai-markdown code{font-family:var(--font-mono);background:hsl(var(--muted));direction:ltr;unicode-bidi:embed;border-radius:4px;padding:.15em .4em;font-size:.88em}.ai-markdown pre{background:hsl(var(--muted));direction:ltr;border-radius:8px;margin:.5em 0;padding:.8em 1em;overflow-x:auto}.ai-markdown pre code{background:0 0;padding:0;font-size:.85em}.ai-markdown table{border-collapse:collapse;width:100%;margin:.6em 0;font-size:.9em}.ai-markdown th,.ai-markdown td{border:1px solid hsl(var(--border));text-align:right;padding:.45em .7em}.ai-markdown th{background:hsl(var(--muted));font-weight:600}.ai-markdown tr:nth-child(2n){background:hsl(var(--muted) / .4)}.ai-markdown blockquote{border-inline-start:3px solid hsl(var(--primary));color:hsl(var(--muted-foreground));margin:.5em 0;padding-inline-start:.8em}.ai-markdown hr{border:none;border-top:1px solid hsl(var(--border));margin:.8em 0}.ai-markdown a{color:hsl(var(--primary));text-underline-offset:2px;text-decoration:underline}
