/* =========================================================
   GOURAV STUDY ZONE 2.0 — MODERN UI LAYER
   Reference-inspired, mobile-first, regression-safe overrides.
   This file intentionally changes presentation only.
========================================================= */

:root{
  --primary:#4338ca;
  --primary-2:#6d28d9;
  --primary-3:#2563eb;
  --accent:#7c3aed;
  --success:#16a34a;
  --warning:#d97706;
  --danger:#dc2626;
  --text:#10172a;
  --muted:#667085;
  --bg:#f7f8fc;
  --card:#ffffff;
  --soft:#f1f3f9;
  --border:#e3e7ef;
  --border-strong:#d6dbe7;
  --header-bg:rgba(255,255,255,.94);
  --shadow-sm:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.06);
  --shadow:0 12px 34px rgba(15,23,42,.08);
  --shadow-lg:0 24px 60px rgba(15,23,42,.13);
  --radius-sm:10px;
  --radius:14px;
  --radius-lg:20px;
  --header-height:70px;
}

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-padding-top:calc(var(--header-height) + 18px);
}

body{
  min-width:0;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 10% -10%,rgba(99,102,241,.06),transparent 28rem),
    var(--bg);
  color:var(--text);
  font-size:15px;
}

body.dark{
  --text:#eef2ff;
  --muted:#aab4c8;
  --bg:#0d1220;
  --card:#141b2b;
  --soft:#101827;
  --border:#273249;
  --border-strong:#34415c;
  --header-bg:rgba(13,18,32,.94);
  --shadow-sm:0 1px 3px rgba(0,0,0,.2);
  --shadow:0 16px 42px rgba(0,0,0,.28);
  --shadow-lg:0 28px 70px rgba(0,0,0,.4);
}

img,svg,video,iframe{max-width:100%;}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;}
button,input,select,textarea{border-radius:10px;}
:focus-visible{outline:3px solid rgba(79,70,229,.28);outline-offset:2px;}

.shell{width:min(1440px,calc(100% - 64px));}
.section{padding:64px 0;}
.soft{background:rgba(241,243,249,.72);}
body.dark .soft{background:rgba(16,24,39,.7);}

/* =========================================================
   HEADER
========================================================= */
.topbar{
  min-height:var(--header-height);
  background:var(--header-bg);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  box-shadow:0 1px 0 rgba(15,23,42,.02);
}

.nav-wrap{
  min-height:var(--header-height);
  gap:18px;
}

.brand{gap:10px;min-width:max-content;}
.brand-mark,
.topbar .gsz-header-logo-mark{
  width:64px;
  height:38px;
  border-radius:11px;
  font-family:"Poppins","Inter",sans-serif;
  font-size:19px;
  letter-spacing:-.8px;
  background:linear-gradient(135deg,#312e81 0%,#4f46e5 52%,#7c3aed 100%);
  box-shadow:0 8px 20px rgba(67,56,202,.22);
}
.topbar .gsz-header-logo-image{object-fit:contain;background:#fff;padding:2px;}
.brand > span:last-child{display:grid;gap:1px;}
.brand strong{font-size:15px;line-height:1.05;letter-spacing:-.25px;}
.brand small{margin-top:0;font-size:8px;line-height:1.15;letter-spacing:.55px;text-transform:uppercase;}

.desktop-nav{gap:0!important;align-self:stretch;}
.desktop-nav a{
  display:flex;
  align-items:center;
  min-height:var(--header-height);
  padding:0 clamp(10px,1vw,16px);
  color:#344054;
  font-size:13.5px;
  font-weight:650;
  letter-spacing:-.1px;
  transition:color .18s ease,background .18s ease;
}
body.dark .desktop-nav a{color:#cbd5e1;}
.desktop-nav a:hover{color:var(--primary);background:rgba(79,70,229,.035);}
.desktop-nav a.active{color:var(--primary);}
.desktop-nav a.active::after{
  left:10px;right:10px;bottom:0;height:2px;background:linear-gradient(90deg,var(--primary),var(--primary-2));
}

.nav-actions{gap:8px;min-width:max-content;}
.icon-btn,.menu-btn,.gsz-header-notification{
  width:40px;height:40px;min-width:40px;min-height:40px;
  display:grid;place-items:center;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:var(--text);
  transition:.18s ease;
}
.icon-btn:hover,.menu-btn:hover,.gsz-header-notification:hover{background:var(--soft);border-color:var(--border);}

.gsz-header-notification{position:relative;font-size:18px;}
.gsz-header-notification-dot{
  position:absolute;top:7px;right:7px;width:7px;height:7px;border:2px solid var(--card);border-radius:50%;background:#ef4444;
}

.login-btn.gsz-account-chip{
  min-height:44px;
  display:flex;align-items:center;gap:9px;
  padding:5px 7px 5px 6px;
  border:1px solid transparent;
  border-radius:14px;
  background:transparent;
  color:var(--text);
  box-shadow:none;
}
.login-btn.gsz-account-chip:hover{transform:none;background:var(--soft);border-color:var(--border);}
.gsz-account-avatar{
  width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:50%;
  background:linear-gradient(135deg,#eef2ff,#e0e7ff);color:var(--primary);font-weight:800;font-size:13px;
}
body.dark .gsz-account-avatar{background:#263151;color:#c7d2fe;}
.gsz-account-copy{display:grid;text-align:left;line-height:1.15;max-width:112px;}
.gsz-account-copy strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gsz-account-copy small{margin-top:3px;font-size:9.5px;color:var(--muted);font-weight:600;}
.login-btn:not(.gsz-account-chip){
  min-height:40px;display:inline-flex;align-items:center;padding:0 17px;border-radius:11px;
  background:linear-gradient(135deg,var(--primary),var(--primary-2));font-size:12.5px;box-shadow:0 8px 20px rgba(79,70,229,.18);
}

.mobile-menu{
  border:1px solid var(--border)!important;border-radius:16px!important;background:var(--card)!important;
  box-shadow:var(--shadow-lg)!important;
}
.mobile-menu a{border-radius:10px;color:var(--text);font-weight:650;}
.mobile-menu a:hover,.mobile-menu a.active{background:rgba(79,70,229,.08);color:var(--primary);}

/* =========================================================
   GENERIC PAGE SURFACES / TYPOGRAPHY
========================================================= */
main{min-width:0;}
.section-kicker,.eyebrow{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
}
.section-head h2,
.resource-library-section-head h2,
.course-list-head h2,
.quiz-list-head h2,
.exam-main-head h2,
.career-category-head h2{letter-spacing:-.55px;}

.btn{
  min-height:42px;border-radius:11px;font-weight:700;font-size:13.5px;box-shadow:none;
}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:transparent;}
.btn-light,.btn-secondary{border:1px solid var(--border);background:var(--card);color:var(--text);}
.btn-light:hover,.btn-secondary:hover{border-color:#c7d2fe;background:#f8faff;}
body.dark .btn-light:hover,body.dark .btn-secondary:hover{background:#1a2440;}

input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  border:1px solid var(--border);background:var(--card);color:var(--text);box-shadow:none;
}
input:not([type="checkbox"]):not([type="radio"]):focus,select:focus,textarea:focus{
  border-color:#a5b4fc;box-shadow:0 0 0 3px rgba(99,102,241,.12);outline:0;
}

/* =========================================================
   HOME — CLEANER, PROFESSIONAL HERO
========================================================= */
.hero{
  padding:72px 0 58px;
  background:
    radial-gradient(circle at 86% 8%,rgba(109,40,217,.13),transparent 22rem),
    radial-gradient(circle at 10% 12%,rgba(37,99,235,.1),transparent 24rem),
    linear-gradient(180deg,#fff 0%,#f7f8fc 100%);
  border-bottom:1px solid var(--border);
}
body.dark .hero{background:radial-gradient(circle at 86% 8%,rgba(109,40,217,.18),transparent 22rem),linear-gradient(180deg,#101728,#0d1220);}
.hero h1{font-size:clamp(40px,5vw,67px);line-height:1.02;letter-spacing:-2.6px;max-width:780px;}
.hero h1 span{background:linear-gradient(90deg,#4338ca,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero-copy > p{max-width:760px;color:var(--muted);font-size:16px;line-height:1.75;}
.hero-actions{gap:10px;}
.hero .btn{min-height:46px;padding:0 18px;}

.finder-card,.quick-card,.feature-grid article,.notice-item,.source-grid article,
.dashboard-panel,.dashboard-side-card,.profile-section-card,.profile-side-card,
.progress-panel,.progress-side-card{
  border:1px solid var(--border)!important;border-radius:var(--radius)!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
}
.quick-card,.feature-grid article,.source-grid article{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.quick-card:hover,.feature-grid article:hover,.source-grid article:hover{transform:translateY(-3px);border-color:#c7d2fe!important;box-shadow:var(--shadow)!important;}

/* =========================================================
   RESOURCE LIBRARY — REFERENCE-INSPIRED LAYOUT
========================================================= */
.resource-library-page{background:var(--bg);}
.resource-library-hero{padding:28px 0 12px;background:transparent!important;}
.resource-library-hero-card{
  min-height:auto!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  padding:18px 20px!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
.resource-library-hero-content{max-width:920px!important;}
.resource-library-hero-card h1{margin:3px 0 2px!important;font-size:clamp(25px,2.6vw,35px)!important;line-height:1.16!important;letter-spacing:-.85px!important;}
.resource-library-hero-card p{margin:0!important;max-width:760px!important;color:var(--muted)!important;font-size:13.5px!important;line-height:1.55!important;}
.resource-library-hero-icon{
  width:64px!important;height:64px!important;min-width:64px!important;display:grid!important;place-items:center!important;
  border:1px solid #ddd6fe!important;border-radius:17px!important;background:linear-gradient(135deg,#ede9fe,#ddd6fe)!important;
  font-size:29px!important;box-shadow:none!important;
}
body.dark .resource-library-hero-icon{background:#252b4b!important;border-color:#3d4770!important;}
.resource-library-hero-tags{display:none!important;}

.resource-filter-section{padding:0 0 10px!important;background:transparent!important;}
.resource-filter-card{
  padding:14px!important;border:1px solid var(--border)!important;border-radius:13px!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
}
.resource-filter-heading{display:none!important;}
.resource-filter-grid{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;
}
.resource-filter-field{min-width:0;}
.resource-filter-field label{margin:0 0 5px!important;color:var(--muted)!important;font-size:10.5px!important;font-weight:700!important;}
.resource-filter-field select{
  width:100%!important;min-height:44px!important;padding:0 34px 0 12px!important;border-radius:10px!important;font-size:12.5px!important;font-weight:600!important;
}
.resource-load-btn{width:auto!important;min-width:150px!important;margin:11px 0 0 auto!important;display:flex!important;}

.resource-selection-section{padding:0 0 10px!important;background:transparent!important;}
.resource-selection-card{
  min-height:0!important;padding:10px 14px!important;border:1px dashed var(--border-strong)!important;border-radius:11px!important;background:transparent!important;box-shadow:none!important;
}
.resource-selection-icon{width:32px!important;height:32px!important;min-width:32px!important;font-size:15px!important;border-radius:9px!important;}
.resource-selection-card small{font-size:9px!important;}
.resource-selection-card strong{font-size:12.5px!important;}
.resource-selection-card p{font-size:10.5px!important;}

.resource-library-main{padding:0 0 56px!important;background:transparent!important;}
.resource-library-toolbar{
  display:grid!important;grid-template-columns:minmax(260px,1fr) 190px!important;gap:10px!important;margin:0 0 14px!important;
}
.resource-library-search{min-height:44px!important;border:1px solid var(--border)!important;border-radius:11px!important;background:var(--card)!important;box-shadow:none!important;}
.resource-library-search input{font-size:13px!important;}
.resource-library-toolbar select{min-height:44px!important;border-radius:11px!important;font-size:12.5px!important;}
.resource-library-section-head{margin:18px 0 14px!important;align-items:flex-end!important;}
.resource-library-section-head h2{font-size:19px!important;}
.resource-library-section-head p{font-size:11.5px!important;color:var(--muted)!important;}
.resource-library-count{padding:7px 10px!important;border-radius:9px!important;font-size:11px!important;background:var(--soft)!important;}

.resource-library-grid{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;
}
.library-resource-card{
  position:relative!important;overflow:hidden!important;min-width:0!important;
  border:1px solid var(--border)!important;border-radius:13px!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.library-resource-card:hover{transform:translateY(-3px)!important;border-color:#c7d2fe!important;box-shadow:var(--shadow)!important;}
.library-resource-card-head{
  min-height:152px!important;padding:22px!important;display:grid!important;place-items:center!important;
  background:
    radial-gradient(circle at 70% 38%,rgba(255,255,255,.19),transparent 22%),
    linear-gradient(135deg,#312e81,#4f46e5 58%,#6d28d9)!important;
}
.library-resource-card:nth-child(4n+2) .library-resource-card-head{background:linear-gradient(135deg,#164e63,#0f766e,#0891b2)!important;}
.library-resource-card:nth-child(4n+3) .library-resource-card-head{background:linear-gradient(135deg,#1e3a8a,#1d4ed8,#4338ca)!important;}
.library-resource-card:nth-child(4n+4) .library-resource-card-head{background:linear-gradient(135deg,#7c2d12,#ea580c,#f59e0b)!important;}
.library-resource-icon{
  width:74px!important;height:74px!important;border:1px solid rgba(255,255,255,.5)!important;border-radius:18px!important;
  background:rgba(255,255,255,.94)!important;color:#312e81!important;font-size:30px!important;box-shadow:0 16px 32px rgba(0,0,0,.17)!important;
}
.library-resource-card-content{padding:14px!important;}
.library-resource-card-content > small{font-size:9.5px!important;}
.library-resource-card-content h3{margin:4px 0!important;font-size:15px!important;line-height:1.35!important;letter-spacing:-.15px!important;}
.library-resource-card-content p{min-height:34px!important;font-size:11.5px!important;line-height:1.5!important;}
.library-resource-meta{gap:6px!important;margin:9px 0 12px!important;}
.library-resource-meta span{padding:4px 7px!important;border-radius:7px!important;font-size:9.5px!important;background:var(--soft)!important;}
.library-resource-actions{padding:0 14px 14px!important;gap:8px!important;}
.library-resource-actions .btn{min-height:38px!important;font-size:11.5px!important;border-radius:9px!important;}
.library-resource-card .access-badge,.library-resource-card [class*="access-badge"]{font-size:9px!important;border-radius:6px!important;}

/* =========================================================
   COURSES / LIVE / QUIZ / CAREER / EXAMS / SEARCH
========================================================= */
.courses-hero,.live-hero,.quiz-hero,.career-hero,.exams-hero,.search-hero,
.dashboard-hero,.profile-hero,.bookmarks-hero,.progress-hero,.notification-hero{
  padding-top:38px!important;padding-bottom:28px!important;background:transparent!important;
}

:is(.courses-hero,.live-hero,.quiz-hero,.career-hero,.exams-hero,.search-hero,.dashboard-hero,.profile-hero,.bookmarks-hero,.progress-hero,.notification-hero) h1{
  font-size:clamp(28px,3vw,39px)!important;line-height:1.16!important;letter-spacing:-1px!important;
}

:is(.course-summary-card,.live-summary-card,.quiz-summary-card,.career-summary-card,.exam-summary-card,.search-filter-card,
.dashboard-stat-card,.progress-stat-card,.notification-summary-card){
  border:1px solid var(--border)!important;border-radius:13px!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
}

.course-filter-card,.live-filter-card,.quiz-filter-card,.career-filter-card,.exam-filter-card{
  border:1px solid var(--border)!important;border-radius:13px!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
}

.course-grid,.quiz-grid,.exam-grid,.career-grid{gap:16px!important;}
.course-card,.quiz-card,.exam-card,.career-card,.live-card{
  border:1px solid var(--border)!important;border-radius:14px!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.course-card:hover,.quiz-card:hover,.exam-card:hover,.career-card:hover,.live-card:hover{
  transform:translateY(-3px)!important;border-color:#c7d2fe!important;box-shadow:var(--shadow)!important;
}

.course-card h3,.quiz-card h3,.exam-card h3,.career-card h3,.live-card h3{font-size:15.5px!important;letter-spacing:-.15px!important;}
.course-card p,.quiz-card p,.exam-card p,.career-card p,.live-card p{font-size:11.5px!important;line-height:1.55!important;}

/* Search feels like a modern command/search workspace */
.search-page .search-hero-card{
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 89% 12%,rgba(255,255,255,.16),transparent 31%),
    linear-gradient(135deg,#2563eb 0%,#4f46e5 52%,#7c3aed 100%)!important;
  color:#fff!important;
  box-shadow:0 22px 55px rgba(79,70,229,.20)!important;
}

/* =========================================================
   AUTH
========================================================= */
.auth-page{background:linear-gradient(135deg,#f7f8fc 0%,#eef2ff 48%,#f5f3ff 100%)!important;}
body.dark .auth-page{background:linear-gradient(135deg,#0d1220,#12182a)!important;}
.auth-card,.auth-info-panel,.first-login-card{
  border:1px solid var(--border)!important;border-radius:18px!important;box-shadow:var(--shadow)!important;
}
.auth-card{background:var(--card)!important;}
.auth-submit-btn{border-radius:11px!important;background:linear-gradient(135deg,var(--primary),var(--primary-2))!important;}

/* =========================================================
   RESOURCE VIEWER
========================================================= */
.resource-viewer-top,.resource-info-card,.viewer-card,.resource-navigation-card{
  border-color:var(--border)!important;
}
.viewer-card{border-radius:15px!important;overflow:hidden!important;box-shadow:var(--shadow-sm)!important;}

/* =========================================================
   DASHBOARD / PROFILE
========================================================= */
.dashboard-page,.profile-page,.bookmarks-page,.progress-page,.notifications-page{background:var(--bg)!important;}
.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,.progress-hero-card,.notification-hero-card{
  border:1px solid var(--border)!important;border-radius:18px!important;background:var(--card)!important;box-shadow:var(--shadow-sm)!important;
}

/* =========================================================
   MODERN JS COMPONENTS
========================================================= */
.gsz-network-pill{
  position:fixed;left:50%;top:calc(var(--header-height) + 10px);z-index:1200;
  transform:translate(-50%,-12px);opacity:0;pointer-events:none;
  display:flex;align-items:center;gap:7px;min-height:34px;padding:0 11px;
  border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--text);
  box-shadow:var(--shadow);font-size:11px;font-weight:700;transition:.2s ease;
}
.gsz-network-pill.show{transform:translate(-50%,0);opacity:1;}
.gsz-network-pill.offline::before,.gsz-network-pill.online::before{content:"";width:7px;height:7px;border-radius:50%;}
.gsz-network-pill.offline::before{background:#ef4444;}.gsz-network-pill.online::before{background:#22c55e;}

.gsz-page-tools{
  position:fixed;right:18px;bottom:92px;z-index:790;display:flex;flex-direction:column;gap:8px;
}
.gsz-page-tool{
  width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;
  background:var(--card);color:var(--text);box-shadow:var(--shadow-sm);font-size:17px;
}
.gsz-page-tool:hover{border-color:#c7d2fe;color:var(--primary);box-shadow:var(--shadow);}

.gsz-more-backdrop{
  position:fixed;inset:0;z-index:1450;background:rgba(15,23,42,.42);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .2s ease;
}
.gsz-more-backdrop.show{opacity:1;pointer-events:auto;}
.gsz-more-sheet{
  position:fixed;left:50%;bottom:0;z-index:1500;width:min(560px,100%);
  transform:translate(-50%,105%);padding:8px 16px calc(18px + env(safe-area-inset-bottom,0px));
  border:1px solid var(--border);border-bottom:0;border-radius:22px 22px 0 0;background:var(--card);box-shadow:0 -20px 60px rgba(15,23,42,.18);
  transition:transform .24s ease;
}
.gsz-more-sheet.show{transform:translate(-50%,0);}
.gsz-sheet-handle{width:42px;height:4px;margin:2px auto 14px;border-radius:999px;background:var(--border-strong);}
.gsz-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;}
.gsz-sheet-head strong{font-size:16px;}.gsz-sheet-head small{display:block;color:var(--muted);font-size:10.5px;margin-top:2px;}
.gsz-sheet-close{width:36px;height:36px;border:0;border-radius:10px;background:var(--soft);color:var(--text);font-size:18px;}
.gsz-sheet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;}
.gsz-sheet-link{
  min-width:0;display:grid;justify-items:center;gap:7px;padding:12px 5px;border:1px solid var(--border);border-radius:12px;background:var(--card);font-size:10.5px;font-weight:700;text-align:center;
}
.gsz-sheet-link span{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--soft);font-size:16px;}
.gsz-sheet-link:hover{border-color:#c7d2fe;color:var(--primary);}
.gsz-sheet-install{width:100%;margin-top:10px;min-height:42px;border:1px solid #c7d2fe;border-radius:11px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:800;}
body.dark .gsz-sheet-install{background:#222b4b;color:#c7d2fe;border-color:#3a4770;}

.gsz-command-backdrop{
  position:fixed;inset:0;z-index:1600;display:grid;place-items:start center;padding-top:min(18vh,150px);
  background:rgba(15,23,42,.5);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .16s ease;
}
.gsz-command-backdrop.show{opacity:1;pointer-events:auto;}
.gsz-command-box{width:min(620px,calc(100% - 28px));padding:10px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow-lg);}
.gsz-command-input-wrap{display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--border);border-radius:11px;background:var(--bg);}
.gsz-command-input-wrap span{font-size:18px;}.gsz-command-input{width:100%;min-height:48px!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:14px!important;}
.gsz-command-hint{display:flex;justify-content:space-between;gap:12px;padding:9px 5px 2px;color:var(--muted);font-size:10.5px;}

.gsz-recent-section{padding:6px 0 46px;}
.gsz-recent-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:13px;}
.gsz-recent-head h2{font-size:18px;letter-spacing:-.35px;}.gsz-recent-head p{font-size:11px;color:var(--muted);}
.gsz-recent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.gsz-recent-card{min-width:0;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:var(--shadow-sm);}
.gsz-recent-card small{display:block;margin-bottom:5px;color:var(--primary);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;}
.gsz-recent-card strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;}
.gsz-recent-card span{display:block;margin-top:3px;color:var(--muted);font-size:9.5px;}

/* =========================================================
   MOBILE BOTTOM NAV
========================================================= */

/*
  Prevent the legacy HTML bottom-navigation markup from flashing
  for a frame while gsz-loader / gsz-modern normalize it.
*/
@media (max-width:760px){
  .bottom-nav:not(.gsz-bottom-nav){
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}
.bottom-nav.gsz-bottom-nav{
  height:calc(64px + env(safe-area-inset-bottom,0px))!important;
  padding:4px 7px env(safe-area-inset-bottom,0px)!important;
  border-top:1px solid var(--border)!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  box-shadow:0 -6px 24px rgba(15,23,42,.06)!important;
}
body.dark .bottom-nav.gsz-bottom-nav{background:rgba(20,27,43,.96)!important;}
.bottom-nav.gsz-bottom-nav a,.bottom-nav.gsz-bottom-nav button{
  flex:1;min-width:0;min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:9.5px;font-weight:650;
}
.bottom-nav.gsz-bottom-nav span{font-size:18px;line-height:1;}
.bottom-nav.gsz-bottom-nav .active{color:var(--primary);background:rgba(79,70,229,.07);}

/* =========================================================
   ADMIN POLISH (presentation only)
========================================================= */
.admin-layout,.admin-dashboard-page,.admin-page{--admin-card-radius:14px;}
.admin-sidebar{border-right-color:var(--border)!important;}
.admin-card,.admin-panel,.admin-stat-card,.admin-form-card{
  border-radius:14px!important;box-shadow:var(--shadow-sm)!important;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width:1320px){
  .desktop-nav a{padding-inline:9px;font-size:12.5px;}
  .gsz-account-copy{display:none;}
  .login-btn.gsz-account-chip{padding-right:6px;}
}

@media (max-width:1180px){
  .shell{width:min(100% - 40px,1120px);}
  .topbar .desktop-nav{display:none!important;}
  .topbar .menu-btn{display:grid!important;}
  .gsz-header-notification{display:none;}
  .gsz-account-copy{display:grid;}
}

@media (max-width:980px){
  .resource-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .resource-filter-field.resource-filter-subject{grid-column:1/-1;}
  .resource-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .gsz-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:760px){
  :root{--header-height:60px;}
  body{font-size:14px;padding-bottom:calc(64px + env(safe-area-inset-bottom,0px));}
  .shell{width:calc(100% - 28px);}
  .section{padding:44px 0;}
  .topbar{min-height:var(--header-height);}
  .nav-wrap{min-height:var(--header-height);gap:7px;}
  .brand-mark,.topbar .gsz-header-logo-mark{width:48px;height:32px;border-radius:9px;font-size:15px;}
  .brand strong{font-size:12.5px!important;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .brand small{font-size:7px!important;letter-spacing:.3px!important;}
  .nav-actions{gap:3px;}
  .nav-actions .icon-btn{display:none!important;}
  .login-btn.gsz-account-chip{width:38px;height:38px;min-height:38px;padding:2px;border:0;}
  .gsz-account-avatar{width:34px;height:34px;flex-basis:34px;}
  .gsz-account-copy{display:none;}
  .login-btn:not(.gsz-account-chip){min-height:36px;padding:0 11px;font-size:11px;}
  .menu-btn{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border:0!important;background:var(--soft)!important;}
  .topbar .mobile-menu{top:64px!important;left:14px!important;right:14px!important;max-height:calc(100dvh - 138px)!important;}

  .hero{padding:45px 0 34px;}
  .hero h1{font-size:clamp(34px,11vw,46px)!important;letter-spacing:-1.7px!important;}
  .hero-copy > p{font-size:13.5px!important;line-height:1.65!important;}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important;}
  .hero-actions .btn{width:100%!important;justify-content:center!important;}

  .resource-library-hero{padding:18px 0 8px!important;}
  .resource-library-hero-card{padding:10px 0!important;gap:12px!important;}
  .resource-library-hero-card h1{font-size:24px!important;}
  .resource-library-hero-card p{font-size:12px!important;}
  .resource-library-hero-icon{width:48px!important;height:48px!important;min-width:48px!important;border-radius:13px!important;font-size:22px!important;}
  .resource-filter-card{padding:11px!important;}
  .resource-filter-grid{grid-template-columns:1fr!important;gap:8px!important;}
  .resource-filter-field.resource-filter-subject{grid-column:auto;}
  .resource-filter-field label{font-size:10px!important;}
  .resource-filter-field select{min-height:43px!important;font-size:13px!important;}
  .resource-load-btn{width:100%!important;margin-top:9px!important;justify-content:center!important;}
  .resource-selection-card{display:none!important;}
  .resource-library-toolbar{grid-template-columns:1fr!important;margin-top:4px!important;}
  .resource-library-grid{grid-template-columns:1fr!important;gap:12px!important;}
  .library-resource-card{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;grid-template-rows:auto auto!important;}
  .library-resource-card-head{grid-column:1;grid-row:1/-1;min-height:150px!important;padding:12px!important;}
  .library-resource-icon{width:58px!important;height:58px!important;font-size:24px!important;border-radius:15px!important;}
  .library-resource-card-content{grid-column:2;padding:12px 11px 4px!important;}
  .library-resource-card-content h3{font-size:13.5px!important;}
  .library-resource-card-content p{min-height:0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:10.5px!important;}
  .library-resource-meta{margin:7px 0!important;gap:4px!important;}
  .library-resource-meta span{font-size:8.5px!important;padding:3px 5px!important;}
  .library-resource-actions{grid-column:2;padding:5px 11px 11px!important;}
  .library-resource-actions .btn{min-height:34px!important;font-size:10px!important;}

  :is(.courses-hero,.live-hero,.quiz-hero,.career-hero,.exams-hero,.search-hero,.dashboard-hero,.profile-hero,.bookmarks-hero,.progress-hero,.notification-hero){padding-top:24px!important;padding-bottom:18px!important;}
  :is(.courses-hero,.live-hero,.quiz-hero,.career-hero,.exams-hero,.search-hero,.dashboard-hero,.profile-hero,.bookmarks-hero,.progress-hero,.notification-hero) h1{font-size:27px!important;}

  .gsz-page-tools{right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));}
  .gsz-page-tool{width:38px;height:38px;border-radius:11px;font-size:15px;}
  .gsz-sheet-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .gsz-recent-section{padding-bottom:28px;}
  .gsz-recent-grid{grid-template-columns:1fr 1fr;gap:8px;}
  .gsz-recent-card{padding:10px;}
  .gsz-recent-card strong{font-size:11.5px;}
  .gsz-command-backdrop{padding-top:84px;}
}

@media (max-width:430px){
  .shell{width:calc(100% - 22px);}
  .brand strong{max-width:112px;}
  .brand small{display:none!important;}
  .resource-library-hero-icon{display:none!important;}
  .resource-library-hero-card{display:block!important;}
  .library-resource-card{grid-template-columns:96px minmax(0,1fr)!important;}
  .library-resource-card-head{min-height:144px!important;}
  .library-resource-icon{width:52px!important;height:52px!important;}
  .gsz-sheet-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;}
  .gsz-sheet-link{padding:10px 2px;font-size:9.5px;}
  .gsz-recent-grid{grid-template-columns:1fr;}
}

@media (display-mode:standalone){
  .topbar{padding-top:env(safe-area-inset-top,0px);}
  .gsz-more-sheet{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px));}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
}

/* Keep the Home PWA install action available on mobile browsers too.
   The [hidden] state is still controlled by the installability/PWA logic. */
@media (max-width:760px){
  .gsz-install-app-btn:not([hidden]){
    display:inline-flex!important;
    right:12px;
    bottom:calc(82px + env(safe-area-inset-bottom, 0px));
    z-index:10010;
  }
}


/* =========================================================
   FINAL RELEASE — MOBILE THEME ACCESS
========================================================= */

.gsz-mobile-theme-toggle{
  width:100%;
  min-height:44px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--soft);
  color:var(--text);
  font:inherit;
  cursor:pointer;
  text-align:left;
}

.gsz-mobile-theme-toggle > span{
  width:24px;
  text-align:center;
  font-size:16px;
}

.gsz-mobile-theme-toggle strong{
  font-size:12px;
  font-weight:800;
}

.gsz-sheet-theme{
  width:100%;
  min-height:42px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:9px;
  margin-top:10px;
  padding:9px 11px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--soft);
  color:var(--text);
  font:inherit;
  cursor:pointer;
  text-align:left;
}

.gsz-sheet-theme > span:first-child{
  width:24px;
  text-align:center;
  font-size:15px;
}

.gsz-sheet-theme > span:nth-child(2){
  font-size:11px;
  font-weight:750;
}

.gsz-sheet-theme strong{
  color:var(--primary);
  font-size:10px;
  font-weight:850;
}

body.dark .gsz-mobile-theme-toggle,
body.dark .gsz-sheet-theme{
  border-color:#334155;
  background:#182235;
  color:#e5e7eb;
}

/* =========================================================
   FINAL RELEASE — UNIFIED GSZ COLOR HERO SYSTEM
   Same visual language as Live Classes, without duplicating
   page markup or changing page-specific behaviour.
========================================================= */

:is(
  .study-resource-hub-card,
  .courses-hero-card,
  .live-hero-card,
  .quiz-hero-card,
  .career-hero-card,
  .exams-hero-card,
  .search-hero-card
){
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16)!important;
  background:
    radial-gradient(circle at 89% 12%,rgba(255,255,255,.16),transparent 31%),
    linear-gradient(135deg,#2563eb 0%,#4f46e5 52%,#7c3aed 100%)!important;
  color:#fff!important;
  box-shadow:0 22px 55px rgba(79,70,229,.20)!important;
}

:is(
  .study-resource-hub-card,
  .courses-hero-card,
  .live-hero-card,
  .quiz-hero-card,
  .career-hero-card,
  .exams-hero-card,
  .search-hero-card
) .section-kicker{
  color:#dbeafe!important;
}

:is(
  .study-resource-hub-card,
  .courses-hero-card,
  .live-hero-card,
  .quiz-hero-card,
  .career-hero-card,
  .exams-hero-card,
  .search-hero-card
) h1{
  color:#fff!important;
}

:is(
  .study-resource-hub-card,
  .courses-hero-card,
  .live-hero-card,
  .quiz-hero-card,
  .career-hero-card,
  .exams-hero-card,
  .search-hero-card
) p{
  color:rgba(255,255,255,.88)!important;
}

:is(
  .courses-hero-tags,
  .live-hero-tags,
  .quiz-hero-tags,
  .career-hero-tags,
  .exams-hero-tags
) span,
.search-hero-card .search-popular-row button{
  border-color:rgba(255,255,255,.20)!important;
  background:rgba(15,23,42,.24)!important;
  color:#fff!important;
  backdrop-filter:blur(5px);
}

.search-hero-card .search-popular-row small{
  color:rgba(255,255,255,.78)!important;
}

:is(
  .courses-hero-visual,
  .live-hero-visual,
  .quiz-hero-visual,
  .career-hero-visual,
  .exams-hero-visual,
  .search-hero-visual
){
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(15,23,42,.24)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)!important;
  backdrop-filter:blur(9px);
}

.search-hero-card .global-search-box{
  border-color:rgba(255,255,255,.30)!important;
  background:rgba(255,255,255,.96)!important;
}

.search-hero-card .global-search-box input{
  color:#172033!important;
}

.search-hero-card .global-search-box button{
  background:linear-gradient(135deg,#111827,#312e81)!important;
}

body.dark :is(
  .study-resource-hub-card,
  .courses-hero-card,
  .live-hero-card,
  .quiz-hero-card,
  .career-hero-card,
  .exams-hero-card,
  .search-hero-card
){
  background:
    radial-gradient(circle at 89% 12%,rgba(255,255,255,.12),transparent 31%),
    linear-gradient(135deg,#1d4ed8 0%,#4338ca 52%,#6d28d9 100%)!important;
  border-color:rgba(148,163,184,.24)!important;
}

body.dark :is(
  .courses-hero-tags,
  .live-hero-tags,
  .quiz-hero-tags,
  .career-hero-tags,
  .exams-hero-tags
) span,
body.dark .search-hero-card .search-popular-row button{
  background:rgba(15,23,42,.42)!important;
  color:#fff!important;
}

body.dark :is(
  .courses-hero-visual,
  .live-hero-visual,
  .quiz-hero-visual,
  .career-hero-visual,
  .exams-hero-visual,
  .search-hero-visual
){
  background:rgba(15,23,42,.44)!important;
}

/* Study Resources has page-local legacy colors; normalize them too. */
body.dark .study-resource-hub{
  background:var(--bg)!important;
}

body.dark .study-resource-summary article,
body.dark .study-resource-hub-item{
  border-color:var(--border)!important;
  background:var(--card)!important;
}

body.dark .study-resource-summary article > span{
  background:#182235!important;
}

body.dark .study-resource-summary strong,
body.dark .study-resource-hub-item h3{
  color:var(--text)!important;
}

body.dark .study-resource-summary small,
body.dark .study-resource-hub-item p{
  color:var(--muted)!important;
}

/* =========================================================
   FINAL RELEASE — LIVE CLASSES DARK MODE COMPLETENESS
========================================================= */

body.dark .live-page{
  background:var(--bg)!important;
}

body.dark :is(
  .live-summary-grid article,
  .live-filter-card,
  .live-session-card,
  .live-recording-modal-card,
  .live-recording-modal-head,
  .live-recording-toolbar,
  .live-recording-detail-bar article
){
  border-color:var(--border)!important;
  background:var(--card)!important;
  color:var(--text)!important;
}

body.dark :is(
  .live-summary-grid strong,
  .live-filter-head h2,
  .live-section-head h2,
  .live-session-body h3,
  .live-recording-modal-head h2,
  .live-recording-source strong,
  .live-recording-security-strip strong,
  .live-recording-detail-bar strong,
  .live-recording-placeholder h3,
  #viewerProtectionShield h3
){
  color:var(--text)!important;
}

body.dark :is(
  .live-summary-grid small,
  .live-section-head p,
  .live-session-body > p,
  .live-recording-modal-head p,
  .live-recording-security-strip small,
  .live-recording-placeholder p,
  #viewerProtectionShield p
){
  color:var(--muted)!important;
}

body.dark :is(
  .live-search-box,
  .live-filter-grid select,
  .live-recording-action,
  .live-recording-modal-close
){
  border-color:#334155!important;
  background:#111827!important;
  color:#e2e8f0!important;
}

body.dark .live-search-box input{
  color:#e2e8f0!important;
}

body.dark .live-search-box input::placeholder{
  color:#64748b!important;
}

body.dark .live-summary-grid article > span,
body.dark .live-recording-source-icon,
body.dark .live-session-meta span{
  background:#182235!important;
  color:#cbd5e1!important;
}

body.dark .live-session-thumbnail{
  background:linear-gradient(135deg,#172033,#211b35)!important;
}

body.dark .live-session-state:not(.live){
  background:#1e293b!important;
  color:#cbd5e1!important;
}

body.dark .live-recording-security-note{
  border-color:#334155!important;
  background:#111827!important;
  color:#cbd5e1!important;
}

body.dark .live-recording-security-note strong{
  color:#93c5fd!important;
}

body.dark .live-recording-security-strip{
  border-color:#334155!important;
  background:#0f172a!important;
}

body.dark .live-recording-placeholder{
  background:linear-gradient(145deg,#111827,#172033)!important;
}

body.dark .live-recording-detail-bar{
  border-color:#334155!important;
  background:#334155!important;
}

body.dark #viewerProtectionShield{
  background:rgba(15,23,42,.97)!important;
  color:#e5e7eb!important;
}

@media(max-width:760px){
  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card
  ){
    grid-template-columns:1fr!important;
    padding:24px 20px!important;
    border-radius:20px!important;
    gap:16px!important;
  }

  :is(
    .courses-hero-visual,
    .live-hero-visual,
    .quiz-hero-visual,
    .career-hero-visual,
    .exams-hero-visual,
    .search-hero-visual
  ){
    display:none!important;
  }

  :is(
    .courses-hero-tags,
    .live-hero-tags,
    .quiz-hero-tags,
    .career-hero-tags,
    .exams-hero-tags
  ){
    gap:6px!important;
    margin-top:16px!important;
  }

  :is(
    .courses-hero-tags,
    .live-hero-tags,
    .quiz-hero-tags,
    .career-hero-tags,
    .exams-hero-tags
  ) span{
    padding:6px 8px!important;
    font-size:10px!important;
  }

  .search-hero-card .global-search-box{
    grid-template-columns:auto minmax(0,1fr)!important;
    padding:6px 10px!important;
  }

  .search-hero-card .global-search-box button{
    grid-column:1/-1;
    width:100%;
    min-height:38px;
  }
}


/* =========================================================
   MOBILE NAV — THEME ROW MATCHES STANDARD MENU ITEMS
   UI-only: keeps the existing theme toggle behavior intact.
========================================================= */
.mobile-menu .gsz-mobile-theme-toggle{
  width:100%;
  min-height:0;
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 14px;
  margin:0;
  border:0;
  border-radius:10px;
  background:transparent;
  box-shadow:none;
  color:var(--text);
  font:inherit;
  cursor:pointer;
  text-align:left;
  transition:.2s ease;
}

.mobile-menu .gsz-mobile-theme-toggle > span{
  width:auto;
  min-width:20px;
  text-align:center;
  font-size:15px !important;
  line-height:1;
  opacity:.88;
}

.mobile-menu .gsz-mobile-theme-toggle strong{
  font-size:14px !important;
  line-height:1.35;
  font-weight:700;
  color:inherit;
}

.mobile-menu .gsz-mobile-theme-toggle:hover,
.mobile-menu .gsz-mobile-theme-toggle:focus-visible{
  background:#eef2ff;
  color:var(--primary);
  outline:none;
}

body.dark .mobile-menu .gsz-mobile-theme-toggle{
  border:0;
  background:transparent;
  color:#e5e7eb;
}

body.dark .mobile-menu .gsz-mobile-theme-toggle:hover,
body.dark .mobile-menu .gsz-mobile-theme-toggle:focus-visible{
  background:#182235;
  color:#c7d2fe;
}


/* =========================================================
   FINAL MOBILE HANDY UI + ACCOUNT NAVIGATION
   Navigation-only polish; no page/business logic changes.
========================================================= */

/* The header hamburger menu uses the same visual language for links/actions. */
.mobile-menu .gsz-mobile-menu-action{
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  padding:11px 14px;
  margin:0;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--text);
  font:inherit;
  font-size:14px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
  transition:.18s ease;
}
.mobile-menu .gsz-mobile-menu-action:hover,
.mobile-menu .gsz-mobile-menu-action:focus-visible{
  background:#fff1f2;
  color:#be123c;
  outline:none;
}
body.dark .mobile-menu .gsz-mobile-menu-action{color:#e5e7eb;}
body.dark .mobile-menu .gsz-mobile-menu-action:hover,
body.dark .mobile-menu .gsz-mobile-menu-action:focus-visible{
  background:#3a1d2a;
  color:#fda4af;
}
.mobile-menu .gsz-menu-dashboard{font-weight:800;}

/* Mobile bottom nav: five thumb-friendly actions, with safe-area support. */
.bottom-nav.gsz-bottom-nav .gsz-bottom-logout{color:#e11d48;}
.bottom-nav.gsz-bottom-nav .gsz-bottom-logout:hover,
.bottom-nav.gsz-bottom-nav .gsz-bottom-logout:focus-visible{
  background:#fff1f2;
  color:#be123c;
  outline:none;
}
body.dark .bottom-nav.gsz-bottom-nav .gsz-bottom-logout{color:#fda4af;}
body.dark .bottom-nav.gsz-bottom-nav .gsz-bottom-logout:hover,
body.dark .bottom-nav.gsz-bottom-nav .gsz-bottom-logout:focus-visible{background:#3a1d2a;}
.bottom-nav.gsz-bottom-nav .gsz-bottom-login{color:var(--primary);font-weight:800;}

/* More sheet stays usable on short phones and PWA windows. */
.gsz-more-sheet{
  max-height:min(78dvh,680px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}

@media (max-width:760px){
  html,body{max-width:100%;overflow-x:hidden;}
  a,button{touch-action:manipulation;}

  .topbar .mobile-menu{
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }

  .topbar .mobile-menu a,
  .topbar .mobile-menu .gsz-mobile-menu-action,
  .topbar .mobile-menu .gsz-mobile-theme-toggle{
    min-height:46px;
  }

  .bottom-nav.gsz-bottom-nav{
    height:calc(68px + env(safe-area-inset-bottom,0px))!important;
    padding:5px 6px env(safe-area-inset-bottom,0px)!important;
  }

  .bottom-nav.gsz-bottom-nav a,
  .bottom-nav.gsz-bottom-nav button{
    min-height:58px;
    gap:3px;
    padding:4px 2px;
    border-radius:11px;
    font-size:9.5px;
    line-height:1.05;
  }

  .bottom-nav.gsz-bottom-nav span{
    font-size:19px;
  }

  body{
    padding-bottom:calc(68px + env(safe-area-inset-bottom,0px));
  }

  .gsz-page-tools{
    bottom:calc(80px + env(safe-area-inset-bottom,0px));
  }
}

@media (max-width:480px){
  .gsz-more-sheet{
    width:100%;
    padding-left:12px;
    padding-right:12px;
    border-radius:20px 20px 0 0;
  }

  .gsz-sheet-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }

  .gsz-sheet-link{
    min-height:72px;
    padding:9px 3px;
    font-size:9.5px;
  }
}


/* =========================================================
   FINAL MINOR POLISH — MOBILE PAGE SPACING + INSTALL LAYER
========================================================= */
@media (max-width:760px){
  /* Only pages that actually render the mobile bottom nav need its space. */
  body:not(.has-bottom-nav){
    padding-bottom:0 !important;
  }

  body.has-bottom-nav{
    padding-bottom:calc(68px + env(safe-area-inset-bottom,0px)) !important;
  }

  /* Keep the install action below the More-sheet/backdrop stacking layer. */
  .gsz-install-app-btn:not([hidden]){
    z-index:1200 !important;
  }
}

/* =========================================================
   MOBILE APP EXPERIENCE — COMPACT, THUMB-FRIENDLY, VIEWPORT-SAFE
========================================================= */

.gsz-sheet-link{
  appearance:none;
  -webkit-appearance:none;
  color:var(--text);
  font-family:inherit;
  line-height:1.25;
  cursor:pointer;
}

.auth-page,
.study-resource-hub,
.live-page,
.courses-page,
.course-details-page,
.exam-details-page,
.lesson-page,
.dashboard-page,
.profile-page,
.bookmarks-page,
.progress-page,
.notifications-page,
.premium-page,
.resource-library-page{
  min-height:100svh;
}

@supports (height:100dvh){
  .auth-page,
  .study-resource-hub,
  .live-page,
  .courses-page,
  .course-details-page,
  .exam-details-page,
  .lesson-page,
  .dashboard-page,
  .profile-page,
  .bookmarks-page,
  .progress-page,
  .notifications-page,
  .premium-page,
  .resource-library-page{
    min-height:100dvh;
  }

  .main-viewer-card.viewer-fullscreen .main-resource-viewer,
  .main-viewer-card.viewer-fullscreen .main-resource-viewer iframe,
  .main-viewer-card.viewer-fullscreen .main-resource-viewer video{
    height:calc(100dvh - 61px)!important;
  }

  #protectedViewerRoot:fullscreen,
  #protectedViewerRoot:-webkit-full-screen{
    height:100dvh!important;
    min-height:100dvh!important;
  }
}

@media (max-width:760px){
  :root{--header-height:62px;}

  .shell{
    width:calc(100% - 22px)!important;
  }

  .section{
    padding:30px 0!important;
  }

  .section-head,
  .center-head{
    gap:6px!important;
    margin-bottom:16px!important;
  }

  .section-head h2,
  .center-head h2{
    font-size:clamp(20px,6vw,24px)!important;
    line-height:1.22!important;
  }

  .section-note,
  .section-head > p{
    max-width:none!important;
    font-size:12px!important;
    line-height:1.5!important;
  }

  .topbar,
  .nav-wrap{
    min-height:var(--header-height)!important;
  }

  .brand-mark,
  .topbar .gsz-header-logo-mark{
    width:46px!important;
    height:34px!important;
  }

  .brand strong{
    max-width:128px!important;
  }

  .menu-btn,
  .topbar #menuToggle,
  .login-btn:not(.gsz-account-chip),
  .login-btn.gsz-account-chip{
    min-width:44px!important;
    min-height:44px!important;
  }

  .menu-btn,
  .topbar #menuToggle,
  .login-btn.gsz-account-chip{
    width:44px!important;
    height:44px!important;
  }

  .topbar .mobile-menu{
    top:calc(var(--header-height) + 4px)!important;
    max-height:calc(100dvh - var(--header-height) - 84px)!important;
  }

  .hero{
    padding:28px 0 24px!important;
  }

  .hero h1{
    font-size:clamp(31px,9.2vw,38px)!important;
    line-height:1.08!important;
    letter-spacing:-1.25px!important;
  }

  .hero-copy > p{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    margin-top:12px!important;
    font-size:12.5px!important;
    line-height:1.55!important;
  }

  .hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .hero-actions .btn{
    min-width:0!important;
    padding-inline:10px!important;
    font-size:11px!important;
  }

  :is(
    .study-resource-hub-hero,
    .courses-hero,
    .live-hero,
    .quiz-hero,
    .career-hero,
    .exams-hero,
    .search-hero,
    .dashboard-hero,
    .profile-hero,
    .bookmarks-hero,
    .progress-hero,
    .notification-hero,
    .premium-hero,
    .about-hero,
    .contact-hero,
    .subject-hero,
    .course-detail-hero,
    .exam-detail-hero,
    .lesson-header-section,
    .quiz-result-hero,
    .resource-library-hero
  ){
    padding-top:14px!important;
    padding-bottom:10px!important;
  }

  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card,
    .resource-library-hero-card,
    .dashboard-welcome-card,
    .dashboard-hero-card,
    .profile-hero-card,
    .bookmarks-hero-card,
    .progress-hero-card,
    .notification-hero-card,
    .premium-hero-card,
    .about-hero-card,
    .contact-hero-card,
    .subject-hero-card,
    .course-detail-hero,
    .exam-detail-hero-card,
    .lesson-header-card,
    .quiz-result-hero-card
  ){
    gap:10px!important;
    padding:16px!important;
    border-radius:17px!important;
  }

  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card,
    .resource-library-hero-card,
    .dashboard-welcome-card,
    .dashboard-hero-card,
    .profile-hero-card,
    .bookmarks-hero-card,
    .progress-hero-card,
    .notification-hero-card,
    .premium-hero-card,
    .about-hero-card,
    .contact-hero-card,
    .subject-hero-card,
    .course-detail-hero,
    .exam-detail-hero-card,
    .lesson-header-card,
    .quiz-result-hero-card
  ) h1{
    margin-top:4px!important;
    font-size:clamp(22px,6.8vw,26px)!important;
    line-height:1.16!important;
    letter-spacing:-.65px!important;
  }

  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card,
    .resource-library-hero-card,
    .dashboard-welcome-card,
    .dashboard-hero-card,
    .profile-hero-card,
    .bookmarks-hero-card,
    .progress-hero-card,
    .notification-hero-card,
    .premium-hero-card,
    .about-hero-card,
    .contact-hero-card,
    .subject-hero-card,
    .exam-detail-hero-card,
    .lesson-header-card,
    .quiz-result-hero-card
  ) p{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    margin-top:7px!important;
    font-size:12px!important;
    line-height:1.5!important;
  }

  :is(
    .study-resource-hub-icon,
    .courses-hero-visual,
    .live-hero-visual,
    .quiz-hero-visual,
    .career-hero-visual,
    .exams-hero-visual,
    .search-hero-visual,
    .notification-hero-visual,
    .premium-hero-visual,
    .about-hero-mark,
    .contact-hero-icon
  ){
    display:none!important;
  }

  :is(
    .courses-hero-tags,
    .live-hero-tags,
    .quiz-hero-tags,
    .career-hero-tags,
    .exams-hero-tags
  ){
    display:none!important;
  }

  :is(
    .study-resource-summary,
    .course-summary-grid,
    .course-context-summary-grid,
    .quiz-summary-grid,
    .live-summary-grid,
    .career-summary-grid,
    .notification-summary-grid,
    .dashboard-stats-grid,
    .bookmarks-summary-grid,
    .progress-stats-grid,
    .exam-summary-grid,
    .exam-detail-summary-grid,
    .search-summary-grid,
    .subject-summary-grid,
    .quiz-result-summary-grid
  ){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  :is(
    .study-resource-summary,
    .course-summary-grid,
    .course-context-summary-grid,
    .quiz-summary-grid,
    .live-summary-grid,
    .career-summary-grid,
    .notification-summary-grid,
    .dashboard-stats-grid,
    .bookmarks-summary-grid,
    .progress-stats-grid,
    .exam-summary-grid,
    .exam-detail-summary-grid,
    .search-summary-grid,
    .subject-summary-grid,
    .quiz-result-summary-grid
  ) article{
    min-width:0!important;
    padding:11px 9px!important;
  }

  .study-resource-hub-hero{
    padding-bottom:8px!important;
  }

  .study-resource-hub-card{
    min-height:0!important;
  }

  .study-resource-hub-card h1{
    font-size:24px!important;
  }

  .study-resource-summary{
    padding:0 0 18px!important;
  }

  .study-resource-summary article{
    min-height:68px!important;
  }

  .study-resource-summary article > span{
    width:36px!important;
    height:36px!important;
    flex:0 0 36px!important;
    border-radius:10px!important;
    font-size:17px!important;
  }

  .study-resource-summary strong{
    font-size:17px!important;
    line-height:1.1!important;
  }

  .study-resource-summary small{
    margin-top:3px!important;
    font-size:10px!important;
    line-height:1.25!important;
  }

  .study-resource-hub-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }

  .study-resource-hub-item{
    min-height:142px!important;
    padding:13px!important;
    border-radius:15px!important;
  }

  .study-resource-hub-item > span{
    font-size:25px!important;
  }

  .study-resource-hub-item h3{
    margin:8px 0 3px!important;
    font-size:15px!important;
  }

  .study-resource-hub-item p{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    font-size:10.5px!important;
    line-height:1.45!important;
  }

  .study-resource-hub-item small{
    padding-top:8px!important;
    font-size:9.5px!important;
  }

  .study-resource-hub-item:last-child{
    grid-column:1/-1;
    min-height:112px!important;
  }

  .study-resource-hub .quick-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }

  .study-resource-hub .quick-card{
    min-width:0!important;
    padding:13px!important;
    border-radius:15px!important;
  }

  .study-resource-hub .quick-card > span{
    margin-bottom:6px!important;
    font-size:23px!important;
  }

  .study-resource-hub .quick-card h3{
    margin-bottom:4px!important;
    font-size:13px!important;
    line-height:1.3!important;
  }

  .study-resource-hub .quick-card p{
    min-height:0!important;
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    margin-bottom:7px!important;
    font-size:10.5px!important;
    line-height:1.45!important;
  }

  .study-resource-hub .quick-card b{
    font-size:9.5px!important;
  }

  .profile-large-avatar{
    width:48px!important;
    height:48px!important;
  }

  .profile-hero-plan{
    padding-top:9px!important;
  }

  .premium-hero-points,
  .exam-detail-quick-tags{
    display:none!important;
  }

  .premium-hero-actions,
  .dashboard-hero-actions,
  .subject-hero-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .premium-hero-actions > *,
  .dashboard-hero-actions > *,
  .subject-hero-actions > *{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    padding-inline:8px!important;
    text-align:center!important;
  }

  .trust-row{
    gap:7px!important;
    margin-top:16px!important;
  }

  .trust-row > div{
    min-width:0!important;
    padding:9px 6px!important;
  }

  .trust-row strong{
    font-size:10.5px!important;
  }

  .trust-row span{
    font-size:8.5px!important;
  }

  .main-resource-viewer,
  .viewer-loading,
  .viewer-placeholder,
  .viewer-access-lock,
  .viewer-error-state,
  .viewer-meet-state{
    min-height:min(480px,62dvh)!important;
  }

  .main-resource-viewer iframe{
    height:min(480px,62dvh)!important;
  }

  .lesson-pdf-frame,
  .lesson-document-frame{
    height:min(470px,62dvh)!important;
  }

  .gsz-page-tools{
    display:none!important;
  }

  .gsz-sheet-close{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
  }
}

@media (max-width:340px){
  .hero-actions,
  .study-resource-hub .quick-grid{
    grid-template-columns:1fr!important;
  }

  .brand strong{
    max-width:104px!important;
  }
}


/* =========================================================
   STUDENT UX COMPACT RELEASE — 2026-10-08
   Purpose:
   - Replace the marketing-heavy Home hero with a task-first study panel
   - Keep page heroes narrow on desktop and mobile
   - Make Course / Live cards denser without removing useful information
   Presentation-only; no API, auth, access or database behaviour changes.
========================================================= */

.home-focus-hero{
  padding:26px 0 18px;
  background:
    radial-gradient(circle at 0 0,rgba(37,99,235,.08),transparent 28rem),
    radial-gradient(circle at 100% 0,rgba(124,58,237,.08),transparent 28rem),
    var(--bg);
}

.home-focus-card{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
  gap:18px;
  align-items:stretch;
}

.home-focus-main,
.home-focus-quick{
  min-width:0;
  padding:24px;
  border:1px solid var(--border);
  border-radius:20px;
  background:var(--card);
  box-shadow:var(--shadow-sm);
}

.home-focus-main{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.home-focus-main h1{
  margin:6px 0 0;
  font-family:"Poppins",sans-serif;
  font-size:clamp(30px,3.2vw,43px);
  line-height:1.1;
  letter-spacing:-1.25px;
}

.home-focus-main > p{
  max-width:720px;
  margin:9px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}

.home-focus-context{
  display:grid;
  gap:2px;
  margin-top:14px;
  padding:12px 14px;
  border:1px solid #dbe4ff;
  border-radius:14px;
  background:linear-gradient(135deg,#f8faff,#f7f5ff);
}

.home-focus-context[hidden]{display:none!important;}
.home-focus-context-label{color:var(--primary);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.55px;}
.home-focus-context strong{font-size:15px;line-height:1.4;color:var(--text);}
.home-focus-context small{color:var(--muted);font-size:11px;line-height:1.45;}

.home-focus-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:16px;
}

.home-focus-actions .btn{
  min-height:42px;
  padding:10px 15px;
  border-radius:11px;
  font-size:12px;
}

.home-focus-quick{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.home-focus-quick-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.home-focus-quick-head h2{
  margin-top:4px;
  font-family:"Poppins",sans-serif;
  font-size:19px;
  line-height:1.2;
}

.home-focus-quick-head > a{
  color:var(--primary);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}

.home-focus-quick-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.home-focus-quick-grid a{
  min-width:0;
  min-height:78px;
  display:grid;
  align-content:center;
  justify-items:start;
  gap:1px;
  padding:11px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--soft);
  color:var(--text);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.home-focus-quick-grid a:hover{
  transform:translateY(-2px);
  border-color:#c7d2fe;
  background:#f5f7ff;
}

.home-focus-quick-grid a > span{font-size:18px;line-height:1;}
.home-focus-quick-grid a > strong{margin-top:4px;font-size:12px;line-height:1.3;}
.home-focus-quick-grid a > small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--muted);font-size:9px;}

body.dark .home-focus-context{
  border-color:#33415f;
  background:linear-gradient(135deg,#141d32,#1b1830);
}
body.dark .home-focus-quick-grid a:hover{background:#182235;}

/* Desktop/tablet: keep informational heroes present but short. */
@media(min-width:651px){
  :is(
    .study-resource-hub-hero,
    .courses-hero,
    .live-hero,
    .quiz-hero,
    .career-hero,
    .exams-hero,
    .search-hero,
    .dashboard-hero,
    .profile-hero,
    .bookmarks-hero,
    .progress-hero,
    .notification-hero,
    .premium-hero,
    .about-hero,
    .contact-hero,
    .subject-hero,
    .course-detail-hero,
    .exam-detail-hero,
    .lesson-header-section,
    .quiz-result-hero,
    .resource-library-hero
  ){
    padding-top:18px!important;
    padding-bottom:12px!important;
  }

  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card,
    .resource-library-hero-card,
    .dashboard-welcome-card,
    .dashboard-hero-card,
    .profile-hero-card,
    .bookmarks-hero-card,
    .progress-hero-card,
    .notification-hero-card,
    .premium-hero-card,
    .about-hero-card,
    .contact-hero-card,
    .subject-hero-card,
    .course-detail-hero,
    .exam-detail-hero-card,
    .lesson-header-card,
    .quiz-result-hero-card
  ){
    gap:18px!important;
    padding:20px 24px!important;
    border-radius:20px!important;
    min-height:0!important;
  }

  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card,
    .resource-library-hero-card,
    .dashboard-welcome-card,
    .dashboard-hero-card,
    .profile-hero-card,
    .bookmarks-hero-card,
    .progress-hero-card,
    .notification-hero-card,
    .premium-hero-card,
    .about-hero-card,
    .contact-hero-card,
    .subject-hero-card,
    .course-detail-hero,
    .exam-detail-hero-card,
    .lesson-header-card,
    .quiz-result-hero-card
  ) h1{
    margin-top:4px!important;
    font-size:clamp(27px,2.7vw,35px)!important;
    line-height:1.13!important;
    letter-spacing:-.85px!important;
  }

  :is(
    .study-resource-hub-card,
    .courses-hero-card,
    .live-hero-card,
    .quiz-hero-card,
    .career-hero-card,
    .exams-hero-card,
    .search-hero-card,
    .resource-library-hero-card,
    .dashboard-welcome-card,
    .dashboard-hero-card,
    .profile-hero-card,
    .bookmarks-hero-card,
    .progress-hero-card,
    .notification-hero-card,
    .premium-hero-card,
    .about-hero-card,
    .contact-hero-card,
    .subject-hero-card,
    .course-detail-hero,
    .exam-detail-hero-card,
    .lesson-header-card,
    .quiz-result-hero-card
  ) p{
    max-width:760px!important;
    margin-top:7px!important;
    font-size:13px!important;
    line-height:1.55!important;
  }

  :is(
    .courses-hero-tags,
    .live-hero-tags,
    .quiz-hero-tags,
    .career-hero-tags,
    .exams-hero-tags
  ){
    gap:6px!important;
    margin-top:11px!important;
  }

  :is(
    .courses-hero-tags,
    .live-hero-tags,
    .quiz-hero-tags,
    .career-hero-tags,
    .exams-hero-tags
  ) span{
    padding:5px 8px!important;
    font-size:10px!important;
  }

  :is(
    .courses-hero-visual,
    .live-hero-visual,
    .quiz-hero-visual,
    .career-hero-visual,
    .exams-hero-visual
  ){
    width:132px!important;
    min-width:132px!important;
    height:112px!important;
    min-height:112px!important;
    border-radius:17px!important;
    justify-self:end!important;
  }

  :is(
    .courses-hero-visual,
    .live-hero-visual,
    .quiz-hero-visual,
    .career-hero-visual,
    .exams-hero-visual
  ) :is(span,.live-hero-icon){
    font-size:38px!important;
  }
}

/* Course cards: stop a small result set from stretching into giant cards. */
@media(min-width:901px){
  .course-grid{
    grid-template-columns:repeat(auto-fit,minmax(270px,340px))!important;
    justify-content:start!important;
    gap:14px!important;
  }

  .live-class-grid{
    grid-template-columns:repeat(auto-fit,minmax(270px,330px))!important;
    justify-content:start!important;
    gap:14px!important;
  }
}

.course-thumbnail{height:138px!important;}
.course-thumbnail-placeholder{font-size:44px!important;}
.course-play-icon{width:44px!important;height:44px!important;font-size:15px!important;}
.course-card-content{padding:14px!important;}
.course-card-content > small{font-size:10px!important;}
.course-card-content h3{margin-top:4px!important;font-size:15px!important;line-height:1.35!important;}
.course-card-content > p{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  margin-top:5px!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}
.course-meta{margin-top:9px!important;gap:5px!important;}
.course-meta span{padding:4px 7px!important;font-size:9.5px!important;}
.course-teacher{gap:7px!important;padding-top:10px!important;margin-top:10px!important;}
.course-teacher-avatar{width:32px!important;height:32px!important;font-size:11px!important;}
.course-teacher small{font-size:9px!important;}
.course-teacher strong{font-size:11px!important;}
.course-enrolled-badge{margin-top:9px!important;padding:5px 8px!important;font-size:9.5px!important;}
.course-card-progress{margin-top:9px!important;}
.course-card-actions{padding-top:11px!important;gap:7px!important;}
.course-view-btn,.course-secondary-btn{min-height:38px!important;padding:8px 10px!important;font-size:11px!important;}

.live-class-visual{height:125px!important;}
.live-class-visual > span{font-size:37px!important;}
.live-class-content{padding:13px!important;}
.live-class-content > small{font-size:9px!important;}
.live-class-content h3{margin-top:4px!important;font-size:14px!important;line-height:1.4!important;}
.live-class-content > p{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  margin-top:5px!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}
.live-class-meta{gap:6px!important;margin-top:9px!important;}
.live-class-meta div{padding:7px!important;border-radius:9px!important;}
.live-class-meta small{font-size:9px!important;}
.live-class-meta strong{font-size:10px!important;}
.live-platform-row{margin-top:9px!important;}
.live-class-actions{padding-top:11px!important;gap:7px!important;}
.live-join-btn,.live-secondary-btn{padding:8px 9px!important;font-size:10px!important;}

@media(max-width:900px){
  .home-focus-card{grid-template-columns:1fr;}
  .home-focus-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media(max-width:650px){
  .home-focus-hero{padding:12px 0 8px;}
  .home-focus-card{gap:9px;}
  .home-focus-main,.home-focus-quick{padding:15px;border-radius:15px;}
  .home-focus-main h1{font-size:clamp(24px,7.8vw,30px);letter-spacing:-.7px;}
  .home-focus-main > p{margin-top:6px;font-size:11.5px;line-height:1.5;}
  .home-focus-context{margin-top:10px;padding:10px 11px;border-radius:11px;}
  .home-focus-context strong{font-size:13px;}
  .home-focus-context small{font-size:9.5px;}
  .home-focus-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:11px;gap:7px;}
  .home-focus-actions .btn{min-width:0;min-height:40px;padding:8px;font-size:10px;}
  .home-focus-quick-head{margin-bottom:8px;}
  .home-focus-quick-head h2{font-size:16px;}
  .home-focus-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
  .home-focus-quick-grid a{min-height:65px;padding:8px;border-radius:10px;}
  .home-focus-quick-grid a > span{font-size:15px;}
  .home-focus-quick-grid a > strong{font-size:10px;}
  .home-focus-quick-grid a > small{display:none;}

  .course-thumbnail{height:118px!important;}
  .course-card-content{padding:12px!important;}
  .course-teacher{padding-top:9px!important;margin-top:9px!important;}
  .course-card-actions{grid-template-columns:minmax(0,1fr) auto!important;}
  .live-class-visual{height:112px!important;}
  .live-class-content{padding:12px!important;}
}

@media(max-width:390px){
  .home-focus-actions{grid-template-columns:1fr;}
  .home-focus-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* =========================================================
   STUDENT COMPACT DENSITY V2 — 2026-10-10
   Presentation-only compact layer for desktop + mobile.
   Admin pages are intentionally excluded.
========================================================= */

body:not(.admin-dashboard-page):not(.admin-auth-page){
  font-size:14px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .shell{
  width:min(1360px,calc(100% - 40px));
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .section{
  padding:42px 0;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .section-head,
body:not(.admin-dashboard-page):not(.admin-auth-page) .center-head{
  margin-bottom:14px;
  gap:8px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .section-head h2,
body:not(.admin-dashboard-page):not(.admin-auth-page) .center-head h2{
  font-size:clamp(21px,2vw,27px);
  line-height:1.2;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .section-kicker,
body:not(.admin-dashboard-page):not(.admin-auth-page) .eyebrow{
  font-size:9.5px;
  letter-spacing:.07em;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .btn{
  min-height:38px;
  padding:8px 13px;
  border-radius:10px;
  font-size:12px;
}

/* ----- Header: slightly denser without shrinking tap targets too far ----- */
@media(min-width:761px){
  body:not(.admin-dashboard-page):not(.admin-auth-page){
    --header-height:64px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .brand-mark,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .topbar .gsz-header-logo-mark{
    width:54px;
    height:34px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .desktop-nav a{
    padding-inline:clamp(8px,.8vw,13px);
    font-size:12.5px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .icon-btn,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .menu-btn,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .gsz-header-notification{
    width:38px;
    height:38px;
    min-width:38px;
    min-height:38px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .login-btn.gsz-account-chip{
    min-height:40px;
  }
}

/* ----- Home: task-first and materially shorter ----- */
body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-hero{
  padding:14px 0 10px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-card{
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:12px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main,
body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick{
  padding:17px 18px;
  border-radius:16px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main h1{
  margin-top:4px;
  font-size:clamp(27px,2.65vw,36px);
  line-height:1.08;
  letter-spacing:-1px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main > p{
  margin-top:6px;
  font-size:12.5px;
  line-height:1.5;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-context{
  margin-top:10px;
  padding:9px 11px;
  border-radius:11px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-context strong{font-size:13px;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-context small{font-size:9.5px;}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions{
  margin-top:11px;
  gap:7px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions .btn{
  min-height:38px;
  padding:8px 12px;
  font-size:11px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-head{
  margin-bottom:8px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-head h2{
  margin-top:2px;
  font-size:17px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-head > a{
  font-size:10px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid{
  gap:6px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a{
  min-height:60px;
  gap:0;
  padding:8px 9px;
  border-radius:10px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a > span{font-size:15px;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a > strong{margin-top:3px;font-size:10.5px;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a > small{font-size:8px;}

/* ----- Home Study Finder: remove the oversized panel feeling ----- */
body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-section{
  margin-top:0;
  padding:0 0 18px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-card{
  padding:16px 18px;
  border-radius:16px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-heading{
  gap:14px;
  margin-bottom:11px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-heading h2{
  font-size:24px;
  line-height:1.18;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-heading p{
  font-size:10.5px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .program-switch{
  gap:6px;
  margin-bottom:10px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .program-btn{
  min-height:36px;
  padding:7px 12px;
  border-radius:9px;
  font-size:11px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid{
  gap:8px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid label span{
  margin-bottom:4px;
  font-size:8.5px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid select{
  min-height:40px;
  padding:8px 9px;
  border-radius:9px;
  font-size:11.5px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-action{
  margin-top:11px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-action .btn{
  min-height:38px;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-message{
  margin-top:7px;
  font-size:10.5px;
}

/* ----- Page heroes: narrower on desktop too ----- */
@media(min-width:651px){
  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-hero,.courses-hero,.live-hero,.quiz-hero,.career-hero,.exams-hero,
    .search-hero,.dashboard-hero,.profile-hero,.bookmarks-hero,.progress-hero,
    .notification-hero,.premium-hero,.about-hero,.contact-hero,.subject-hero,
    .course-detail-hero,.exam-detail-hero,.lesson-header-section,.quiz-result-hero,
    .resource-library-hero
  ){
    padding-top:10px!important;
    padding-bottom:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-card,.courses-hero-card,.live-hero-card,.quiz-hero-card,
    .career-hero-card,.exams-hero-card,.search-hero-card,.resource-library-hero-card,
    .dashboard-welcome-card,.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,
    .progress-hero-card,.notification-hero-card,.premium-hero-card,.about-hero-card,
    .contact-hero-card,.subject-hero-card,.course-detail-hero,.exam-detail-hero-card,
    .lesson-header-card,.quiz-result-hero-card
  ){
    gap:12px!important;
    padding:14px 18px!important;
    border-radius:16px!important;
    min-height:0!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-card,.courses-hero-card,.live-hero-card,.quiz-hero-card,
    .career-hero-card,.exams-hero-card,.search-hero-card,.resource-library-hero-card,
    .dashboard-welcome-card,.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,
    .progress-hero-card,.notification-hero-card,.premium-hero-card,.about-hero-card,
    .contact-hero-card,.subject-hero-card,.course-detail-hero,.exam-detail-hero-card,
    .lesson-header-card,.quiz-result-hero-card
  ) h1{
    margin-top:2px!important;
    font-size:clamp(24px,2.2vw,30px)!important;
    line-height:1.12!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-card,.courses-hero-card,.live-hero-card,.quiz-hero-card,
    .career-hero-card,.exams-hero-card,.search-hero-card,.resource-library-hero-card,
    .dashboard-welcome-card,.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,
    .progress-hero-card,.notification-hero-card,.premium-hero-card,.about-hero-card,
    .contact-hero-card,.subject-hero-card,.course-detail-hero,.exam-detail-hero-card,
    .lesson-header-card,.quiz-result-hero-card
  ) p{
    margin-top:5px!important;
    font-size:11.5px!important;
    line-height:1.45!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .courses-hero-visual,.live-hero-visual,.quiz-hero-visual,.career-hero-visual,
    .exams-hero-visual,.search-hero-visual
  ){
    width:94px!important;
    min-width:94px!important;
    height:78px!important;
    min-height:78px!important;
    border-radius:14px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .courses-hero-visual,.live-hero-visual,.quiz-hero-visual,.career-hero-visual,
    .exams-hero-visual,.search-hero-visual
  ) :is(span,.live-hero-icon){
    font-size:30px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .courses-hero-tags,.live-hero-tags,.quiz-hero-tags,.career-hero-tags,.exams-hero-tags
  ){
    gap:5px!important;
    margin-top:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .courses-hero-tags,.live-hero-tags,.quiz-hero-tags,.career-hero-tags,.exams-hero-tags
  ) span{
    padding:4px 7px!important;
    font-size:8.5px!important;
  }
}

/* ----- Summary / filters across Courses, Live, Quiz, Exams, Career ----- */
body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-summary-section,.course-context-summary,.live-summary-section,.quiz-summary-section,
  .exam-summary-section,.career-summary-section,.notification-summary-section
){
  padding-bottom:12px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-summary-grid,.course-context-summary-grid,.live-summary-grid,.quiz-summary-grid,
  .exam-summary-grid,.career-summary-grid,.notification-summary-grid
){
  gap:8px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-summary-grid,.course-context-summary-grid,.live-summary-grid,.quiz-summary-grid,
  .exam-summary-grid,.career-summary-grid,.notification-summary-grid
) article{
  gap:8px!important;
  padding:10px 11px!important;
  border-radius:12px!important;
  min-height:0!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-summary-grid,.live-summary-grid,.quiz-summary-grid,.exam-summary-grid,
  .career-summary-grid,.notification-summary-grid
) article > span{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border-radius:10px!important;
  font-size:16px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-summary-grid,.live-summary-grid,.quiz-summary-grid,.exam-summary-grid,
  .career-summary-grid,.notification-summary-grid
) strong{
  font-size:16px!important;
  line-height:1.1!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-summary-grid,.live-summary-grid,.quiz-summary-grid,.exam-summary-grid,
  .career-summary-grid,.notification-summary-grid
) small{
  font-size:9px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-filter-section,.live-filter-section,.quiz-filter-section,.exam-filter-section,
  .career-filter-section,.search-filter-section,.notification-filter-section
){
  padding-bottom:14px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-filter-card,.live-filter-card,.quiz-filter-card,.exam-filter-card,
  .career-filter-card,.search-filter-card,.notification-filter-card,.resource-filter-card
){
  padding:13px!important;
  border-radius:13px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-filter-head,.live-filter-head,.quiz-filter-head,.exam-filter-head
){
  gap:10px!important;
  padding-bottom:9px!important;
  margin-bottom:9px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-filter-head,.live-filter-head,.quiz-filter-head,.exam-filter-head
) h2{
  margin-top:2px!important;
  font-size:18px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-search-box,.live-search-box,.quiz-search-box
){
  min-height:40px!important;
  padding:0 10px!important;
  border-radius:10px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-filter-grid select,.live-filter-grid select,.quiz-filter-grid select,
  .exam-filter-grid select,.resource-filter-grid select
){
  min-height:40px!important;
  padding:8px 9px!important;
  border-radius:10px!important;
  font-size:11px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
  .course-search-box input,.live-search-box input,.quiz-search-box input
){
  min-height:38px!important;
  padding:7px 0!important;
  font-size:11.5px!important;
}

/* ----- Continue Course panel ----- */
body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-section{
  padding-bottom:14px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-card{
  gap:12px!important;
  padding:14px 16px!important;
  border-radius:15px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-icon{
  width:44px!important;
  height:44px!important;
  border-radius:12px!important;
  font-size:17px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-content h2{font-size:18px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-content > p{font-size:11.5px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-progress{margin-top:7px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-progress-bar{height:6px!important;}

/* ----- Course / Live result cards ----- */
@media(min-width:901px){
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-grid{
    grid-template-columns:repeat(auto-fit,minmax(250px,310px))!important;
    gap:12px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-grid{
    grid-template-columns:repeat(auto-fit,minmax(250px,305px))!important;
    gap:12px!important;
  }
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .course-thumbnail{height:112px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-thumbnail-placeholder{font-size:36px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-play-icon{width:40px!important;height:40px!important;font-size:13px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-content{padding:11px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-content h3{font-size:13.5px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-content > p{font-size:10.5px!important;line-height:1.42!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-meta{margin-top:7px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-teacher{padding-top:8px!important;margin-top:8px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-actions{padding-top:9px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-view-btn,
body:not(.admin-dashboard-page):not(.admin-auth-page) .course-secondary-btn{min-height:34px!important;padding:7px 9px!important;font-size:10px!important;}

body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-visual{height:104px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-visual > span{font-size:31px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-content{padding:11px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-content h3{font-size:13.5px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-content > p{font-size:10px!important;line-height:1.42!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-meta{margin-top:7px!important;gap:5px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-meta div{padding:6px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-actions{padding-top:9px!important;}
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-join-btn,
body:not(.admin-dashboard-page):not(.admin-auth-page) .live-secondary-btn{padding:7px 8px!important;font-size:9.5px!important;}

/* ----- Resource/library cards ----- */
body:not(.admin-dashboard-page):not(.admin-auth-page) .library-resource-visual{
  min-height:118px!important;
  height:118px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .library-resource-card-content{
  padding:11px 12px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .library-resource-card-content h3{
  font-size:13.5px!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .library-resource-card-content p{
  min-height:0!important;
  font-size:10.5px!important;
  line-height:1.42!important;
}

body:not(.admin-dashboard-page):not(.admin-auth-page) .library-resource-actions{
  padding:0 12px 11px!important;
}

/* =========================================================
   MOBILE COMPACT DENSITY
========================================================= */
@media(max-width:760px){
  body:not(.admin-dashboard-page):not(.admin-auth-page){
    --header-height:56px;
    font-size:13px;
    padding-bottom:68px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .shell{
    width:calc(100% - 14px)!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .section{
    padding:20px 0!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .section-head,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .center-head{
    margin-bottom:11px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .section-head h2,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .center-head h2{
    font-size:20px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .brand-mark,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .topbar .gsz-header-logo-mark{
    width:40px!important;
    height:31px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .brand strong{
    max-width:118px!important;
    font-size:11.5px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .menu-btn,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .topbar #menuToggle,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .login-btn.gsz-account-chip{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-hero{
    padding:7px 0 6px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-card{
    gap:6px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick{
    padding:12px;
    border-radius:13px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main h1{
    margin-top:3px;
    font-size:23px;
    line-height:1.08;
    letter-spacing:-.55px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main > p{
    margin-top:5px;
    font-size:10.5px;
    line-height:1.42;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions{
    grid-template-columns:1fr 1fr;
    margin-top:9px;
    gap:6px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions .btn{
    min-height:36px;
    padding:7px 6px;
    font-size:9.5px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-head{
    align-items:center;
    margin-bottom:6px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-head h2{
    font-size:15px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a{
    min-height:54px;
    padding:6px 7px;
    border-radius:9px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a > span{font-size:13px;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a > strong{font-size:9.5px;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a > small{display:none;}

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-section{
    padding:0 0 10px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-card{
    padding:12px!important;
    border-radius:13px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-heading{
    gap:4px!important;
    margin-bottom:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-heading h2{
    font-size:21px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .program-switch{
    gap:5px!important;
    margin-bottom:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .program-btn{
    min-height:34px;
    padding:6px 7px!important;
    font-size:9.5px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid label span{
    margin-bottom:3px!important;
    font-size:7.5px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid select{
    min-height:37px;
    padding:7px!important;
    font-size:10px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-action{
    margin-top:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-action .btn{
    width:100%;
    min-height:36px;
    font-size:10px;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-hero,.courses-hero,.live-hero,.quiz-hero,.career-hero,.exams-hero,
    .search-hero,.dashboard-hero,.profile-hero,.bookmarks-hero,.progress-hero,
    .notification-hero,.premium-hero,.about-hero,.contact-hero,.subject-hero,
    .course-detail-hero,.exam-detail-hero,.lesson-header-section,.quiz-result-hero,
    .resource-library-hero
  ){
    padding-top:7px!important;
    padding-bottom:6px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-card,.courses-hero-card,.live-hero-card,.quiz-hero-card,
    .career-hero-card,.exams-hero-card,.search-hero-card,.resource-library-hero-card,
    .dashboard-welcome-card,.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,
    .progress-hero-card,.notification-hero-card,.premium-hero-card,.about-hero-card,
    .contact-hero-card,.subject-hero-card,.course-detail-hero,.exam-detail-hero-card,
    .lesson-header-card,.quiz-result-hero-card
  ){
    gap:7px!important;
    padding:11px 12px!important;
    border-radius:13px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-card,.courses-hero-card,.live-hero-card,.quiz-hero-card,
    .career-hero-card,.exams-hero-card,.search-hero-card,.resource-library-hero-card,
    .dashboard-welcome-card,.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,
    .progress-hero-card,.notification-hero-card,.premium-hero-card,.about-hero-card,
    .contact-hero-card,.subject-hero-card,.course-detail-hero,.exam-detail-hero-card,
    .lesson-header-card,.quiz-result-hero-card
  ) h1{
    font-size:21px!important;
    line-height:1.13!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .study-resource-hub-card,.courses-hero-card,.live-hero-card,.quiz-hero-card,
    .career-hero-card,.exams-hero-card,.search-hero-card,.resource-library-hero-card,
    .dashboard-welcome-card,.dashboard-hero-card,.profile-hero-card,.bookmarks-hero-card,
    .progress-hero-card,.notification-hero-card,.premium-hero-card,.about-hero-card,
    .contact-hero-card,.subject-hero-card,.course-detail-hero,.exam-detail-hero-card,
    .lesson-header-card,.quiz-result-hero-card
  ) p{
    -webkit-line-clamp:2!important;
    margin-top:4px!important;
    font-size:10.5px!important;
    line-height:1.42!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-summary-section,.course-context-summary,.live-summary-section,.quiz-summary-section,
    .exam-summary-section,.career-summary-section,.notification-summary-section
  ){
    padding-bottom:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-summary-grid,.course-context-summary-grid,.live-summary-grid,.quiz-summary-grid,
    .exam-summary-grid,.career-summary-grid,.notification-summary-grid
  ){
    gap:5px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-summary-grid,.course-context-summary-grid,.live-summary-grid,.quiz-summary-grid,
    .exam-summary-grid,.career-summary-grid,.notification-summary-grid
  ) article{
    gap:5px!important;
    padding:7px!important;
    border-radius:10px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-summary-grid,.live-summary-grid,.quiz-summary-grid,.exam-summary-grid,
    .career-summary-grid,.notification-summary-grid
  ) article > span{
    width:28px!important;
    height:28px!important;
    flex-basis:28px!important;
    border-radius:8px!important;
    font-size:13px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-summary-grid,.live-summary-grid,.quiz-summary-grid,.exam-summary-grid,
    .career-summary-grid,.notification-summary-grid
  ) strong{font-size:14px!important;}

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-summary-grid,.live-summary-grid,.quiz-summary-grid,.exam-summary-grid,
    .career-summary-grid,.notification-summary-grid
  ) small{font-size:8px!important;}

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-filter-card,.live-filter-card,.quiz-filter-card,.exam-filter-card,
    .career-filter-card,.search-filter-card,.notification-filter-card,.resource-filter-card
  ){
    padding:10px!important;
    border-radius:11px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-filter-head,.live-filter-head,.quiz-filter-head,.exam-filter-head
  ){
    padding-bottom:7px!important;
    margin-bottom:7px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) :is(
    .course-filter-head,.live-filter-head,.quiz-filter-head,.exam-filter-head
  ) h2{
    font-size:16px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-card{
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-icon{
    width:36px!important;
    height:36px!important;
    font-size:14px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-content h2{font-size:15px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-content > p{font-size:9.5px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .continue-course-progress{margin-top:5px!important;}

  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-thumbnail{height:92px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-content{padding:9px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-content h3{font-size:12.5px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-card-content > p{font-size:9.5px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-teacher-avatar{width:28px!important;height:28px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-view-btn,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .course-secondary-btn{min-height:32px!important;}

  body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-visual{height:88px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-content{padding:9px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-content h3{font-size:12.5px!important;}
  body:not(.admin-dashboard-page):not(.admin-auth-page) .live-class-content > p{font-size:9.5px!important;}

  /* Floating install action was covering useful content; install remains available from More. */
  body:not(.admin-dashboard-page):not(.admin-auth-page) .gsz-install-app-btn:not([hidden]){
    display:none!important;
  }
}

@media(max-width:360px){
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions{
    grid-template-columns:1fr;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-grid{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   MOBILE PWA HOME FLOW HOTFIX — 2026-10-10
   Prevent standalone/mobile viewport rules from stretching the
   task-first Home cards into a large blank panel.
   Presentation only: no auth/API/database behaviour changes.
========================================================= */
@media (max-width:760px){
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-hero,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-hero > .shell,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-card,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-hero{
    display:block!important;
    overflow:visible!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-hero > .shell{
    display:block!important;
    overflow:visible!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-card{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:6px!important;
    overflow:visible!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    flex:0 0 auto!important;
    align-self:stretch!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main > *,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick > *{
    position:relative;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main{
    padding:11px 12px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick{
    padding:10px 12px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main h1{
    margin:3px 0 0!important;
    font-size:22px!important;
    line-height:1.08!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-main > p{
    margin:5px 0 0!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    margin-top:8px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-head{
    margin-bottom:6px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid a{
    min-height:50px!important;
    height:auto!important;
    padding:6px!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-section,
  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-card{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .finder-section{
    margin-top:0!important;
  }
}

@media (max-width:360px){
  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-actions{
    grid-template-columns:1fr!important;
  }

  body:not(.admin-dashboard-page):not(.admin-auth-page) .home-focus-quick-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* =========================================================
   STUDENT PAGE RESPONSIVE CONSISTENCY LAYER — 2026-10-10
   Scope: Explore, Syllabus, Notes, PYQ, Courses, Live,
   Competitive Exams, Career, Notifications, Search,
   Saved Resources and Learning Progress.
   Presentation only: no API/auth/admin/database changes.
========================================================= */

/* ---------- Shared safety + density ---------- */
:is(
  .resource-library-page,.courses-page,.live-page,.exams-page,.career-page,
  .notifications-page,.search-page,.bookmarks-page,.progress-page
){
  overflow-x:clip;
  min-width:0;
}

:is(
  .resource-library-page,.courses-page,.live-page,.exams-page,.career-page,
  .notifications-page,.search-page,.bookmarks-page,.progress-page
) :is(section,article,div,form){
  min-width:0;
}

:is(
  .resource-library-page,.courses-page,.live-page,.exams-page,.career-page,
  .notifications-page,.search-page,.bookmarks-page,.progress-page
) :is(h1,h2,h3,p,strong,small,a,button,label,span){
  overflow-wrap:anywhere;
}

/* Keep secondary content useful without making every page feel oversized. */
:is(
  .courses-page,.live-page,.exams-page,.career-page,.notifications-page,
  .search-page,.bookmarks-page,.progress-page
) > .section{
  padding-top:30px!important;
  padding-bottom:30px!important;
}

/* ---------- Explore ---------- */
.explore-hero{
  padding:30px 0 20px!important;
}
.explore-hero-content{max-width:720px!important;}
.explore-hero h1{
  margin-top:5px!important;
  font-size:clamp(30px,3.7vw,44px)!important;
  line-height:1.08!important;
  letter-spacing:-1.2px!important;
}
.explore-hero p{
  max-width:660px!important;
  margin-top:9px!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.explore-hero + .section{padding:24px 0!important;}
.explore-hero + .section .center-head{margin-bottom:14px!important;}
.explore-hero + .section .center-head h2{font-size:22px!important;}
.explore-hero + .section .section-note{font-size:12px!important;line-height:1.5!important;}
.explore-hero + .section .quick-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.explore-hero + .section .quick-card{
  min-height:0!important;
  padding:14px!important;
  border-radius:14px!important;
}
.explore-hero + .section .quick-card > span{font-size:24px!important;}
.explore-hero + .section .quick-card h3{margin:7px 0 3px!important;font-size:15px!important;}
.explore-hero + .section .quick-card p{
  margin:0!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}
.explore-hero + .section .quick-card b{margin-top:8px!important;font-size:10px!important;}
.academic-path-section{padding:12px 0!important;}
.academic-path{gap:8px!important;}
.path-item{gap:6px!important;}
.path-item > span{width:28px!important;height:28px!important;font-size:10px!important;}
.path-item small{font-size:7px!important;}
.path-item strong{font-size:10.5px!important;}
.path-line{width:34px!important;}
.academic-path-section + .section{padding:24px 0 34px!important;}
.explorer-layout{grid-template-columns:250px minmax(0,1fr)!important;gap:16px!important;}
.explorer-sidebar{top:82px!important;}
.sidebar-card{padding:14px!important;border-radius:14px!important;}
.sidebar-title{gap:8px!important;margin-bottom:12px!important;}
.sidebar-title > span{width:34px!important;height:34px!important;border-radius:10px!important;}
.explore-field{margin-bottom:9px!important;}
.explore-field label{font-size:10px!important;}
.explore-field select{min-height:42px!important;padding:8px 10px!important;font-size:11.5px!important;}
.explore-submit{min-height:42px!important;}
.explorer-content :is(.selected-profile-card,.small-card,.explore-help-card){border-radius:14px!important;}
.subject-grid{gap:10px!important;}

/* ---------- Syllabus / Notes / PYQ ---------- */
.resource-library-page .resource-library-hero{padding:16px 0 6px!important;}
.resource-library-page .resource-library-hero-card{padding:11px 0!important;}
.resource-library-page .resource-library-hero-card h1{font-size:clamp(24px,2.4vw,31px)!important;}
.resource-library-page .resource-library-hero-card p{font-size:12px!important;line-height:1.45!important;}
.resource-library-page .resource-library-hero-icon{width:50px!important;height:50px!important;min-width:50px!important;font-size:23px!important;}
.resource-library-page .resource-filter-card{padding:11px!important;border-radius:12px!important;}
.resource-library-page .resource-filter-grid{gap:8px!important;}
.resource-library-page .resource-filter-field label{font-size:9.5px!important;}
.resource-library-page .resource-filter-field select{min-height:42px!important;font-size:11.5px!important;}
.resource-library-page .resource-load-btn{min-height:40px!important;margin-top:9px!important;}
.resource-library-page .resource-library-toolbar{margin-bottom:10px!important;}
.resource-library-page .resource-library-search,
.resource-library-page .resource-library-toolbar select{min-height:42px!important;}
.resource-library-page .resource-library-section-head{margin:13px 0 10px!important;}
.resource-library-page .resource-library-grid{gap:11px!important;}
.resource-library-page .library-resource-card-head{min-height:116px!important;padding:14px!important;}
.resource-library-page .library-resource-icon{width:58px!important;height:58px!important;font-size:24px!important;}
.resource-library-page .library-resource-card-content{padding:11px!important;}
.resource-library-page .library-resource-card-content p{min-height:0!important;-webkit-line-clamp:2!important;}
.resource-library-page .library-resource-actions{padding:0 11px 11px!important;}

/* ---------- Common learning / utility hero ---------- */
:is(
  .courses-hero,.live-hero,.exams-hero,.career-hero,.notification-hero,
  .search-hero,.bookmarks-hero,.progress-hero
){
  padding-top:18px!important;
  padding-bottom:12px!important;
}
:is(
  .courses-hero-card,.live-hero-card,.exams-hero-card,.career-hero-card,
  .notification-hero-card,.search-hero-card,.bookmarks-hero-card,.progress-hero-card
){
  min-height:0!important;
  padding:15px 17px!important;
  border-radius:15px!important;
  gap:14px!important;
}
:is(
  .courses-hero-card,.live-hero-card,.exams-hero-card,.career-hero-card,
  .notification-hero-card,.search-hero-card,.bookmarks-hero-card,.progress-hero-card
) h1{
  margin-top:3px!important;
  font-size:clamp(25px,2.7vw,34px)!important;
  line-height:1.12!important;
}
:is(
  .courses-hero-card,.live-hero-card,.exams-hero-card,.career-hero-card,
  .notification-hero-card,.search-hero-card,.bookmarks-hero-card,.progress-hero-card
) p{
  margin-top:5px!important;
  max-width:760px!important;
  font-size:12px!important;
  line-height:1.48!important;
}
:is(.courses-hero-tags,.live-hero-tags,.exams-hero-tags,.career-hero-tags,.notification-hero-tags){
  gap:6px!important;
  margin-top:8px!important;
}
:is(.courses-hero-tags,.live-hero-tags,.exams-hero-tags,.career-hero-tags,.notification-hero-tags) span{
  padding:5px 8px!important;
  font-size:9.5px!important;
}
:is(.courses-hero-visual,.live-hero-visual,.exams-hero-visual,.career-hero-visual,.notification-hero-visual,.search-hero-visual){
  width:130px!important;
  min-width:130px!important;
  height:92px!important;
  border-radius:14px!important;
}

/* ---------- Summary cards ---------- */
:is(
  .course-summary-section,.course-context-summary,.live-summary-section,
  .exam-summary-section,.career-summary-section,.notification-summary-section,
  .bookmarks-summary-section,.progress-stats-section
){padding:0 0 12px!important;}
:is(
  .course-summary-grid,.course-context-summary-grid,.live-summary-grid,
  .exam-summary-grid,.career-summary-grid,.notification-summary-grid,
  .bookmarks-summary-grid,.progress-stats-grid
){gap:8px!important;}
:is(
  .course-summary-grid,.course-context-summary-grid,.live-summary-grid,
  .exam-summary-grid,.career-summary-grid,.notification-summary-grid,
  .bookmarks-summary-grid,.progress-stats-grid
) article{
  min-height:0!important;
  padding:10px!important;
  gap:8px!important;
  border-radius:12px!important;
}
:is(
  .course-summary-grid,.live-summary-grid,.exam-summary-grid,.career-summary-grid,
  .notification-summary-grid,.bookmarks-summary-grid,.progress-stats-grid
) article > span{
  width:34px!important;height:34px!important;flex:0 0 34px!important;
  border-radius:9px!important;font-size:15px!important;
}
:is(
  .course-summary-grid,.live-summary-grid,.exam-summary-grid,.career-summary-grid,
  .notification-summary-grid,.bookmarks-summary-grid,.progress-stats-grid
) strong{font-size:15px!important;}
:is(
  .course-summary-grid,.live-summary-grid,.exam-summary-grid,.career-summary-grid,
  .notification-summary-grid,.bookmarks-summary-grid,.progress-stats-grid
) small{font-size:8.5px!important;line-height:1.25!important;}

/* ---------- Filters / toolbars ---------- */
:is(
  .course-filter-section,.live-filter-section,.exam-filter-section,
  .career-filter-section,.notification-filter-section,.search-filter-section
){padding:0 0 14px!important;}
:is(.course-filter-card,.live-filter-card,.exam-filter-card,.career-filter-card,.notification-filter-card,.search-filter-card){
  padding:12px!important;
  border-radius:12px!important;
}
:is(.course-filter-head,.live-filter-head,.exam-filter-head,.career-filter-head,.notification-filter-head,.search-filter-head){
  padding-bottom:8px!important;
  margin-bottom:9px!important;
  gap:10px!important;
}
:is(.course-filter-head,.live-filter-head,.exam-filter-head,.career-filter-head,.notification-filter-head,.search-filter-head) h2{
  font-size:17px!important;
}
:is(
  .course-search-box,.live-search-box,.exam-search-box,.career-search-box,
  .notification-search-box,.global-search-box,.bookmarks-search
){min-height:42px!important;border-radius:10px!important;}
:is(
  .course-search-box input,.live-search-box input,.exam-search-box input,.career-search-box input,
  .notification-search-box input,.global-search-box input,.bookmarks-search input
){min-height:40px!important;font-size:12px!important;}
:is(
  .course-filter-grid select,.live-filter-grid select,.exam-filter-grid select,
  .career-filter-grid select,.notification-filter-grid select,.search-filter-grid select,
  .bookmarks-toolbar select
){min-height:42px!important;padding:8px 10px!important;border-radius:10px!important;font-size:11.5px!important;}
.resource-filter-reset{min-height:38px!important;padding:7px 10px!important;font-size:10.5px!important;}

/* ---------- Courses ---------- */
.courses-page .continue-course-section{padding:0 0 12px!important;}
.courses-page .continue-course-card{padding:12px!important;border-radius:13px!important;gap:10px!important;}
.courses-page .continue-course-icon{width:42px!important;height:42px!important;}
.courses-page .course-list-section{padding:0 0 36px!important;}
.courses-page .course-section-head{margin-bottom:10px!important;gap:12px!important;}
.courses-page .course-section-head h2{font-size:20px!important;}
.courses-page .course-section-head p{font-size:11px!important;}
.courses-page .course-result-count-box{min-width:74px!important;padding:7px 9px!important;border-radius:10px!important;}
.courses-page .course-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important;}
.courses-page .course-card{border-radius:13px!important;}
.courses-page .course-thumbnail{height:118px!important;}
.courses-page .course-card-content{padding:11px!important;}
.courses-page .course-card-content h3{font-size:14px!important;}
.courses-page .course-card-content > p{font-size:10.5px!important;line-height:1.45!important;-webkit-line-clamp:2!important;}

/* ---------- Live ---------- */
.live-page .live-now-section,.live-page .live-upcoming-section,.live-page .live-completed-section{padding:0 0 28px!important;}
.live-page .live-section-head{margin-bottom:10px!important;}
.live-page .live-section-head h2{font-size:20px!important;}
.live-page .live-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important;}
.live-page .live-class-card{border-radius:13px!important;}
.live-page .live-class-visual{height:108px!important;}
.live-page .live-class-content{padding:11px!important;}
.live-page .live-class-content h3{font-size:14px!important;}
.live-page .live-class-content > p{font-size:10.5px!important;line-height:1.45!important;-webkit-line-clamp:2!important;}

/* ---------- Competitive exams ---------- */
.exams-page .exam-main-section{padding:0 0 36px!important;}
.exams-page .exam-section-head{margin-bottom:10px!important;}
.exams-page .exam-section-head h2{font-size:20px!important;}
.exams-page .exam-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important;}
.exams-page .exam-card{padding:12px!important;border-radius:13px!important;}
.exams-page .exam-card-icon{width:38px!important;height:38px!important;font-size:17px!important;}
.exams-page .exam-card-content h3{font-size:14px!important;}
.exams-page .exam-card-content > p{font-size:10.5px!important;line-height:1.45!important;-webkit-line-clamp:2!important;}

/* ---------- Career & placement ---------- */
.career-page .career-category-section,.career-page .career-company-section,.career-page .career-admin-ready-section{padding:0 0 32px!important;}
.career-page .career-section-head{margin-bottom:10px!important;}
.career-page .career-section-head h2{font-size:20px!important;}
.career-page .career-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;}
.career-page .career-category-card{padding:12px!important;border-radius:13px!important;}
.career-page .career-category-icon{width:38px!important;height:38px!important;font-size:17px!important;}
.career-page .career-category-card h3{font-size:13.5px!important;}
.career-page .career-category-card p{font-size:10px!important;line-height:1.42!important;-webkit-line-clamp:2!important;}

/* ---------- Notifications ---------- */
.notifications-page .notification-important-section,.notifications-page .notification-list-section{padding:0 0 28px!important;}
.notifications-page .notification-section-head{margin-bottom:10px!important;}
.notifications-page .notification-section-head h2{font-size:20px!important;}
.notifications-page .notification-important-grid{gap:10px!important;}
.notifications-page .notification-important-card{padding:12px!important;border-radius:13px!important;}
.notifications-page .notification-important-card h3{font-size:13.5px!important;}
.notifications-page .notification-important-card p{font-size:10.5px!important;line-height:1.45!important;-webkit-line-clamp:2!important;}
.notifications-page .notification-list{gap:8px!important;}
.notifications-page .notification-item{padding:11px!important;border-radius:12px!important;}

/* ---------- Smart Search ---------- */
.search-page .search-quick-section{padding:0 0 14px!important;}
.search-page .search-section-head{margin-bottom:9px!important;}
.search-page .search-section-head h2{font-size:19px!important;}
.search-page .search-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;}
.search-page .search-quick-card{min-height:0!important;padding:10px!important;border-radius:11px!important;gap:8px!important;}
.search-page .search-quick-card > span{width:32px!important;height:32px!important;font-size:15px!important;}
.search-page .search-quick-card strong{font-size:11.5px!important;}
.search-page .search-quick-card small{font-size:8.5px!important;}
.search-page .search-results-section{padding:0 0 36px!important;}
.search-page .search-results-head{margin-bottom:10px!important;}
.search-page .search-results-head h2{font-size:20px!important;}
.search-page .search-results-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.search-page .search-result-card{padding:12px!important;border-radius:13px!important;}
.search-page .search-result-card-content h3{font-size:14px!important;}
.search-page .search-result-card-content p{font-size:10.5px!important;line-height:1.45!important;-webkit-line-clamp:2!important;}

/* ---------- Saved resources ---------- */
.bookmarks-page .bookmarks-main-section{padding:0 0 36px!important;}
.bookmarks-page .bookmarks-toolbar{grid-template-columns:minmax(220px,1fr) 160px 160px!important;gap:8px!important;margin-bottom:13px!important;}
.bookmarks-page .bookmarks-section-head{margin-bottom:10px!important;}
.bookmarks-page .bookmarks-section-head h2{font-size:19px!important;}
.bookmarks-page .bookmark-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
.bookmarks-page .bookmark-card{padding:11px!important;border-radius:13px!important;}
.bookmarks-page .bookmark-card-icon{width:38px!important;height:38px!important;font-size:17px!important;}
.bookmarks-page .bookmark-card h3{font-size:13.5px!important;}
.bookmarks-page .bookmark-card p{font-size:10px!important;line-height:1.42!important;-webkit-line-clamp:2!important;}
.bookmarks-page .bookmark-subject-grid{gap:9px!important;}

/* ---------- Learning progress ---------- */
.progress-page .progress-overview-section{padding:0 0 12px!important;}
.progress-page .progress-overview-card{grid-template-columns:auto minmax(0,1fr)!important;gap:18px!important;padding:16px!important;border-radius:15px!important;}
.progress-page .progress-big-ring{width:108px!important;height:108px!important;}
.progress-page .progress-big-ring::before{width:84px!important;height:84px!important;}
.progress-page .progress-big-ring strong{font-size:20px!important;}
.progress-page .progress-overview-content h2{font-size:19px!important;}
.progress-page .progress-overview-content > p{font-size:10.5px!important;}
.progress-page .progress-overview-bar{height:7px!important;margin-top:10px!important;}
.progress-page .progress-main-section{padding:0 0 36px!important;}
.progress-page .progress-main-layout{grid-template-columns:minmax(0,1fr) 280px!important;gap:12px!important;}
.progress-page .progress-panel,.progress-page .progress-side-card,.progress-page .progress-next-card{padding:12px!important;border-radius:13px!important;}
.progress-page .progress-panel-head{margin-bottom:9px!important;}
.progress-page .progress-panel-head h2{font-size:17px!important;}

/* ---------- Tablet ---------- */
@media (max-width:1024px){
  .explore-hero + .section .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .explorer-layout{grid-template-columns:220px minmax(0,1fr)!important;gap:12px!important;}

  .resource-library-page .resource-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .resource-library-page .resource-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}

  .courses-page .course-grid,
  .live-page .live-class-grid,
  .exams-page .exam-grid,
  .search-page .search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}

  .career-page .career-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .search-page .search-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .progress-page .progress-main-layout{grid-template-columns:1fr!important;}
  .progress-page .progress-sidebar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
}

/* ---------- Mobile / PWA ---------- */
@media (max-width:760px){
  :is(
    .resource-library-page,.courses-page,.live-page,.exams-page,.career-page,
    .notifications-page,.search-page,.bookmarks-page,.progress-page
  ){
    padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
  }

  /* Explore uses a plain <main>, so handle it separately. */
  .explore-hero{padding:10px 0 7px!important;}
  .explore-hero h1{font-size:23px!important;letter-spacing:-.55px!important;}
  .explore-hero p{
    margin-top:5px!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    font-size:10.5px!important;
  }
  .explore-hero + .section{padding:12px 0!important;}
  .explore-hero + .section .center-head{text-align:left!important;margin-bottom:8px!important;}
  .explore-hero + .section .center-head h2{font-size:18px!important;}
  .explore-hero + .section .section-note{display:none!important;}
  .explore-hero + .section .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;}
  .explore-hero + .section .quick-card{padding:9px!important;border-radius:11px!important;}
  .explore-hero + .section .quick-card > span{font-size:18px!important;}
  .explore-hero + .section .quick-card h3{font-size:12px!important;}
  .explore-hero + .section .quick-card p{display:none!important;}
  .explore-hero + .section .quick-card b{font-size:8.5px!important;}

  .academic-path-section{padding:7px 0!important;overflow:hidden!important;}
  .academic-path{
    justify-content:flex-start!important;
    gap:5px!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain!important;
    scrollbar-width:none!important;
    padding:1px 2px 3px!important;
  }
  .academic-path::-webkit-scrollbar{display:none!important;}
  .path-line{display:none!important;}
  .path-item{flex:0 0 auto!important;padding:5px 7px!important;border:1px solid var(--border)!important;border-radius:9px!important;background:var(--card)!important;}
  .path-item > span{width:23px!important;height:23px!important;font-size:8px!important;}
  .path-item small{display:none!important;}
  .path-item strong{font-size:8.5px!important;white-space:nowrap!important;}
  .academic-path-section + .section{padding:10px 0 24px!important;}
  .explorer-layout{grid-template-columns:1fr!important;gap:8px!important;}
  .explorer-sidebar{position:static!important;top:auto!important;}
  .sidebar-card{padding:10px!important;border-radius:11px!important;}
  .sidebar-title{margin-bottom:8px!important;}
  .explore-field{margin-bottom:7px!important;}
  .explore-field select{min-height:42px!important;}
  .explorer-content .section-head h2{font-size:18px!important;}
  .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;}

  /* Resource libraries: 2-column academic selector; 1 column on very small phones below. */
  .resource-library-page .resource-library-hero{padding:7px 0 4px!important;}
  .resource-library-page .resource-library-hero-card{padding:9px 10px!important;border-radius:11px!important;}
  .resource-library-page .resource-library-hero-card h1{font-size:21px!important;}
  .resource-library-page .resource-library-hero-card p{font-size:10px!important;line-height:1.4!important;-webkit-line-clamp:2!important;}
  .resource-library-page .resource-library-hero-icon{display:none!important;}
  .resource-library-page .resource-filter-section{padding-bottom:7px!important;}
  .resource-library-page .resource-filter-card{padding:9px!important;}
  .resource-library-page .resource-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;}
  .resource-library-page .resource-filter-field label{font-size:8px!important;margin-bottom:2px!important;}
  .resource-library-page .resource-filter-field select{min-height:40px!important;padding:6px 25px 6px 7px!important;font-size:9.5px!important;}
  .resource-library-page .resource-load-btn{width:100%!important;min-height:40px!important;margin:7px 0 0!important;}
  .resource-library-page .resource-library-toolbar{grid-template-columns:1fr!important;gap:6px!important;margin-bottom:8px!important;}
  .resource-library-page .resource-library-toolbar select{min-height:40px!important;font-size:10px!important;}
  .resource-library-page .resource-library-section-head{margin:9px 0 7px!important;}
  .resource-library-page .resource-library-section-head h2{font-size:17px!important;}
  .resource-library-page .resource-library-grid{grid-template-columns:1fr!important;gap:8px!important;}
  .resource-library-page .library-resource-card-head{min-height:82px!important;padding:10px!important;}
  .resource-library-page .library-resource-icon{width:46px!important;height:46px!important;font-size:20px!important;border-radius:12px!important;}
  .resource-library-page .library-resource-card-content{padding:9px!important;}
  .resource-library-page .library-resource-actions{padding:0 9px 9px!important;}

  /* Hide decorative hero art on small screens; preserve content. */
  :is(.courses-hero-visual,.live-hero-visual,.exams-hero-visual,.career-hero-visual,.notification-hero-visual,.search-hero-visual,.bookmarks-hero-icon,.progress-hero-icon){display:none!important;}
  :is(.courses-hero,.live-hero,.exams-hero,.career-hero,.notification-hero,.search-hero,.bookmarks-hero,.progress-hero){padding:7px 0 5px!important;}
  :is(.courses-hero-card,.live-hero-card,.exams-hero-card,.career-hero-card,.notification-hero-card,.search-hero-card,.bookmarks-hero-card,.progress-hero-card){
    display:block!important;
    padding:10px 11px!important;
    border-radius:11px!important;
  }
  :is(.courses-hero-card,.live-hero-card,.exams-hero-card,.career-hero-card,.notification-hero-card,.search-hero-card,.bookmarks-hero-card,.progress-hero-card) h1{font-size:20px!important;line-height:1.12!important;}
  :is(.courses-hero-card,.live-hero-card,.exams-hero-card,.career-hero-card,.notification-hero-card,.search-hero-card,.bookmarks-hero-card,.progress-hero-card) p{
    font-size:10px!important;line-height:1.4!important;
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;
  }
  :is(.courses-hero-tags,.live-hero-tags,.exams-hero-tags,.career-hero-tags,.notification-hero-tags){display:none!important;}

  :is(
    .course-summary-grid,.course-context-summary-grid,.live-summary-grid,
    .exam-summary-grid,.career-summary-grid,.notification-summary-grid,
    .bookmarks-summary-grid,.progress-stats-grid
  ){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;}
  :is(
    .course-summary-grid,.course-context-summary-grid,.live-summary-grid,
    .exam-summary-grid,.career-summary-grid,.notification-summary-grid,
    .bookmarks-summary-grid,.progress-stats-grid
  ) article{padding:7px!important;gap:5px!important;border-radius:9px!important;}
  :is(
    .course-summary-grid,.live-summary-grid,.exam-summary-grid,.career-summary-grid,
    .notification-summary-grid,.bookmarks-summary-grid,.progress-stats-grid
  ) article > span{width:27px!important;height:27px!important;flex-basis:27px!important;font-size:12px!important;}
  :is(
    .course-summary-grid,.live-summary-grid,.exam-summary-grid,.career-summary-grid,
    .notification-summary-grid,.bookmarks-summary-grid,.progress-stats-grid
  ) strong{font-size:12.5px!important;}
  :is(
    .course-summary-grid,.live-summary-grid,.exam-summary-grid,.career-summary-grid,
    .notification-summary-grid,.bookmarks-summary-grid,.progress-stats-grid
  ) small{font-size:7px!important;}

  :is(.course-filter-card,.live-filter-card,.exam-filter-card,.career-filter-card,.notification-filter-card,.search-filter-card){padding:9px!important;border-radius:10px!important;}
  :is(.course-filter-head,.live-filter-head,.exam-filter-head,.career-filter-head,.notification-filter-head,.search-filter-head){margin-bottom:6px!important;padding-bottom:6px!important;}
  :is(.course-filter-head,.live-filter-head,.exam-filter-head,.career-filter-head,.notification-filter-head,.search-filter-head) h2{font-size:15px!important;}
  :is(.course-filter-grid,.live-filter-grid,.exam-filter-grid,.career-filter-grid,.notification-filter-grid,.search-filter-grid){grid-template-columns:1fr!important;gap:6px!important;}
  :is(
    .course-filter-grid select,.live-filter-grid select,.exam-filter-grid select,
    .career-filter-grid select,.notification-filter-grid select,.search-filter-grid select
  ){min-height:40px!important;font-size:10px!important;}

  .courses-page .course-grid,
  .live-page .live-class-grid,
  .exams-page .exam-grid,
  .search-page .search-results-grid,
  .bookmarks-page .bookmark-resource-grid{grid-template-columns:1fr!important;gap:8px!important;}

  .courses-page .course-thumbnail{height:88px!important;}
  .courses-page .course-card-content{padding:9px!important;}
  .live-page .live-class-visual{height:86px!important;}
  .live-page .live-class-content{padding:9px!important;}
  .exams-page .exam-card,.search-page .search-result-card,.bookmarks-page .bookmark-card{padding:9px!important;}

  .career-page .career-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;}
  .career-page .career-category-card{padding:9px!important;border-radius:10px!important;}
  .career-page .career-category-icon{width:31px!important;height:31px!important;font-size:14px!important;}
  .career-page .career-category-card h3{font-size:11.5px!important;}
  .career-page .career-category-card p{display:none!important;}

  .notifications-page .notification-important-grid{grid-template-columns:1fr!important;gap:7px!important;}
  .notifications-page .notification-important-card,.notifications-page .notification-item{padding:9px!important;border-radius:10px!important;}

  .search-page .search-quick-section{padding-bottom:8px!important;}
  .search-page .search-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;}
  .search-page .search-quick-card{padding:7px!important;gap:5px!important;border-radius:9px!important;}
  .search-page .search-quick-card > span{width:27px!important;height:27px!important;font-size:12px!important;}
  .search-page .search-quick-card strong{font-size:9.5px!important;}
  .search-page .search-quick-card small{display:none!important;}

  .bookmarks-page .bookmarks-toolbar{grid-template-columns:1fr!important;gap:6px!important;margin-bottom:9px!important;}
  .bookmarks-page .bookmarks-toolbar select{min-height:40px!important;}
  .bookmarks-page .bookmarks-section-head{align-items:center!important;margin-bottom:8px!important;}
  .bookmarks-page .bookmarks-section-head h2{font-size:16px!important;}

  .progress-page .progress-overview-card{grid-template-columns:78px minmax(0,1fr)!important;gap:10px!important;padding:10px!important;border-radius:11px!important;}
  .progress-page .progress-big-ring{width:72px!important;height:72px!important;}
  .progress-page .progress-big-ring::before{width:56px!important;height:56px!important;}
  .progress-page .progress-big-ring strong{font-size:14px!important;}
  .progress-page .progress-big-ring small{font-size:5.5px!important;}
  .progress-page .progress-overview-content h2{font-size:14px!important;}
  .progress-page .progress-overview-content > p{display:none!important;}
  .progress-page .progress-overview-bar{height:5px!important;margin-top:6px!important;}
  .progress-page .progress-overview-meta{margin-top:5px!important;gap:8px!important;}
  .progress-page .progress-main-layout{grid-template-columns:1fr!important;gap:8px!important;}
  .progress-page .progress-sidebar{grid-template-columns:1fr!important;gap:7px!important;}
  .progress-page .progress-panel,.progress-page .progress-side-card,.progress-page .progress-next-card{padding:9px!important;border-radius:10px!important;}
}

@media (max-width:380px){
  .resource-library-page .resource-filter-grid{grid-template-columns:1fr!important;}
  .subject-grid{grid-template-columns:1fr!important;}
  .career-page .career-category-grid{grid-template-columns:1fr 1fr!important;}
}
