:root{--brand-primary:#4f46e5;--brand-primary-light:#6366f1;--brand-primary-dark:#3730a3;--brand-gradient:linear-gradient(135deg, #4f46e5 0%, #7c3aed 50%, #2563eb 100%);--brand-gradient-glow:linear-gradient(135deg, #4f46e526 0%, #7c3aed26 100%);--brand-gradient-hero:linear-gradient(120deg, #3b82f6 0%, #6366f1 40%, #8b5cf6 75%, #ec4899 100%);--accent-cyan:#06b6d4;--accent-emerald:#10b981;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--accent-violet:#8b5cf6;--accent-purple:#a855f7;--bg-app:#f4f7fb;--bg-card:#fff;--bg-card-subtle:#f8fafc;--bg-card-glass:#ffffffe0;--bg-sidebar:#fff;--border-subtle:#e5eaf2;--border-focus:#c7d2fe;--text-main:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--radius-sm:8px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-pill:9999px;--shadow-sm:0 2px 8px #0f172a0a;--shadow-card:0 8px 24px -4px #0f172a0f, 0 2px 6px -2px #0f172a05;--shadow-card-hover:0 18px 36px -6px #4f46e51f, 0 4px 12px -2px #0f172a0a;--shadow-glass:0 8px 32px 0 #1f268712;--shadow-glow-primary:0 0 20px #4f46e559;--font-family:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Outfit", "Plus Jakarta Sans", sans-serif;--font-arabic:"Cairo", "Segoe UI", Tahoma, sans-serif}[data-theme=dark]{--bg-app:#0b1120;--bg-card:#141e33;--bg-card-subtle:#19243d;--bg-card-glass:#141e33eb;--bg-sidebar:#0f172a;--border-subtle:#1e293b;--border-focus:#4338ca;--text-main:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--text-inverse:#0f172a;--shadow-card:0 8px 24px -4px #00000059;--shadow-card-hover:0 18px 36px -6px #4f46e540;--shadow-glass:0 8px 32px 0 #00000059}[dir=rtl]{--font-family:var(--font-arabic);--font-heading:var(--font-arabic);letter-spacing:0}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#94a3b859}::-webkit-scrollbar-thumb:hover{background:#94a3b899}.os-card{background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card);min-width:0;max-width:100%;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative}.os-card-hover:hover{box-shadow:var(--shadow-card-hover);border-color:#6366f14d;transform:translateY(-3px)}.os-card-glass{background:var(--bg-card-glass);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffffa6}[data-theme=dark] .os-card-glass{border:1px solid #ffffff14}.os-btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.os-btn:active{transform:scale(.97)}.os-btn-primary{background:var(--brand-gradient);color:#fff;box-shadow:0 4px 14px #4f46e559}.os-btn-primary:hover{filter:brightness(1.05);box-shadow:0 6px 20px #4f46e573}.os-btn-secondary{background:var(--bg-card);color:var(--text-main);border-color:var(--border-subtle)}.os-btn-secondary:hover{background:var(--bg-card-subtle);border-color:var(--border-focus)}.os-btn-ghost{color:var(--text-secondary);background:0 0}.os-btn-ghost:hover{color:var(--brand-primary);background:#4f46e514}.os-btn-glass{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#ffffff40;border:1px solid #fff6}.os-btn-glass:hover{background:#ffffff59;border-color:#ffffffb3}.os-badge{border-radius:var(--radius-pill);letter-spacing:.02em;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-indigo{color:#4f46e5;background:#4f46e51a;border:1px solid #4f46e533}.badge-emerald{color:#059669;background:#10b9811a;border:1px solid #10b98133}.badge-amber{color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b33}.badge-rose{color:#e11d48;background:#f43f5e1a;border:1px solid #f43f5e33}.badge-cyan{color:#0891b2;background:#06b6d41a;border:1px solid #06b6d433}.badge-purple{color:#9333ea;background:#a855f71a;border:1px solid #a855f733}@keyframes floatGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulseHalo{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-float{animation:4s ease-in-out infinite floatGentle}.animate-halo{animation:3s ease-in-out infinite pulseHalo}[dir=rtl] .rtl-mirror{transform:scaleX(-1)}.app-shell{width:100%;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.sidebar-container{background:var(--bg-sidebar);border-inline-end:1px solid var(--border-subtle);z-index:50;flex-direction:column;flex-shrink:0;width:270px;height:100vh;transition:transform .3s cubic-bezier(.16,1,.3,1),width .3s;display:flex;position:sticky;top:0}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:45;opacity:0;pointer-events:none;background:#0f172a99;transition:opacity .25s;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.main-content-area{flex-direction:column;flex:1;width:100%;min-width:0;max-height:100vh;display:flex;overflow-y:auto}.topbar-header{background:var(--bg-card-glass);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-subtle);z-index:40;justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:8px 24px;display:flex;position:sticky;top:0}.page-body-container{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:24px 28px 48px}.os-table-container{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.dashboard-hero-grid{grid-template-columns:minmax(0,2.2fr) minmax(320px,1fr);gap:20px;display:grid}.dashboard-trio-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1.15fr) minmax(300px,1fr);gap:20px;display:grid}.dashboard-split-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:20px;display:grid}.lms-split-grid{grid-template-columns:minmax(280px,1fr) minmax(0,2.4fr);gap:20px;display:grid}.dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}@media (width<=1380px){.dashboard-trio-grid{grid-template-columns:1fr 1fr!important}.dashboard-trio-grid>:last-child{grid-column:1/-1}.dashboard-hero-grid{grid-template-columns:1fr!important}}@media (width<=1080px){.dashboard-split-grid,.lms-split-grid{grid-template-columns:1fr!important}}@media (width<=1024px){#mobile-menu-btn,.mobile-menu-btn{display:inline-flex!important}.sidebar-container{z-index:100;height:100vh;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 10px 40px #00000040}[dir=rtl] .sidebar-container{left:auto;right:0;transform:translate(100%)}.sidebar-container.open{transform:translate(0)}.sidebar-close-btn{display:flex!important}.topbar-header{padding:8px 16px}.page-body-container{padding:18px 16px 40px}.hero-grid{grid-template-columns:1fr!important}}@media (width<=860px){.dashboard-trio-grid{grid-template-columns:1fr!important}.dashboard-trio-grid>:last-child{grid-column:auto}}@media (width<=768px){.topbar-header{gap:8px;min-height:64px;padding:8px 12px}.topbar-search-box{max-width:220px}.topbar-search-box span{display:none}.page-body-container{padding:14px 12px 36px}h1{font-size:1.5rem!important;line-height:1.25!important}h2{font-size:1.25rem!important;line-height:1.3!important}.os-card.animate-scale-up{width:95vw!important;max-height:92vh!important;margin:8px!important}form div[style*=gridTemplateColumns]{grid-template-columns:1fr!important}div[style*="maxWidth: '65%'"]{max-width:100%!important}}@media (width<=520px){.dashboard-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;gap:10px!important}.topbar-header{padding:6px 10px}.topbar-user-info{display:none!important}.topbar-search-box{max-width:140px}.page-body-container{padding:10px 8px 32px}.os-btn{padding:8px 12px;font-size:.78rem}.os-badge{padding:2px 6px;font-size:.65rem}.os-card{border-radius:var(--radius-lg)}}
