.elc-wrap{
  --primary: #2370b8;
  --primary-light: #283593;
  --primary-dark: #0d1757;
  --accent: #ff6f00;
  --accent-light: #ffa000;
  --bg: #ffffff;
  --card: #ffffff;
  --text: #1a1a2e;
  --text-muted: #6b7280;
  --success: #00897b;
  --danger: #e53935;
  --sidebar-w: 245px;
  --radius: 16px;
  --topbar-h: 64px;
}.elc-wrap, .elc-wrap *{margin:0;padding:0;box-sizing:border-box;}.elc-wrap{
  font-family: 'Hind Siliguri', sans-serif;
  background: var(--bg);
  color: var(--text);
  min-height: 100vh;
  overflow-x: hidden;
}.elc-wrap .auth-wrap{
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 40%, #3949ab 100%);
  position: relative;
  overflow: hidden;
}.elc-wrap .auth-wrap::before{
  content:'';
  position:absolute;
  width:600px;height:600px;
  border-radius:50%;
  background:rgba(255,111,0,0.08);
  top:-200px;right:-200px;
}.elc-wrap .auth-wrap::after{
  content:'';
  position:absolute;
  width:400px;height:400px;
  border-radius:50%;
  background:rgba(255,255,255,0.04);
  bottom:-150px;left:-100px;
}.elc-wrap .auth-box{
  background: #fff;
  border-radius: 24px;
  padding: 40px 36px;
  width: 100%;
  max-width: 420px;
  box-shadow: 0 32px 80px rgba(0,0,0,0.25);
  position: relative;
  z-index: 1;
  animation: authIn 0.5s cubic-bezier(.22,1,.36,1) both;
}

@keyframes authIn {
  from{opacity:0;transform:translateY(30px) scale(0.97);}to{opacity:1;transform:none;}
}.elc-wrap .auth-logo{
  text-align:center;
  margin-bottom:28px;
}.elc-wrap .auth-logo .brand{
  font-family:'Poppins',sans-serif;
  font-size:22px;font-weight:800;
  color:var(--primary);
}.elc-wrap .auth-logo .brand span{color:var(--accent);}.elc-wrap .auth-logo .sub{font-size:12px;color:var(--text-muted);margin-top:3px;}.elc-wrap .auth-tabs{
  display:flex;
  background:var(--bg);
  border-radius:12px;
  padding:4px;
  margin-bottom:24px;
}.elc-wrap .auth-tab{
  flex:1;text-align:center;
  padding:9px;border-radius:9px;
  font-size:14px;font-weight:600;
  cursor:pointer;transition:all 0.2s;
  color:var(--text-muted);
  border:none;background:none;
  font-family:'Hind Siliguri',sans-serif;
}.elc-wrap .auth-tab.active{
  background:#fff;color:var(--primary);
  box-shadow:0 2px 8px rgba(0,0,0,0.1);
}.elc-wrap .form-group{margin-bottom:16px;}.elc-wrap .form-label{
  font-size:13px;font-weight:600;
  color:var(--text);margin-bottom:6px;display:block;
}.elc-wrap .form-input{
  width:100%;padding:11px 14px;
  border:1.5px solid #e5e7eb;
  border-radius:10px;font-size:14px;
  font-family:'Hind Siliguri',sans-serif;
  color:var(--text);transition:border 0.2s;
  outline:none;
}.elc-wrap .form-input:focus{border-color:var(--primary);}.elc-wrap .form-select{
  width:100%;padding:11px 14px;
  border:1.5px solid #e5e7eb;
  border-radius:10px;font-size:14px;
  font-family:'Hind Siliguri',sans-serif;
  color:var(--text);outline:none;
  background:#fff;cursor:pointer;
}.elc-wrap .form-select:focus{border-color:var(--primary);}.elc-wrap .btn-primary{
  width:100%;padding:13px;
  background:linear-gradient(135deg,var(--primary),var(--primary-light));
  color:#fff;border:none;border-radius:12px;
  font-size:15px;font-weight:700;
  font-family:'Hind Siliguri',sans-serif;
  cursor:pointer;transition:all 0.2s;
  box-shadow:0 4px 16px rgba(26,35,126,0.3);
}.elc-wrap .btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(26,35,126,0.35);}.elc-wrap .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}.elc-wrap .auth-divider{
  text-align:center;margin:16px 0;
  font-size:12px;color:var(--text-muted);
  position:relative;
}.elc-wrap .auth-divider::before, .elc-wrap .auth-divider::after{
  content:'';position:absolute;top:50%;
  width:42%;height:1px;background:#e5e7eb;
}.elc-wrap .auth-divider::before{left:0;}.elc-wrap .auth-divider::after{right:0;}.elc-wrap .app-layout{display:flex;min-height:100vh;}.elc-wrap .sidebar{
  position:fixed;left:0;top:0;bottom:0;
  width:var(--sidebar-w);
  background:var(--primary);
  display:flex;flex-direction:column;
  z-index:100;
  box-shadow:4px 0 24px rgba(26,35,126,0.2);
  transition:transform 0.3s;
}.elc-wrap .sidebar-logo{
  padding:22px 20px 18px;
  border-bottom:1px solid rgba(255,255,255,0.1);
}.elc-wrap .sidebar-logo .brand{
  font-family:'Poppins',sans-serif;
  font-size:17px;font-weight:800;
  color:#fff;letter-spacing:-0.5px;
}.elc-wrap .sidebar-logo .brand span{color:var(--accent);}.elc-wrap .sidebar-logo .tagline{font-size:11px;color:rgba(255,255,255,0.45);margin-top:2px;}.elc-wrap .nav-section{
  padding:14px 16px 6px;
  font-size:10px;font-weight:700;
  color:rgba(255,255,255,0.3);
  letter-spacing:1.5px;text-transform:uppercase;
}.elc-wrap .nav-item{
  display:flex;align-items:center;gap:11px;
  padding:10px 14px;margin:2px 8px;
  border-radius:10px;cursor:pointer;
  transition:all 0.18s;
  color:rgba(255,255,255,0.6);
  font-size:13.5px;font-weight:500;
  text-decoration:none;border:none;background:none;
  font-family:'Hind Siliguri',sans-serif;width:calc(100% - 16px);
  text-align:left;
}.elc-wrap .nav-item:hover{background:rgba(255,255,255,0.1);color:#fff;}.elc-wrap .nav-item.active{
  background:var(--accent);color:#fff;
  box-shadow:0 4px 14px rgba(255,111,0,0.3);
}.elc-wrap .nav-icon{width:20px;text-align:center;font-size:15px;flex-shrink:0;}.elc-wrap .nav-badge{
  margin-left:auto;background:rgba(255,255,255,0.2);
  color:#fff;font-size:10px;font-weight:700;
  padding:2px 7px;border-radius:20px;
}.elc-wrap .nav-item.active .nav-badge{background:rgba(255,255,255,0.3);}.elc-wrap .sidebar-bottom{
  margin-top:auto;padding:14px 12px;
  border-top:1px solid rgba(255,255,255,0.1);
}.elc-wrap .student-mini{
  display:flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:10px;
  background:rgba(255,255,255,0.08);
}.elc-wrap .avatar{
  width:36px;height:36px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--accent-light));
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:14px;color:#fff;flex-shrink:0;
}.elc-wrap .avatar.lg{width:64px;height:64px;font-size:24px;border-radius:16px;}.elc-wrap .student-mini-info .s-name{font-size:13px;font-weight:600;color:#fff;}.elc-wrap .student-mini-info .s-class{font-size:11px;color:rgba(255,255,255,0.4);}.elc-wrap .main{margin-left:var(--sidebar-w);flex:1;min-height:100vh;display:flex;flex-direction:column;}.elc-wrap .topbar{
  background:#fff;padding:0 24px;
  height:var(--topbar-h);
  display:flex;align-items:center;justify-content:space-between;
  box-shadow:0 2px 12px rgba(0,0,0,0.06);
  position:sticky;top:0;z-index:50;
}.elc-wrap .topbar-left h2{
  font-family:'Poppins',sans-serif;
  font-size:17px;font-weight:700;color:var(--primary);
}.elc-wrap .topbar-left p{font-size:11px;color:var(--text-muted);margin-top:-1px;}.elc-wrap .topbar-right{display:flex;align-items:center;gap:10px;}.elc-wrap .icon-btn{
  width:36px;height:36px;border-radius:10px;
  background:var(--bg);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:17px;position:relative;transition:background 0.15s;
}.elc-wrap .icon-btn:hover{background:#e0e4f0;}.elc-wrap .notif-dot{
  position:absolute;top:7px;right:8px;
  width:7px;height:7px;background:var(--accent);
  border-radius:50%;border:2px solid #fff;
}.elc-wrap .topbar-avatar{
  width:36px;height:36px;border-radius:10px;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:700;font-size:14px;cursor:pointer;
}.elc-wrap .content{padding:24px;flex:1;}.elc-wrap .page{display:none;animation:fadeUp 0.3s ease both;}.elc-wrap .page.active{display:block;}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}.elc-wrap .card{
  background:var(--card);border-radius:var(--radius);
  padding:20px;box-shadow:0 2px 12px rgba(0,0,0,0.05);
}.elc-wrap .card-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:16px;
}.elc-wrap .card-title{
  font-family:'Poppins',sans-serif;
  font-size:14px;font-weight:700;color:var(--primary);
  display:flex;align-items:center;gap:8px;
}.elc-wrap .see-all{
  font-size:12px;color:var(--accent);font-weight:600;
  cursor:pointer;border:none;background:none;
  font-family:'Hind Siliguri',sans-serif;
}.elc-wrap .welcome-banner{
  background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 50%,#3949ab 100%);
  border-radius:var(--radius);padding:26px 28px;
  color:#fff;display:flex;align-items:center;
  justify-content:space-between;margin-bottom:20px;
  position:relative;overflow:hidden;
}.elc-wrap .welcome-banner::before{
  content:'';position:absolute;right:-50px;top:-50px;
  width:220px;height:220px;border-radius:50%;
  background:rgba(255,255,255,0.05);
}.elc-wrap .welcome-banner::after{
  content:'';position:absolute;right:80px;bottom:-70px;
  width:160px;height:160px;border-radius:50%;
  background:rgba(255,111,0,0.12);
}.elc-wrap .welcome-text h1{
  font-family:'Poppins',sans-serif;
  font-size:20px;font-weight:700;margin-bottom:4px;
}.elc-wrap .welcome-text p{font-size:13px;opacity:0.72;}.elc-wrap .welcome-badge{
  background:var(--accent);color:#fff;
  padding:8px 18px;border-radius:30px;
  font-size:12px;font-weight:700;z-index:1;white-space:nowrap;
}.elc-wrap .stats-row{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:14px;margin-bottom:20px;
}.elc-wrap .stat-card{
  background:var(--card);border-radius:var(--radius);
  padding:18px 16px;display:flex;align-items:center;
  gap:12px;box-shadow:0 2px 10px rgba(0,0,0,0.05);
  transition:transform 0.2s;
}.elc-wrap .stat-card:hover{transform:translateY(-2px);}.elc-wrap .stat-icon{
  width:46px;height:46px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;flex-shrink:0;
}.elc-wrap .si-blue{background:#e8eaf6;}.elc-wrap .si-orange{background:#fff3e0;}.elc-wrap .si-green{background:#e0f2f1;}.elc-wrap .si-purple{background:#f3e5f5;}.elc-wrap .stat-info .s-value{
  font-family:'Poppins',sans-serif;
  font-size:20px;font-weight:700;color:var(--primary);line-height:1;
}.elc-wrap .stat-info .s-label{font-size:11px;color:var(--text-muted);margin-top:3px;}.elc-wrap .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}.elc-wrap .grid-3-1{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px;}.elc-wrap .progress-wrap{margin-bottom:12px;}.elc-wrap .progress-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:5px;font-weight:600;}.elc-wrap .progress-bg{height:7px;background:var(--bg);border-radius:10px;overflow:hidden;}.elc-wrap .progress-fill{height:100%;border-radius:10px;background:linear-gradient(90deg,var(--primary),#3949ab);}.elc-wrap .progress-fill.orange{background:linear-gradient(90deg,var(--accent),var(--accent-light));}.elc-wrap .progress-fill.green{background:linear-gradient(90deg,#00897b,#26a69a);}.elc-wrap .ring-wrap{display:flex;flex-direction:column;align-items:center;padding:8px 0;}.elc-wrap .ring-svg{transform:rotate(-90deg);}.elc-wrap .ring-text{text-align:center;margin-top:8px;}.elc-wrap .ring-text .r-pct{font-family:'Poppins',sans-serif;font-size:26px;font-weight:800;color:var(--primary);}.elc-wrap .ring-text .r-label{font-size:11px;color:var(--text-muted);}.elc-wrap .video-item{
  display:flex;align-items:center;gap:12px;
  padding:10px 0;border-bottom:1px solid #f3f4f6;
  cursor:pointer;transition:all 0.15s;
}.elc-wrap .video-item:last-child{border-bottom:none;}.elc-wrap .video-item:hover{padding-left:4px;}.elc-wrap .v-thumb{
  width:50px;height:34px;border-radius:8px;
  background:var(--primary);display:flex;
  align-items:center;justify-content:center;
  font-size:13px;flex-shrink:0;
}.elc-wrap .v-thumb.done{background:#e0f2f1;}.elc-wrap .v-thumb.locked{background:#f3f4f6;}.elc-wrap .v-info .v-title{font-size:13px;font-weight:600;color:var(--text);}.elc-wrap .v-info .v-meta{font-size:11px;color:var(--text-muted);margin-top:1px;}.elc-wrap .v-status{
  margin-left:auto;font-size:10px;font-weight:700;
  padding:3px 9px;border-radius:20px;white-space:nowrap;flex-shrink:0;
}.elc-wrap .vs-done{background:#e0f2f1;color:#00897b;}.elc-wrap .vs-new{background:#e8eaf6;color:var(--primary);}.elc-wrap .vs-locked{background:#f3f4f6;color:#9ca3af;}.elc-wrap .notice-item{
  padding:12px 14px;border-radius:10px;
  border-left:3px solid var(--accent);
  background:#fff8f0;margin-bottom:8px;
}.elc-wrap .notice-item.info{border-color:var(--primary);background:#f0f2ff;}.elc-wrap .notice-title-t{font-size:13px;font-weight:600;color:var(--text);}.elc-wrap .notice-date{font-size:11px;color:var(--text-muted);margin-top:2px;}.elc-wrap .schedule-item{
  display:flex;align-items:center;gap:12px;
  padding:12px;border-radius:12px;
  margin-bottom:8px;background:var(--bg);
}.elc-wrap .sch-date{width:42px;text-align:center;flex-shrink:0;}.elc-wrap .sch-day{font-family:'Poppins',sans-serif;font-size:18px;font-weight:800;color:var(--primary);line-height:1;}.elc-wrap .sch-month{font-size:9px;color:var(--text-muted);text-transform:uppercase;font-weight:700;}.elc-wrap .sch-divider{width:2px;height:34px;background:var(--accent);border-radius:2px;}.elc-wrap .sch-info .sch-name{font-size:13px;font-weight:600;}.elc-wrap .sch-info .sch-time{font-size:11px;color:var(--text-muted);margin-top:2px;}.elc-wrap .join-btn{
  margin-left:auto;background:var(--primary);color:#fff;
  border:none;padding:7px 14px;border-radius:8px;
  font-size:12px;font-weight:700;cursor:pointer;
  font-family:'Hind Siliguri',sans-serif;transition:background 0.2s;
  white-space:nowrap;
}.elc-wrap .join-btn:hover{background:var(--accent);}.elc-wrap .join-btn.disabled{background:#e5e7eb;color:#9ca3af;cursor:default;}.elc-wrap .join-btn.disabled:hover{background:#e5e7eb;}.elc-wrap .pdf-item{
  display:flex;align-items:center;gap:12px;
  padding:10px;border-radius:10px;background:var(--bg);
  margin-bottom:8px;cursor:pointer;transition:all 0.15s;
}.elc-wrap .pdf-item:hover{background:#e8eaf6;}.elc-wrap .pdf-icon{
  width:36px;height:36px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  font-size:18px;flex-shrink:0;
}.elc-wrap .pdf-info .pdf-name{font-size:13px;font-weight:600;}.elc-wrap .pdf-info .pdf-size{font-size:11px;color:var(--text-muted);}.elc-wrap .dl-btn{
  margin-left:auto;width:30px;height:30px;border-radius:8px;
  background:var(--primary);color:#fff;border:none;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:13px;transition:background 0.15s;flex-shrink:0;
}.elc-wrap .dl-btn:hover{background:var(--accent);}.elc-wrap .wa-cta{
  background:linear-gradient(135deg,#25d366,#128c7e);
  border-radius:var(--radius);padding:16px 20px;
  display:flex;align-items:center;gap:14px;
  color:#fff;margin-bottom:18px;cursor:pointer;
  transition:opacity 0.2s;
}.elc-wrap .wa-cta:hover{opacity:0.92;}.elc-wrap .wa-icon{font-size:26px;}.elc-wrap .wa-info .wa-title{font-size:14px;font-weight:700;}.elc-wrap .wa-info .wa-sub{font-size:11px;opacity:0.8;}.elc-wrap .wa-arrow{margin-left:auto;font-size:18px;}.elc-wrap .video-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:16px;
}.elc-wrap .vcard{
  background:var(--card);border-radius:var(--radius);
  overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,0.06);
  cursor:pointer;transition:transform 0.2s,box-shadow 0.2s;
}.elc-wrap .vcard:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.1);}.elc-wrap .vcard-thumb{
  width:100%;aspect-ratio:16/9;
  background:linear-gradient(135deg,var(--primary),#3949ab);
  display:flex;align-items:center;justify-content:center;
  font-size:32px;position:relative;
}.elc-wrap .vcard-thumb.done-thumb{background:linear-gradient(135deg,#00897b,#26a69a);}.elc-wrap .vcard-thumb.lock-thumb{background:#f3f4f6;}.elc-wrap .vcard-duration{
  position:absolute;bottom:6px;right:8px;
  background:rgba(0,0,0,0.7);color:#fff;
  font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;
}.elc-wrap .vcard-body{padding:14px;}.elc-wrap .vcard-num{font-size:10px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:1px;}.elc-wrap .vcard-title{font-size:13px;font-weight:700;color:var(--text);margin:4px 0;}.elc-wrap .vcard-meta{font-size:11px;color:var(--text-muted);}.elc-wrap .vcard-footer{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:10px;
}.elc-wrap .vcard-badge{
  font-size:10px;font-weight:700;padding:3px 9px;
  border-radius:20px;
}.elc-wrap .vb-done{background:#e0f2f1;color:#00897b;}.elc-wrap .vb-new{background:#e8eaf6;color:var(--primary);}.elc-wrap .vb-lock{background:#f3f4f6;color:#9ca3af;}.elc-wrap .vcard-play{
  width:28px;height:28px;border-radius:8px;
  background:var(--primary);color:#fff;border:none;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;cursor:pointer;transition:background 0.15s;
}.elc-wrap .vcard-play:hover{background:var(--accent);}.elc-wrap .filter-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap;}.elc-wrap .ftab{
  padding:7px 16px;border-radius:30px;
  font-size:12px;font-weight:700;cursor:pointer;
  border:2px solid #e5e7eb;background:#fff;
  color:var(--text-muted);transition:all 0.15s;
  font-family:'Hind Siliguri',sans-serif;
}.elc-wrap .ftab:hover{border-color:var(--primary);color:var(--primary);}.elc-wrap .ftab.active{background:var(--primary);border-color:var(--primary);color:#fff;}.elc-wrap .modal-overlay{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,0.85);z-index:1000;
  align-items:center;justify-content:center;
}.elc-wrap .modal-overlay.open{display:flex;}.elc-wrap .modal-box{
  background:#fff;border-radius:20px;
  width:90%;max-width:700px;overflow:hidden;
  animation:modalIn 0.3s ease both;
}
@keyframes modalIn{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:none;}}.elc-wrap .modal-video{
  width:100%;aspect-ratio:16/9;
  background:var(--primary-dark);display:flex;
  align-items:center;justify-content:center;color:#fff;
  font-size:48px;
}.elc-wrap .modal-info{padding:20px;}.elc-wrap .modal-info h3{font-family:'Poppins',sans-serif;font-size:16px;font-weight:700;color:var(--primary);}.elc-wrap .modal-info p{font-size:13px;color:var(--text-muted);margin-top:4px;}.elc-wrap .modal-close{
  position:absolute;top:16px;right:16px;
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,0.2);color:#fff;
  border:none;font-size:18px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}.elc-wrap .resource-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}.elc-wrap .rcard{
  background:var(--card);border-radius:var(--radius);
  padding:20px;box-shadow:0 2px 10px rgba(0,0,0,0.05);
  display:flex;align-items:flex-start;gap:14px;
  transition:transform 0.2s;cursor:pointer;
}.elc-wrap .rcard:hover{transform:translateY(-2px);}.elc-wrap .rcard-icon{
  width:48px;height:48px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;flex-shrink:0;
}.elc-wrap .ri-red{background:#ffebee;}.elc-wrap .ri-green{background:#e8f5e9;}.elc-wrap .ri-blue{background:#e3f2fd;}.elc-wrap .ri-orange{background:#fff3e0;}.elc-wrap .ri-purple{background:#f3e5f5;}.elc-wrap .rcard-info{flex:1;}.elc-wrap .rcard-info h4{font-size:14px;font-weight:700;color:var(--text);}.elc-wrap .rcard-info p{font-size:12px;color:var(--text-muted);margin-top:3px;}.elc-wrap .rcard-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;}.elc-wrap .rcard-size{font-size:11px;font-weight:600;color:var(--text-muted);}.elc-wrap .btn-dl{
  background:var(--primary);color:#fff;border:none;
  padding:7px 16px;border-radius:8px;font-size:12px;
  font-weight:700;cursor:pointer;
  font-family:'Hind Siliguri',sans-serif;
  display:flex;align-items:center;gap:6px;
  transition:background 0.15s;
}.elc-wrap .btn-dl:hover{background:var(--accent);}.elc-wrap .week-nav{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:20px;
}.elc-wrap .week-nav h3{font-family:'Poppins',sans-serif;font-size:16px;font-weight:700;color:var(--primary);}.elc-wrap .week-btn{
  width:34px;height:34px;border-radius:8px;
  background:var(--card);border:1.5px solid #e5e7eb;
  cursor:pointer;font-size:16px;
  display:flex;align-items:center;justify-content:center;
}.elc-wrap .day-strip{
  display:grid;grid-template-columns:repeat(7,1fr);
  gap:8px;margin-bottom:24px;
}.elc-wrap .day-cell{
  background:var(--card);border-radius:12px;
  padding:10px 6px;text-align:center;
  cursor:pointer;transition:all 0.15s;
  border:2px solid transparent;
}.elc-wrap .day-cell:hover{border-color:var(--primary);}.elc-wrap .day-cell.today{border-color:var(--accent);background:#fff8f0;}.elc-wrap .day-cell.has-class{border-color:var(--primary);}.elc-wrap .day-name{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;}.elc-wrap .day-num{font-family:'Poppins',sans-serif;font-size:18px;font-weight:800;color:var(--text);margin-top:2px;}.elc-wrap .day-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);margin:4px auto 0;}.elc-wrap .big-schedule-item{
  background:var(--card);border-radius:var(--radius);
  padding:18px 20px;margin-bottom:12px;
  display:flex;align-items:center;gap:16px;
  box-shadow:0 2px 10px rgba(0,0,0,0.05);
  border-left:4px solid var(--primary);
}.elc-wrap .big-schedule-item.live{border-color:var(--accent);}.elc-wrap .big-sch-time{
  text-align:center;min-width:60px;
}.elc-wrap .big-sch-time .t-hour{font-family:'Poppins',sans-serif;font-size:20px;font-weight:800;color:var(--primary);}.elc-wrap .big-sch-time .t-ampm{font-size:10px;font-weight:700;color:var(--text-muted);}.elc-wrap .big-sch-div{width:1px;height:40px;background:#e5e7eb;}.elc-wrap .big-sch-info{flex:1;}.elc-wrap .big-sch-info h4{font-size:14px;font-weight:700;color:var(--text);}.elc-wrap .big-sch-info p{font-size:12px;color:var(--text-muted);margin-top:3px;}.elc-wrap .live-badge{
  background:var(--accent);color:#fff;
  font-size:10px;font-weight:700;padding:3px 10px;
  border-radius:20px;animation:pulse 1.5s infinite;
}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.7;}}.elc-wrap .notice-big{
  background:var(--card);border-radius:var(--radius);
  padding:20px;margin-bottom:14px;
  box-shadow:0 2px 10px rgba(0,0,0,0.05);
  border-left:4px solid var(--accent);
}.elc-wrap .notice-big.info{border-color:var(--primary);}.elc-wrap .notice-big.success{border-color:var(--success);}.elc-wrap .notice-type{
  font-size:10px;font-weight:800;text-transform:uppercase;
  letter-spacing:1px;color:var(--accent);margin-bottom:6px;
}.elc-wrap .notice-type.info{color:var(--primary);}.elc-wrap .notice-type.success{color:var(--success);}.elc-wrap .notice-big h3{font-size:15px;font-weight:700;color:var(--text);margin-bottom:6px;}.elc-wrap .notice-big p{font-size:13px;color:var(--text-muted);line-height:1.6;}.elc-wrap .notice-big .n-date{font-size:11px;color:var(--text-muted);margin-top:10px;font-weight:600;}.elc-wrap .profile-header{
  background:linear-gradient(135deg,var(--primary-dark),var(--primary));
  border-radius:var(--radius);padding:28px;
  color:#fff;display:flex;align-items:center;gap:20px;
  margin-bottom:20px;
}.elc-wrap .profile-info h2{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;}.elc-wrap .profile-info p{font-size:13px;opacity:0.7;margin-top:3px;}.elc-wrap .profile-badges{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;}.elc-wrap .p-badge{
  background:rgba(255,255,255,0.15);color:#fff;
  font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;
}.elc-wrap .profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}.elc-wrap .profile-field{margin-bottom:14px;}.elc-wrap .p-label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px;}.elc-wrap .p-value{font-size:14px;font-weight:600;color:var(--text);}.elc-wrap .profile-card{background:var(--card);border-radius:var(--radius);padding:20px;box-shadow:0 2px 10px rgba(0,0,0,0.05);}.elc-wrap .profile-card h3{font-family:'Poppins',sans-serif;font-size:14px;font-weight:700;color:var(--primary);margin-bottom:16px;}.elc-wrap .pass-group{margin-bottom:14px;}.elc-wrap .support-message{
  border:1px solid rgba(26,35,126,0.12);
  border-radius:14px;padding:16px;background:#f8f9ff;
}.elc-wrap .support-message h4{font-size:14px;font-weight:700;color:var(--primary);margin-bottom:6px;}.elc-wrap .support-message p{font-size:13px;color:var(--text-muted);margin-bottom:10px;}.elc-wrap .support-textarea{
  width:100%;border:1px solid #e5e7eb;border-radius:12px;
  padding:10px 12px;font-family:'Hind Siliguri',sans-serif;
  resize:vertical;min-height:92px;margin-bottom:10px;background:#fff;
}.elc-wrap .btn-support{
  background:var(--primary);color:#fff;border:none;
  padding:10px 16px;border-radius:10px;font-family:'Hind Siliguri',sans-serif;
  font-size:13px;font-weight:700;cursor:pointer;
}.elc-wrap .bottom-nav{
  display:none;position:fixed;bottom:0;left:0;right:0;
  background:#fff;padding:10px 0 14px;
  box-shadow:0 -2px 16px rgba(0,0,0,0.08);
  z-index:200;justify-content:space-around;
}.elc-wrap .bn-item{
  display:flex;flex-direction:column;align-items:center;
  gap:3px;font-size:10px;color:var(--text-muted);
  cursor:pointer;font-weight:600;border:none;background:none;
  font-family:'Hind Siliguri',sans-serif;
}.elc-wrap .bn-item.active{color:var(--primary);}.elc-wrap .bn-icon{font-size:19px;}



@media(max-width:900px){
  .elc-wrap .sidebar{transform:translateX(-100%);}.elc-wrap .sidebar.open{transform:none;}.elc-wrap .main{margin-left:0;}.elc-wrap .bottom-nav{display:flex;}.elc-wrap .content{padding:16px 14px 80px;}.elc-wrap .stats-row{grid-template-columns:1fr 1fr;}.elc-wrap .grid-2, .elc-wrap .grid-3-1{grid-template-columns:1fr;}.elc-wrap .video-grid{grid-template-columns:1fr 1fr;}.elc-wrap .resource-grid{grid-template-columns:1fr;}.elc-wrap .profile-grid{grid-template-columns:1fr;}.elc-wrap .welcome-badge{display:none;}.elc-wrap .day-strip{grid-template-columns:repeat(7,1fr);}
}
@media(max-width:560px){
  .elc-wrap .video-grid{grid-template-columns:1fr;}.elc-wrap .form-row{grid-template-columns:1fr;}
}.elc-wrap .mb-18{margin-bottom:18px;}.elc-wrap .mt-4{margin-top:4px;}.elc-wrap .text-center{text-align:center;}.elc-wrap .flex-center{display:flex;align-items:center;justify-content:center;}

body.elc-portal-page .site-header,
body.elc-portal-page #masthead,
body.elc-portal-page .elementor-location-header,
body.elc-portal-page .elementor-location-footer,
body.elc-portal-page .site-footer,
body.elc-portal-page #colophon{display:none!important;}

html body.elc-portal-page{
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  overflow-x:hidden!important;
}

body.elc-portal-page header,
body.elc-portal-page footer,
body.elc-portal-page #header,
body.elc-portal-page #footer,
body.elc-portal-page #headerimg,
body.elc-portal-page #page > hr,
body.elc-portal-page hr,
body.elc-portal-page .wp-site-blocks > header,
body.elc-portal-page .wp-site-blocks > footer,
body.elc-portal-page .site-info,
body.elc-portal-page .powered-by,
body.elc-portal-page .theme-footer,
body.elc-portal-page .page-header,
body.elc-portal-page .entry-header,
body.elc-portal-page .entry-footer{
  display:none!important;
}

body.elc-portal-page #page,
body.elc-portal-page .site,
body.elc-portal-page .site-content,
body.elc-portal-page #content,
body.elc-portal-page .content-area,
body.elc-portal-page #primary,
body.elc-portal-page main,
body.elc-portal-page .site-main,
body.elc-portal-page article,
body.elc-portal-page .hentry,
body.elc-portal-page .entry-content,
body.elc-portal-page .wp-site-blocks,
body.elc-portal-page .is-layout-constrained,
body.elc-portal-page .wp-block-post-content,
body.elc-portal-page .elementor,
body.elc-portal-page .elementor-section,
body.elc-portal-page .elementor-container,
body.elc-portal-page .elementor-column,
body.elc-portal-page .elementor-widget-wrap,
body.elc-portal-page .elementor-widget,
body.elc-portal-page .elementor-widget-container,
body.elc-portal-page .elementor-shortcode,
body.elc-portal-page .e-con,
body.elc-portal-page .e-con-inner,
body.elc-portal-page .hostinger-elementor-aos{
  margin:0!important;
  padding:0!important;
  border:0!important;
  max-width:none!important;
  width:100%!important;
}

body.elc-portal-page .elementor-element{
  --padding-top:0!important;
  --padding-right:0!important;
  --padding-bottom:0!important;
  --padding-left:0!important;
  --margin-top:0!important;
  --margin-right:0!important;
  --margin-bottom:0!important;
  --margin-left:0!important;
}

body.elc-portal-page .entry-content > *,
body.elc-portal-page .wp-block-post-content > *{
  margin-top:0!important;
  margin-bottom:0!important;
  max-width:none!important;
}

body.elc-portal-page .elc-wrap{
  width:100vw!important;
  max-width:100vw!important;
  min-height:100vh!important;
  margin:0!important;
}

body.elc-portal-page.admin-bar .elc-wrap{
  min-height:calc(100vh - 32px)!important;
}

body.elc-portal-page .elc-wrap .auth-wrap,
body.elc-portal-page .elc-wrap .app-layout{
  width:100vw!important;
  min-height:100vh!important;
}

body.elc-portal-page.admin-bar .elc-wrap .auth-wrap,
body.elc-portal-page.admin-bar .elc-wrap .app-layout{
  min-height:calc(100vh - 32px)!important;
}

body.elc-portal-page .elc-wrap .bottom-nav{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100vw!important;
}

body.elc-portal-page .bottom-nav{
  display:none!important;
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100vw!important;
  background:#fff!important;
  padding:10px 0 calc(14px + env(safe-area-inset-bottom, 0px))!important;
  box-shadow:0 -2px 16px rgba(0,0,0,0.08)!important;
  z-index:999999!important;
  justify-content:space-around!important;
  transform:none!important;
}

body.elc-portal-page .bottom-nav .bn-item{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:3px!important;
  font-size:10px!important;
  color:var(--text-muted,#6b7280)!important;
  cursor:pointer!important;
  font-weight:600!important;
  border:none!important;
  background:none!important;
  font-family:'Hind Siliguri',sans-serif!important;
}

body.elc-portal-page .bottom-nav .bn-item.active{
  color:var(--primary,#2370b8)!important;
}

body.elc-portal-page .bottom-nav .bn-icon{
  font-size:19px!important;
}

body.elc-portal-page .modal-overlay{
  display:none!important;
  position:fixed!important;
  inset:0!important;
  background:rgba(0,0,0,0.72)!important;
  z-index:1000000!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  overflow:auto!important;
  transform:none!important;
}

body.elc-portal-page .modal-overlay.open{
  display:flex!important;
}

body.elc-portal-page .modal-box{
  background:#fff!important;
  border-radius:18px!important;
  width:min(560px, calc(100vw - 32px))!important;
  max-height:calc(100vh - 40px)!important;
  overflow:hidden!important;
  animation:modalIn 0.25s ease both!important;
  margin:auto!important;
}

body.elc-portal-page .modal-video{
  height:min(280px, 48vh)!important;
  background:#0d1757!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  font-size:48px!important;
}

body.elc-portal-page .modal-info{
  padding:20px!important;
}

body.elc-portal-page .modal-info h3{
  font-family:'Poppins',sans-serif!important;
  font-size:16px!important;
  font-weight:700!important;
  color:#2370b8!important;
}

body.elc-portal-page .modal-info p{
  font-size:13px!important;
  color:#6b7280!important;
  margin-top:4px!important;
}

body.elc-portal-page .modal-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,0.18)!important;
  color:#fff!important;
  border:none!important;
  font-size:18px!important;
  cursor:pointer!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:2!important;
}

@media(max-width:900px){
  body.elc-portal-page .elc-wrap .bottom-nav{
    display:flex!important;
    position:fixed!important;
  }
  body.elc-portal-page.elc-app-open .bottom-nav{
    display:flex!important;
  }
  body.elc-portal-page .elc-wrap .content{
    padding-bottom:110px!important;
  }
  body.elc-portal-page .modal-overlay{
    padding:14px!important;
  }
  body.elc-portal-page .modal-box{
    width:calc(100vw - 28px)!important;
    max-height:calc(100vh - 28px)!important;
  }
  body.elc-portal-page .modal-video{
    height:min(240px, 42vh)!important;
  }
}

@media(max-width:782px){
  body.elc-portal-page.admin-bar .elc-wrap,
  body.elc-portal-page.admin-bar .elc-wrap .auth-wrap,
  body.elc-portal-page.admin-bar .elc-wrap .app-layout{
    min-height:calc(100vh - 46px)!important;
  }
}
