/* واجهة التنظيف 2026-08: طبقة صغيرة فوق الملف القديم لتقليل ازدحام الصفحات. */
.qstudy-game-filters {
  display: flex;
  gap: 8px;
  margin: 0 0 18px;
  padding: 4px 0 8px;
  overflow-x: auto;
  scrollbar-width: none;
}

/* Student beta v1: five-page shell, scoped games and term trophies. */
.qstudy-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; width:min(1120px,calc(100% - 28px)); margin:14px auto; }
.qstudy-tabs a { display:flex; align-items:center; justify-content:center; min-height:42px; padding:8px; border:1px solid var(--qs-line); border-radius:12px; color:var(--qs-muted); text-decoration:none; font-size:11px; font-weight:850; }
.qstudy-tabs a.is-active { border-color:var(--qs-primary); background:color-mix(in srgb,var(--qs-primary) 12%,var(--qs-bg)); color:var(--qs-primary); }
.qstudy-unit-beta-rewards { display:grid; grid-template-columns:1fr 1fr auto auto; gap:10px; align-items:center; margin:14px 0; padding:14px; border:1px solid var(--qs-line); border-radius:17px; background:var(--qs-card); }
.qstudy-unit-beta-rewards>div small,.qstudy-unit-beta-rewards>div strong { display:block; }
.qstudy-unit-beta-rewards>div small { color:var(--qs-muted); font-size:9px; }
.qstudy-unit-beta-rewards>div strong { margin:3px 0 6px; font-size:12px; }
.qstudy-unit-beta-rewards>div i { display:block; height:5px; overflow:hidden; border-radius:99px; background:var(--qs-line); }
.qstudy-unit-beta-rewards>div i b { display:block; height:100%; background:var(--qs-primary); }
.qstudy-unit-beta-rewards>span { opacity:.28; font-size:18px; text-align:center; }
.qstudy-unit-beta-rewards>span b { display:block; font-size:8px; }
.qstudy-unit-beta-rewards>span.is-won { opacity:1; color:#d49b18; }
.qstudy-unit-beta-rewards>span:first-of-type.is-won { color:#8c98a7; }
.qstudy-unit-beta-rewards>p { grid-column:1/-1; margin:0; color:var(--qs-muted); font-size:9px; }
.qstudy-additional-scope { margin:22px 0; padding:18px; border:1px solid var(--qs-line); border-radius:22px; background:var(--qs-card); }
.qstudy-additional-scope>header { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.qstudy-additional-scope>header>span { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--qs-primary); color:#fff; font-weight:900; }
.qstudy-additional-scope header h2,.qstudy-additional-scope header p { margin:0; }
.qstudy-additional-scope header p { color:var(--qs-muted); font-size:9px; }
.qstudy-additional-scope header>strong { margin-inline-start:auto; color:var(--qs-primary); font-size:10px; }
.qstudy-additional-scope details { padding:11px 0; border-top:1px solid var(--qs-line); }
.qstudy-additional-scope summary { cursor:pointer; }
.qstudy-additional-scope summary small { margin-inline-start:8px; color:var(--qs-muted); }
.qstudy-additional-scope details>div { display:flex; flex-wrap:wrap; gap:7px; padding-top:9px; }
.qstudy-additional-scope label { cursor:pointer; }
.qstudy-additional-scope label input { position:absolute; opacity:0; }
.qstudy-additional-scope label span { display:block; padding:8px 11px; border:1px solid var(--qs-line); border-radius:10px; font-size:9px; font-weight:800; }
.qstudy-additional-scope label input:checked+span { border-color:var(--qs-primary); background:color-mix(in srgb,var(--qs-primary) 12%,var(--qs-card)); color:var(--qs-primary); }
.qstudy-game-card__start { width:100%; border:0; cursor:pointer; font:inherit; }
.qstudy-game-scope-note { color:var(--qs-muted); font-size:9px; }
.qstudy-student-dashboard { width:min(1120px,calc(100% - 28px)); margin:20px auto 70px; }
.qstudy-student-dashboard__hero { display:flex; justify-content:space-between; gap:20px; padding:24px; border-radius:24px; color:#fff; background:linear-gradient(135deg,#512c9c,#744bc1); }
.qstudy-student-dashboard__hero h1,.qstudy-student-dashboard__hero p { margin:4px 0; }
.qstudy-student-dashboard__hero>div:last-child { display:flex; gap:10px; }
.qstudy-student-dashboard__hero>div:last-child span { min-width:90px; padding:12px; border-radius:16px; background:#ffffff18; text-align:center; }
.qstudy-student-dashboard__hero b,.qstudy-student-dashboard__hero small { display:block; }
.qstudy-beta-history { display:inline-flex; align-items:center; gap:7px; margin-top:9px; font-size:9px; }
.qstudy-beta-history select { max-width:280px; padding:7px 9px; border:1px solid #ffffff3b; border-radius:9px; background:#ffffff16; color:#fff; }
.qstudy-my-beta-rank { display:flex; align-items:center; gap:14px; margin:14px 0; padding:17px; border:1px solid var(--qs-line); border-radius:20px; background:var(--qs-card); }
.qstudy-my-beta-rank>i,.qstudy-beta-top100 li>i { display:grid; place-items:center; flex:0 0 auto; width:42px; height:42px; border-radius:50%; background:var(--qs-primary); color:#fff; font-style:normal; font-weight:900; }
.qstudy-my-beta-rank h2,.qstudy-my-beta-rank p { margin:2px 0; }
.qstudy-my-beta-rank>strong { margin-inline-start:auto; font-size:22px; }
.qstudy-my-beta-rank>strong small { font-size:9px; }
.qstudy-beta-curricula { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.qstudy-beta-curriculum { padding:18px; border:1px solid var(--qs-line); border-radius:21px; background:var(--qs-card); }
.qstudy-beta-curriculum>header { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.qstudy-beta-curriculum h2 { margin:3px 0; font-size:16px; }
.qstudy-beta-curriculum__stats { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin:12px 0; }
.qstudy-beta-curriculum__stats span { padding:8px 4px; border-radius:10px; background:var(--qs-bg); text-align:center; }
.qstudy-beta-curriculum__stats b,.qstudy-beta-curriculum__stats small { display:block; }
.qstudy-beta-curriculum__stats small { color:var(--qs-muted); font-size:7px; }
.qstudy-beta-units>div { display:flex; align-items:center; gap:8px; padding:9px 0; border-top:1px solid var(--qs-line); }
.qstudy-beta-units span { flex:1; }
.qstudy-beta-units b,.qstudy-beta-units small { display:block; }
.qstudy-beta-units small { color:var(--qs-muted); font-size:8px; }
.qstudy-beta-units i { opacity:.2; font-style:normal; }
.qstudy-beta-units i.is-silver { opacity:1; color:#8c98a7; }
.qstudy-beta-units i.is-gold { opacity:1; color:#d49b18; }
.qstudy-beta-top100 { margin-top:18px; padding:20px; border:1px solid var(--qs-line); border-radius:22px; background:var(--qs-card); }
.qstudy-beta-top100>header { display:flex; align-items:end; justify-content:space-between; gap:15px; }
.qstudy-beta-top100 h2,.qstudy-beta-top100 p { margin:3px 0; }
.qstudy-beta-top100 ol { margin:14px 0 0; padding:0; list-style:none; }
.qstudy-beta-top100 li { display:flex; align-items:center; gap:11px; padding:10px; border-top:1px solid var(--qs-line); }
.qstudy-beta-top100 li.is-current { background:color-mix(in srgb,var(--qs-primary) 8%,transparent); }
.qstudy-beta-top100 li>b { width:25px; text-align:center; }
.qstudy-beta-top100 li>i { width:34px; height:34px; }
.qstudy-beta-top100 li>span { flex:1; }
.qstudy-beta-top100 li>span strong,.qstudy-beta-top100 li>span small { display:block; }
.qstudy-beta-top100 li>span small { color:var(--qs-muted); font-size:8px; }
.qstudy-beta-top100 li>em { font-size:9px; font-style:normal; }

@media (max-width:760px) {
  .qstudy-tabs { grid-template-columns:repeat(5,minmax(70px,1fr)); overflow-x:auto; width:calc(100% - 18px); }
  .qstudy-tabs a { font-size:9px; }
  .qstudy-unit-beta-rewards,.qstudy-beta-curricula { grid-template-columns:1fr; }
  .qstudy-unit-beta-rewards>span { display:inline-block; }
  .qstudy-student-dashboard { width:calc(100% - 18px); }
  .qstudy-student-dashboard__hero { display:block; padding:18px; }
  .qstudy-student-dashboard__hero>div:last-child { margin-top:12px; }
  .qstudy-beta-top100>header { display:block; }
  .qstudy-beta-top100 li>em { display:none; }
}
.qstudy-game-filters::-webkit-scrollbar { display: none; }
.qstudy-game-filters button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid var(--qs-border);
  border-radius: 999px;
  background: var(--qs-bg);
  color: var(--qs-text);
  font: inherit;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
}
.qstudy-game-filters button b {
  min-width: 21px;
  padding: 2px 6px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--qs-primary) 9%, var(--qs-bg));
  color: var(--qs-primary);
  font-size: 8px;
}
.qstudy-game-filters button.is-active {
  border-color: var(--qs-primary);
  background: var(--qs-primary);
  color: #fff;
}
.qstudy-game-filters button.is-active b { background: rgba(255,255,255,.18); color: #fff; }
.qstudy-games-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
.qstudy-game-card[hidden] { display: none !important; }
.qstudy-game-card {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
  min-height: 0 !important;
  border-radius: 20px !important;
}
.qstudy-game-card.is-featured {
  grid-template-columns: none !important;
  grid-template-rows: none !important;
  min-height: 0 !important;
}
.qstudy-game-card__visual { display: none !important; }
.qstudy-game-card__body {
  display: flex !important;
  flex-direction: column;
  gap: 11px !important;
  min-height: 270px !important;
  padding: 17px !important;
}
.qstudy-game-card__top { align-items: center !important; }
.qstudy-game-card__top > div { min-width: 0; }
.qstudy-game-card__top h3 { margin: 2px 0 0 !important; font-size: 17px !important; }
.qstudy-game-card__top small { font-size: 7px !important; }
.qstudy-game-card__icon {
  flex: 0 0 47px !important;
  width: 47px !important;
  height: 47px !important;
  border-radius: 15px !important;
  font-size: 23px !important;
}
.qstudy-game-card__description {
  display: -webkit-box;
  min-height: 42px;
  margin: 0 !important;
  overflow: hidden;
  font-size: 9px !important;
  line-height: 1.7 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.qstudy-game-card__meta {
  display: flex !important;
  flex-wrap: wrap;
  gap: 5px !important;
  margin: 0 !important;
}
.qstudy-game-card__meta span { padding: 5px 7px !important; font-size: 7px !important; }
.qstudy-game-card__details {
  margin-top: auto;
  border-top: 1px solid var(--qs-border);
  color: var(--qs-muted);
}
.qstudy-game-card__details summary {
  padding: 9px 0 5px;
  color: var(--qs-primary);
  font-size: 8px;
  font-weight: 900;
  cursor: pointer;
}
.qstudy-game-card__details ol {
  display: grid;
  gap: 4px;
  margin: 3px 0 6px;
  padding: 0 20px 0 0;
  font-size: 7px;
  line-height: 1.6;
}
.qstudy-game-card__details li b { margin-inline-end: 4px; color: var(--qs-primary); }
.qstudy-game-card__start { min-height: 42px !important; margin-top: 0 !important; }
.qstudy-games-library__hero { min-height: 0 !important; padding-block: 24px !important; }
.qstudy-games-library__promise { display: none !important; }
.qstudy-games-library__title { margin-top: 22px !important; }

.qstudy-flashcard-overview { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important; }
.qlang-language-grid { grid-template-columns: minmax(0, 1fr) !important; }
.qlang-language-grid .qlang-language-card { max-width: 760px; }

.qstudy-progress-page,
.qstudy-more-page {
  width: min(1080px, calc(100% - 28px));
  margin: 24px auto 60px;
}
.qstudy-progress-page > header,
.qstudy-more-page > header {
  margin-bottom: 18px;
  padding: 22px;
  border: 1px solid var(--qs-border);
  border-radius: 24px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--qs-primary) 8%, var(--qs-bg)), var(--qs-bg));
}
.qstudy-progress-page h1,
.qstudy-more-page h1 { margin: 4px 0; font-size: clamp(25px, 4vw, 38px); }
.qstudy-progress-page > header p,
.qstudy-more-page > header p { margin: 0; color: var(--qs-muted); font-size: 10px; }
.qstudy-more-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.qstudy-more-grid > a {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 88px;
  padding: 15px;
  border: 1px solid var(--qs-border);
  border-radius: 19px;
  background: var(--qs-bg);
  color: var(--qs-text);
  text-decoration: none;
  box-shadow: var(--qs-shadow);
}
.qstudy-more-grid > a:hover { border-color: color-mix(in srgb, var(--qs-primary) 45%, var(--qs-border)); transform: translateY(-2px); }
.qstudy-more-grid i {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: color-mix(in srgb, var(--qs-primary) 9%, var(--qs-bg));
  color: var(--qs-primary);
  font-size: 19px;
  font-style: normal;
  font-weight: 950;
}
.qstudy-more-grid strong,
.qstudy-more-grid small { display: block; }
.qstudy-more-grid strong { font-size: 13px; }
.qstudy-more-grid small { margin-top: 3px; color: var(--qs-muted); font-size: 8px; }
.qstudy-more-grid b { color: var(--qs-primary); font-size: 17px; }

@media (max-width: 900px) {
  .qstudy-games-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 760px) {
  .qstudy-games-library { padding-inline: 10px !important; }
  .qstudy-games-library__hero { padding: 18px !important; border-radius: 20px !important; }
  .qstudy-games-library__icons { display: none !important; }
  .qstudy-games-grid { grid-template-columns: 1fr !important; gap: 9px !important; }
  .qstudy-game-card__body { min-height: 0 !important; padding: 14px !important; }
  .qstudy-game-card__description { min-height: 0; }
  .qstudy-game-card__meta span:nth-child(3) { display: none; }
  .qstudy-progress-page,
  .qstudy-more-page { width: calc(100% - 18px); margin-top: 10px; padding-bottom: 76px; }
  .qstudy-progress-page > header,
  .qstudy-more-page > header { padding: 17px; border-radius: 19px; }
  .qstudy-more-grid { grid-template-columns: 1fr; gap: 8px; }
  .qstudy-more-grid > a { min-height: 72px; padding: 11px; border-radius: 16px; }
  .qstudy-more-grid i { width: 46px; height: 46px; }
}

.qstudy-school-catalog__hero > div > a {
  display: inline-flex;
  margin-top: 12px;
  color: #fff;
  font-size: 9px;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.qstudy-school-catalog__years > span {
  display: block;
  min-width: 150px;
  padding: 10px 14px;
  border-radius: 13px;
  background: #fff;
  color: #2d246f !important;
  font-weight: 900;
  text-align: center;
}

.qstudy-settings-page {
  width: min(960px, calc(100% - 28px));
  margin: 24px auto 64px;
}
.qstudy-settings-hero,
.qstudy-beta-card,
.qstudy-settings-form,
.qstudy-settings-readonly {
  border: 1px solid var(--qs-border);
  border-radius: 24px;
  background: var(--qs-bg);
  box-shadow: var(--qs-shadow);
}
.qstudy-settings-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
  padding: 24px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--qs-primary) 10%, var(--qs-bg)), var(--qs-bg));
}
.qstudy-settings-hero h1 { margin: 5px 0; font-size: clamp(26px, 4vw, 40px); }
.qstudy-settings-hero p { margin: 0; color: var(--qs-muted); font-size: 10px; }
.qstudy-settings-hero > a { color: var(--qs-primary); font-size: 10px; font-weight: 900; }
.qstudy-beta-card {
  display: grid;
  grid-template-columns: minmax(190px, .7fr) minmax(0, 1.3fr);
  gap: 18px;
  margin-bottom: 12px;
  padding: 22px;
  overflow: hidden;
  background: linear-gradient(135deg, #35207d, #1554b8 64%, #0b9486);
  color: #fff;
}
.qstudy-beta-card span {
  display: inline-flex;
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  font-size: 8px;
  font-weight: 950;
}
.qstudy-beta-card h2 { margin: 9px 0 0; color: #fff; font-size: clamp(20px, 3vw, 29px); }
.qstudy-beta-card p { align-self: center; margin: 0; color: #eaf6ff; font-size: 10px; line-height: 1.9; }
.qstudy-settings-form,
.qstudy-settings-readonly { padding: 24px; }
.qstudy-settings-form__head span { color: var(--qs-primary); font-size: 9px; font-weight: 950; }
.qstudy-settings-form__head h2 { margin: 4px 0; font-size: 23px; }
.qstudy-settings-form__head p { max-width: 680px; margin: 0; color: var(--qs-muted); font-size: 10px; line-height: 1.8; }
.qstudy-settings-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 20px;
}
.qstudy-settings-fields label { display: grid; gap: 7px; }
.qstudy-settings-fields label > span { font-size: 10px; font-weight: 900; }
.qstudy-settings-fields input,
.qstudy-settings-fields select {
  width: 100%;
  min-height: 50px;
  padding: 9px 12px;
  border: 1px solid var(--qs-border);
  border-radius: 14px;
  background: var(--qs-bg);
  color: var(--qs-text);
  font: inherit;
  font-size: 11px;
}
.qstudy-settings-fields input:focus,
.qstudy-settings-fields select:focus { border-color: var(--qs-primary); outline: 3px solid color-mix(in srgb, var(--qs-primary) 16%, transparent); }
.qstudy-settings-fields small { color: var(--qs-muted); font-size: 8px; }
.qstudy-settings-year {
  display: grid;
  grid-template-columns: minmax(180px, .65fr) minmax(0, 1.35fr);
  gap: 18px;
  margin: 18px 0;
  padding: 16px;
  border-radius: 17px;
  background: color-mix(in srgb, var(--qs-primary) 7%, var(--qs-bg));
}
.qstudy-settings-year small,
.qstudy-settings-year strong,
.qstudy-settings-year span { display: block; }
.qstudy-settings-year small { color: var(--qs-muted); font-size: 8px; }
.qstudy-settings-year strong { margin-top: 3px; font-size: 14px; }
.qstudy-settings-year span { color: var(--qs-primary); font-size: 9px; font-weight: 850; }
.qstudy-settings-year p { align-self: center; margin: 0; color: var(--qs-muted); font-size: 9px; line-height: 1.8; }
.qstudy-settings-form__actions { display: flex; flex-wrap: wrap; gap: 9px; }
.qstudy-settings-readonly h2 { margin-top: 0; }
.qstudy-settings-readonly p { margin-bottom: 0; color: var(--qs-muted); }

@media (max-width: 760px) {
  .qstudy-settings-page { width: calc(100% - 18px); margin-top: 10px; padding-bottom: 76px; }
  .qstudy-settings-hero,
  .qstudy-beta-card,
  .qstudy-settings-form,
  .qstudy-settings-readonly { border-radius: 19px; }
  .qstudy-settings-hero { align-items: flex-start; padding: 18px; }
  .qstudy-beta-card,
  .qstudy-settings-fields,
  .qstudy-settings-year { grid-template-columns: 1fr; }
  .qstudy-beta-card,
  .qstudy-settings-form,
  .qstudy-settings-readonly { padding: 18px; }
}

/* Grade curricula are assigned automatically and switched from one top rail. */
.qstudy-curriculum-switcher {
  margin: 8px 0 18px;
  padding: 20px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--qs-primary) 22%, var(--qs-border));
  border-radius: 24px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--qs-primary) 7%, var(--qs-bg)), var(--qs-bg));
  box-shadow: 0 15px 38px rgba(31, 37, 74, .08);
}
.qstudy-curriculum-switcher > header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 15px;
}
.qstudy-curriculum-switcher > header h2 { margin: 3px 0; font-size: clamp(20px, 3vw, 28px); }
.qstudy-curriculum-switcher > header p { margin: 0; color: var(--qs-muted); font-size: 10px; line-height: 1.7; }
.qstudy-curriculum-switcher__controls { display: flex; direction: ltr; gap: 7px; flex: 0 0 auto; }
.qstudy-curriculum-switcher__controls button {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid var(--qs-border);
  border-radius: 12px;
  background: var(--qs-bg);
  color: var(--qs-primary);
  font: inherit;
  font-size: 23px;
  font-weight: 950;
  cursor: pointer;
}
.qstudy-curriculum-switcher__controls button:hover { border-color: var(--qs-primary); background: var(--qs-primary); color: #fff; }
.qstudy-curriculum-rail {
  display: flex;
  gap: 10px;
  padding: 3px 2px 8px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.qstudy-curriculum-rail::-webkit-scrollbar { display: none; }
.qstudy-curriculum-tab {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  flex: 0 0 clamp(190px, 24vw, 250px);
  min-height: 92px;
  padding: 13px;
  border: 1px solid var(--qs-border);
  border-radius: 17px;
  background: var(--qs-bg);
  color: var(--qs-text);
  font: inherit;
  text-align: start;
  scroll-snap-align: start;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.qstudy-curriculum-tab:hover:not(:disabled) { transform: translateY(-2px); border-color: var(--qs-primary); box-shadow: 0 9px 22px color-mix(in srgb, var(--qs-primary) 14%, transparent); }
.qstudy-curriculum-tab.is-active { border-color: var(--qs-primary); background: linear-gradient(145deg, color-mix(in srgb, var(--qs-primary) 15%, var(--qs-bg)), var(--qs-bg)); box-shadow: inset 0 -3px var(--qs-primary); }
.qstudy-curriculum-tab.is-soon { cursor: default; opacity: .66; }
.qstudy-curriculum-tab.is-elective-add {
  border: 2px dashed color-mix(in srgb, var(--qs-secondary) 52%, var(--qs-border));
  background: color-mix(in srgb, var(--qs-secondary) 6%, var(--qs-bg));
}
.qstudy-curriculum-tab.is-elective-add:hover { border-color: var(--qs-secondary); box-shadow: 0 9px 22px color-mix(in srgb, var(--qs-secondary) 15%, transparent); }
.qstudy-curriculum-tab > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 15px;
  background: linear-gradient(145deg, var(--qs-primary), var(--qs-secondary));
  color: #fff;
  font-size: 19px;
  font-weight: 950;
}
.qstudy-curriculum-tab.is-soon > span { background: color-mix(in srgb, var(--qs-muted) 55%, var(--qs-border)); }
.qstudy-curriculum-tab.is-elective-add > span {
  border: 2px solid color-mix(in srgb, var(--qs-secondary) 34%, transparent);
  background: var(--qs-bg);
  color: var(--qs-secondary);
  font-size: 30px;
  line-height: 1;
}
.qstudy-curriculum-tab small,
.qstudy-curriculum-tab strong,
.qstudy-curriculum-tab em { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qstudy-curriculum-tab small { color: var(--qs-primary); font-size: 7px; font-weight: 900; }
.qstudy-curriculum-tab strong { margin: 2px 0 3px; font-size: 13px; }
.qstudy-curriculum-tab em { color: var(--qs-muted); font-size: 8px; font-style: normal; }
.qstudy-curriculum-prompt {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 0 0 20px;
  padding: 19px 21px;
  border: 1px dashed color-mix(in srgb, var(--qs-primary) 34%, var(--qs-border));
  border-radius: 19px;
  background: color-mix(in srgb, var(--qs-primary) 4%, var(--qs-bg));
}
.qstudy-curriculum-prompt > span { display: grid; place-items: center; flex: 0 0 45px; width: 45px; height: 45px; border-radius: 14px; background: color-mix(in srgb, var(--qs-primary) 12%, var(--qs-bg)); color: var(--qs-primary); font-size: 22px; }
.qstudy-curriculum-prompt h2 { margin: 0 0 3px; font-size: 17px; }
.qstudy-curriculum-prompt p { margin: 0; color: var(--qs-muted); font-size: 9px; line-height: 1.7; }
.qstudy-school-catalog.is-electives { margin-top: 24px; }

body.qstudy-elective-picker-open { overflow: hidden; }
.qstudy-elective-picker[hidden] { display: none !important; }
.qstudy-elective-picker {
  position: fixed;
  z-index: 100000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 18px;
}
.qstudy-elective-picker__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgba(10, 15, 34, .68);
  cursor: default;
  backdrop-filter: blur(5px);
}
.qstudy-elective-picker__panel {
  position: relative;
  z-index: 1;
  width: min(900px, 100%);
  max-height: min(88vh, 820px);
  padding: 22px;
  overflow: auto;
  border: 1px solid color-mix(in srgb, var(--qs-primary) 24%, var(--qs-border));
  border-radius: 24px;
  background: var(--qs-bg);
  color: var(--qs-text);
  box-shadow: 0 28px 90px rgba(6, 10, 28, .34);
}
.qstudy-elective-picker__panel > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--qs-border);
}
.qstudy-elective-picker__panel > header h2 { margin: 4px 0; font-size: clamp(22px, 3vw, 31px); }
.qstudy-elective-picker__panel > header p { max-width: 670px; margin: 0; color: var(--qs-muted); font-size: 10px; line-height: 1.8; }
.qstudy-elective-picker__close {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid var(--qs-border);
  border-radius: 13px;
  background: color-mix(in srgb, var(--qs-muted) 7%, var(--qs-bg));
  color: var(--qs-text);
  font: inherit;
  font-size: 25px;
  cursor: pointer;
}
.qstudy-elective-picker__panel > .qstudy-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.qstudy-elective-picker__panel > .qstudy-empty { padding: 45px 20px; }

@media (max-width: 760px) {
  .qstudy-curriculum-switcher { margin-inline: -3px; padding: 15px 13px; border-radius: 20px; }
  .qstudy-curriculum-switcher > header { align-items: center; }
  .qstudy-curriculum-switcher > header p { max-width: 245px; }
  .qstudy-curriculum-switcher__controls button { width: 34px; height: 34px; border-radius: 10px; }
  .qstudy-curriculum-tab { flex-basis: min(76vw, 235px); min-height: 84px; }
  .qstudy-curriculum-prompt { align-items: flex-start; padding: 16px; }
  .qstudy-elective-picker { align-items: end; padding: 0; }
  .qstudy-elective-picker__panel { width: 100%; max-height: 88vh; padding: 17px 13px 24px; border-radius: 22px 22px 0 0; }
  .qstudy-elective-picker__panel > header { gap: 10px; }
  .qstudy-elective-picker__panel > .qstudy-catalog-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .qstudy-curriculum-rail { scroll-behavior: auto; }
  .qstudy-curriculum-tab { transition: none; }
}
