/* === PRINT === */
        @media print {
            html,body{overflow:visible!important;height:auto!important;background:#fff!important;color:#000!important;}
            #root{height:auto!important;display:block!important;}
            header,.no-print,.print-hide,button{display:none!important;}
            main{overflow:visible!important;height:auto!important;}
            .print-area{padding:8px;}
            *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;}
        }

        /* === RESET === */
        *,*::before,*::after{box-sizing:border-box;}
        body{margin:0;padding:0;transition:background-color .25s;-webkit-font-smoothing:antialiased;overscroll-behavior:none;}

        /* === LAYOUT === */
        html, body { margin: 0; padding: 0; overflow: hidden; height: 100%; }
        body { background: inherit; }

        #root {
            position: fixed !important;
            top: 0 !important; left: 0 !important;
            right: 0 !important; bottom: 0 !important;
            display: flex !important;
            flex-direction: column !important;
            overflow-y: auto !important;
            overflow-x: hidden !important;
            z-index: 0;
        }

        #root > * {
            flex: 1 !important;
            min-height: 0 !important;
            display: flex !important;
            flex-direction: column !important;
        }

        header { flex-shrink: 0 !important; }
        main { flex: 1 !important; min-height: 0 !important; overflow: hidden !important; }

        .main-inner {
            height: 100% !important;
            overflow-y: auto !important;
            overflow-x: hidden !important;
            direction: ltr;
            -webkit-overflow-scrolling: touch;
            overscroll-behavior-y: contain;
        }
        .main-inner > * { direction: rtl; }



/* === DESIGN SYSTEM THEME FOUNDATION === */
:root,
html[data-theme="light"]{
    color-scheme: light;
    --bg:#f8fafc;
    --surface:#ffffff;
    --surface-soft:#f1f5f9;
    --text:#0f172a;
    --text-muted:#64748b;
    --border:#e2e8f0;
    --primary:#0f4c3a;
    --primary-hover:#16654a;
    --primary-soft:#eaf4ef;
    --primary-rgb:15,76,58;
    --accent:#0d9488;
    --accent-soft:#ccfbf1;
    --accent-rgb:13,148,136;
    --focus-ring:rgba(15,76,58,.22);
    --shadow:0 14px 34px rgba(15,23,42,.08);
    --input-bg:#ffffff;
    --input-border:#cbd5e1;
    --danger:#dc2626;
    --success:#059669;
    --warning:#d97706;
    --info:#2563eb;
    --overlay:rgba(15,23,42,.42);
    --header-gradient:linear-gradient(135deg,#0f4c3a 0%,#16654a 58%,#0d9488 100%);
    --ring:var(--focus-ring);
    --waqar-primary:var(--primary);
    --waqar-primary-2:var(--primary-hover);
    --waqar-bg:var(--bg);
    --waqar-surface:var(--surface);
    --waqar-surface-soft:var(--surface-soft);
    --waqar-text:var(--text);
    --waqar-muted:var(--text-muted);
    --waqar-border:var(--border);
    --waqar-shadow:var(--shadow);
}
html[data-theme="dark"],
html.dark{
    color-scheme: dark;
    --bg:#0b1120;
    --surface:#111827;
    --surface-soft:#1e293b;
    --text:#f8fafc;
    --text-muted:#cbd5e1;
    --border:#334155;
    --primary:#34d399;
    --primary-hover:#10b981;
    --primary-soft:rgba(52,211,153,.14);
    --primary-rgb:52,211,153;
    --accent:#2dd4bf;
    --accent-soft:rgba(45,212,191,.16);
    --accent-rgb:45,212,191;
    --focus-ring:rgba(52,211,153,.24);
    --shadow:0 18px 44px rgba(0,0,0,.42);
    --input-bg:#0f172a;
    --input-border:#475569;
    --danger:#fb7185;
    --success:#34d399;
    --warning:#fbbf24;
    --info:#60a5fa;
    --overlay:rgba(2,6,23,.72);
    --header-gradient:linear-gradient(135deg,#020617 0%,#0f172a 40%,#064e3b 100%);
    --ring:var(--focus-ring);
    --waqar-primary:var(--primary);
    --waqar-primary-2:var(--primary-hover);
    --waqar-bg:var(--bg);
    --waqar-surface:var(--surface);
    --waqar-surface-soft:var(--surface-soft);
    --waqar-text:var(--text);
    --waqar-muted:var(--text-muted);
    --waqar-border:var(--border);
    --waqar-shadow:var(--shadow);
}

/* === ACCENT COLOR SYSTEM === */
:root{
    --accent-green-preview:#0f4c3a;
    --accent-blue-preview:#2563eb;
    --accent-purple-preview:#7c3aed;
    --accent-gold-preview:#b45309;
    --accent-rose-preview:#be123c;
}
html[data-theme="light"][data-accent="green"],html[data-accent="green"]{
    --primary:#0f4c3a;--primary-hover:#16654a;--primary-soft:#eaf4ef;--primary-rgb:15,76,58;
    --accent:#0d9488;--accent-soft:#ccfbf1;--accent-rgb:13,148,136;--focus-ring:rgba(15,76,58,.22);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#0f4c3a 0%,#16654a 58%,#0d9488 100%);
}
html[data-theme="light"][data-accent="blue"]{
    --primary:#2563eb;--primary-hover:#1d4ed8;--primary-soft:#dbeafe;--primary-rgb:37,99,235;
    --accent:#0ea5e9;--accent-soft:#e0f2fe;--accent-rgb:14,165,233;--focus-ring:rgba(37,99,235,.22);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#1e3a8a 0%,#2563eb 58%,#0ea5e9 100%);
}
html[data-theme="light"][data-accent="purple"]{
    --primary:#7c3aed;--primary-hover:#6d28d9;--primary-soft:#ede9fe;--primary-rgb:124,58,237;
    --accent:#a855f7;--accent-soft:#f3e8ff;--accent-rgb:168,85,247;--focus-ring:rgba(124,58,237,.22);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#4c1d95 0%,#7c3aed 58%,#a855f7 100%);
}
html[data-theme="light"][data-accent="gold"]{
    --primary:#b45309;--primary-hover:#92400e;--primary-soft:#fef3c7;--primary-rgb:180,83,9;
    --accent:#d97706;--accent-soft:#ffedd5;--accent-rgb:217,119,6;--focus-ring:rgba(180,83,9,.24);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#7c2d12 0%,#b45309 56%,#d97706 100%);
}
html[data-theme="light"][data-accent="rose"]{
    --primary:#be123c;--primary-hover:#9f1239;--primary-soft:#ffe4e6;--primary-rgb:190,18,60;
    --accent:#db2777;--accent-soft:#fce7f3;--accent-rgb:219,39,119;--focus-ring:rgba(190,18,60,.22);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#881337 0%,#be123c 56%,#db2777 100%);
}
html[data-theme="dark"][data-accent="green"],html.dark[data-accent="green"]{
    --primary:#34d399;--primary-hover:#10b981;--primary-soft:rgba(52,211,153,.14);--primary-rgb:52,211,153;
    --accent:#2dd4bf;--accent-soft:rgba(45,212,191,.16);--accent-rgb:45,212,191;--focus-ring:rgba(52,211,153,.24);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#020617 0%,#0f172a 40%,#064e3b 100%);
}
html[data-theme="dark"][data-accent="blue"],html.dark[data-accent="blue"]{
    --primary:#60a5fa;--primary-hover:#3b82f6;--primary-soft:rgba(96,165,250,.16);--primary-rgb:96,165,250;
    --accent:#38bdf8;--accent-soft:rgba(56,189,248,.16);--accent-rgb:56,189,248;--focus-ring:rgba(96,165,250,.26);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#020617 0%,#0f172a 42%,#1d4ed8 100%);
}
html[data-theme="dark"][data-accent="purple"],html.dark[data-accent="purple"]{
    --primary:#c084fc;--primary-hover:#a855f7;--primary-soft:rgba(192,132,252,.16);--primary-rgb:192,132,252;
    --accent:#e879f9;--accent-soft:rgba(232,121,249,.15);--accent-rgb:232,121,249;--focus-ring:rgba(192,132,252,.27);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#020617 0%,#1e1b4b 44%,#7e22ce 100%);
}
html[data-theme="dark"][data-accent="gold"],html.dark[data-accent="gold"]{
    --primary:#fbbf24;--primary-hover:#f59e0b;--primary-soft:rgba(251,191,36,.16);--primary-rgb:251,191,36;
    --accent:#f97316;--accent-soft:rgba(249,115,22,.16);--accent-rgb:249,115,22;--focus-ring:rgba(251,191,36,.27);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#020617 0%,#1c1917 44%,#92400e 100%);
}
html[data-theme="dark"][data-accent="rose"],html.dark[data-accent="rose"]{
    --primary:#fb7185;--primary-hover:#f43f5e;--primary-soft:rgba(251,113,133,.16);--primary-rgb:251,113,133;
    --accent:#f472b6;--accent-soft:rgba(244,114,182,.15);--accent-rgb:244,114,182;--focus-ring:rgba(251,113,133,.27);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#020617 0%,#1f1723 44%,#be123c 100%);
}

html,body{background:var(--bg)!important;color:var(--text)!important;}
body{min-height:100vh;}
#root,.main-inner{background:var(--bg);color:var(--text);}
#root{transition:background-color .2s ease,color .2s ease;}
html[data-theme="dark"] #root,
html.dark #root{background:radial-gradient(circle at 16% 0%,rgba(var(--primary-rgb),.13),transparent 26%),radial-gradient(circle at 82% 12%,rgba(var(--accent-rgb),.08),transparent 24%),var(--bg);}
input,select,textarea{
    background:var(--input-bg)!important;
    color:var(--text)!important;
    border-color:var(--input-border)!important;
    caret-color:var(--primary);
    box-shadow:none;
}
input:focus,select:focus,textarea:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--ring)!important;}
input::placeholder,textarea::placeholder{color:var(--text-muted)!important;opacity:.75;}
option{background:var(--input-bg)!important;color:var(--text)!important;}
.table-wrap,table{background:transparent;color:var(--text);}
th,td{border-color:var(--border)!important;}
.modal-overlay{background:var(--overlay)!important;}
.modal-body{background:var(--surface)!important;color:var(--text)!important;}
.card,.home-card,.teacher-panel,.student-action-panel,.teacher-soft-card,.course-card,.audio-reciter-card,.waqar-book-viewer{
    background:var(--surface)!important;
    color:var(--text)!important;
    border-color:var(--border)!important;
}
.teacher-soft-card,.student-action-panel,.course-card,.audio-reciter-card{box-shadow:var(--shadow);}
.home-panel{background:linear-gradient(135deg,rgba(var(--primary-rgb),.08),rgba(255,255,255,.98) 48%,rgba(var(--accent-rgb),.10))!important;border-color:rgba(var(--primary-rgb),.14)!important;}
html[data-theme="dark"] .home-panel,
html.dark .home-panel{background:linear-gradient(135deg,rgba(var(--primary-rgb),.13),rgba(17,24,39,.94) 44%,rgba(var(--accent-rgb),.10))!important;border-color:rgba(var(--primary-rgb),.20)!important;box-shadow:0 22px 50px rgba(0,0,0,.35)!important;}
.waqar-main-header{background-image:var(--header-gradient)!important;}
.waqar-main-logo{background:var(--primary-soft)!important;color:var(--primary)!important;}
html[data-theme="dark"] .waqar-main-logo,
html.dark .waqar-main-logo{background:var(--primary-soft)!important;color:var(--primary)!important;border:1px solid rgba(var(--primary-rgb),.25);box-shadow:0 12px 30px rgba(0,0,0,.28);}
.waqar-top-controls{position:absolute;top:.75rem;left:1rem;display:flex;align-items:flex-start;gap:.55rem;z-index:25;direction:rtl;}
.waqar-theme-switch,.waqar-accent-toggle{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.14);color:#fff;border-radius:999px;padding:.45rem .7rem;font-weight:900;font-size:.78rem;backdrop-filter:blur(10px);box-shadow:0 10px 24px rgba(0,0,0,.14);transition:transform .16s ease,background-color .16s ease,border-color .16s ease;}
.waqar-theme-switch:hover,.waqar-accent-toggle:hover{transform:translateY(-1px);background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.52);}
.waqar-theme-switch:active,.waqar-accent-toggle:active{transform:translateY(0) scale(.98);}
.waqar-theme-switch__icon,.waqar-accent-toggle__dot{width:1.75rem;height:1.75rem;border-radius:999px;background:rgba(255,255,255,.22);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.waqar-accent-toggle__dot{background:var(--primary);box-shadow:inset 0 0 0 3px rgba(255,255,255,.88),0 0 0 1px rgba(255,255,255,.38);}
.waqar-theme-switch__label,.waqar-accent-toggle__label{line-height:1;white-space:nowrap;}
.waqar-accent-picker{position:relative;}
.waqar-accent-menu{position:absolute;top:calc(100% + .55rem);left:0;width:14.5rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:1.15rem;padding:.65rem;box-shadow:var(--shadow);backdrop-filter:blur(14px);z-index:50;}
.waqar-accent-menu::before{content:"";position:absolute;top:-7px;left:1.25rem;width:12px;height:12px;transform:rotate(45deg);background:var(--surface);border-top:1px solid var(--border);border-left:1px solid var(--border);}
.waqar-accent-menu__title{font-size:.72rem;font-weight:900;color:var(--text-muted);padding:.2rem .35rem .55rem;}
.waqar-accent-option{width:100%;display:flex;align-items:center;gap:.6rem;border:1px solid transparent;background:transparent;color:var(--text);border-radius:.9rem;padding:.58rem .62rem;font-size:.82rem;font-weight:900;text-align:right;transition:background-color .15s ease,border-color .15s ease,transform .15s ease;}
.waqar-accent-option:hover{background:var(--surface-soft);transform:translateX(-2px);}
.waqar-accent-option.is-active{background:var(--primary-soft);border-color:rgba(var(--primary-rgb),.30);color:var(--primary);}
.waqar-accent-option__dot{width:1.25rem;height:1.25rem;border-radius:999px;background:var(--accent-preview);box-shadow:inset 0 0 0 3px rgba(255,255,255,.88),0 0 0 1px rgba(15,23,42,.12);flex-shrink:0;}
.waqar-accent-option__text{flex:1;}
@media(max-width:520px){.waqar-top-controls{top:.55rem;left:.55rem;gap:.38rem}.waqar-theme-switch,.waqar-accent-toggle{padding:.38rem .52rem;font-size:.68rem}.waqar-theme-switch__label,.waqar-accent-toggle__label{display:none}.waqar-theme-switch__icon,.waqar-accent-toggle__dot{width:1.65rem;height:1.65rem}.waqar-accent-menu{width:13.25rem;left:0}.waqar-accent-option{font-size:.78rem;padding:.55rem}}
button:not([class*="bg-"]){color:var(--text);}
button:focus-visible,a:focus-visible{outline:3px solid var(--ring);outline-offset:3px;border-radius:.75rem;}
input[type="date"]::-webkit-calendar-picker-indicator{filter:none;}
html[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator,
html.dark input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(1.4);}


/* Accent-aware bridge for existing Tailwind-heavy markup */
::selection{background:rgba(var(--primary-rgb),.22);color:var(--text);}
input[type="checkbox"],input[type="radio"]{accent-color:var(--primary);}
.bg-teal-600,.bg-emerald-600,.bg-green-600,.bg-cyan-600,.hover\:bg-teal-700:hover,.hover\:bg-emerald-700:hover{background-color:var(--primary)!important;color:#fff!important;}
.bg-teal-700,.bg-emerald-700,.hover\:bg-teal-800:hover,.hover\:bg-emerald-800:hover{background-color:var(--primary-hover)!important;color:#fff!important;}
.text-teal-500,.text-teal-600,.text-teal-700,.text-teal-800,.text-emerald-500,.text-emerald-600,.text-emerald-700,.text-emerald-800{color:var(--primary)!important;}
.bg-teal-50,.bg-teal-100,.bg-emerald-50,.bg-emerald-100,.bg-green-50,.bg-green-100{background-color:var(--primary-soft)!important;color:var(--primary)!important;}
.border-teal-100,.border-teal-200,.border-teal-300,.border-teal-500,.border-teal-600,.border-emerald-100,.border-emerald-200,.border-emerald-600{border-color:rgba(var(--primary-rgb),.34)!important;}
a:not([class*="text-"]){color:var(--primary);} 
.audio-reciter-card.active{border-color:var(--primary)!important;background:var(--primary-soft)!important;box-shadow:0 10px 22px rgba(var(--primary-rgb),.16)!important;color:var(--primary)!important;}
.student-header{border-bottom-color:var(--primary)!important;}

/* Theme-aware utility bridge for existing Tailwind-heavy markup */
.bg-white,.bg-slate-50{box-shadow:none;}
html[data-theme="dark"] .bg-white,
html[data-theme="dark"] .bg-white\/95,
html[data-theme="dark"] .bg-white\/80,
html[data-theme="dark"] .bg-white\/75,
html[data-theme="dark"] .bg-white\/70,
html[data-theme="dark"] .bg-slate-50,
html[data-theme="dark"] .bg-slate-50\/50,
html.dark .bg-white,
html.dark .bg-white\/95,
html.dark .bg-white\/80,
html.dark .bg-white\/75,
html.dark .bg-white\/70,
html.dark .bg-slate-50,
html.dark .bg-slate-50\/50{background-color:var(--surface)!important;color:var(--text)!important;border-color:var(--border)!important;}
html[data-theme="dark"] .bg-slate-100,
html[data-theme="dark"] .bg-slate-200,
html[data-theme="dark"] .bg-slate-300,
html.dark .bg-slate-100,
html.dark .bg-slate-200,
html.dark .bg-slate-300{background-color:var(--surface-soft)!important;color:var(--text)!important;border-color:var(--border)!important;}
html[data-theme="dark"] .text-slate-900,
html[data-theme="dark"] .text-slate-800,
html[data-theme="dark"] .text-slate-700,
html[data-theme="dark"] .text-slate-600,
html[data-theme="dark"] .text-gray-900,
html[data-theme="dark"] .text-gray-800,
html.dark .text-slate-900,
html.dark .text-slate-800,
html.dark .text-slate-700,
html.dark .text-slate-600,
html.dark .text-gray-900,
html.dark .text-gray-800{color:var(--text)!important;}
html[data-theme="dark"] .text-slate-500,
html[data-theme="dark"] .text-slate-400,
html[data-theme="dark"] .text-slate-300,
html[data-theme="dark"] .text-slate-200,
html[data-theme="dark"] .text-gray-500,
html[data-theme="dark"] .text-gray-400,
html.dark .text-slate-500,
html.dark .text-slate-400,
html.dark .text-slate-300,
html.dark .text-slate-200,
html.dark .text-gray-500,
html.dark .text-gray-400{color:var(--text-muted)!important;}
html[data-theme="dark"] .border,
html[data-theme="dark"] .border-t,
html[data-theme="dark"] .border-b,
html[data-theme="dark"] .border-slate-50,
html[data-theme="dark"] .border-slate-100,
html[data-theme="dark"] .border-slate-200,
html[data-theme="dark"] .border-white,
html.dark .border,
html.dark .border-t,
html.dark .border-b,
html.dark .border-slate-50,
html.dark .border-slate-100,
html.dark .border-slate-200,
html.dark .border-white{border-color:var(--border)!important;}
html[data-theme="dark"] .shadow,
html[data-theme="dark"] .shadow-sm,
html[data-theme="dark"] .shadow-md,
html[data-theme="dark"] .shadow-lg,
html[data-theme="dark"] .shadow-xl,
html[data-theme="dark"] .shadow-2xl,
html.dark .shadow,
html.dark .shadow-sm,
html.dark .shadow-md,
html.dark .shadow-lg,
html.dark .shadow-xl,
html.dark .shadow-2xl{box-shadow:var(--shadow)!important;}
html[data-theme="dark"] .hover\:bg-slate-50:hover,
html[data-theme="dark"] .hover\:bg-slate-100:hover,
html[data-theme="dark"] .hover\:bg-white:hover,
html.dark .hover\:bg-slate-50:hover,
html.dark .hover\:bg-slate-100:hover,
html.dark .hover\:bg-white:hover{background-color:#233047!important;color:var(--text)!important;}

/* Dark status surfaces keep semantic colors readable */
html[data-theme="dark"] .bg-red-50,
html[data-theme="dark"] .bg-red-50\/70,
html[data-theme="dark"] .bg-red-100,
html.dark .bg-red-50,
html.dark .bg-red-50\/70,
html.dark .bg-red-100{background-color:rgba(127,29,29,.30)!important;border-color:rgba(251,113,133,.30)!important;}
html[data-theme="dark"] .text-red-500,
html[data-theme="dark"] .text-red-600,
html[data-theme="dark"] .text-red-700,
html[data-theme="dark"] .text-red-800,
html.dark .text-red-500,
html.dark .text-red-600,
html.dark .text-red-700,
html.dark .text-red-800{color:#fca5a5!important;}
html[data-theme="dark"] .bg-emerald-50,
html[data-theme="dark"] .bg-emerald-100,
html[data-theme="dark"] .bg-teal-50,
html.dark .bg-emerald-50,
html.dark .bg-emerald-100,
html.dark .bg-teal-50{background-color:rgba(6,78,59,.38)!important;border-color:rgba(52,211,153,.30)!important;}
html[data-theme="dark"] .text-emerald-600,
html[data-theme="dark"] .text-emerald-700,
html[data-theme="dark"] .text-emerald-800,
html[data-theme="dark"] .text-teal-600,
html[data-theme="dark"] .text-teal-700,
html[data-theme="dark"] .text-teal-800,
html.dark .text-emerald-600,
html.dark .text-emerald-700,
html.dark .text-emerald-800,
html.dark .text-teal-600,
html.dark .text-teal-700,
html.dark .text-teal-800{color:#5eead4!important;}
html[data-theme="dark"] .bg-amber-50,
html[data-theme="dark"] .bg-amber-100,
html[data-theme="dark"] .bg-yellow-50,
html.dark .bg-amber-50,
html.dark .bg-amber-100,
html.dark .bg-yellow-50{background-color:rgba(120,53,15,.34)!important;border-color:rgba(251,191,36,.30)!important;}
html[data-theme="dark"] .text-amber-500,
html[data-theme="dark"] .text-amber-600,
html[data-theme="dark"] .text-amber-700,
html[data-theme="dark"] .text-amber-800,
html[data-theme="dark"] .text-amber-950,
html.dark .text-amber-500,
html.dark .text-amber-600,
html.dark .text-amber-700,
html.dark .text-amber-800,
html.dark .text-amber-950{color:#fcd34d!important;}
html[data-theme="dark"] .bg-blue-50,
html[data-theme="dark"] .bg-blue-100,
html[data-theme="dark"] .bg-sky-50,
html[data-theme="dark"] .bg-sky-100,
html[data-theme="dark"] .bg-indigo-50,
html[data-theme="dark"] .bg-indigo-100,
html[data-theme="dark"] .bg-purple-50,
html[data-theme="dark"] .bg-purple-100,
html.dark .bg-blue-50,
html.dark .bg-blue-100,
html.dark .bg-sky-50,
html.dark .bg-sky-100,
html.dark .bg-indigo-50,
html.dark .bg-indigo-100,
html.dark .bg-purple-50,
html.dark .bg-purple-100{background-color:rgba(30,41,59,.68)!important;border-color:rgba(96,165,250,.26)!important;}
html[data-theme="dark"] .text-blue-600,
html[data-theme="dark"] .text-blue-700,
html[data-theme="dark"] .text-sky-600,
html[data-theme="dark"] .text-sky-700,
html[data-theme="dark"] .text-indigo-600,
html[data-theme="dark"] .text-indigo-700,
html[data-theme="dark"] .text-indigo-800,
html[data-theme="dark"] .text-purple-800,
html.dark .text-blue-600,
html.dark .text-blue-700,
html.dark .text-sky-600,
html.dark .text-sky-700,
html.dark .text-indigo-600,
html.dark .text-indigo-700,
html.dark .text-indigo-800,
html.dark .text-purple-800{color:#93c5fd!important;}
html[data-theme="dark"] .bg-rose-100,
html.dark .bg-rose-100{background-color:rgba(136,19,55,.30)!important;border-color:rgba(251,113,133,.28)!important;}
html[data-theme="dark"] .text-rose-700,
html.dark .text-rose-700{color:#fda4af!important;}


        /* === SCROLLBAR DESIGN === */
        ::-webkit-scrollbar{width:5px;height:5px;}
        ::-webkit-scrollbar-track{background:transparent;}
        ::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px;}
        *{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;}

        .scroll-box{direction:ltr;overflow-y:auto;-webkit-overflow-scrolling:touch;}
        .scroll-box>*{direction:rtl;}
        .line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
        .break-anywhere{overflow-wrap:anywhere;word-break:break-word;}

        /* === HOME POLISH === */
        .home-shell{position:relative;}
        .home-panel{
            background:linear-gradient(135deg,rgba(15,76,58,.10),rgba(255,255,255,.94) 44%,rgba(245,158,11,.12));
            border:1px solid rgba(15,76,58,.12);
            box-shadow:0 18px 42px rgba(15,23,42,.08);
        }
        .home-card{min-height:132px;isolation:isolate;overflow:hidden;}
        .home-card::after{content:"";position:absolute;inset:auto -24px -34px auto;width:88px;height:88px;border-radius:999px;background:currentColor;opacity:.055;z-index:-1;}
        .home-card:hover{transform:translateY(-2px);}
        .home-icon{box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);}

        /* === IMAGE PREVIEW === */
        .zoomed-image{max-width:min(96vw,1100px);max-height:86vh;object-fit:contain;}

        @media (max-width:640px){
            .home-shell{max-width:100%!important;}
            .home-panel{padding:1rem!important;border-radius:1.25rem!important;}
            .home-grid{gap:.65rem!important;}
            .home-card{min-height:118px;padding:.8rem!important;gap:.55rem!important;flex-direction:column;align-items:flex-start;}
            .home-icon{width:2.6rem!important;height:2.6rem!important;border-radius:.9rem!important;}
            .home-title{font-size:.82rem!important;line-height:1.35!important;}
            .home-desc{font-size:.68rem!important;line-height:1.35!important;}
            .home-arrow{display:none!important;}
        }

        /* === WHITE UI SAFETY PATCH + QURAN READER === */
        @font-face{font-family:'KFGQPCHafs';src:local('KFGQPC Uthmanic Script HAFS'),local('KFGQPCHafs');font-display:swap;}
        @font-face{font-family:'UthmanicHafs';src:local('KFGQPC Uthmanic Script HAFS'),local('Uthmanic Hafs'),local('Amiri Quran');font-display:swap;}
        .quran-reader-text{font-family:'KFGQPCHafs','UthmanicHafs','Traditional Arabic',serif;font-weight:400;line-height:2.05;word-spacing:.025em;text-rendering:optimizeLegibility;font-feature-settings:'liga' 1,'calt' 1;unicode-bidi:plaintext;}
        .quran-ayah-num{font-family:'KFGQPCHafs','Traditional Arabic',serif;display:inline-flex;align-items:center;justify-content:center;min-width:2.22em;height:2.22em;margin-inline:.22em;border-radius:999px;border:1.5px solid rgba(107,85,46,.45);font-size:.62em;color:#5b4630;background:radial-gradient(circle,#fffdf2 40%,#eadfc7 100%);vertical-align:middle;font-weight:400;line-height:1;box-shadow:0 1px 2px rgba(0,0,0,.08), inset 0 0 0 2px rgba(255,255,255,.52);}
        .quran-fullscreen-overlay{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;z-index:2147483000!important;transform:none!important;contain:none!important;isolation:isolate;background:#fbf7ee!important;color:#2b2117!important;overflow:hidden!important;}
        .quran-reader-mobile-shell{height:100%;width:100%;display:flex;flex-direction:column;background:#fbf7ee;}
        .quran-reader-topbar{height:54px;min-height:54px;display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:5px;padding:5px 7px;background:#fbf7ee;position:relative;z-index:5;direction:ltr;}
        .quran-reader-toolbar-center{height:42px;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;position:relative;}
        .quran-reader-ornament{height:16px;flex:1;min-width:16px;opacity:.75;background:linear-gradient(90deg,transparent,#b99a71 18%,#d8c29e 50%,#b99a71 82%,transparent);-webkit-mask:radial-gradient(circle at center,#000 2px,transparent 2.6px) 0 0/8px 8px,linear-gradient(#000 0 0);mask:radial-gradient(circle at center,#000 2px,transparent 2.6px) 0 0/8px 8px,linear-gradient(#000 0 0);}
        .quran-top-pill{height:30px;min-width:104px;max-width:40vw;display:flex;align-items:center;justify-content:center;padding:0 12px;border-radius:11px;background:#fffdf8;border:1.5px solid #d2b58a;box-shadow:0 1px 2px rgba(104,70,28,.08),inset 0 0 0 1px rgba(255,255,255,.9);font-weight:900;color:#2c261f;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;}
        .quran-circle-btn{width:40px;height:40px;border-radius:13px;background:#f2e8d9;border:1px solid #dfc8a7;color:#2b2117;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 3px 10px rgba(64,43,20,.14),inset 0 0 0 1px rgba(255,255,255,.65);}
        .quran-circle-btn:active{transform:scale(.96);}
        .quran-page-card{position:relative;background:transparent!important;border:0!important;box-shadow:none!important;color:#1c1a17;padding:0!important;height:100%;}
        .quran-page-card::before,.quran-page-card::after{display:none!important;content:none!important;}
        .quran-page-slide{height:100%;display:flex;flex-direction:column;justify-content:flex-start;position:relative;z-index:1;}
        .mushaf-image-shell{height:calc(100svh - 44px);height:calc(100dvh - 44px);width:100vw;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:pan-y;background:#fbf7ee;padding:0 0 max(4px,env(safe-area-inset-bottom)) 0;}
        .mushaf-page-img{height:calc(100svh - 48px - env(safe-area-inset-bottom));height:calc(100dvh - 48px - env(safe-area-inset-bottom));width:auto;min-width:100vw;max-width:none;max-height:100%;object-fit:contain;object-position:center center;background:#fbf7ee;box-shadow:none;border-radius:0;user-select:none;-webkit-user-drag:none;display:block;transform:none!important;transform-origin:center center;}
        .quran-swipe-area{cursor:grab;touch-action:pan-y;}
        .quran-swipe-area:active{cursor:grabbing;}
        @media(max-width:430px){.quran-reader-topbar{height:42px;min-height:42px;grid-template-columns:36px 1fr 36px;padding:3px 4px}.quran-circle-btn{width:32px;height:32px;border-radius:10px;font-size:14px}.quran-top-pill{min-width:62px;max-width:36vw;height:22px;padding:0 6px;font-size:8.5px;border-radius:8px}.quran-reader-toolbar-center{gap:3px;height:32px}.quran-reader-ornament{min-width:5px;height:12px}.mushaf-image-shell{height:calc(100svh - 42px);height:calc(100dvh - 42px);padding-bottom:max(4px,env(safe-area-inset-bottom));}.mushaf-page-img{height:calc(100svh - 46px - env(safe-area-inset-bottom));height:calc(100dvh - 46px - env(safe-area-inset-bottom));width:auto;min-width:100vw;max-width:none;max-height:100%;transform:none!important;object-fit:contain;}}
        @media(orientation:portrait) and (min-width:431px){.quran-reader-topbar{height:44px;min-height:44px}.mushaf-image-shell{height:calc(100svh - 44px);height:calc(100dvh - 44px);}.mushaf-page-img{height:calc(100svh - 48px - env(safe-area-inset-bottom));height:calc(100dvh - 48px - env(safe-area-inset-bottom));width:auto;min-width:0;max-width:calc(100vw - 6px);max-height:100%;object-fit:contain;}}
        @media(orientation:landscape){.quran-reader-topbar{height:38px;min-height:38px}.quran-circle-btn{width:32px;height:32px}.quran-top-pill{height:24px;font-size:10px}.mushaf-image-shell{height:calc(100svh - 38px);height:calc(100dvh - 38px);}.mushaf-page-img{height:calc(100svh - 42px - env(safe-area-inset-bottom));height:calc(100dvh - 42px - env(safe-area-inset-bottom));width:auto;min-width:0;max-width:calc(100vw - 8px);max-height:100%;object-fit:contain;}}

        /* Featured-stars leaderboard styles are defined in the dedicated v50 block below. */
        .mushaf-page-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin:0 auto .75rem;max-width:780px;color:#6b4f34;font-weight:900;font-size:.78rem;}
        .mushaf-page-header span{background:#fbf5e7;border:1px solid #b79a70;border-radius:999px;padding:.18rem .75rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);white-space:nowrap;}
        .mushaf-page-header .mushaf-center{font-size:.92rem;color:#1f5f4f;border-width:2px;}

        .course-card{position:relative;overflow:hidden;border-radius:1.15rem;padding:1rem;border:1px solid rgba(148,163,184,.22);background:linear-gradient(135deg,#ffffff,#f8fafc);transition:.18s ease;min-height:118px;}
        .course-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,23,42,.10);}
        .course-card::after{content:"";position:absolute;inset:auto -24px -30px auto;width:90px;height:90px;border-radius:999px;background:currentColor;opacity:.055;}
        .audio-reciter-card{border:1px solid rgba(148,163,184,.22);border-radius:1rem;padding:.8rem;background:#fff;transition:.16s ease;}
        .audio-reciter-card.active{border-color:#0d9488;background:#f0fdfa;box-shadow:0 10px 22px rgba(13,148,136,.16);}
        .waqar-book-viewer{height:min(76vh,780px);border-radius:1.25rem;overflow:hidden;border:1px solid rgba(148,163,184,.32);background:#f8fafc;box-shadow:0 16px 36px rgba(15,23,42,.10);display:flex;flex-direction:column;position:relative;isolation:isolate;}
        .waqar-book-viewer.book-soft-fullscreen,.waqar-book-viewer:fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;z-index:2147483200!important;border-radius:0!important;border:0!important;background:#05070b!important;padding:0!important;box-shadow:none!important;}
        .waqar-pdf-toolbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(148,163,184,.25);}
        .book-soft-fullscreen .waqar-pdf-toolbar,.waqar-book-viewer:fullscreen .waqar-pdf-toolbar{position:absolute;top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));z-index:6;border:1px solid rgba(148,163,184,.35);border-radius:1rem;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);box-shadow:0 8px 22px rgba(15,23,42,.18);}
        .waqar-pdf-title{min-width:0;font-size:.78rem;font-weight:900;color:#0f4c3a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .waqar-pdf-btn{height:32px;min-width:32px;border-radius:.7rem;border:1px solid rgba(148,163,184,.35);background:#fff;color:#334155;font-size:.75rem;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:.3rem;padding:0 .55rem;box-shadow:0 2px 8px rgba(15,23,42,.06);}
        .waqar-pdf-btn:disabled{opacity:.42;cursor:not-allowed;}
        .waqar-pdf-stage{flex:1;min-height:0;overflow:auto;background:linear-gradient(135deg,#e2e8f0,#f8fafc);display:flex;align-items:center;justify-content:center;padding:.65rem;-webkit-overflow-scrolling:touch;}
        .book-soft-fullscreen .waqar-pdf-stage,.waqar-book-viewer:fullscreen .waqar-pdf-stage{position:absolute;inset:0!important;width:100%!important;height:100%!important;padding:max(50px,calc(env(safe-area-inset-top) + 48px)) max(54px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(54px,env(safe-area-inset-left))!important;background:#05070b!important;overflow:hidden!important;}
        .waqar-pdf-canvas{display:block;background:#fff;border-radius:.35rem;box-shadow:0 14px 34px rgba(15,23,42,.22);max-width:none;max-height:none;}
        .book-soft-fullscreen .waqar-pdf-canvas,.waqar-book-viewer:fullscreen .waqar-pdf-canvas{border-radius:.2rem;box-shadow:0 0 0 1px rgba(255,255,255,.10),0 26px 70px rgba(0,0,0,.55);}
        .waqar-pdf-state{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem;color:#64748b;font-weight:800;}
        .book-soft-fullscreen .waqar-pdf-controls,.waqar-book-viewer:fullscreen .waqar-pdf-controls{display:none!important;}
        .waqar-pdf-side-nav{display:none;position:absolute;top:50%;transform:translateY(-50%);z-index:8;width:48px;height:74px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(15,23,42,.58);color:#fff;font-size:1.35rem;align-items:center;justify-content:center;backdrop-filter:blur(12px);box-shadow:0 12px 28px rgba(0,0,0,.34);}
        .waqar-pdf-side-nav:disabled{opacity:.25;}
        .waqar-pdf-side-nav.right{right:max(8px,env(safe-area-inset-right));}
        .waqar-pdf-side-nav.left{left:max(8px,env(safe-area-inset-left));}
        .book-soft-fullscreen .waqar-pdf-side-nav,.waqar-book-viewer:fullscreen .waqar-pdf-side-nav{display:flex;}
        @media(max-width:640px){.waqar-book-viewer{height:74vh;border-radius:1rem;}.waqar-pdf-toolbar{padding:.4rem}.waqar-pdf-btn{height:30px;min-width:30px;font-size:.68rem;padding:0 .45rem}.waqar-pdf-title{font-size:.7rem}.waqar-pdf-stage{padding:.35rem;align-items:center;}.book-soft-fullscreen .waqar-pdf-stage,.waqar-book-viewer:fullscreen .waqar-pdf-stage{padding:max(44px,calc(env(safe-area-inset-top) + 42px)) max(38px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(38px,env(safe-area-inset-left))!important}.waqar-pdf-side-nav{width:34px;height:56px;font-size:1rem}.book-soft-fullscreen .waqar-pdf-toolbar,.waqar-book-viewer:fullscreen .waqar-pdf-toolbar{top:max(4px,env(safe-area-inset-top));left:max(4px,env(safe-area-inset-left));right:max(4px,env(safe-area-inset-right));}}
        @media(max-width:640px){.quran-reader-text{line-height:1.92}.quran-page-card{border-radius:0!important}.quran-ayah-num{font-size:.64em}.mushaf-page-img{object-fit:contain;transform:none!important;}}

        /* === MODALS === */
        .modal-body{direction:ltr;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
        .modal-body>*{direction:rtl;}

        /* === UI === */
        .rounded-3xl{border-radius:1.5rem!important;}.rounded-2xl{border-radius:1rem!important;}
        *{-webkit-tap-highlight-color:transparent;}
        button{cursor:pointer;}
        button:active{opacity:.8;}
        .animate-in{animation:fadeIn .15s ease-out both;}
        
        .modal-overlay {
            position: fixed !important;
            inset: 0 !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            padding: 16px !important;
            z-index: 999999 !important;
            overflow: hidden !important;
            transform: none !important;
            perspective: none !important;
            filter: none !important;
            contain: layout style paint !important;
            isolation: isolate !important;
            overscroll-behavior: contain !important;
        }

        .modal-body {
            overflow-y: auto !important;
            overflow-x: hidden !important;
            -webkit-overflow-scrolling: touch;
            direction: ltr;
        }

        .modal-body > * {
            direction: rtl;
        }
        
        @keyframes fadeIn{from{opacity:0;transform:translateY(5px);}to{opacity:1;transform:none;}}

        /* === RESPONSIVE === */
        @media(max-width:639px){
            .grid.md\:grid-cols-2,.grid.md\:grid-cols-3{grid-template-columns:1fr!important;}
            .grid.md\:grid-cols-4,.grid.md\:grid-cols-5{grid-template-columns:repeat(2,1fr)!important;}
            table{min-width:460px;font-size:12px;}
            th,td{padding:6px 4px!important;}
            input,select,textarea{font-size:16px!important;}
            .max-w-2xl{max-width:100%!important;}
        }
        @media(min-width:640px) and (max-width:1023px){
            .grid.md\:grid-cols-3{grid-template-columns:repeat(2,1fr)!important;}
            .grid.md\:grid-cols-4{grid-template-columns:repeat(2,1fr)!important;}
        }

/* === V40: mobile student page + barcode cleanup === */
.waqar-qr-reader video{width:100%!important;max-height:62vh!important;object-fit:cover!important;border-radius:1rem!important;}
.student-page,.student-page *{box-sizing:border-box;}
.student-page{max-width:100%;overflow-x:hidden;}
.student-page .scroll-box{overflow-x:hidden;}
.student-page img{max-width:100%;}
@media(max-width:640px){
    body{overflow-x:hidden;}
    #root{max-width:100vw;overflow-x:hidden;}
    .student-page{padding-inline:0!important;width:100%!important;}
    .student-header{align-items:stretch!important;border-bottom:3px solid #0d9488;padding-bottom:.65rem;}
    .student-header h2{font-size:1.05rem!important;text-align:center;order:2;}
    .student-header button{order:1;width:max-content;align-self:flex-start;}
    .student-grid{display:block!important;width:100%!important;max-width:100%!important;}
    .student-grid>*{width:100%!important;max-width:100%!important;margin-bottom:1rem!important;}
    .student-page .bg-white,.student-page .bg-amber-50,.student-page .bg-indigo-50,.student-page .bg-purple-50{border-radius:1rem!important;}
    .student-page .flex.justify-between{gap:.5rem;}
    .student-page .flex.justify-between:not(.student-header){flex-wrap:wrap;}
    .student-page .grid{min-width:0!important;}
    .student-page .truncate{max-width:100%;}
    .student-page .rounded-3xl{border-radius:1rem!important;}
    .student-page .p-5{padding:1rem!important;}
    .student-page .p-4{padding:.9rem!important;}
    .student-page h3{line-height:1.45;}
}


/* =====================================================================
   V4 COLOR IDENTITY SYSTEM — FULL ACCENT DESIGN TOKENS
   This layer intentionally comes last to convert the old green-only UI
   into a token-driven identity system for Light + Dark themes.
   ===================================================================== */
:root{
    --primary-active:#0b3d2f;
    --primary-softer:#f4fbf8;
    --primary-muted:#5c8a79;
    --primary-border:rgba(15,76,58,.18);
    --primary-ring:rgba(15,76,58,.24);
    --primary-shadow:0 14px 32px rgba(15,76,58,.16);
    --primary-gradient-start:#0f4c3a;
    --primary-gradient-end:#0d9488;
    --accent-border:rgba(13,148,136,.22);
    --link:var(--primary);
    --link-hover:var(--primary-hover);
    --selection-bg:rgba(15,76,58,.20);
    --selection-text:#052e24;
    --badge-bg:var(--primary-soft);
    --badge-text:var(--primary);
    --badge-border:var(--primary-border);
    --nav-active-bg:rgba(var(--primary-rgb),.12);
    --nav-hover-bg:rgba(var(--primary-rgb),.08);
    --tab-active-bg:var(--primary-soft);
    --table-head-bg:linear-gradient(180deg,var(--primary-softer),var(--surface));
    --table-row-hover:rgba(var(--primary-rgb),.055);
    --table-row-selected:rgba(var(--primary-rgb),.095);
    --control-hover:rgba(var(--primary-rgb),.10);
    --surface-accent:linear-gradient(135deg,var(--surface),var(--primary-softer));
    --decor-glow:rgba(var(--primary-rgb),.10);
    --primary-contrast:#ffffff;
}
html[data-theme="dark"],html.dark{
    --primary-active:var(--primary-hover);
    --primary-softer:rgba(var(--primary-rgb),.075);
    --primary-muted:rgba(var(--primary-rgb),.74);
    --primary-border:rgba(var(--primary-rgb),.28);
    --primary-ring:rgba(var(--primary-rgb),.30);
    --primary-shadow:0 18px 42px rgba(var(--primary-rgb),.16);
    --accent-border:rgba(var(--accent-rgb),.24);
    --link:var(--primary);
    --link-hover:#ffffff;
    --selection-bg:rgba(var(--primary-rgb),.34);
    --selection-text:#ffffff;
    --badge-bg:rgba(var(--primary-rgb),.13);
    --badge-text:var(--primary);
    --badge-border:rgba(var(--primary-rgb),.28);
    --nav-active-bg:rgba(var(--primary-rgb),.18);
    --nav-hover-bg:rgba(var(--primary-rgb),.11);
    --tab-active-bg:rgba(var(--primary-rgb),.14);
    --table-head-bg:linear-gradient(180deg,rgba(var(--primary-rgb),.13),rgba(15,23,42,.72));
    --table-row-hover:rgba(var(--primary-rgb),.085);
    --table-row-selected:rgba(var(--primary-rgb),.14);
    --control-hover:rgba(var(--primary-rgb),.15);
    --surface-accent:linear-gradient(135deg,var(--surface),rgba(var(--primary-rgb),.08));
    --decor-glow:rgba(var(--primary-rgb),.16);
    --primary-contrast:#07111f;
}

/* Light accent palettes */
html[data-theme="light"][data-accent="green"],html:not([data-theme="dark"])[data-accent="green"]{
    --primary:#0f4c3a;--primary-hover:#16654a;--primary-active:#0b3d2f;--primary-soft:#eaf4ef;--primary-softer:#f5fbf8;--primary-muted:#5b8376;--primary-border:rgba(15,76,58,.18);--primary-ring:rgba(15,76,58,.24);--primary-shadow:0 14px 32px rgba(15,76,58,.16);--primary-gradient-start:#0f4c3a;--primary-gradient-end:#0d9488;--primary-rgb:15,76,58;--accent:#0d9488;--accent-soft:#ccfbf1;--accent-border:rgba(13,148,136,.22);--accent-rgb:13,148,136;--link:#0f4c3a;--link-hover:#16654a;--selection-bg:rgba(15,76,58,.20);--selection-text:#052e24;--header-gradient:linear-gradient(135deg,#0f4c3a 0%,#16654a 58%,#0d9488 100%);
}
html[data-theme="light"][data-accent="blue"]{
    --primary:#2563eb;--primary-hover:#1d4ed8;--primary-active:#1e40af;--primary-soft:#dbeafe;--primary-softer:#eff6ff;--primary-muted:#5d7fbf;--primary-border:rgba(37,99,235,.20);--primary-ring:rgba(37,99,235,.25);--primary-shadow:0 14px 32px rgba(37,99,235,.16);--primary-gradient-start:#1e40af;--primary-gradient-end:#0ea5e9;--primary-rgb:37,99,235;--accent:#0ea5e9;--accent-soft:#e0f2fe;--accent-border:rgba(14,165,233,.23);--accent-rgb:14,165,233;--link:#1d4ed8;--link-hover:#1e40af;--selection-bg:rgba(37,99,235,.20);--selection-text:#0b1e49;--header-gradient:linear-gradient(135deg,#1e3a8a 0%,#2563eb 58%,#0ea5e9 100%);
}
html[data-theme="light"][data-accent="purple"]{
    --primary:#7c3aed;--primary-hover:#6d28d9;--primary-active:#5b21b6;--primary-soft:#ede9fe;--primary-softer:#f5f3ff;--primary-muted:#8467b5;--primary-border:rgba(124,58,237,.20);--primary-ring:rgba(124,58,237,.25);--primary-shadow:0 14px 32px rgba(124,58,237,.16);--primary-gradient-start:#5b21b6;--primary-gradient-end:#a855f7;--primary-rgb:124,58,237;--accent:#a855f7;--accent-soft:#f3e8ff;--accent-border:rgba(168,85,247,.23);--accent-rgb:168,85,247;--link:#6d28d9;--link-hover:#5b21b6;--selection-bg:rgba(124,58,237,.20);--selection-text:#2e1065;--header-gradient:linear-gradient(135deg,#4c1d95 0%,#7c3aed 58%,#a855f7 100%);
}
html[data-theme="light"][data-accent="gold"]{
    --primary:#b45309;--primary-hover:#92400e;--primary-active:#78350f;--primary-soft:#fef3c7;--primary-softer:#fffbeb;--primary-muted:#9a7352;--primary-border:rgba(180,83,9,.22);--primary-ring:rgba(180,83,9,.26);--primary-shadow:0 14px 32px rgba(180,83,9,.17);--primary-gradient-start:#92400e;--primary-gradient-end:#f59e0b;--primary-rgb:180,83,9;--accent:#d97706;--accent-soft:#ffedd5;--accent-border:rgba(217,119,6,.24);--accent-rgb:217,119,6;--link:#a16207;--link-hover:#78350f;--selection-bg:rgba(180,83,9,.22);--selection-text:#3b2207;--header-gradient:linear-gradient(135deg,#7c2d12 0%,#b45309 56%,#d97706 100%);
}
html[data-theme="light"][data-accent="rose"]{
    --primary:#be123c;--primary-hover:#9f1239;--primary-active:#881337;--primary-soft:#ffe4e6;--primary-softer:#fff1f2;--primary-muted:#aa6273;--primary-border:rgba(190,18,60,.20);--primary-ring:rgba(190,18,60,.25);--primary-shadow:0 14px 32px rgba(190,18,60,.16);--primary-gradient-start:#9f1239;--primary-gradient-end:#db2777;--primary-rgb:190,18,60;--accent:#db2777;--accent-soft:#fce7f3;--accent-border:rgba(219,39,119,.23);--accent-rgb:219,39,119;--link:#be123c;--link-hover:#881337;--selection-bg:rgba(190,18,60,.19);--selection-text:#4c0519;--header-gradient:linear-gradient(135deg,#881337 0%,#be123c 56%,#db2777 100%);
}

/* Dark accent palettes */
html[data-theme="dark"][data-accent="green"],html.dark[data-accent="green"]{
    --primary:#34d399;--primary-hover:#6ee7b7;--primary-active:#10b981;--primary-soft:rgba(52,211,153,.14);--primary-softer:rgba(52,211,153,.075);--primary-muted:rgba(110,231,183,.72);--primary-border:rgba(52,211,153,.30);--primary-ring:rgba(52,211,153,.30);--primary-shadow:0 18px 42px rgba(52,211,153,.16);--primary-gradient-start:#065f46;--primary-gradient-end:#2dd4bf;--primary-rgb:52,211,153;--accent:#2dd4bf;--accent-soft:rgba(45,212,191,.16);--accent-border:rgba(45,212,191,.26);--accent-rgb:45,212,191;--link:#6ee7b7;--link-hover:#ffffff;--selection-bg:rgba(52,211,153,.34);--selection-text:#ffffff;--header-gradient:linear-gradient(135deg,#020617 0%,#0f172a 38%,#064e3b 100%);
}
html[data-theme="dark"][data-accent="blue"],html.dark[data-accent="blue"]{
    --primary:#60a5fa;--primary-hover:#93c5fd;--primary-active:#3b82f6;--primary-soft:rgba(96,165,250,.16);--primary-softer:rgba(96,165,250,.08);--primary-muted:rgba(147,197,253,.72);--primary-border:rgba(96,165,250,.30);--primary-ring:rgba(96,165,250,.31);--primary-shadow:0 18px 42px rgba(96,165,250,.16);--primary-gradient-start:#1d4ed8;--primary-gradient-end:#38bdf8;--primary-rgb:96,165,250;--accent:#38bdf8;--accent-soft:rgba(56,189,248,.16);--accent-border:rgba(56,189,248,.26);--accent-rgb:56,189,248;--link:#93c5fd;--link-hover:#ffffff;--selection-bg:rgba(96,165,250,.34);--selection-text:#ffffff;--header-gradient:linear-gradient(135deg,#020617 0%,#0f172a 40%,#1d4ed8 100%);
}
html[data-theme="dark"][data-accent="purple"],html.dark[data-accent="purple"]{
    --primary:#c084fc;--primary-hover:#d8b4fe;--primary-active:#a855f7;--primary-soft:rgba(192,132,252,.16);--primary-softer:rgba(192,132,252,.08);--primary-muted:rgba(216,180,254,.72);--primary-border:rgba(192,132,252,.30);--primary-ring:rgba(192,132,252,.32);--primary-shadow:0 18px 42px rgba(192,132,252,.16);--primary-gradient-start:#7e22ce;--primary-gradient-end:#e879f9;--primary-rgb:192,132,252;--accent:#e879f9;--accent-soft:rgba(232,121,249,.15);--accent-border:rgba(232,121,249,.25);--accent-rgb:232,121,249;--link:#d8b4fe;--link-hover:#ffffff;--selection-bg:rgba(192,132,252,.35);--selection-text:#ffffff;--header-gradient:linear-gradient(135deg,#020617 0%,#1e1b4b 42%,#7e22ce 100%);
}
html[data-theme="dark"][data-accent="gold"],html.dark[data-accent="gold"]{
    --primary:#fbbf24;--primary-hover:#fde68a;--primary-active:#f59e0b;--primary-soft:rgba(251,191,36,.16);--primary-softer:rgba(251,191,36,.08);--primary-muted:rgba(253,230,138,.74);--primary-border:rgba(251,191,36,.31);--primary-ring:rgba(251,191,36,.32);--primary-shadow:0 18px 42px rgba(251,191,36,.15);--primary-gradient-start:#92400e;--primary-gradient-end:#f97316;--primary-rgb:251,191,36;--accent:#f97316;--accent-soft:rgba(249,115,22,.16);--accent-border:rgba(249,115,22,.25);--accent-rgb:249,115,22;--link:#fde68a;--link-hover:#ffffff;--selection-bg:rgba(251,191,36,.34);--selection-text:#ffffff;--header-gradient:linear-gradient(135deg,#020617 0%,#1c1917 42%,#92400e 100%);
}
html[data-theme="dark"][data-accent="rose"],html.dark[data-accent="rose"]{
    --primary:#fb7185;--primary-hover:#fda4af;--primary-active:#f43f5e;--primary-soft:rgba(251,113,133,.16);--primary-softer:rgba(251,113,133,.08);--primary-muted:rgba(253,164,175,.74);--primary-border:rgba(251,113,133,.30);--primary-ring:rgba(251,113,133,.32);--primary-shadow:0 18px 42px rgba(251,113,133,.16);--primary-gradient-start:#be123c;--primary-gradient-end:#f472b6;--primary-rgb:251,113,133;--accent:#f472b6;--accent-soft:rgba(244,114,182,.15);--accent-border:rgba(244,114,182,.25);--accent-rgb:244,114,182;--link:#fda4af;--link-hover:#ffffff;--selection-bg:rgba(251,113,133,.34);--selection-text:#ffffff;--header-gradient:linear-gradient(135deg,#020617 0%,#1f1723 42%,#be123c 100%);
}

/* Green legacy restore: keep the default green identity exactly on the stable base style.
   The enhanced V4 identity layer below is intentionally scoped to the other
   four accents only: blue, purple, gold, and rose. */
html[data-theme="light"][data-accent="green"],html:not([data-theme="dark"])[data-accent="green"]{
    --primary:#0f4c3a;--primary-hover:#16654a;--primary-soft:#eaf4ef;--primary-rgb:15,76,58;
    --accent:#0d9488;--accent-soft:#ccfbf1;--accent-rgb:13,148,136;--focus-ring:rgba(15,76,58,.22);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#0f4c3a 0%,#16654a 58%,#0d9488 100%);
}
html[data-theme="dark"][data-accent="green"],html.dark[data-accent="green"]{
    --primary:#34d399;--primary-hover:#10b981;--primary-soft:rgba(52,211,153,.14);--primary-rgb:52,211,153;
    --accent:#2dd4bf;--accent-soft:rgba(45,212,191,.16);--accent-rgb:45,212,191;--focus-ring:rgba(52,211,153,.24);--ring:var(--focus-ring);
    --header-gradient:linear-gradient(135deg,#020617 0%,#0f172a 40%,#064e3b 100%);
}

/* Token aliases for enhanced non-green accent identities */
html[data-accent="blue"],html[data-accent="purple"],html[data-accent="gold"],html[data-accent="rose"]{
    --waqar-primary:var(--primary);--waqar-primary-2:var(--primary-hover);--focus-ring:var(--primary-ring);--ring:var(--primary-ring);
}
html[data-accent]:not([data-accent="green"]),
html[data-accent]:not([data-accent="green"]) body,
html[data-accent]:not([data-accent="green"]) #root,
html[data-accent]:not([data-accent="green"]) .main-inner{transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease;}
html[data-accent]:not([data-accent="green"]) ::selection{background:var(--selection-bg)!important;color:var(--selection-text)!important;}
html[data-accent]:not([data-accent="green"]) a{color:var(--link);}html[data-accent]:not([data-accent="green"]) a:hover{color:var(--link-hover);} 
html[data-accent]:not([data-accent="green"]) :focus-visible{outline:3px solid var(--primary-ring)!important;outline-offset:2px;}
html[data-accent]:not([data-accent="green"]) input:focus,html[data-accent]:not([data-accent="green"]) select:focus,html[data-accent]:not([data-accent="green"]) textarea:focus{border-color:var(--primary)!important;box-shadow:0 0 0 4px var(--primary-ring)!important;}
html[data-accent]:not([data-accent="green"]) input[type="checkbox"],html[data-accent]:not([data-accent="green"]) input[type="radio"]{accent-color:var(--primary)!important;}

/* Primary identity mapping for Tailwind-heavy markup and old inline green — non-green accents only */
html[data-accent]:not([data-accent="green"]) .bg-teal-600,html[data-accent]:not([data-accent="green"]) .bg-emerald-600,html[data-accent]:not([data-accent="green"]) .bg-green-600,html[data-accent]:not([data-accent="green"]) .bg-cyan-600,html[data-accent]:not([data-accent="green"]) .bg-\[\#0f4c3a\],html[data-accent]:not([data-accent="green"]) .hover\:bg-teal-700:hover,html[data-accent]:not([data-accent="green"]) .hover\:bg-emerald-700:hover,html[data-accent]:not([data-accent="green"]) .hover\:bg-green-700:hover{background:var(--primary)!important;color:var(--primary-contrast)!important;box-shadow:var(--primary-shadow);}
html[data-accent]:not([data-accent="green"]) .bg-teal-700,html[data-accent]:not([data-accent="green"]) .bg-emerald-700,html[data-accent]:not([data-accent="green"]) .hover\:bg-teal-800:hover,html[data-accent]:not([data-accent="green"]) .hover\:bg-emerald-800:hover{background:var(--primary-hover)!important;color:var(--primary-contrast)!important;}
html[data-accent]:not([data-accent="green"]) button.bg-teal-600:hover,html[data-accent]:not([data-accent="green"]) button.bg-emerald-600:hover,html[data-accent]:not([data-accent="green"]) button.bg-\[\#0f4c3a\]:hover,html[data-accent]:not([data-accent="green"]) .waqar-primary-action:hover{background:var(--primary-hover)!important;}
html[data-accent]:not([data-accent="green"]) .text-teal-500,html[data-accent]:not([data-accent="green"]) .text-teal-600,html[data-accent]:not([data-accent="green"]) .text-teal-700,html[data-accent]:not([data-accent="green"]) .text-teal-800,html[data-accent]:not([data-accent="green"]) .text-emerald-500,html[data-accent]:not([data-accent="green"]) .text-emerald-600,html[data-accent]:not([data-accent="green"]) .text-emerald-700,html[data-accent]:not([data-accent="green"]) .text-emerald-800,html[data-accent]:not([data-accent="green"]) .text-\[\#0f4c3a\]{color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) .bg-teal-50,html[data-accent]:not([data-accent="green"]) .bg-teal-100,html[data-accent]:not([data-accent="green"]) .bg-emerald-50,html[data-accent]:not([data-accent="green"]) .bg-emerald-100,html[data-accent]:not([data-accent="green"]) .bg-green-50,html[data-accent]:not([data-accent="green"]) .bg-green-100{background:var(--primary-soft)!important;color:var(--primary)!important;border-color:var(--primary-border)!important;}
html[data-accent]:not([data-accent="green"]) .from-teal-50,html[data-accent]:not([data-accent="green"]) .from-emerald-50{--tw-gradient-from:var(--primary-softer)!important;--tw-gradient-to:rgba(255,255,255,0)!important;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)!important;}
html[data-accent]:not([data-accent="green"]) .to-emerald-50,html[data-accent]:not([data-accent="green"]) .to-teal-50{--tw-gradient-to:var(--primary-soft)!important;}
html[data-accent]:not([data-accent="green"]) .border-teal-100,html[data-accent]:not([data-accent="green"]) .border-teal-200,html[data-accent]:not([data-accent="green"]) .border-teal-300,html[data-accent]:not([data-accent="green"]) .border-teal-500,html[data-accent]:not([data-accent="green"]) .border-teal-600,html[data-accent]:not([data-accent="green"]) .border-emerald-100,html[data-accent]:not([data-accent="green"]) .border-emerald-200,html[data-accent]:not([data-accent="green"]) .border-emerald-600{border-color:var(--primary-border)!important;}
html[data-accent]:not([data-accent="green"]) [style*="#0f4c3a"]{color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) [style*="background:#0f4c3a"],html[data-accent]:not([data-accent="green"]) [style*="background: #0f4c3a"]{background:var(--primary)!important;color:var(--primary-contrast)!important;}
html[data-accent]:not([data-accent="green"]) [style*="#0d9488"]{border-color:var(--primary-border)!important;color:var(--primary)!important;}

/* Header, nav, top controls */
html[data-accent]:not([data-accent="green"]) .waqar-main-header{background:var(--header-gradient)!important;box-shadow:0 18px 44px rgba(var(--primary-rgb),.22)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-main-header::after{content:"";position:absolute;inset:auto 8% -32px 8%;height:50px;background:radial-gradient(ellipse at center,rgba(var(--accent-rgb),.26),transparent 66%);pointer-events:none;filter:blur(18px);}
html[data-accent]:not([data-accent="green"]) .waqar-theme-switch,html[data-accent]:not([data-accent="green"]) .waqar-accent-toggle{border-color:rgba(255,255,255,.30)!important;background:rgba(255,255,255,.14)!important;color:#fff!important;box-shadow:0 10px 26px rgba(var(--primary-rgb),.26)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-theme-switch:hover,html[data-accent]:not([data-accent="green"]) .waqar-accent-toggle:hover{background:rgba(255,255,255,.24)!important;box-shadow:0 14px 32px rgba(var(--accent-rgb),.28)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-theme-switch__icon,html[data-accent]:not([data-accent="green"]) .waqar-accent-toggle__dot{background:rgba(255,255,255,.20)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-accent-toggle__dot{background:linear-gradient(135deg,var(--primary),var(--accent))!important;box-shadow:inset 0 0 0 3px rgba(255,255,255,.90),0 0 0 1px rgba(255,255,255,.36),0 0 22px rgba(var(--primary-rgb),.35)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-accent-menu{border-color:var(--primary-border)!important;box-shadow:0 22px 50px rgba(15,23,42,.18),0 0 0 1px rgba(var(--primary-rgb),.06),0 18px 42px rgba(var(--primary-rgb),.12)!important;}
html[data-theme="dark"][data-accent]:not([data-accent="green"]) .waqar-accent-menu,html.dark[data-accent]:not([data-accent="green"]) .waqar-accent-menu{box-shadow:0 24px 60px rgba(0,0,0,.50),0 0 0 1px rgba(var(--primary-rgb),.16),0 18px 42px rgba(var(--primary-rgb),.12)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-accent-option:hover{background:var(--nav-hover-bg)!important;border-color:var(--primary-border)!important;color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-accent-option.is-active{background:var(--nav-active-bg)!important;border-color:var(--primary-border)!important;color:var(--primary)!important;box-shadow:inset 4px 0 0 var(--primary);}
html[data-accent]:not([data-accent="green"]) .waqar-main-logo{background:linear-gradient(135deg,var(--primary-soft),var(--accent-soft))!important;color:var(--primary)!important;border:1px solid var(--primary-border)!important;box-shadow:0 12px 30px rgba(var(--primary-rgb),.16)!important;}

/* Buttons */
html[data-accent]:not([data-accent="green"]) button,html[data-accent]:not([data-accent="green"]) .btn{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
html[data-accent]:not([data-accent="green"]) button[class*="bg-transparent"],html[data-accent]:not([data-accent="green"]) .btn-ghost{box-shadow:none!important;}
html[data-accent]:not([data-accent="green"]) button:not(:disabled):active,html[data-accent]:not([data-accent="green"]) .btn:not(:disabled):active{transform:translateY(1px) scale(.99);}
html[data-accent]:not([data-accent="green"]) button:disabled,html[data-accent]:not([data-accent="green"]) .btn:disabled{opacity:.55!important;box-shadow:none!important;cursor:not-allowed!important;}
html[data-accent]:not([data-accent="green"]) button[class*="border"].text-teal-600,html[data-accent]:not([data-accent="green"]) button[class*="border"].text-emerald-600{background:var(--primary-softer)!important;border-color:var(--primary-border)!important;color:var(--primary)!important;}

/* Cards and surfaces */
html[data-accent]:not([data-accent="green"]) .card,html[data-accent]:not([data-accent="green"]) .home-card,html[data-accent]:not([data-accent="green"]) .teacher-panel,html[data-accent]:not([data-accent="green"]) .student-action-panel,html[data-accent]:not([data-accent="green"]) .teacher-soft-card,html[data-accent]:not([data-accent="green"]) .course-card,html[data-accent]:not([data-accent="green"]) .audio-reciter-card,html[data-accent]:not([data-accent="green"]) .waqar-book-viewer,html[data-accent]:not([data-accent="green"]) .bg-white,html[data-accent]:not([data-accent="green"]) .bg-slate-50{border-color:var(--border)!important;}
html[data-accent]:not([data-accent="green"]) .card:hover,html[data-accent]:not([data-accent="green"]) .home-card:hover,html[data-accent]:not([data-accent="green"]) .teacher-soft-card:hover,html[data-accent]:not([data-accent="green"]) .course-card:hover,html[data-accent]:not([data-accent="green"]) .audio-reciter-card:hover{border-color:var(--primary-border)!important;box-shadow:0 16px 34px rgba(15,23,42,.09),0 10px 24px rgba(var(--primary-rgb),.08)!important;}
html[data-theme="dark"][data-accent]:not([data-accent="green"]) .card:hover,html[data-theme="dark"][data-accent]:not([data-accent="green"]) .home-card:hover,html[data-theme="dark"][data-accent]:not([data-accent="green"]) .teacher-soft-card:hover,html[data-theme="dark"][data-accent]:not([data-accent="green"]) .course-card:hover,html[data-theme="dark"][data-accent]:not([data-accent="green"]) .audio-reciter-card:hover,html.dark[data-accent]:not([data-accent="green"]) .card:hover,html.dark[data-accent]:not([data-accent="green"]) .home-card:hover,html.dark[data-accent]:not([data-accent="green"]) .teacher-soft-card:hover,html.dark[data-accent]:not([data-accent="green"]) .course-card:hover,html.dark[data-accent]:not([data-accent="green"]) .audio-reciter-card:hover{box-shadow:0 20px 46px rgba(0,0,0,.40),0 12px 26px rgba(var(--primary-rgb),.11)!important;}
html[data-accent]:not([data-accent="green"]) .home-panel{background:linear-gradient(135deg,var(--primary-softer),rgba(255,255,255,.96) 48%,var(--accent-soft))!important;border-color:var(--primary-border)!important;box-shadow:0 20px 44px rgba(15,23,42,.08),0 18px 44px rgba(var(--primary-rgb),.09)!important;}
html[data-theme="dark"][data-accent]:not([data-accent="green"]) .home-panel,html.dark[data-accent]:not([data-accent="green"]) .home-panel{background:linear-gradient(135deg,rgba(var(--primary-rgb),.15),rgba(17,24,39,.94) 44%,rgba(var(--accent-rgb),.12))!important;border-color:var(--primary-border)!important;}
html[data-accent]:not([data-accent="green"]) .home-card::before,html[data-accent]:not([data-accent="green"]) .course-card::before,html[data-accent]:not([data-accent="green"]) .teacher-soft-card::before,html[data-accent]:not([data-accent="green"]) .student-action-panel::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--primary),var(--accent));opacity:.65;border-radius:999px;}
html[data-accent]:not([data-accent="green"]) .home-card,html[data-accent]:not([data-accent="green"]) .course-card,html[data-accent]:not([data-accent="green"]) .teacher-soft-card,html[data-accent]:not([data-accent="green"]) .student-action-panel{position:relative;}
html[data-accent]:not([data-accent="green"]) .home-icon{background:linear-gradient(135deg,var(--primary-soft),var(--accent-soft))!important;color:var(--primary)!important;border:1px solid var(--primary-border)!important;}
html[data-accent]:not([data-accent="green"]) .audio-reciter-card.active{border-color:var(--primary)!important;background:var(--tab-active-bg)!important;box-shadow:var(--primary-shadow)!important;color:var(--primary)!important;}

/* Forms */
html[data-accent]:not([data-accent="green"]) label:has(+ input:focus),html[data-accent]:not([data-accent="green"]) label:has(+ select:focus),html[data-accent]:not([data-accent="green"]) label:has(+ textarea:focus){color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) select:focus-visible,html[data-accent]:not([data-accent="green"]) input:focus-visible,html[data-accent]:not([data-accent="green"]) textarea:focus-visible{outline:none!important;}
html[data-accent]:not([data-accent="green"]) input[type="file"]::file-selector-button{background:var(--primary)!important;color:var(--primary-contrast)!important;border:0;border-radius:.75rem;padding:.5rem .75rem;margin-inline-end:.5rem;}

/* Tables */
html[data-accent]:not([data-accent="green"]) thead th,html[data-accent]:not([data-accent="green"]) table th{background:var(--table-head-bg)!important;color:var(--text)!important;border-bottom-color:var(--primary-border)!important;}
html[data-accent]:not([data-accent="green"]) tbody tr{transition:background-color .16s ease;}
html[data-accent]:not([data-accent="green"]) tbody tr:hover{background:var(--table-row-hover)!important;}
html[data-accent]:not([data-accent="green"]) tr.is-active,html[data-accent]:not([data-accent="green"]) tr.active,html[data-accent]:not([data-accent="green"]) tr[aria-selected="true"]{background:var(--table-row-selected)!important;}

/* Tabs, filters, chips, badges */
html[data-accent]:not([data-accent="green"]) [role="tab"][aria-selected="true"],html[data-accent]:not([data-accent="green"]) .active-tab,html[data-accent]:not([data-accent="green"]) .is-active{background:var(--tab-active-bg)!important;color:var(--primary)!important;border-color:var(--primary-border)!important;box-shadow:inset 0 -3px 0 var(--primary);}
html[data-accent]:not([data-accent="green"]) .badge,html[data-accent]:not([data-accent="green"]) .chip,html[data-accent]:not([data-accent="green"]) .tag,html[data-accent]:not([data-accent="green"]) [class*="badge"]{background:var(--badge-bg)!important;color:var(--badge-text)!important;border-color:var(--badge-border)!important;}

/* Modals, dropdowns and popovers */
html[data-accent]:not([data-accent="green"]) .modal-body{border-color:var(--primary-border)!important;box-shadow:0 24px 70px rgba(15,23,42,.18),0 0 0 1px rgba(var(--primary-rgb),.05)!important;}
html[data-accent]:not([data-accent="green"]) .modal-body h1,html[data-accent]:not([data-accent="green"]) .modal-body h2,html[data-accent]:not([data-accent="green"]) .modal-body h3{color:var(--text)!important;}
html[data-accent]:not([data-accent="green"]) .modal-body h3 i,html[data-accent]:not([data-accent="green"]) .modal-body .text-teal-600{color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) [role="menu"],html[data-accent]:not([data-accent="green"]) [role="listbox"],html[data-accent]:not([data-accent="green"]) .dropdown,html[data-accent]:not([data-accent="green"]) .popover{background:var(--surface)!important;color:var(--text)!important;border-color:var(--primary-border)!important;box-shadow:var(--shadow)!important;}
html[data-accent]:not([data-accent="green"]) [role="menuitem"]:hover,html[data-accent]:not([data-accent="green"]) [role="option"]:hover{background:var(--nav-hover-bg)!important;color:var(--primary)!important;}

/* Progress/loading/decorative */
html[data-accent]:not([data-accent="green"]) .waqar-spinner{border-top-color:var(--primary)!important;border-color:var(--primary-soft);border-top-color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) .progress-bar,html[data-accent]:not([data-accent="green"]) .progress,html[data-accent]:not([data-accent="green"]) .loading-bar{background:linear-gradient(90deg,var(--primary),var(--accent))!important;}
html[data-accent]:not([data-accent="green"]) .text-teal-600 .fa-spin,html[data-accent]:not([data-accent="green"]) .fa-spinner.fa-spin{color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) #root{background:radial-gradient(circle at 14% 0%,var(--decor-glow),transparent 24%),radial-gradient(circle at 88% 8%,rgba(var(--accent-rgb),.075),transparent 22%),var(--bg)!important;}
html[data-theme="light"][data-accent]:not([data-accent="green"]) #root{background:radial-gradient(circle at 14% 0%,rgba(var(--primary-rgb),.07),transparent 24%),radial-gradient(circle at 88% 8%,rgba(var(--accent-rgb),.055),transparent 22%),var(--bg)!important;}

/* Book / Quran UI: keep reading surfaces neutral but accent controls */
html[data-accent]:not([data-accent="green"]) .waqar-pdf-title{color:var(--primary)!important;}
html[data-accent]:not([data-accent="green"]) .waqar-pdf-btn:hover{border-color:var(--primary-border)!important;color:var(--primary)!important;background:var(--primary-softer)!important;}
html[data-accent]:not([data-accent="green"]) .student-header{border-bottom-color:var(--primary)!important;}
@media(max-width:640px){html[data-accent]:not([data-accent="green"]) .student-header{border-bottom-color:var(--primary)!important;}}


/* Local embedded readers for Quran/Hadith/Tuhfa */
body.waqar-local-reader-open{overflow:hidden!important;}
.waqar-local-reader-overlay{position:fixed;inset:0;z-index:999999;background:#050505;direction:rtl;overflow:hidden;}
.waqar-local-reader-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff;display:block;}
.waqar-local-reader-back{position:fixed;top:10px;right:10px;z-index:1000000;border:1px solid rgba(255,255,255,.35);background:rgba(10,15,20,.72);color:#fff;border-radius:999px;padding:9px 14px;font-family:Cairo,Arial,sans-serif;font-weight:900;font-size:13px;line-height:1;display:inline-flex;align-items:center;gap:7px;box-shadow:0 10px 28px rgba(0,0,0,.28);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease;}
.waqar-local-reader-back:hover{background:rgba(15,76,58,.88);transform:translateY(-1px);box-shadow:0 14px 34px rgba(0,0,0,.34);}
.waqar-local-reader-back:active{transform:translateY(0) scale(.98);}
@media(max-width:640px){.waqar-local-reader-back{top:8px;right:8px;padding:8px 12px;font-size:12px;}}

/* === FEATURED STARS LEADERBOARD V60 — GAME ARENA / SINGLE-COLUMN === */
.stars-page{width:min(100%,780px);padding-inline:.2rem;}
.stars-page .stars-back{color:var(--text-muted)!important;}
.stars-board{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:clamp(.7rem,1.8vw,1rem);
    border:1px solid rgba(var(--primary-rgb),.20);
    border-radius:clamp(1rem,2vw,1.5rem);
    color:var(--text);
    background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(var(--primary-rgb),.055) 58%,rgba(var(--accent-rgb),.07));
    box-shadow:0 18px 48px rgba(15,23,42,.11),inset 0 1px 0 rgba(255,255,255,.86);
}
html[data-theme="dark"] .stars-board,html.dark .stars-board{
    color:#f8fafc;
    border-color:rgba(var(--primary-rgb),.26);
    background:radial-gradient(circle at 82% -8%,rgba(var(--primary-rgb),.20),transparent 31%),radial-gradient(circle at 8% 102%,rgba(var(--accent-rgb),.15),transparent 30%),linear-gradient(155deg,#050817 0%,#080d21 48%,#0b1230 100%);
    box-shadow:0 24px 62px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.045);
}
.stars-board::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(30deg,rgba(var(--primary-rgb),.045) 12%,transparent 12.5%,transparent 87%,rgba(var(--primary-rgb),.045) 87.5%),linear-gradient(150deg,rgba(var(--primary-rgb),.045) 12%,transparent 12.5%,transparent 87%,rgba(var(--primary-rgb),.045) 87.5%),linear-gradient(30deg,rgba(var(--accent-rgb),.035) 12%,transparent 12.5%,transparent 87%,rgba(var(--accent-rgb),.035) 87.5%);background-size:34px 60px;background-position:0 0,0 0,17px 30px;opacity:.42;-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.5) 46%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.5) 46%,transparent 100%);}
html[data-theme="dark"] .stars-board::before,html.dark .stars-board::before{opacity:.7;}
.stars-board::after{content:"";position:absolute;top:0;left:11%;right:11%;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--primary-rgb),.75),rgba(var(--accent-rgb),.72),transparent);box-shadow:0 0 18px rgba(var(--primary-rgb),.55);pointer-events:none;}
.stars-board-glow{position:absolute;z-index:-1;border-radius:999px;filter:blur(28px);pointer-events:none;opacity:.34;}
.stars-board-glow-one{width:170px;height:170px;top:-115px;right:-50px;background:rgba(var(--primary-rgb),.42);}
.stars-board-glow-two{width:150px;height:150px;bottom:-105px;left:-55px;background:rgba(var(--accent-rgb),.32);}
.stars-board-topbar{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.06rem .06rem .62rem;position:relative;z-index:2;}
.stars-brand{display:flex;align-items:center;gap:.58rem;min-width:0;}
.stars-brand-icon{position:relative;width:2.65rem;height:2.65rem;display:grid;place-items:center;flex:0 0 auto;border-radius:.82rem;background:linear-gradient(145deg,var(--primary),var(--accent));color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.16),0 9px 24px rgba(var(--primary-rgb),.30),inset 0 1px 0 rgba(255,255,255,.32);font-size:1.15rem;transform:rotate(4deg);}
.stars-brand-icon::after{content:"";position:absolute;inset:4px;border:1px solid rgba(255,255,255,.20);border-radius:.6rem;}
.stars-brand h2{margin:0;color:var(--text);font-size:clamp(1.02rem,2.6vw,1.34rem);line-height:1.25;font-weight:950;letter-spacing:-.025em;}
.stars-brand p{margin:.12rem 0 0;color:var(--text-muted);font-size:.61rem;font-weight:850;}
html[data-theme="dark"] .stars-brand h2,html.dark .stars-brand h2{color:#f8fafc;}
html[data-theme="dark"] .stars-brand p,html.dark .stars-brand p{color:#9da9c3;}
.stars-total{display:flex;align-items:center;gap:.38rem;flex:0 0 auto;padding:.34rem .5rem;border:1px solid rgba(var(--primary-rgb),.20);border-radius:.76rem;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 7px 18px rgba(var(--primary-rgb),.07);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
html[data-theme="dark"] .stars-total,html.dark .stars-total{background:rgba(5,10,28,.74);border-color:rgba(var(--primary-rgb),.26);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 7px 20px rgba(0,0,0,.2);}
.stars-total-icon{width:1.55rem;height:1.55rem;display:grid;place-items:center;border-radius:.5rem;background:linear-gradient(135deg,rgba(var(--primary-rgb),.16),rgba(var(--accent-rgb),.14));color:var(--primary);font-size:.65rem;}
.stars-total-copy{display:flex;align-items:baseline;gap:.27rem;white-space:nowrap;}
.stars-total-copy b{color:var(--text);font-size:.8rem;font-weight:950;}
.stars-total-copy small{color:var(--text-muted);font-size:.52rem;font-weight:900;}
html[data-theme="dark"] .stars-total-copy b,html.dark .stars-total-copy b{color:#fff;}
.stars-period-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.28rem;padding:.25rem;border:1px solid rgba(var(--primary-rgb),.18);border-radius:.88rem;background:rgba(255,255,255,.64);box-shadow:inset 0 1px 0 rgba(255,255,255,.82);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);position:relative;z-index:2;}
html[data-theme="dark"] .stars-period-tabs,html.dark .stars-period-tabs{background:rgba(3,7,24,.64);border-color:rgba(var(--primary-rgb),.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.035);}
html .stars-period-btn{position:relative;min-width:0!important;min-height:2.42rem;padding:.39rem .28rem;border:1px solid transparent!important;border-radius:.64rem!important;background:transparent!important;color:var(--text-muted)!important;display:flex;align-items:center;justify-content:center;gap:.3rem;font-size:clamp(.58rem,1.55vw,.69rem);line-height:1.2;font-weight:950;transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease!important;white-space:nowrap;box-shadow:none!important;overflow:hidden;}
html .stars-period-btn:hover{color:var(--primary)!important;background:rgba(var(--primary-rgb),.07)!important;}
html .stars-period-btn.active,html .stars-period-btn[aria-pressed="true"]{color:#fff!important;background:linear-gradient(135deg,var(--primary),var(--accent))!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 8px 20px rgba(var(--primary-rgb),.26),inset 0 1px 0 rgba(255,255,255,.28)!important;transform:translateY(-1px);}
html .stars-period-btn.active::before,html .stars-period-btn[aria-pressed="true"]::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.20) 45%,transparent 70%);transform:translateX(-120%);animation:stars-tab-shine 3.5s ease-in-out infinite;pointer-events:none;}
html[data-theme="dark"] .stars-period-btn,html.dark .stars-period-btn{color:#b7c2d8!important;}
html[data-theme="dark"] .stars-period-btn:hover,html.dark .stars-period-btn:hover{color:#fff!important;background:rgba(var(--primary-rgb),.11)!important;}
@keyframes stars-tab-shine{0%,55%{transform:translateX(-120%)}78%,100%{transform:translateX(120%)}}
.stars-podium{direction:ltr;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:clamp(.3rem,1.3vw,.58rem);padding:.82rem 0 .72rem;position:relative;z-index:2;}
.stars-podium::before{content:"";position:absolute;left:7%;right:7%;bottom:.42rem;height:54%;border-radius:50% 50% 14px 14px/18% 18% 14px 14px;background:radial-gradient(ellipse at center bottom,rgba(var(--primary-rgb),.10),transparent 68%);filter:blur(5px);pointer-events:none;}
.stars-podium-card{--podium-tone:var(--primary-rgb);direction:rtl;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;min-width:0;min-height:9.3rem;padding:.5rem .42rem 1.05rem;border:1px solid rgba(var(--podium-tone),.25);border-radius:.96rem .96rem .72rem .72rem;background:linear-gradient(160deg,rgba(255,255,255,.97),rgba(var(--podium-tone),.055));box-shadow:0 10px 24px rgba(15,23,42,.09),inset 0 1px 0 rgba(255,255,255,.9);overflow:hidden;transform:translateZ(0);}
.stars-podium-card.rank-1{--podium-tone:245,185,66;min-height:10.45rem;z-index:3;border-color:rgba(245,185,66,.42);box-shadow:0 16px 32px rgba(245,185,66,.12),0 10px 24px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.9);}
.stars-podium-card.rank-2{--podium-tone:148,163,184;}
.stars-podium-card.rank-3{--podium-tone:205,127,65;}
html[data-theme="dark"] .stars-podium-card,html.dark .stars-podium-card{background:linear-gradient(160deg,rgba(21,29,61,.98),rgba(7,12,31,.98));border-color:rgba(var(--podium-tone),.34);box-shadow:0 14px 30px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.045);}
html[data-theme="dark"] .stars-podium-card.rank-1,html.dark .stars-podium-card.rank-1{box-shadow:0 16px 36px rgba(245,185,66,.12),0 16px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05);}
.stars-podium-card::before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 12%,rgba(255,255,255,.22) 33%,transparent 52%);transform:translateX(-130%);animation:stars-card-scan 5.2s ease-in-out infinite;pointer-events:none;}
.stars-podium-card.rank-2::before{animation-delay:.8s}.stars-podium-card.rank-3::before{animation-delay:1.6s}
@keyframes stars-card-scan{0%,64%{transform:translateX(-130%)}86%,100%{transform:translateX(130%)}}
.stars-podium-aura{position:absolute;width:5.2rem;height:5.2rem;top:2.15rem;left:50%;transform:translateX(-50%);border-radius:999px;background:radial-gradient(circle,rgba(var(--podium-tone),.22),transparent 67%);filter:blur(5px);pointer-events:none;}
.stars-podium-card.rank-1 .stars-podium-aura{width:6.5rem;height:6.5rem;top:1.9rem;background:radial-gradient(circle,rgba(245,185,66,.30),transparent 68%);}
.stars-podium-medal{position:relative;z-index:2;min-height:1.35rem;display:flex;align-items:center;justify-content:center;gap:.24rem;color:var(--text-muted);font-size:.52rem;font-weight:950;white-space:nowrap;}
.stars-podium-medal i{font-size:.9rem;color:rgb(var(--podium-tone));filter:drop-shadow(0 0 8px rgba(var(--podium-tone),.36));}
.stars-podium-card.rank-1 .stars-podium-medal i{font-size:1.12rem;color:#f6bd3b;filter:drop-shadow(0 0 10px rgba(246,189,59,.55));animation:stars-crown-float 2.6s ease-in-out infinite;}
@keyframes stars-crown-float{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-2px) rotate(4deg)}}
html[data-theme="dark"] .stars-podium-medal,html.dark .stars-podium-medal{color:#b9c5da;}
.stars-podium-photo-wrap{position:relative;z-index:2;width:3.55rem;height:3.55rem;margin:.36rem 0 .38rem;flex:0 0 auto;}
.stars-podium-card.rank-1 .stars-podium-photo-wrap{width:4.35rem;height:4.35rem;margin-top:.3rem;}
.stars-podium-photo{width:100%;height:100%;object-fit:cover;border-radius:50%;border:2px solid rgba(var(--podium-tone),.72);background:var(--surface);box-shadow:0 8px 20px rgba(15,23,42,.18),0 0 0 4px rgba(var(--podium-tone),.10),0 0 18px rgba(var(--podium-tone),.16);}
.stars-podium-card.rank-1 .stars-podium-photo{border-width:2.5px;border-color:rgba(246,189,59,.92);box-shadow:0 10px 24px rgba(15,23,42,.20),0 0 0 4px rgba(246,189,59,.12),0 0 26px rgba(246,189,59,.26);}
.stars-podium-rank{position:absolute;inset:auto -.18rem -.12rem auto;width:1.42rem;height:1.42rem;border-radius:.48rem;display:grid;place-items:center;background:linear-gradient(135deg,rgb(var(--podium-tone)),rgba(var(--podium-tone),.76));color:#fff;font-size:.59rem;font-weight:950;border:2px solid var(--surface);box-shadow:0 5px 13px rgba(var(--podium-tone),.30);transform:rotate(-7deg);}
html[data-theme="dark"] .stars-podium-rank,html.dark .stars-podium-rank{border-color:#0a1028;}
.stars-podium-card.rank-1 .stars-podium-rank{background:linear-gradient(135deg,#f9d45f,#e5a413);color:#342304;}
.stars-podium-card.rank-2 .stars-podium-rank{background:linear-gradient(135deg,#dbe2ee,#8795ab);color:#1c2635;}
.stars-podium-card.rank-3 .stars-podium-rank{background:linear-gradient(135deg,#e5a56d,#b7652e);color:#2b1507;}
.stars-podium-copy{position:relative;z-index:2;width:100%;min-width:0;}
.stars-podium-name{display:-webkit-box;width:100%;margin:0;color:var(--text);font-size:clamp(.61rem,1.6vw,.76rem);line-height:1.42;font-weight:950;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
html[data-theme="dark"] .stars-podium-name,html.dark .stars-podium-name{color:#fff;}
.stars-memorization{width:100%;margin:.25rem 0 0;display:flex;align-items:center;justify-content:center;gap:.22rem;color:var(--primary);font-size:clamp(.51rem,1.25vw,.60rem);font-weight:950;line-height:1.35;}
.stars-memorization span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.stars-podium-platform{position:absolute;z-index:1;left:10%;right:10%;bottom:-.1rem;height:.78rem;border-radius:.35rem .35rem 0 0;background:linear-gradient(180deg,rgba(var(--podium-tone),.28),rgba(var(--podium-tone),.07));border-top:1px solid rgba(var(--podium-tone),.45);box-shadow:0 -5px 16px rgba(var(--podium-tone),.08);}
.stars-podium-card.rank-1 .stars-podium-platform{height:1rem;background:linear-gradient(180deg,rgba(245,185,66,.38),rgba(245,185,66,.08));border-top-color:rgba(245,185,66,.60);box-shadow:0 -6px 18px rgba(245,185,66,.12);}
.stars-podium-placeholder{visibility:hidden;pointer-events:none;box-shadow:none!important;}
.stars-ranking-panel{margin-top:.12rem;padding:0;position:relative;z-index:2;}
.stars-ranking-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.08rem .1rem .45rem;color:var(--text);font-size:.62rem;font-weight:950;}
.stars-ranking-head>div{display:flex;align-items:center;gap:.36rem;min-width:0;}
.stars-ranking-head-icon{width:1.45rem;height:1.45rem;display:grid;place-items:center;border-radius:.48rem;background:linear-gradient(135deg,rgba(var(--primary-rgb),.14),rgba(var(--accent-rgb),.11));border:1px solid rgba(var(--primary-rgb),.14);color:var(--primary);font-size:.59rem;box-shadow:0 6px 15px rgba(var(--primary-rgb),.06);}
.stars-ranking-count{flex:0 0 auto;padding:.25rem .44rem;border-radius:.5rem;background:rgba(var(--primary-rgb),.08);border:1px solid rgba(var(--primary-rgb),.10);color:var(--primary);font-size:.5rem;font-weight:950;}
html[data-theme="dark"] .stars-ranking-head,html.dark .stars-ranking-head{color:#f8fafc;}
.stars-ranking-grid{display:grid;grid-template-columns:1fr;gap:.34rem;}
.stars-ranking-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.52rem;min-width:0;min-height:3.42rem;padding:.36rem .44rem;border:1px solid rgba(var(--primary-rgb),.12);border-radius:.72rem;background:linear-gradient(100deg,rgba(255,255,255,.94),rgba(var(--primary-rgb),.042));box-shadow:0 5px 14px rgba(15,23,42,.045),inset 0 1px 0 rgba(255,255,255,.76);overflow:hidden;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;}
.stars-ranking-row::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(to bottom,var(--primary),var(--accent));opacity:.88;}
.stars-row-shine{position:absolute;top:-50%;bottom:-50%;width:20%;left:-35%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);transform:skewX(-18deg);pointer-events:none;}
.stars-ranking-row:hover{transform:translateX(-2px);border-color:rgba(var(--primary-rgb),.30);box-shadow:0 9px 22px rgba(var(--primary-rgb),.10),inset 0 1px 0 rgba(255,255,255,.78);}
.stars-ranking-row:hover .stars-row-shine{animation:stars-row-shine .85s ease;}
@keyframes stars-row-shine{from{left:-35%}to{left:125%}}
html[data-theme="dark"] .stars-ranking-row,html.dark .stars-ranking-row{background:linear-gradient(100deg,rgba(18,25,56,.96),rgba(8,13,34,.96));border-color:rgba(var(--primary-rgb),.16);box-shadow:0 7px 18px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.03);}
html[data-theme="dark"] .stars-ranking-row:hover,html.dark .stars-ranking-row:hover{border-color:rgba(var(--primary-rgb),.34);box-shadow:0 10px 24px rgba(0,0,0,.28),0 0 18px rgba(var(--primary-rgb),.08);}
.stars-ranking-main{display:flex;align-items:center;gap:.42rem;min-width:0;}
.stars-rank-seal{position:relative;width:1.72rem;height:1.72rem;display:grid;place-items:center;flex:0 0 auto;border-radius:.52rem;border:1px solid rgba(var(--primary-rgb),.28);background:linear-gradient(145deg,rgba(var(--primary-rgb),.14),rgba(var(--accent-rgb),.065));color:var(--primary);font-size:.63rem;font-weight:950;box-shadow:inset 0 1px 0 rgba(255,255,255,.35);}
.stars-ranking-avatar{width:2.24rem;height:2.24rem;object-fit:cover;flex:0 0 auto;border-radius:50%;background:var(--surface);border:1.5px solid rgba(var(--primary-rgb),.33);box-shadow:0 5px 13px rgba(15,23,42,.11),0 0 0 3px rgba(var(--primary-rgb),.055);}
.stars-ranking-name{min-width:0;}
.stars-ranking-name h3{margin:0;color:var(--text);font-size:clamp(.65rem,1.55vw,.75rem);font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
html[data-theme="dark"] .stars-ranking-name h3,html.dark .stars-ranking-name h3{color:#f8fafc;}
.stars-ranking-memo{max-width:9.2rem;display:flex;align-items:center;justify-content:flex-end;gap:.24rem;padding:.31rem .42rem;border:1px solid rgba(var(--primary-rgb),.10);border-radius:.52rem;background:linear-gradient(135deg,rgba(var(--primary-rgb),.09),rgba(var(--accent-rgb),.055));color:var(--primary);font-size:clamp(.52rem,1.22vw,.61rem);font-weight:950;white-space:nowrap;}
.stars-ranking-memo span{overflow:hidden;text-overflow:ellipsis;}
.stars-empty{min-height:16rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem .8rem;position:relative;z-index:2;color:var(--text-muted);}
.stars-empty-icon{width:3.8rem;height:3.8rem;display:grid;place-items:center;border-radius:1rem;background:linear-gradient(135deg,rgba(var(--primary-rgb),.14),rgba(var(--accent-rgb),.11));border:1px solid rgba(var(--primary-rgb),.17);color:var(--primary);font-size:1.45rem;box-shadow:0 12px 28px rgba(var(--primary-rgb),.09);}
.stars-empty h3{margin:.72rem 0 .2rem;color:var(--text);font-size:.86rem;font-weight:950;}
.stars-empty p{margin:0;max-width:25rem;font-size:.64rem;line-height:1.65;font-weight:760;}
html[data-theme="dark"] .stars-empty h3,html.dark .stars-empty h3{color:#f8fafc;}
@media(max-width:640px){
    .stars-page{padding-inline:0;}
    .stars-board{padding:.58rem;border-radius:1rem;}
    .stars-board-topbar{padding:0 0 .52rem;}
    .stars-brand{gap:.43rem;}
    .stars-brand-icon{width:2.22rem;height:2.22rem;border-radius:.68rem;font-size:.9rem;}
    .stars-brand-icon::after{inset:3px;border-radius:.5rem;}
    .stars-brand h2{font-size:.88rem;}
    .stars-brand p{font-size:.5rem;}
    .stars-total{padding:.27rem .36rem;border-radius:.61rem;gap:.25rem;}
    .stars-total-icon{width:1.27rem;height:1.27rem;border-radius:.4rem;font-size:.52rem;}
    .stars-total-copy{gap:.18rem;}
    .stars-total-copy b{font-size:.67rem;}
    .stars-total-copy small{font-size:.43rem;}
    .stars-period-tabs{gap:.19rem;padding:.19rem;border-radius:.7rem;}
    html .stars-period-btn{min-height:2.24rem;padding:.33rem .08rem;border-radius:.53rem!important;gap:.18rem;font-size:.52rem;letter-spacing:-.02em;}
    html .stars-period-btn i{font-size:.61rem;}
    .stars-podium{gap:.23rem;padding:.62rem 0 .6rem;}
    .stars-podium-card{min-height:7.28rem;padding:.38rem .2rem .78rem;border-radius:.72rem .72rem .56rem .56rem;}
    .stars-podium-card.rank-1{min-height:8.15rem;}
    .stars-podium-medal{min-height:1.08rem;gap:.14rem;font-size:.41rem;}
    .stars-podium-medal i{font-size:.7rem;}
    .stars-podium-card.rank-1 .stars-podium-medal i{font-size:.84rem;}
    .stars-podium-aura{width:4rem;height:4rem;top:1.72rem;}
    .stars-podium-card.rank-1 .stars-podium-aura{width:4.9rem;height:4.9rem;top:1.5rem;}
    .stars-podium-photo-wrap{width:2.65rem;height:2.65rem;margin:.26rem 0 .27rem;}
    .stars-podium-card.rank-1 .stars-podium-photo-wrap{width:3.15rem;height:3.15rem;margin-top:.2rem;}
    .stars-podium-rank{width:1.08rem;height:1.08rem;border-radius:.36rem;font-size:.46rem;inset:auto -.08rem -.08rem auto;}
    .stars-podium-name{font-size:.53rem;line-height:1.36;-webkit-line-clamp:2;}
    .stars-memorization{margin-top:.17rem;font-size:.45rem;gap:.13rem;}
    .stars-podium-platform{height:.58rem;}
    .stars-podium-card.rank-1 .stars-podium-platform{height:.72rem;}
    .stars-ranking-head{padding:.02rem .04rem .36rem;font-size:.54rem;}
    .stars-ranking-head-icon{width:1.28rem;height:1.28rem;border-radius:.4rem;font-size:.5rem;}
    .stars-ranking-count{font-size:.45rem;padding:.21rem .33rem;}
    .stars-ranking-grid{gap:.27rem;}
    .stars-ranking-row{min-height:3.02rem;padding:.3rem .32rem;border-radius:.6rem;gap:.3rem;}
    .stars-ranking-main{gap:.29rem;}
    .stars-rank-seal{width:1.43rem;height:1.43rem;border-radius:.43rem;font-size:.54rem;}
    .stars-ranking-avatar{width:1.88rem;height:1.88rem;}
    .stars-ranking-name h3{font-size:.58rem;}
    .stars-ranking-memo{max-width:6.9rem;padding:.25rem .31rem;border-radius:.43rem;font-size:.48rem;gap:.15rem;}
    .stars-empty{min-height:14rem;padding:1.2rem .6rem;}
}
@media(max-width:380px){
    .stars-brand p{display:none;}
    .stars-total-copy small{display:none;}
    .stars-podium-card{min-height:6.9rem;}
    .stars-podium-card.rank-1{min-height:7.65rem;}
    .stars-podium-photo-wrap{width:2.42rem;height:2.42rem;}
    .stars-podium-card.rank-1 .stars-podium-photo-wrap{width:2.9rem;height:2.9rem;}
    .stars-ranking-memo{max-width:5.9rem;}
}
@media(prefers-reduced-motion:reduce){
    .stars-period-btn.active::before,.stars-period-btn[aria-pressed="true"]::before,.stars-podium-card::before,.stars-podium-card.rank-1 .stars-podium-medal i{animation:none!important;}
}



/* === 2026-07-08 compact navigation + admin command center === */
.waqar-navbar{min-height:58px;background:var(--header-gradient)!important;color:#fff;box-shadow:0 8px 24px rgba(15,23,42,.12);position:relative;z-index:80}
.waqar-navbar__inner{width:min(1500px,100%);height:58px;margin:auto;padding:0 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;direction:rtl}
.waqar-brand{display:flex;align-items:center;gap:9px;min-width:0}.waqar-brand__logo{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);display:grid;place-items:center;font-size:17px}.waqar-brand strong{font-size:16px;white-space:nowrap}
.waqar-navbar .waqar-top-controls{position:static!important;inset:auto!important;display:flex;align-items:center;gap:7px;z-index:2}.waqar-navbar .waqar-theme-switch,.waqar-navbar .waqar-accent-toggle{min-height:34px;padding:6px 9px;border-radius:10px}.waqar-navbar .waqar-accent-menu{top:calc(100% + 8px);left:0;right:auto}
@media(max-width:520px){.waqar-navbar__inner{padding:0 9px}.waqar-navbar .waqar-theme-switch__label,.waqar-navbar .waqar-accent-toggle__label{display:none}.waqar-navbar .waqar-theme-switch,.waqar-navbar .waqar-accent-toggle{width:36px;padding:0}.waqar-brand strong{font-size:14px}}

.admin-command-center{min-height:calc(100vh - 105px)}.admin-command-bar{height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm)}.admin-menu-button{width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--primary) 20%,transparent)}.admin-command-kicker{font-size:10px;color:var(--muted);font-weight:800}.admin-command-title{font-size:16px;font-weight:900;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-sidebar-overlay{position:fixed;inset:0;background:rgba(2,6,23,.54);backdrop-filter:blur(3px);z-index:99996}.admin-sidebar{position:fixed;top:0;right:0;bottom:0;width:min(330px,88vw);z-index:99997;background:var(--surface);border-left:1px solid var(--border);box-shadow:-22px 0 60px rgba(2,6,23,.22);padding:14px;display:flex;flex-direction:column;animation:adminDrawerIn .2s ease both}@keyframes adminDrawerIn{from{transform:translateX(100%);opacity:.7}to{transform:none;opacity:1}}.admin-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:5px 3px 14px;border-bottom:1px solid var(--border)}.admin-sidebar-brand{display:flex;align-items:center;gap:10px}.admin-sidebar-brand>span{width:42px;height:42px;border-radius:13px;background:var(--primary);color:#fff;display:grid;place-items:center}.admin-sidebar-brand strong,.admin-sidebar-brand small{display:block}.admin-sidebar-brand strong{color:var(--text);font-size:15px}.admin-sidebar-brand small{color:var(--muted);font-size:10px;margin-top:2px}.admin-sidebar-close{width:38px;height:38px;border-radius:11px;background:var(--surface-soft);color:var(--muted)}.admin-sidebar-nav{padding-top:12px;overflow:auto;display:flex;flex-direction:column;gap:7px}.admin-sidebar-direct,.admin-nav-group-toggle{width:100%;min-height:46px;border-radius:13px;padding:0 13px;display:flex;align-items:center;gap:10px;color:var(--text);font-size:13px;font-weight:850;background:transparent}.admin-sidebar-direct:hover,.admin-nav-group-toggle:hover{background:var(--surface-soft)}.admin-sidebar-direct.active{background:var(--primary);color:#fff}.admin-nav-group-toggle{justify-content:space-between}.admin-nav-group-toggle>span{display:flex;align-items:center;gap:10px}.admin-nav-group-items{margin:3px 16px 5px 0;padding-right:9px;border-right:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));display:flex;flex-direction:column;gap:4px}.admin-nav-group-items button{min-height:39px;padding:0 11px;border-radius:10px;display:flex;align-items:center;gap:9px;color:var(--muted);font-weight:750;font-size:12px;text-align:right}.admin-nav-group-items button:hover,.admin-nav-group-items button.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary)}.admin-workspace{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:14px;box-shadow:var(--shadow-sm)}

.admin-dashboard-hero{position:relative;overflow:hidden;min-height:128px;padding:20px;border-radius:20px;background:linear-gradient(125deg,var(--primary),color-mix(in srgb,var(--primary) 62%,#0f172a));color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-dashboard-hero:after{content:"";position:absolute;width:220px;height:220px;border:36px solid rgba(255,255,255,.07);border-radius:50%;left:-60px;top:-70px}.admin-dashboard-hero h3{font-size:24px;font-weight:950;margin-top:7px;position:relative;z-index:1}.admin-dashboard-hero p{font-size:11px;opacity:.8;margin-top:5px;position:relative;z-index:1}.admin-dashboard-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:900;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.18);padding:5px 8px;border-radius:999px}.admin-dashboard-live{position:relative;z-index:1;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;background:rgba(2,6,23,.18);padding:7px 10px;border-radius:999px}.admin-dashboard-live span{width:7px;height:7px;border-radius:50%;background:#86efac;box-shadow:0 0 0 5px rgba(134,239,172,.15)}
.admin-day-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-day-card{min-height:126px;border-radius:18px;border:1px solid var(--border);background:var(--surface);padding:14px;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;position:relative;overflow:hidden}.admin-day-card-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:18px;background:var(--surface-soft)}.admin-day-card-copy small,.admin-day-card-copy strong{display:block}.admin-day-card-copy small{color:var(--muted);font-size:10px;font-weight:800}.admin-day-card-copy strong{font-size:25px;color:var(--text);font-weight:950;line-height:1.1;margin-top:4px}.admin-day-card button{grid-column:1/-1;border-top:1px solid var(--border);padding-top:9px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:850;color:var(--muted)}.admin-day-card.tone-primary .admin-day-card-icon{color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface))}.admin-day-card.tone-green .admin-day-card-icon{color:#059669;background:#ecfdf5}.admin-day-card.tone-red .admin-day-card-icon{color:#dc2626;background:#fef2f2}.admin-day-card.tone-amber .admin-day-card-icon{color:#d97706;background:#fffbeb}
.admin-intervention,.admin-insight-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:14px}.admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-section-head>div{display:flex;align-items:center;gap:10px}.admin-section-head h3{font-size:15px;color:var(--text);font-weight:950}.admin-section-head p{font-size:10px;color:var(--muted);margin-top:2px}.admin-section-head.compact{margin-bottom:10px}.admin-section-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--surface))}.admin-attention-count{min-width:32px;height:32px;padding:0 8px;border-radius:10px;background:#fff7ed;color:#c2410c;display:grid;place-items:center;font-size:12px;font-weight:950}.admin-intervention-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.admin-intervention-row{min-height:92px;padding:11px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;text-align:right}.admin-intervention-row>.fa-chevron-left{grid-column:3;color:var(--muted);font-size:10px}.admin-intervention-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--surface)}.admin-intervention-title{font-size:10px;color:var(--muted);font-weight:800}.admin-intervention-row b{grid-column:2;font-size:20px;color:var(--text);font-weight:950}.admin-intervention-row.tone-red .admin-intervention-icon{color:#dc2626}.admin-intervention-row.tone-amber .admin-intervention-icon{color:#d97706}.admin-intervention-row.tone-blue .admin-intervention-icon{color:#2563eb}.admin-intervention-row.tone-purple .admin-intervention-icon{color:#7c3aed}.admin-intervention-row.tone-green .admin-intervention-icon{color:#059669}.admin-insights-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.admin-mini-stats>div{background:var(--surface-soft);border:1px solid var(--border);border-radius:12px;padding:10px}.admin-mini-stats span,.admin-mini-stats b{display:block}.admin-mini-stats span{font-size:9px;color:var(--muted);font-weight:750}.admin-mini-stats b{font-size:15px;color:var(--text);font-weight:950;margin-top:4px}
.students-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:14px;padding:10px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border);font-size:10px;color:var(--muted);font-weight:800}.students-pagination-controls{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.students-pagination-controls button{min-width:34px;height:34px;padding:0 9px;border-radius:9px;background:var(--surface);border:1px solid var(--border);font-size:10px;color:var(--text);font-weight:850}.students-pagination-controls button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.students-pagination-controls button:disabled{opacity:.4}.students-pagination-dots{padding:0 3px}.auto-code-note{min-height:42px;padding:8px 10px;border-radius:11px;border:1px dashed color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--surface));display:flex;align-items:center;gap:8px;color:var(--primary);font-size:10px;font-weight:800}.substitute-manager{padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft)}.substitute-manager-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px}.substitute-manager-form select{min-height:42px;border:1px solid var(--border);border-radius:11px;padding:0 10px;background:var(--surface);color:var(--text);font-size:12px}.substitute-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.substitute-pills>span{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}.substitute-pills button{color:#ef4444}.substitute-pills small{color:var(--muted);font-size:10px}.penalties-report{padding:2px}

.student-compact-page{display:flex;flex-direction:column;gap:10px}.student-compact-top{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow-sm)}.student-compact-identity{display:flex;align-items:center;gap:10px;min-width:0}.student-compact-avatar{width:50px;height:50px;border-radius:15px;object-fit:cover;background:var(--surface-soft);border:2px solid color-mix(in srgb,var(--primary) 18%,var(--border));cursor:zoom-in}.student-compact-identity h2{font-size:15px;font-weight:950;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-compact-identity p{font-size:11px;color:var(--primary);font-weight:850;margin-top:2px}.student-unread-dot{position:absolute;top:-5px;left:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:9px;display:grid;place-items:center;font-weight:950}.student-compact-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.student-compact-actions button{min-width:58px;height:42px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--border);color:var(--text);display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;font-weight:850;position:relative}.student-compact-actions button .fa-solid{color:var(--primary)}.student-compact-actions button b{position:absolute;top:-5px;left:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:8px;display:grid;place-items:center}.student-profile-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.student-profile-strip>span{background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:9px 11px;min-width:0}.student-profile-strip small,.student-profile-strip b{display:block}.student-profile-strip small{font-size:9px;color:var(--muted);font-weight:750}.student-profile-strip b{font-size:11px;color:var(--text);font-weight:900;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-content-stack{display:flex;flex-direction:column;gap:9px}.student-compact-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px;box-shadow:var(--shadow-sm)}.student-compact-card>h3{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:950;color:var(--text);margin-bottom:9px}.student-compact-card>h3 .fa-solid{color:var(--primary)}.student-subscription-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.student-sub-month{min-width:0;border:1px solid var(--border);background:var(--surface-soft);border-radius:11px;padding:7px;display:flex;align-items:center;justify-content:space-between;gap:5px}.student-sub-month>span{font-size:10px;font-weight:850;color:var(--text)}.student-sub-month>b{padding:4px 5px;border-radius:7px;font-size:8px;display:flex;align-items:center;gap:3px;white-space:nowrap}.student-mini-list{display:flex;flex-direction:column;gap:5px;max-height:190px;overflow:auto}.student-mini-list>div{min-height:36px;border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;padding:7px 9px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px}.student-mini-list small{font-size:9px;color:var(--muted);display:block}.student-mini-list>p{font-size:10px;color:var(--muted);text-align:center;padding:8px}
.attendance-month-view{display:flex;flex-direction:column;gap:8px}.attendance-month-nav{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;background:var(--surface-soft);border:1px solid var(--border);border-radius:12px;padding:7px}.attendance-month-nav button{width:36px;height:36px;border-radius:10px;background:var(--surface);border:1px solid var(--border);color:var(--primary)}.attendance-month-nav button:disabled{opacity:.3}.attendance-month-nav div{text-align:center}.attendance-month-nav small{display:block;color:var(--muted);font-size:8px;font-weight:800}.attendance-month-nav h4{font-size:13px;font-weight:950;color:var(--text);margin-top:1px}.attendance-month-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.attendance-month-summary span{background:var(--surface-soft);border:1px solid var(--border);border-radius:9px;padding:6px;text-align:center;font-size:8px;color:var(--muted);font-weight:800}.attendance-month-summary b{color:var(--text);font-size:12px;margin-left:2px}.attendance-days-list{display:flex;flex-direction:column;gap:5px;max-height:330px;overflow:auto;padding-left:2px}.attendance-day-row{border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);overflow:hidden}.attendance-day-row>button{width:100%;min-height:50px;padding:7px 9px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;text-align:right}.attendance-status-dot{width:9px;height:9px;border-radius:50%;background:#94a3b8}.attendance-status-dot.present{background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.1)}.attendance-status-dot.absent{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.1)}.attendance-status-dot.excused{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.1)}.attendance-status-dot.holiday{background:#0ea5e9;box-shadow:0 0 0 4px rgba(14,165,233,.1)}.attendance-day-row b{font-size:11px;color:var(--text)}.attendance-day-row small{display:block;font-size:8px;color:var(--muted);margin-top:1px}.attendance-day-state{font-size:9px;font-weight:850;color:var(--muted)}.attendance-day-row>button>.fa-solid{font-size:9px;color:var(--muted)}.attendance-day-details{padding:7px 26px 9px 9px;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:5px}.attendance-day-details>span{font-size:9px;padding:5px 7px;border-radius:7px;background:var(--surface);border:1px solid var(--border);color:var(--text)}.attendance-day-details>span.holiday{color:#0369a1}.attendance-empty{text-align:center;color:var(--muted);font-size:10px;padding:14px}
.waqar-video-player{background:#050b12!important;border-radius:0;display:block;min-height:220px}.stars-rules-button{width:42px;height:42px;border-radius:13px;background:#fbbf24;color:#713f12;border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;box-shadow:0 8px 22px rgba(245,158,11,.24);animation:starsRulePulse 2.3s ease-in-out infinite}@keyframes starsRulePulse{50%{transform:translateY(-2px);box-shadow:0 10px 28px rgba(245,158,11,.38)}}.stars-rules-modal{display:flex;flex-direction:column;gap:10px}.stars-rules-welcome,.stars-rule-block,.stars-rule-alert{border-radius:14px;padding:12px;border:1px solid var(--border)}.stars-rules-welcome{display:flex;gap:10px;align-items:flex-start;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--text)}.stars-rules-welcome>.fa-solid{color:#f59e0b;font-size:20px}.stars-rules-welcome h4,.stars-rule-block h4{font-size:12px;font-weight:950}.stars-rules-welcome p,.stars-rule-block p,.stars-rule-alert p,.stars-rules-close{font-size:10px;line-height:1.9;color:var(--muted);margin-top:4px}.stars-rule-block{background:var(--surface-soft)}.stars-rule-block h4{display:flex;align-items:center;gap:7px;color:var(--primary)}.stars-rule-alert{display:flex;gap:8px;background:#fff7ed;border-color:#fed7aa}.stars-rule-alert>.fa-solid{color:#ea580c;margin-top:2px}.stars-rule-alert p{color:#9a3412;margin:0}.stars-rules-close{text-align:center;padding:5px 8px}

.admin-settings-card{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);color:var(--text);box-shadow:var(--shadow-sm);min-width:0}.admin-settings-card>h3,.admin-settings-card>h4{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-weight:950;color:var(--text)}.admin-settings-card>h3 .fa-solid,.admin-settings-card>h4 .fa-solid{color:var(--primary)}.admin-settings-card--warning{background:color-mix(in srgb,#f59e0b 8%,var(--surface));border-color:color-mix(in srgb,#f59e0b 28%,var(--border))}.admin-settings-card--warning>p{color:var(--text-muted)!important}.admin-fines-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.admin-fine-field{padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.admin-fine-field label{color:var(--text-muted)!important}.admin-fine-field input{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--text)!important}.admin-settings-holidays{display:flex;flex-direction:column}.admin-holiday-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text)}.admin-holiday-row span:last-child{color:var(--text-muted)!important}.email-policy-switch{width:calc(100% - 24px);text-align:start;border:1px solid var(--border);font-family:inherit}.email-policy-switch:disabled{opacity:.65;cursor:wait}html[data-theme="dark"] .teacher-policy-badge.is-open,html.dark .teacher-policy-badge.is-open{color:#6ee7b7}html[data-theme="dark"] .teacher-policy-badge.is-restricted,html.dark .teacher-policy-badge.is-restricted{color:#fcd34d}html[data-theme="dark"] .teacher-email-actions button,html.dark .teacher-email-actions button{color:#6ee7b7}html[data-theme="dark"] .teacher-email-actions button.danger,html.dark .teacher-email-actions button.danger{color:#fda4af}
@media(max-width:900px){.admin-day-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-intervention-list{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-insights-grid{grid-template-columns:1fr}.substitute-manager-form{grid-template-columns:1fr 1fr}.substitute-manager-form .relative{grid-column:span 1}}
@media(max-width:600px){.admin-workspace{padding:9px;border-radius:14px}.admin-dashboard-hero{min-height:112px;padding:15px}.admin-dashboard-hero h3{font-size:19px}.admin-dashboard-live{display:none}.admin-day-card{min-height:112px;padding:10px}.admin-intervention-list{grid-template-columns:1fr}.admin-intervention-row{min-height:62px;grid-template-columns:auto 1fr auto auto}.admin-intervention-row b{grid-column:auto;font-size:17px}.admin-intervention-row>.fa-chevron-left{grid-column:auto}.admin-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.students-pagination{justify-content:center}.students-pagination>span{width:100%;text-align:center}.substitute-manager-form{grid-template-columns:1fr}.student-compact-top{align-items:flex-start;flex-direction:column}.student-compact-actions{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.student-compact-actions button{min-width:0;width:100%}.student-profile-strip{grid-template-columns:1fr 1fr}.student-profile-strip>span:last-child{grid-column:1/-1}.student-subscription-row{gap:4px}.student-sub-month{padding:6px 4px;flex-direction:column;align-items:stretch;text-align:center}.student-sub-month>b{justify-content:center}.attendance-month-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.waqar-video-player{min-height:190px}}


/* v2: admin fixed desktop sidebar + restored classic student profile layout */
.admin-command-shell{min-width:0}
.admin-sidebar{animation:none;transform:translateX(110%);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease}
.admin-sidebar.is-open{transform:none;opacity:1;pointer-events:auto}
.student-old-actions>*,.student-old-actions>div>*{min-width:0!important;width:100%!important}
.student-old-message-badge{position:absolute;top:-6px;left:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:8px;font-weight:950;display:grid;place-items:center;box-shadow:0 4px 10px rgba(239,68,68,.28)}
.student-subscription-old>div{min-width:0}
@media(min-width:1024px){
 .admin-command-center{padding-right:304px;min-height:100vh}
 .admin-command-shell{width:100%}
 .admin-sidebar{width:288px;transform:none!important;opacity:1!important;pointer-events:auto!important;box-shadow:-12px 0 32px rgba(2,6,23,.12)}
 .admin-sidebar-overlay,.admin-sidebar-close,.admin-menu-button{display:none!important}
 .admin-command-bar{margin-top:0}
}
@media(max-width:1023px){
 .admin-command-center{padding-right:0}
 .admin-sidebar{width:min(330px,88vw)}
}
@media(max-width:520px){
 .student-old-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.35rem!important}
 .student-old-actions button{font-size:.62rem!important;padding-inline:.35rem!important}
 .student-subscription-old{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.3rem!important}
 .student-subscription-old>div{padding:.45rem!important;flex-direction:column;align-items:stretch;text-align:center;gap:.25rem!important}
 .student-subscription-old>div>span{justify-content:center;font-size:.55rem!important;padding:.25rem .3rem!important}
}


/* === 2026-07-08 v3 exact student restore + stable navigation + credits === */
.waqar-navbar{
    position:relative!important;
    flex:0 0 58px!important;
    height:58px!important;
    min-height:58px!important;
    overflow:visible!important;
}
.waqar-navbar__inner{height:58px!important;min-height:58px!important;overflow:visible!important}
.waqar-navbar .waqar-top-controls{flex:0 0 auto;min-width:0;align-items:center!important}
.waqar-navbar .waqar-theme-switch,.waqar-navbar .waqar-accent-toggle{box-sizing:border-box;justify-content:center;overflow:visible}
.waqar-navbar .waqar-accent-picker{position:relative;display:flex;align-items:center;min-width:0}
.waqar-navbar .waqar-accent-menu{z-index:100000;max-width:calc(100vw - 18px)}
.waqar-site-footer{line-height:1.8}
.waqar-developer-credit{margin-top:2px;color:var(--text-muted)}
.waqar-developer-credit span{color:#ef4444}
.waqar-developer-credit a{color:var(--primary);font-weight:900;text-decoration:none}
.waqar-developer-credit a:hover{text-decoration:underline}
@media(max-width:520px){
    .waqar-navbar__inner{gap:7px!important;padding-inline:8px!important}
    .waqar-brand{gap:7px!important;min-width:0}
    .waqar-brand__logo{width:32px!important;height:32px!important;flex:0 0 32px}
    .waqar-brand strong{font-size:13px!important;max-width:42vw;overflow:hidden;text-overflow:ellipsis}
    .waqar-navbar .waqar-top-controls{gap:5px!important;direction:rtl}
    .waqar-navbar .waqar-theme-switch,.waqar-navbar .waqar-accent-toggle{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;gap:0!important;border-radius:10px!important}
    .waqar-navbar .waqar-theme-switch__icon,.waqar-navbar .waqar-accent-toggle__dot{width:24px!important;height:24px!important;flex:0 0 24px!important}
    .waqar-navbar .waqar-accent-toggle>.fa-solid{display:none!important}
    .waqar-navbar .waqar-accent-menu{left:0!important;right:auto!important;width:min(212px,calc(100vw - 16px))!important}
}
@media(min-width:1024px){
    .admin-sidebar{
        position:fixed!important;
        top:0!important;
        right:0!important;
        bottom:0!important;
        height:100vh!important;
        overflow:hidden!important;
        transform:none!important;
        opacity:1!important;
        pointer-events:auto!important;
    }
    .admin-sidebar-nav{flex:1;min-height:0;overflow-y:auto!important;overscroll-behavior:contain}
    .admin-command-bar{
        position:sticky!important;
        top:0!important;
        z-index:9990!important;
        margin-top:0!important;
        background:color-mix(in srgb,var(--surface) 96%,transparent)!important;
        backdrop-filter:blur(14px);
        -webkit-backdrop-filter:blur(14px);
    }
}


/* === 2026-07-08 v4: stable admin sidebar, sidebar theme tools, compact footer, clearer mobile stars === */
.main-inner{
    display:flex!important;
    flex-direction:column!important;
    min-height:100%!important;
}
.waqar-page-content{flex:1 0 auto!important;min-height:0;}
.waqar-site-footer{
    flex:0 0 auto!important;
    min-height:44px!important;
    padding:.58rem .8rem!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1.45!important;
    background:var(--surface)!important;
}
.waqar-footer-line{display:flex;align-items:center;justify-content:center;gap:.48rem;flex-wrap:wrap;font-size:13px;font-weight:700;color:var(--text-muted);}
.waqar-footer-separator{color:var(--border);font-weight:900;}
.waqar-developer-credit{margin:0!important;color:var(--text-muted);}
.waqar-developer-credit span{color:#ef4444;}
.waqar-developer-credit a{color:var(--primary);font-weight:950;text-decoration:none;}
.waqar-developer-credit a:hover{text-decoration:underline;}

/* A transformed animated ancestor makes position:fixed behave like a page element in Chromium. */
.admin-command-center{animation:none!important;transform:none!important;filter:none!important;perspective:none!important;min-height:100%;}
.admin-sidebar{will-change:auto;}
.admin-sidebar-nav{flex:1;min-height:0;}
.admin-sidebar-tools{position:relative;flex:0 0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px;margin-top:10px;border-top:1px solid var(--border);z-index:5;}
.admin-sidebar-tool{width:100%;min-width:0;min-height:48px;padding:7px 9px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft);color:var(--text);display:flex;align-items:center;gap:8px;text-align:right;box-shadow:none!important;}
.admin-sidebar-tool:hover{border-color:color-mix(in srgb,var(--primary) 36%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface));}
.admin-sidebar-tool-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:0 0 30px;background:color-mix(in srgb,var(--primary) 13%,var(--surface));color:var(--primary);}
.admin-sidebar-tool-copy{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.25;}
.admin-sidebar-tool-copy small{font-size:8px;color:var(--muted);font-weight:800;}
.admin-sidebar-tool-copy b{font-size:11px;color:var(--text);font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-sidebar-accent-control{position:relative;min-width:0;}
.admin-sidebar-accent-dot{width:27px;height:27px;border-radius:9px;flex:0 0 27px;background:linear-gradient(135deg,var(--primary),var(--accent));box-shadow:inset 0 0 0 2px rgba(255,255,255,.25),0 5px 12px rgba(var(--primary-rgb),.18);}
.admin-sidebar-tool>.fa-solid{font-size:10px;color:var(--muted);flex:0 0 auto;}
.admin-sidebar-accent-menu{position:absolute;right:0;left:0;bottom:calc(100% + 8px);padding:7px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 18px 44px rgba(2,6,23,.22);display:flex;flex-direction:column;gap:4px;z-index:99999;}
.admin-sidebar-accent-menu button{min-height:38px;padding:6px 8px;border-radius:9px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;color:var(--text);background:transparent;font-size:10px;font-weight:850;text-align:right;box-shadow:none!important;}
.admin-sidebar-accent-menu button:hover,.admin-sidebar-accent-menu button.is-active{background:color-mix(in srgb,var(--primary) 11%,var(--surface));color:var(--primary);}
.admin-sidebar-accent-preview{width:20px;height:20px;border-radius:7px;background:var(--accent-preview);box-shadow:inset 0 0 0 2px rgba(255,255,255,.3);}
.student-profile-quick-actions>div{min-width:0;}
.student-profile-quick-actions button{min-width:0!important;}
.student-chat-unread-badge{position:absolute;top:-6px;left:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:9px;font-weight:950;display:grid;place-items:center;box-shadow:0 5px 12px rgba(239,68,68,.35);border:2px solid var(--surface);}

@media(min-width:1024px){
    .admin-sidebar{position:fixed!important;top:0!important;right:0!important;bottom:0!important;height:100dvh!important;max-height:100dvh!important;}
    .admin-sidebar-nav{overflow-y:auto!important;overflow-x:hidden!important;}
}

@media(max-width:640px){
    .waqar-site-footer{min-height:42px!important;padding:.5rem .6rem!important;}
    .waqar-footer-line{gap:.32rem;font-size:11px;line-height:1.5;}
    .waqar-footer-separator{margin-inline:.05rem;}

    .stars-board{padding:.72rem!important;}
    .stars-brand{gap:.52rem!important;}
    .stars-brand-icon{width:2.5rem!important;height:2.5rem!important;font-size:1.02rem!important;}
    .stars-brand h2{font-size:1rem!important;}
    .stars-brand p{font-size:.61rem!important;}
    .stars-total{padding:.34rem .43rem!important;}
    .stars-total-icon{width:1.48rem!important;height:1.48rem!important;font-size:.61rem!important;}
    .stars-total-copy b{font-size:.78rem!important;}
    .stars-total-copy small{font-size:.52rem!important;}
    html .stars-period-btn{min-height:2.55rem!important;padding:.42rem .12rem!important;font-size:.63rem!important;gap:.24rem!important;}
    html .stars-period-btn i{font-size:.72rem!important;}
    .stars-podium{gap:.3rem!important;padding:.76rem 0 .72rem!important;}
    .stars-podium-card{min-height:8.95rem!important;padding:.48rem .28rem .92rem!important;}
    .stars-podium-card.rank-1{min-height:10rem!important;}
    .stars-podium-medal{min-height:1.25rem!important;font-size:.51rem!important;gap:.18rem!important;}
    .stars-podium-medal i{font-size:.82rem!important;}
    .stars-podium-card.rank-1 .stars-podium-medal i{font-size:1rem!important;}
    .stars-podium-photo-wrap{width:3.05rem!important;height:3.05rem!important;margin:.32rem 0 .34rem!important;}
    .stars-podium-card.rank-1 .stars-podium-photo-wrap{width:3.65rem!important;height:3.65rem!important;}
    .stars-podium-rank{width:1.25rem!important;height:1.25rem!important;font-size:.56rem!important;}
    .stars-podium-name{font-size:.72rem!important;line-height:1.42!important;}
    .stars-memorization{margin-top:.23rem!important;font-size:.59rem!important;gap:.18rem!important;}
    .stars-ranking-head{padding:.08rem .05rem .48rem!important;font-size:.66rem!important;}
    .stars-ranking-head-icon{width:1.5rem!important;height:1.5rem!important;font-size:.62rem!important;}
    .stars-ranking-count{font-size:.56rem!important;padding:.28rem .42rem!important;}
    .stars-ranking-grid{gap:.4rem!important;}
    .stars-ranking-row{min-height:4.05rem!important;padding:.48rem .5rem!important;border-radius:.72rem!important;gap:.45rem!important;}
    .stars-ranking-main{gap:.42rem!important;}
    .stars-rank-seal{width:1.82rem!important;height:1.82rem!important;font-size:.68rem!important;}
    .stars-ranking-avatar{width:2.45rem!important;height:2.45rem!important;}
    .stars-ranking-name h3{font-size:.77rem!important;line-height:1.35!important;}
    .stars-ranking-memo{max-width:8rem!important;padding:.34rem .42rem!important;font-size:.61rem!important;gap:.2rem!important;}
}
@media(max-width:380px){
    .stars-podium-card{min-height:8.7rem!important;}
    .stars-podium-card.rank-1{min-height:9.7rem!important;}
    .stars-podium-photo-wrap{width:2.95rem!important;height:2.95rem!important;}
    .stars-podium-card.rank-1 .stars-podium-photo-wrap{width:3.5rem!important;height:3.5rem!important;}
    .stars-ranking-memo{max-width:7.1rem!important;}
}

/* ── Admin leaderboard image exporter ── */
.admin-stars-export-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),color-mix(in srgb,var(--accent) 6%,var(--surface)));box-shadow:0 10px 28px rgba(15,23,42,.06);}
.admin-stars-export-copy{display:flex;align-items:center;gap:13px;min-width:0;}
.admin-stars-export-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;flex:0 0 48px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-size:20px;box-shadow:0 10px 24px rgba(var(--primary-rgb),.22);}
.admin-stars-export-copy h3{margin:0;color:var(--text);font-size:15px;font-weight:950;}
.admin-stars-export-copy p{margin:4px 0 0;color:var(--muted);font-size:11px;font-weight:750;line-height:1.6;}
.admin-stars-export-button{min-height:44px;padding:0 16px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;font-size:12px;font-weight:950;box-shadow:0 9px 22px rgba(var(--primary-rgb),.22);}
.admin-stars-export-button:disabled{opacity:.72;cursor:wait;}
.stars-export-picker{display:flex;flex-direction:column;gap:10px;}
.stars-export-picker>p{margin:0 0 3px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.65;}
.stars-export-choice{width:100%;min-height:68px;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);color:var(--text);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;text-align:right;}
.stars-export-choice>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:17px;}
.stars-export-choice.week>span{background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary);}
.stars-export-choice.month>span{background:color-mix(in srgb,var(--accent) 15%,var(--surface));color:var(--accent);}
.stars-export-choice.last>span{background:color-mix(in srgb,#f59e0b 15%,var(--surface));color:#d97706;}
.stars-export-choice div{display:flex;flex-direction:column;gap:3px;min-width:0;}
.stars-export-choice b{font-size:13px;font-weight:950;}
.stars-export-choice small{color:var(--muted);font-size:10px;font-weight:800;}
.stars-export-choice>.fa-solid{color:var(--muted);font-size:11px;}
.stars-export-choice:hover{transform:translateX(-2px);border-color:color-mix(in srgb,var(--primary) 30%,var(--border));box-shadow:0 8px 20px rgba(var(--primary-rgb),.08);}
.stars-export-note{padding:10px 12px;border-radius:13px;background:color-mix(in srgb,var(--primary) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 12%,var(--border));color:var(--muted);display:flex;align-items:flex-start;gap:8px;font-size:10px;font-weight:750;line-height:1.7;}
.stars-export-note i{color:var(--primary);margin-top:2px;}
.stars-export-stage{position:fixed!important;left:-20000px!important;top:0!important;width:780px!important;z-index:-99999!important;pointer-events:none!important;opacity:1!important;}
.stars-export-sheet{width:780px!important;display:block!important;padding:18px!important;background:var(--bg)!important;color:var(--text)!important;direction:rtl!important;}
.stars-export-sheet .stars-page{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}
.stars-export-sheet .stars-board{width:100%!important;max-width:none!important;}
.stars-export-sheet .stars-period-btn{pointer-events:none!important;}
.stars-export-footer{position:relative;z-index:3;margin-top:10px;padding-top:9px;border-top:1px solid rgba(var(--primary-rgb),.12);display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-muted);font-size:9px;font-weight:850;}
.stars-export-results{display:flex;flex-direction:column;gap:12px;}
.stars-export-results-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 15%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--primary) 6%,var(--surface));}
.stars-export-results-head>div{display:flex;flex-direction:column;gap:3px;min-width:0;}
.stars-export-results-head b{font-size:13px;color:var(--text);font-weight:950;}
.stars-export-results-head small{font-size:10px;color:var(--muted);font-weight:750;}
.stars-export-results-head button{padding:9px 12px;border-radius:11px;background:var(--primary);color:#fff;display:flex;align-items:center;gap:6px;flex:0 0 auto;font-size:10px;font-weight:950;}
.stars-export-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:58vh;overflow:auto;padding:2px;}
.stars-export-result-grid article{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface);}
.stars-export-result-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top center;background:var(--surface-soft);display:block;}
.stars-export-result-grid article>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px;}
.stars-export-result-grid span{font-size:10px;color:var(--text);font-weight:900;}
.stars-export-result-grid button{padding:7px 9px;border-radius:9px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);display:flex;align-items:center;gap:5px;font-size:9px;font-weight:950;}
@media(max-width:640px){
 .admin-stars-export-card{align-items:stretch;flex-direction:column;padding:14px;}
 .admin-stars-export-button{width:100%;}
 .admin-stars-export-copy p{font-size:10px;}
 .stars-export-results-head{align-items:stretch;flex-direction:column;}
 .stars-export-results-head button{width:100%;justify-content:center;}
 .stars-export-result-grid{grid-template-columns:1fr;}
}

/* 2026-07-12 admin drilldowns and restored parent stars button */
.stars-parents-button{display:inline-flex;align-items:center;gap:.45rem;border:1px solid rgba(var(--accent-rgb,20,184,166),.35);background:rgba(var(--accent-rgb,20,184,166),.12);color:var(--accent-primary,#0f766e);border-radius:999px;padding:.65rem .85rem;font-weight:900;font-size:.78rem;box-shadow:0 10px 25px rgba(15,23,42,.08);transition:.2s ease;white-space:nowrap}
.stars-parents-button:hover{transform:translateY(-1px);background:rgba(var(--accent-rgb,20,184,166),.2)}
.parents-stars-panel{margin-top:1rem}
@media(max-width:520px){.stars-parents-button span{display:none}.stars-parents-button{width:42px;height:42px;justify-content:center;padding:0}}

/* 2026-07-12 performance pass: progressive rendering without removing motion */
.content-auto{content-visibility:auto;contain-intrinsic-size:84px;}
.admin-inline-loading{display:flex;align-items:center;justify-content:center;gap:.55rem;padding:.8rem 1rem;border:1px solid var(--border,#e2e8f0);border-radius:14px;background:var(--surface-soft,#f8fafc);color:var(--text-muted,#64748b);font-size:.78rem;font-weight:800;}
.admin-section-skeleton{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-height:280px;}
.admin-section-skeleton>div{height:132px;border-radius:20px;background:linear-gradient(90deg,var(--surface-soft,#f1f5f9) 25%,var(--surface,#fff) 50%,var(--surface-soft,#f1f5f9) 75%);background-size:220% 100%;animation:waqar-skeleton 1.15s ease-in-out infinite;}
.admin-section-error{display:flex;min-height:240px;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;padding:2rem;text-align:center;border:1px solid rgba(239,68,68,.2);border-radius:22px;background:rgba(254,242,242,.75);color:#b91c1c;}
.admin-section-error p{max-width:480px;color:var(--text-muted,#64748b);font-size:.78rem;}
.admin-section-error button{padding:.65rem 1rem;border-radius:12px;background:#b91c1c;color:#fff;font-weight:900;font-size:.75rem;}
@keyframes waqar-skeleton{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media(max-width:640px){.admin-section-skeleton{grid-template-columns:1fr}.admin-section-skeleton>div{height:112px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.admin-section-skeleton>div{animation:none!important}}

/* === 2026-07-13 restored motion, gender summaries and full-page WhatsApp-style chat === */
@keyframes waqar-chat-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes waqar-chat-message-enter{from{opacity:0;transform:translateY(5px) scale(.993)}to{opacity:1;transform:none}}
.group-gender-pills{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:7px}
.group-gender-pills span{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 14%,var(--border));color:var(--text-muted);font-size:9px;font-weight:900}
.group-gender-pills i{color:var(--primary)}

.waqar-chat-page{position:fixed;inset:0;z-index:100050;background:#d9dbd5;direction:rtl;animation:waqar-chat-enter .28s ease both}
.waqar-chat-page::before{display:none}
.waqar-chat-layout{position:relative;width:100%;height:100dvh;margin:0;display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);direction:rtl;background:var(--surface,#fff);box-shadow:none;overflow:hidden;border-radius:0}
.waqar-chat-sidebar{grid-column:1;min-width:0;display:flex;flex-direction:column;background:var(--surface,#fff);border-left:1px solid var(--border,#e2e8f0)}
.waqar-chat-sidebar>header{height:62px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;background:var(--surface-soft,#f0f2f5);border-bottom:1px solid var(--border,#e2e8f0)}
.waqar-chat-sidebar>header>div{display:flex;align-items:center;gap:10px}.waqar-chat-sidebar h2{font-size:16px;font-weight:950;color:var(--text,#111827)}
.waqar-chat-close,.waqar-chat-clear-all,.waqar-chat-thread-actions button,.waqar-chat-mobile-back{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--text-muted,#667781);background:transparent}
.waqar-chat-close:hover,.waqar-chat-clear-all:hover,.waqar-chat-thread-actions button:hover,.waqar-chat-mobile-back:hover{background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}
.waqar-chat-search{height:52px;padding:7px 12px;display:flex;align-items:center;gap:9px;background:var(--surface,#fff);border-bottom:1px solid var(--border,#e2e8f0)}
.waqar-chat-search>i{position:absolute;margin-right:12px;color:var(--text-muted,#667781);font-size:12px}.waqar-chat-search input{width:100%;height:36px;padding:0 36px 0 12px;border:0;border-radius:8px;background:var(--surface-soft,#f0f2f5);color:var(--text,#111827);outline:none;font-size:12px}
.waqar-chat-conversations{flex:1;min-height:0;overflow:auto;background:var(--surface,#fff)}
.waqar-chat-conversations>button:not(.waqar-chat-load-more){width:100%;min-height:72px;padding:9px 12px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:right;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:transparent;transition:background-color .22s ease,transform .22s ease}
.waqar-chat-conversations>button:not(.waqar-chat-load-more):hover,.waqar-chat-conversations>button.active{background:var(--surface-soft,#f0f2f5)}
.waqar-chat-conversations img{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#e5e7eb}
.waqar-chat-conversations>button>div{min-width:0}.waqar-chat-conversations>button>div>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.waqar-chat-conversations b{font-size:13px;color:var(--text,#111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.waqar-chat-conversations time{font-size:9px;color:var(--text-muted,#667781);white-space:nowrap}.waqar-chat-conversations p{margin-top:5px;font-size:11px;color:var(--text-muted,#667781);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.waqar-chat-conversations>button>span{min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#25d366;color:#fff;font-size:9px;font-weight:950}
.waqar-chat-load-more{width:calc(100% - 24px);margin:10px 12px;padding:9px;border-radius:9px;background:var(--surface-soft);color:var(--primary);font-size:11px;font-weight:900}.waqar-chat-list-empty{text-align:center;padding:35px 12px;color:var(--text-muted);font-size:12px}
.waqar-chat-main{grid-column:2;min-width:0;min-height:0;background:#efeae2;direction:rtl}
.waqar-chat-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--surface-soft,#f0f2f5);border-bottom:6px solid #25d366;color:var(--text-muted)}.waqar-chat-placeholder>span{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);font-size:48px;animation:waqar-chat-message-enter .45s ease both}.waqar-chat-placeholder h3{margin-top:20px;font-size:22px;color:var(--text);font-weight:800}.waqar-chat-placeholder p{margin-top:8px;font-size:12px}
.waqar-chat-thread{height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.waqar-chat-thread-head{height:62px;padding:7px 13px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface-soft,#f0f2f5);border-bottom:1px solid var(--border,#e2e8f0)}.waqar-chat-thread-person{display:flex;align-items:center;gap:10px;min-width:0}.waqar-chat-thread-person>img{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#e5e7eb}.waqar-chat-thread-person>div{min-width:0}.waqar-chat-thread-person b,.waqar-chat-thread-person small{display:block}.waqar-chat-thread-person b{font-size:13px;color:var(--text);font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.waqar-chat-thread-person small{font-size:9px;color:var(--text-muted);margin-top:2px}.waqar-chat-thread-actions{display:flex;align-items:center;gap:3px}.waqar-chat-thread-actions button:disabled{opacity:.35;cursor:not-allowed}
.waqar-chat-mobile-back{display:none;flex:0 0 38px}.waqar-chat-notice{padding:7px 12px;background:#fff3c4;color:#705b00;text-align:center;font-size:10px;font-weight:850;border-bottom:1px solid #f7df82}
.waqar-chat-wallpaper{flex:1 1 auto;min-height:0;min-width:0;overflow:hidden;position:relative;background-color:#efeae2;background-image:radial-gradient(circle at 20% 25%,rgba(255,255,255,.32) 0 1px,transparent 2px),radial-gradient(circle at 75% 70%,rgba(15,118,110,.055) 0 2px,transparent 3px);background-size:42px 42px,58px 58px}
html[data-theme="dark"] .waqar-chat-wallpaper,html.dark .waqar-chat-wallpaper{background-color:#0b141a;background-image:radial-gradient(circle at 20% 25%,rgba(255,255,255,.04) 0 1px,transparent 2px),radial-gradient(circle at 75% 70%,rgba(37,211,102,.045) 0 2px,transparent 3px)}
.waqar-chat-messages{position:absolute;inset:0;height:auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:18px clamp(14px,6vw,76px);display:flex;flex-direction:column;gap:5px;scroll-behavior:smooth}.waqar-chat-message-row{display:flex;animation:waqar-chat-message-enter .24s ease both}.waqar-chat-message-row.own{justify-content:flex-start}.waqar-chat-message-row.incoming{justify-content:flex-end}.waqar-chat-bubble{position:relative;max-width:min(72%,620px);padding:7px 9px 5px;border-radius:8px;background:var(--surface,#fff);color:var(--text,#111827);box-shadow:0 1px 1px rgba(0,0,0,.10)}.waqar-chat-message-row.own .waqar-chat-bubble{background:#d9fdd3}.waqar-chat-message-row.own .waqar-chat-bubble::before{content:"";position:absolute;top:0;left:-7px;border-width:0 8px 9px 0;border-style:solid;border-color:transparent #d9fdd3 transparent transparent}.waqar-chat-message-row.incoming .waqar-chat-bubble::before{content:"";position:absolute;top:0;right:-7px;border-width:0 0 9px 8px;border-style:solid;border-color:transparent transparent transparent var(--surface,#fff)}html[data-theme="dark"] .waqar-chat-message-row.own .waqar-chat-bubble,html.dark .waqar-chat-message-row.own .waqar-chat-bubble{background:#005c4b;color:#fff}.waqar-chat-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.65;margin:0 0 2px}.waqar-chat-bubble footer{display:flex;align-items:center;justify-content:flex-end;gap:4px;color:#667781;font-size:8px}.waqar-chat-bubble footer span{font-size:8px}.waqar-chat-bubble footer span.read{color:#53bdeb}.waqar-chat-message-tools{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.waqar-chat-message-tools button{font-size:8px;text-decoration:underline;color:inherit;opacity:.75}.waqar-chat-empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:7px;padding:20px 28px;border-radius:12px;background:rgba(255,255,255,.80);color:#54656f;box-shadow:0 3px 15px rgba(0,0,0,.07)}.waqar-chat-empty i{font-size:28px;color:#25d366}.waqar-chat-empty b{font-size:13px}.waqar-chat-empty span{font-size:10px}
.waqar-chat-composer{position:relative;z-index:6;flex:0 0 auto;width:100%;min-width:0;padding:8px 10px;background:var(--surface-soft,#f0f2f5);border-top:1px solid var(--border)}.waqar-chat-composer>div:last-child{display:flex;align-items:flex-end;gap:8px}.waqar-chat-composer textarea{flex:1;min-height:42px;max-height:120px;padding:11px 14px;border:0;border-radius:9px;background:var(--surface,#fff);color:var(--text);outline:none;resize:none;overflow-y:auto;font-size:13px;line-height:1.5}.waqar-chat-send{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:0 0 44px;background:#00a884;color:#fff;font-size:15px;box-shadow:0 5px 15px rgba(0,168,132,.22)}.waqar-chat-send:hover{transform:translateY(-1px) rotate(-3deg);box-shadow:0 8px 20px rgba(0,168,132,.32)}.waqar-chat-send:disabled{opacity:.4;cursor:not-allowed;transform:none}.waqar-chat-editing{margin-bottom:7px;padding:7px 10px;border-right:3px solid #00a884;border-radius:7px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;color:var(--text-muted);font-size:10px;font-weight:850}
.waqar-chat-thread-head,.waqar-chat-notice{flex:0 0 auto}.waqar-chat-bottom-anchor{height:1px;flex:0 0 1px}.waqar-chat-composer{box-shadow:0 -1px 0 rgba(15,23,42,.06),0 -8px 22px rgba(15,23,42,.035)}
@media(max-width:760px){.waqar-chat-page{background:var(--surface)}.waqar-chat-page::before{display:none}.waqar-chat-layout{width:100%;height:100dvh;margin:0;border-radius:0;grid-template-columns:1fr}.waqar-chat-sidebar,.waqar-chat-main{grid-column:1;grid-row:1}.waqar-chat-main{display:none}.waqar-chat-page.has-active .waqar-chat-sidebar{display:none}.waqar-chat-page.has-active .waqar-chat-main{display:block}.waqar-chat-mobile-back{display:grid}.waqar-chat-thread-actions button:last-child{display:grid}.waqar-chat-messages{padding:14px 10px}.waqar-chat-bubble{max-width:86%}.waqar-chat-sidebar>header,.waqar-chat-thread-head{height:58px}.waqar-chat-conversations>button:not(.waqar-chat-load-more){min-height:70px}}
@media(prefers-reduced-motion:reduce){.waqar-chat-page,.waqar-chat-message-row,.waqar-chat-placeholder>span,.admin-workspace>*,.student-content-stack>*{animation-duration:.01ms!important}}

/* 2026-07-13 — WhatsApp-style chat must escape transformed page containers and cover the viewport. */
html.waqar-chat-open,body.waqar-chat-open{overflow:hidden!important;overscroll-behavior:none!important}
body.waqar-chat-open #root{overflow:hidden!important}
.waqar-chat-page{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;z-index:2147483000!important;isolation:isolate!important;transform:none!important;contain:layout paint style;background:#d9dbd5!important}
.waqar-chat-layout{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;grid-template-columns:minmax(330px,390px) minmax(0,1fr)!important}
.waqar-chat-sidebar,.waqar-chat-main,.waqar-chat-thread{height:100%!important;min-height:0!important}
.waqar-chat-sidebar h2{display:flex;align-items:center;gap:7px}.waqar-chat-sidebar h2 small{min-width:24px;height:21px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 13%,var(--surface));color:var(--primary);font-size:9px;font-weight:950}
.waqar-chat-close{background:color-mix(in srgb,#ef4444 10%,var(--surface))!important;color:#dc2626!important}.waqar-chat-close:hover{background:#fee2e2!important;color:#b91c1c!important;transform:rotate(90deg)}
.waqar-chat-list-end{padding:12px;text-align:center;color:var(--text-muted,#667781);font-size:10px;font-weight:800;background:var(--surface-soft,#f0f2f5);border-top:1px solid var(--border,#e2e8f0)}
.waqar-chat-conversations{overscroll-behavior:contain;scrollbar-gutter:stable}.waqar-chat-main{overflow:hidden}
.waqar-chat-thread-head,.waqar-chat-sidebar>header{padding-top:max(8px,env(safe-area-inset-top))}
.waqar-chat-composer{padding-bottom:max(8px,env(safe-area-inset-bottom))}
@media(min-width:761px){.waqar-chat-sidebar{grid-column:1!important}.waqar-chat-main{grid-column:2!important}.waqar-chat-mobile-back{display:none!important}.waqar-chat-thread-actions button:last-child{display:grid!important}}
@media(max-width:760px){.waqar-chat-page,.waqar-chat-layout{height:100dvh!important;min-height:100dvh!important}.waqar-chat-layout{grid-template-columns:1fr!important}.waqar-chat-sidebar,.waqar-chat-main{grid-column:1!important;grid-row:1!important}.waqar-chat-page:not(.has-active) .waqar-chat-sidebar{display:flex!important}.waqar-chat-page:not(.has-active) .waqar-chat-main{display:none!important}.waqar-chat-page.has-active .waqar-chat-sidebar{display:none!important}.waqar-chat-page.has-active .waqar-chat-main{display:block!important}.waqar-chat-thread-head{padding-inline:7px}.waqar-chat-thread-person{max-width:calc(100% - 90px)}}

/* رسائل فورية داخل التطبيق */
.waqar-message-notice{position:fixed;z-index:2147483500;top:82px;left:50%;transform:translateX(-50%);width:min(94vw,560px);background:linear-gradient(135deg,#064e3b,#0f766e);color:#fff;border:1px solid rgba(255,255,255,.24);border-radius:20px;box-shadow:0 20px 50px rgba(2,44,34,.35);padding:8px;animation:waqarNoticeIn .38s cubic-bezier(.2,.8,.2,1)}
.waqar-message-notice__body{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;text-align:start;padding:9px 36px 9px 10px;color:inherit}
.waqar-message-notice__icon{width:44px;height:44px;border-radius:15px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;font-size:20px}
.waqar-message-notice__copy{display:flex;flex-direction:column;min-width:0}.waqar-message-notice__copy b{font-size:14px}.waqar-message-notice__copy small{opacity:.86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.waqar-message-notice__open{background:#fff;color:#065f46;padding:7px 12px;border-radius:11px;font-size:12px;font-weight:900}.waqar-message-notice__close{position:absolute;top:6px;right:7px;width:27px;height:27px;border-radius:50%;background:rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center}
@keyframes waqarNoticeIn{from{opacity:0;transform:translate(-50%,-22px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}

/* عرض التقييمات الموجودة أثناء إكمال الناقص */
.missing-existing-grades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.missing-existing-grades>div{padding:10px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;text-align:center}.missing-existing-grades span{display:block;font-size:10px;color:#64748b;font-weight:700}.missing-existing-grades b{display:block;font-size:12px;margin-top:4px;color:#0f172a}
.duplicate-codes-section{margin-top:22px;padding:16px;border:1px solid #fecaca;background:#fff7f7;border-radius:20px}.duplicate-code-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:center;padding:11px;border:1px solid #fee2e2;background:#fff;border-radius:14px;font-size:12px}.duplicate-code-row>span{font-weight:900;color:#b91c1c}.duplicate-code-row>p{color:#475569;overflow-wrap:anywhere}

/* إدارة أجهزة المحفظين */
.admin-settings-page{display:flex;flex-direction:column;gap:18px;min-width:0}.admin-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);gap:18px;align-items:start}
.teacher-email-manager{padding:16px;border:1px solid var(--border);border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 5%,var(--surface)),var(--surface));color:var(--text);min-width:0;overflow:hidden;scroll-margin-top:76px}.teacher-email-titlebar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.teacher-email-title{display:flex;align-items:flex-start;gap:10px;min-width:0}.teacher-email-title h3{font-size:15px;font-weight:950;color:var(--text)}.teacher-email-title p{max-width:760px;margin-top:4px;font-size:10px;line-height:1.8;color:var(--text-muted)}.email-refresh{display:flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:11px;padding:8px 11px;font-size:11px;font-weight:900;box-shadow:var(--shadow-sm)}.email-refresh:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));color:var(--primary)}.email-refresh:disabled{opacity:.55;cursor:wait}.teacher-email-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.teacher-email-stats>span{min-height:54px;padding:9px;border:1px solid var(--border);border-radius:13px;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);font-size:9px;font-weight:850}.teacher-email-stats b{font-size:17px;color:var(--primary);line-height:1.15}.teacher-email-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.teacher-email-toolbar>small{font-size:9px;color:var(--text-muted)}.teacher-email-search{min-width:min(100%,360px);height:40px;border:1px solid var(--border);border-radius:12px;background:var(--surface);display:flex;align-items:center;gap:8px;padding:0 11px;color:var(--text-muted)}.teacher-email-search:focus-within{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.teacher-email-search input{width:100%;min-width:0;border:0!important;outline:0!important;background:transparent!important;color:var(--text)!important;font-size:11px!important;padding:0!important;box-shadow:none!important}.teacher-email-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;max-height:min(70vh,760px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:2px 3px 7px;scroll-anchor:none}.teacher-email-card{border:1px solid var(--border);border-radius:17px;background:var(--surface);overflow:hidden;min-width:0;align-self:start;box-shadow:var(--shadow-sm)}.teacher-email-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;background:var(--surface-soft);border-bottom:1px solid var(--border)}.teacher-email-person{display:flex;align-items:center;gap:8px;min-width:0}.teacher-email-person>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex:0 0 34px;background:color-mix(in srgb,var(--primary) 13%,var(--surface));color:var(--primary);font-size:13px;font-weight:950}.teacher-email-person>div{display:flex;flex-direction:column;min-width:0}.teacher-email-person b{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-email-person small{font-size:9px;color:var(--text-muted);margin-top:2px}.teacher-policy-badge{flex:0 0 auto;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:950;border:1px solid transparent}.teacher-policy-badge.is-open{color:#047857;background:color-mix(in srgb,#10b981 12%,var(--surface));border-color:color-mix(in srgb,#10b981 28%,var(--border))}.teacher-policy-badge.is-restricted{color:#b45309;background:color-mix(in srgb,#f59e0b 12%,var(--surface));border-color:color-mix(in srgb,#f59e0b 30%,var(--border))}.email-policy-switch{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:10px 12px;padding:9px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);cursor:pointer;font-size:10px;font-weight:850;color:var(--text)}.email-policy-switch>span{width:41px;height:23px;border-radius:999px;background:#94a3b8;position:relative;transition:background .18s ease;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}.email-policy-switch>span:after{content:"";position:absolute;width:17px;height:17px;top:3px;right:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(15,23,42,.25);transition:transform .18s ease}.email-policy-switch.is-on>span{background:#10b981}.email-policy-switch.is-on>span:after{transform:translateX(-18px)}.email-policy-switch:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.email-policy-switch em{font-style:normal;color:var(--text);line-height:1.5}.email-policy-switch>.fa-solid{font-size:10px;color:var(--primary)}.teacher-email-list-head{display:flex;align-items:center;justify-content:space-between;padding:0 12px 6px;color:var(--text-muted);font-size:9px;font-weight:850}.teacher-email-list-head b{color:var(--text)}.teacher-email-list{padding:0 9px 10px;display:flex;flex-direction:column;gap:7px;max-height:250px;overflow-y:auto;overscroll-behavior:contain}.teacher-email-row{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px;border-radius:12px;border:1px solid var(--border);background:var(--surface-soft)}.teacher-email-row.is-pending{background:color-mix(in srgb,#f59e0b 8%,var(--surface));border-color:color-mix(in srgb,#f59e0b 26%,var(--border))}.teacher-email-row.is-approved{background:color-mix(in srgb,#10b981 7%,var(--surface));border-color:color-mix(in srgb,#10b981 24%,var(--border))}.teacher-email-copy{display:flex;flex-direction:column;min-width:0}.teacher-email-copy b{font-size:10px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-email-copy small{font-size:8px;color:var(--text-muted);margin-top:2px;overflow-wrap:anywhere}.teacher-email-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto}.teacher-email-actions button{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:950;padding:6px 8px;border-radius:9px;background:color-mix(in srgb,#10b981 14%,var(--surface));color:#047857;border:1px solid color-mix(in srgb,#10b981 28%,var(--border))}.teacher-email-actions button.danger{background:color-mix(in srgb,#ef4444 10%,var(--surface));color:#b91c1c;border-color:color-mix(in srgb,#ef4444 24%,var(--border))}.teacher-email-actions button:disabled{opacity:.5;cursor:wait}.teacher-email-empty{display:flex;align-items:center;justify-content:center;gap:7px;text-align:center;color:var(--text-muted);font-size:9px;padding:16px;border:1px dashed var(--border);border-radius:11px;background:var(--surface-soft)}.teacher-email-loading,.teacher-email-no-results{min-height:150px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-muted);font-size:11px;font-weight:850;border:1px dashed var(--border);border-radius:15px;background:var(--surface)}.teacher-email-no-results{grid-column:1/-1}.teacher-email-error,.teacher-email-warning{margin:10px 0;padding:11px 12px;border-radius:12px;display:flex;align-items:center;gap:8px;font-size:10px;font-weight:850}.teacher-email-error{color:#b91c1c;background:color-mix(in srgb,#ef4444 9%,var(--surface));border:1px solid color-mix(in srgb,#ef4444 25%,var(--border))}.teacher-email-error button{margin-inline-start:auto;padding:6px 8px;border-radius:8px;background:#b91c1c;color:#fff}.teacher-email-warning{color:#b45309;background:color-mix(in srgb,#f59e0b 10%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 28%,var(--border))}
html[data-theme="dark"] .teacher-policy-badge.is-open,html.dark .teacher-policy-badge.is-open{color:#6ee7b7}html[data-theme="dark"] .teacher-policy-badge.is-restricted,html.dark .teacher-policy-badge.is-restricted{color:#fcd34d}html[data-theme="dark"] .teacher-email-actions button,html.dark .teacher-email-actions button{color:#6ee7b7}html[data-theme="dark"] .teacher-email-actions button.danger,html.dark .teacher-email-actions button.danger{color:#fca5a5}html[data-theme="dark"] .teacher-email-error,html.dark .teacher-email-error{color:#fca5a5}html[data-theme="dark"] .teacher-email-warning,html.dark .teacher-email-warning{color:#fcd34d}
@media(max-width:900px){.admin-settings-grid{grid-template-columns:1fr}.teacher-email-grid{grid-template-columns:1fr}.teacher-email-toolbar{align-items:stretch;flex-direction:column}.teacher-email-search{width:100%;min-width:0}.teacher-email-toolbar>small{display:none}}
@media(max-width:640px){.teacher-email-manager{padding:11px;border-radius:16px}.teacher-email-titlebar{align-items:stretch;flex-direction:column}.email-refresh{align-self:flex-end}.teacher-email-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-email-grid{max-height:none;overflow:visible}.teacher-email-card__head{align-items:flex-start}.teacher-email-row{align-items:stretch;flex-direction:column}.teacher-email-actions{justify-content:flex-end}.email-policy-switch{grid-template-columns:auto minmax(0,1fr) auto;margin-inline:9px}.teacher-email-list{max-height:230px}}

@media(max-width:640px){.waqar-message-notice{top:70px}.waqar-message-notice__body{grid-template-columns:40px minmax(0,1fr);padding-inline-end:32px}.waqar-message-notice__open{display:none}.missing-existing-grades{grid-template-columns:1fr}.duplicate-code-row{grid-template-columns:auto auto}.duplicate-code-row>p{grid-column:1/-1}.teacher-email-card__head,.teacher-email-row{align-items:stretch;flex-direction:column}.email-policy-switch{justify-content:space-between}.teacher-email-row>div:last-child{justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){.waqar-message-notice{animation:none}}

.teacher-email-add{display:flex;gap:7px;padding:0 12px 10px}.teacher-email-add input{min-width:0;flex:1;height:38px;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text);padding:0 10px;font-size:11px;outline:none}.teacher-email-add input:focus{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.teacher-email-add button{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 12px;border-radius:10px;background:var(--primary);color:#fff;font-size:10px;font-weight:950}.teacher-email-add button:disabled{opacity:.55;cursor:wait}@media(max-width:480px){.teacher-email-add{flex-direction:column}.teacher-email-add button{height:38px}}

/* Google Identity verified teacher login */
.google-login-panel{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;border:1px solid var(--border-color,#dbe4ea);border-radius:1rem;background:var(--surface-soft,#f8fafc)}
.google-login-panel>p{font-size:.78rem;font-weight:800;color:var(--text-color,#334155);display:flex;align-items:center;gap:.45rem;text-align:center}
.google-login-button{min-height:44px;display:flex;justify-content:center;width:100%}
.google-client-settings{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.5fr) auto;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--admin-border,#dbe4ea);border-radius:1.25rem;background:var(--admin-card,#fff);margin-bottom:1rem}
.google-client-settings>div:first-child b{display:block;color:var(--admin-text,#0f172a);margin-bottom:.35rem}.google-client-settings>div:first-child small{display:block;color:var(--admin-muted,#64748b);line-height:1.6}
.google-client-form{display:flex;gap:.5rem}.google-client-form input{min-width:0;flex:1;padding:.75rem;border:1px solid var(--admin-border,#cbd5e1);border-radius:.75rem;background:var(--admin-input,#fff);color:var(--admin-text,#0f172a)}.google-client-form button{padding:.7rem 1rem;border-radius:.75rem;background:#0f766e;color:white;font-weight:800;white-space:nowrap}
.google-config-ok,.google-config-missing{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:800;padding:.55rem .7rem;border-radius:999px;white-space:nowrap}.google-config-ok{background:#dcfce7;color:#166534}.google-config-missing{background:#fef3c7;color:#92400e}
html[data-theme="dark"] .google-login-panel,html.dark .google-login-panel{background:#111827;border-color:#334155}.dark .google-login-panel>p{color:#e2e8f0}
html[data-theme="dark"] .google-client-settings,html.dark .google-client-settings{background:#111827;border-color:#334155}.dark .google-client-form input{background:#0f172a;border-color:#475569;color:#f8fafc}.dark .google-config-ok{background:#064e3b;color:#d1fae5}.dark .google-config-missing{background:#78350f;color:#fef3c7}
@media(max-width:850px){.google-client-settings{grid-template-columns:1fr}.google-client-form{flex-direction:column}.google-client-form button{width:100%}}
