@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;600;700&display=swap";:root{--primary: #10B981;--primary-hover: #059669;--primary-light: rgba(16, 185, 129, .12);--primary-glow: rgba(16, 185, 129, .25);--bg-dark: #F8FAFC;--bg-card: #FFFFFF;--bg-card-hover: #F1F5F9;--border-color: #E2E8F0;--text-main: #064E3B;--text-muted: #047857;--text-inverse: #FFFFFF;--accent-red: #EF4444;--accent-amber: #D97706;--accent-blue: #2563EB;--radius-lg: 16px;--radius-md: 10px;--radius-sm: 6px;--transition: all .25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-dark);color:var(--text-main);min-height:100vh;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,.brand-font{font-family:Outfit,sans-serif}.header{height:70px;border-bottom:1px solid var(--border-color);background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;box-shadow:0 2px 10px #00000008}.brand{display:flex;align-items:center;gap:12px}.brand-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--primary),#047857);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;box-shadow:0 0 15px var(--primary-glow)}.role-switcher{display:flex;background:#f1f5f9;padding:4px;border-radius:30px;border:1px solid var(--border-color)}.role-btn{padding:8px 18px;border-radius:20px;border:none;background:transparent;color:#64748b;font-weight:500;font-size:.9rem;cursor:pointer;transition:var(--transition)}.role-btn.active{background:var(--primary);color:#fff;font-weight:600;box-shadow:0 2px 10px var(--primary-glow)}.container{max-width:1380px;margin:0 auto;padding:2rem}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;transition:var(--transition)}.card:hover{border-color:#10b98166}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.badge-primary{background:var(--primary-light);color:var(--primary);border:1px solid rgba(16,185,129,.3)}.badge-amber{background:#f59e0b1f;color:var(--accent-amber);border:1px solid rgba(245,158,11,.3)}.badge-red{background:#ef44441f;color:var(--accent-red);border:1px solid rgba(239,68,68,.3)}.btn{padding:10px 20px;border-radius:var(--radius-md);border:none;font-weight:600;font-size:.9rem;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:8px}.btn-primary{background:var(--primary);color:var(--text-inverse)}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 15px var(--primary-glow)}.btn-disabled{background:#334155;color:#64748b;cursor:not-allowed;opacity:.7}.btn-secondary{background:var(--bg-card-hover);color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{background:#e2e8f0}.grid-3{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;width:90%;max-width:600px;box-shadow:0 20px 40px #00000080}.table-responsive-touch{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scrollbar-width:thin}.table-responsive-touch::-webkit-scrollbar{height:6px}.table-responsive-touch::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}@media (max-width: 768px){body{font-size:15px;-webkit-tap-highlight-color:transparent}.container{padding:1rem .75rem!important;max-width:100%!important;overflow-x:hidden}.header{height:auto!important;min-height:56px;padding:.6rem .85rem!important;flex-wrap:wrap!important;gap:8px!important}.brand{gap:8px!important}.brand-icon{width:34px!important;height:34px!important;font-size:.95rem!important}.header .role-switcher{width:100%;order:3;justify-content:space-between;overflow-x:auto;padding:3px!important}.role-btn{padding:6px 10px!important;font-size:.78rem!important;flex:1;text-align:center;white-space:nowrap}.grid-3{grid-template-columns:1fr!important;gap:1rem!important}.card{padding:1rem!important;border-radius:12px!important}.btn{padding:8px 14px;font-size:.85rem;min-height:38px}.table-responsive-touch{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-x pan-y!important;margin-bottom:.5rem;display:block!important}.table-responsive-touch table{min-width:840px!important}.admin-subtabs-bar{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-x pan-y!important;display:flex!important;flex-wrap:nowrap!important;gap:8px!important;padding-bottom:6px!important;margin-top:6px!important;scrollbar-width:thin}.admin-subtabs-bar::-webkit-scrollbar{height:4px}.admin-subtabs-bar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.admin-subtabs-bar button{flex-shrink:0!important;white-space:nowrap!important}.mobile-fullscreen-modal-overlay{padding:0!important}.mobile-fullscreen-modal-box{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important;border:none!important}.exam-bottom-bar{position:sticky!important;bottom:0!important;left:0!important;right:0!important;background:#fff!important;border-top:1px solid #E2E8F0!important;padding:.75rem 1rem!important;box-shadow:0 -4px 12px #0000000d!important;z-index:50!important}.chat-input-bar{flex-direction:column!important;gap:8px!important}}@media (max-width: 480px){.header{padding:.5rem!important}.role-btn{font-size:.72rem!important;padding:5px 6px!important}.card h1{font-size:1.25rem!important}.card h2{font-size:1.1rem!important}}
