/* Generated by tools/theme-critical-css.js from quizpulse_theme.css for profile.html. Do not edit. */
:root{--qp-bg: #f5f3ff;
  --qp-bg-2: #eef2ff;
  --qp-panel: #ffffff;
  --qp-panel-2: #fafafa;
  --qp-text: #111827;
  --qp-muted: #6b7280;
  --qp-soft: #e5e7eb;
  --qp-border: #d7dce8;
  --qp-purple: #6d28d9;
  --qp-purple-2: #8b5cf6;
  --qp-purple-3: #ede9fe;
  --qp-blue: #2563eb;
  --qp-green: #059669;
  --qp-yellow: #d97706;
  --qp-red: #dc2626;
  --qp-dark: #111827;
  --qp-radius: 22px;
  --qp-shadow: 0 18px 45px rgba(17, 24, 39, .12);
  --qp-shadow-soft: 0 10px 25px rgba(17, 24, 39, .08);
  --qp-ease: cubic-bezier(.2,.8,.2,1);}
*{box-sizing: border-box;}
html, body{min-height: 100%;}
body{margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--qp-text);
  background: radial-gradient(circle at top left, #ddd6fe, transparent 34%), linear-gradient(135deg, var(--qp-bg), var(--qp-bg-2));}
button, input, select, textarea{font: inherit;}
button{cursor: pointer;}
button:disabled{opacity: .55; cursor: not-allowed;}
a{color: inherit; text-decoration: none;}
.qp-topbar{min-height: 72px;
  padding: 14px 24px;
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  background: rgba(255,255,255,.86);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(109,40,217,.16);
  position: sticky;
  top: 0;
  z-index: 20;}
.qp-btn{border: 0;
  border-radius: 15px;
  padding: 12px 18px;
  font-weight: 800;
  color: var(--qp-text);
  background: #fff;
  border: 1px solid var(--qp-border);
  box-shadow: 0 7px 16px rgba(17,24,39,.08);
  transition: transform .18s var(--qp-ease), box-shadow .18s var(--qp-ease), background .18s;}
.qp-btn:hover{transform: translateY(-2px); box-shadow: var(--qp-shadow-soft);}
.qp-btn.primary{color: #fff; background: linear-gradient(135deg, var(--qp-purple), var(--qp-blue)); border-color: transparent;}
.qp-btn.success{color: #fff; background: linear-gradient(135deg, #059669, #10b981); border-color: transparent;}
.qp-btn.danger{color: #fff; background: linear-gradient(135deg, #dc2626, #f97316); border-color: transparent;}
.qp-btn.ghost{background: transparent; box-shadow: none;}
.qp-btn.small{padding: 8px 11px; border-radius: 12px; font-size: 13px;}
.qp-btn.icon{width: 44px; height: 44px; display: grid; place-items: center; padding: 0;}
.qp-input, .qp-select, .qp-textarea{width: 100%;
  border: 2px solid var(--qp-border);
  border-radius: 16px;
  padding: 13px 15px;
  color: var(--qp-text);
  background: #fff;
  outline: none;}
.qp-input:focus, .qp-select:focus, .qp-textarea:focus{border-color: var(--qp-purple-2); box-shadow: 0 0 0 4px rgba(139,92,246,.18);}
.qp-pill{display: inline-flex; align-items: center; gap: 6px; padding: 7px 10px; border-radius: 999px; background: var(--qp-purple-3); color: var(--qp-purple); font-weight: 900; font-size: 12px;}
.qp-empty{padding: 28px; border-radius: 20px; border: 2px dashed var(--qp-border); background: #fff; text-align: center; color: var(--qp-muted);}
.qp-toast{position: fixed; left: 50%; bottom: 22px; transform: translateX(-50%); padding: 12px 16px; border-radius: 14px; background: var(--qp-dark); color: white; font-weight: 800; z-index: 100; box-shadow: var(--qp-shadow); opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s;}
.qp-toast.show{opacity: 1; transform: translateX(-50%) translateY(-4px);}
@media (max-width: 850px){
.qp-topbar{align-items: flex-start; flex-direction: column;}
}
@media (prefers-reduced-motion: reduce){
*, *::before, *::after{animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important;}
}
.qp-home-dashboard-body{background: #f7f7fb;
  min-height: 100vh;
  color: #1f1a3d;}
.qp-dashboard-shell{min-height: calc(100vh - 46px);
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);}
.qp-dashboard-sidebar{background: #fff;
  border-right: 1px solid #ece8f8;
  min-height: calc(100vh - 46px);
  position: sticky;
  top: 46px;
  align-self: start;
  display: flex;
  flex-direction: column;
  padding: 18px 16px;
  gap: 18px;}
.qp-dashboard-logo{display: flex;
  align-items: center;
  gap: 9px;
  color: #3b0b8f;
  font-size: 25px;
  font-weight: 950;
  letter-spacing: -.8px;
  margin-bottom: 10px;}
.qp-dashboard-logo span span{color: #7c3aed;}
.qp-dashboard-logo-icon{width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: linear-gradient(135deg, #6d28d9, #2563eb);
  color: #fff;
  box-shadow: 0 12px 22px rgba(109, 40, 217, .24);}
.qp-dashboard-main{min-width: 0;
  background: #f6f4ff;}
.qp-dashboard-topbar{height: 72px;
  background: #fff;
  border-bottom: 1px solid #ece8f8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 24px;
  position: sticky;
  top: 46px;
  z-index: 30;}
.qp-dashboard-top-actions{display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;}
.qp-dashboard-content{max-width: 1500px;
  margin: 0 auto;
  padding: 0 28px 44px;}
.qp-pill.inverse{background: rgba(255,255,255,.16);
  color: white;
  border: 1px solid rgba(255,255,255,.24);}
.qp-btn.gold{background: #b99a00;
  border-color: #a28300;
  color: white;}
.qp-btn.white{background: rgba(255,255,255,.96);
  border-color: transparent;
  color: #3b0b8f;}
.qp-btn.block{display: block; text-align: center; width: 100%;}
@media (max-width: 1150px){
.qp-dashboard-shell{grid-template-columns: 76px minmax(0, 1fr);}
}
@media (max-width: 760px){
.qp-dashboard-shell{display: block;}
.qp-dashboard-logo{flex: 0 0 auto; margin: 0;}
.qp-dashboard-nav,
  .qp-dashboard-side-bottom{display: flex; min-width: max-content; margin: 0; padding: 0; border: 0;}
.qp-dashboard-topbar{position: static; height: auto; align-items: stretch; flex-direction: column; padding: 14px;}
.qp-dashboard-top-actions{justify-content: flex-start;}
.qp-dashboard-content{padding: 0 14px 28px;}
}
body.qp-dashboard-clean{background: #f6f4ff;}
.qp-dashboard-clean .qp-dashboard-shell{min-height: 100vh;
  grid-template-columns: 220px minmax(0, 1fr);}
.qp-dashboard-clean .qp-dashboard-main{min-height: 100vh;}
.qp-dashboard-clean .qp-dashboard-topbar{position: sticky;
  top: 0;
  z-index: 45;
  min-height: 78px;
  height: auto;
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(14px);
  box-shadow: 0 8px 20px rgba(42, 17, 101, .06);}
.qp-dashboard-title-group{min-width: 180px;}
.qp-dashboard-title-group h1{margin: 0;
  font-size: 21px;
  color: #3b0b8f;
  letter-spacing: -.02em;}
.qp-dashboard-title-group p{margin: 3px 0 0;
  font-size: 13px;
  color: #6b7280;
  font-weight: 700;}
.qp-dashboard-clean .qp-dashboard-content{padding-top: 24px;}
@media (max-width: 1150px){
.qp-dashboard-clean .qp-dashboard-shell{grid-template-columns: 76px minmax(0, 1fr);}
}
@media (max-width: 760px){
.qp-dashboard-clean .qp-dashboard-shell{display: block;}
.qp-dashboard-clean .qp-dashboard-topbar{position: sticky;
    top: 72px;
    z-index: 50;
    min-height: unset;
    align-items: stretch;
    flex-direction: column;
    padding: 12px 14px;}
.qp-dashboard-title-group h1{font-size: 18px;}
.qp-dashboard-title-group p{display: none;}
.qp-dashboard-clean .qp-dashboard-top-actions{justify-content: flex-start;}
.qp-dashboard-clean .qp-dashboard-content{padding: 16px 14px 28px;}
}
.qp-audio-controls{display: flex; flex-wrap: wrap; gap: 10px; align-items: center;}
.qp-audio-toggle{border: 1px solid #c4b5fd;
  background: #ede9fe;
  color: #4c1d95;
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 950;
  cursor: pointer;}
.qp-audio-toggle.is-off{background: #f3f4f6; color: #6b7280; border-color: #d1d5db;}
.qp-create-modal[hidden]{display: none !important;}
.qp-create-modal{position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 24px;
  opacity: 0;
  transition: opacity .16s var(--qp-ease);}
.qp-create-modal.show{opacity: 1;}
.qp-create-modal-backdrop{position: absolute;
  inset: 0;
  background: rgba(10, 6, 28, .62);
  backdrop-filter: blur(6px);}
body.qp-create-modal-open{overflow: hidden;}
.qp-create-modal-card{position: relative;
  width: min(820px, 100%);
  max-height: min(760px, calc(100vh - 34px));
  overflow: hidden;
  border-radius: 8px;
  background: #f1f1f4;
  box-shadow: 0 28px 90px rgba(5, 4, 22, .38);
  transform: translateY(12px) scale(.985);
  transition: transform .2s var(--qp-ease);}
.qp-create-modal.show .qp-create-modal-card{transform: translateY(0) scale(1);}
.qp-create-modal-head{display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  background: #fff;
  padding: 26px 30px 22px;
  border-bottom: 1px solid #e4e4eb;}
.qp-create-modal-head h2{margin: 8px 0 6px;
  font-size: 22px;
  color: #2b2d33;}
.qp-create-modal-head p{margin: 0;
  color: #666b76;
  font-weight: 700;}
.qp-create-close{width: 40px;
  height: 40px;
  border: 0;
  border-radius: 10px;
  background: #f3f4f6;
  color: #111827;
  font-size: 28px;
  line-height: 1;}
.qp-create-modal-body{padding: 34px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  overflow-y: auto;
  max-height: calc(100vh - 230px);}
.qp-create-option{position: relative;
  min-height: 245px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #e1e4ec;
  box-shadow: 0 3px 10px rgba(15, 23, 42, .12);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  text-align: center;
  padding: 24px 18px;
  transition: transform .18s var(--qp-ease), box-shadow .18s var(--qp-ease), border-color .18s var(--qp-ease);}
.qp-create-option:hover,
.qp-create-option:focus-within{transform: translateY(-3px);
  border-color: #8b5cf6;
  box-shadow: 0 16px 36px rgba(91, 33, 182, .18);}
.qp-create-option.featured::before{content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 34px;
  background: #4c1d95;
  border-radius: 8px 8px 0 0;}
.qp-create-option-tag{position: absolute;
  top: 8px;
  left: 0;
  right: 0;
  z-index: 1;
  color: #fff;
  font-size: 12px;
  font-weight: 950;}
.qp-create-option-icon{width: 66px;
  height: 66px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #6d28d9, #7c3aed);
  color: white;
  font-size: 34px;
  box-shadow: 0 14px 28px rgba(109, 40, 217, .22);
  margin-top: 18px;}
.qp-create-option strong{color: #3b3c42;
  font-size: 19px;
  line-height: 1.25;}
.qp-create-option em{color: #6b7280;
  font-style: normal;
  line-height: 1.35;
  font-weight: 650;}
.qp-create-modal-foot{display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: #fff;
  border-top: 1px solid #e4e4eb;
  padding: 18px 30px;}
.qp-create-modal-foot span{color: #737b88;
  font-size: 13px;
  font-weight: 750;}
@media (max-width: 820px){
.qp-create-modal{padding: 10px; align-items: end;}
.qp-create-modal-card{max-height: calc(100vh - 20px); border-radius: 18px 18px 0 0;}
.qp-create-modal-head{padding: 20px;}
.qp-create-modal-body{grid-template-columns: 1fr; padding: 18px; gap: 14px; max-height: calc(100vh - 220px);}
.qp-create-option{min-height: 190px;}
.qp-create-modal-foot{padding: 14px 18px; flex-direction: column; align-items: stretch;}
}
@keyframes qpAttentionPulse{from { box-shadow: 0 0 0 0 rgba(124,58,237,.25), 0 7px 16px rgba(17,24,39,.08); transform: translateY(0); }
  to { box-shadow: 0 0 0 8px rgba(124,58,237,.16), 0 12px 26px rgba(124,58,237,.25); transform: translateY(-1px); }}
*, *::before, *::after{box-sizing: border-box;}
html, body{max-width: 100%; overflow-x: hidden;}
img, video, canvas, svg{max-width: 100%; height: auto;}
.qp-dashboard-main, .qp-dashboard-content, .qp-dashboard-topbar, .qp-dashboard-shell, .qp-card, .qp-game-card{min-width: 0;}
.qp-dashboard-topbar{position: sticky; top: 0; z-index: 30; backdrop-filter: blur(14px); flex-wrap: wrap; gap: 12px;}
.qp-dashboard-title-group{min-width: min(100%, 280px);}
.qp-dashboard-title-group h1{font-size: clamp(24px, 4vw, 42px);}
.qp-dashboard-top-actions, .qp-actions{flex-wrap: wrap; min-width: 0;}
.qp-dashboard-content{width: min(1400px, 100%); margin-inline: auto;}
@media (max-width: 860px){
.qp-dashboard-shell{grid-template-columns: 1fr !important;}
.qp-dashboard-sidebar{position: sticky; top: 0; z-index: 40; width: 100%; min-height: auto; flex-direction: row; align-items: center; overflow-x: auto; border-radius: 0;}
.qp-dashboard-logo{min-width: max-content;}
.qp-dashboard-topbar{top: 64px;}
}
@media (max-width: 520px){
.qp-dashboard-content{padding-inline: 10px;}
.qp-btn{width: 100%; justify-content: center;}
.qp-dashboard-top-actions{width: 100%;}
}
.qp-dashboard-topbar, .qp-library-topbar{border-radius: 0 0 24px 24px; box-shadow: 0 12px 30px rgba(42,17,101,.06);}
.qp-btn.danger{background: #ef4444;
  color: #fff;
  border-color: #dc2626;}
@media (max-width: 640px){
body{overflow-x:hidden;}
.qp-btn{width: auto; min-height: 46px;}
.qp-dashboard-top-actions .qp-btn{flex: 1 1 auto; text-align:center;}
.qp-game-answers{grid-template-columns: 1fr !important;}
.qp-game-answer{min-height: 92px !important;}
.qp-student-question-title{font-size: clamp(28px, 9vw, 42px) !important;}
}
[data-app-theme].active{outline: 3px solid var(--qp-purple-2); box-shadow: 0 0 0 5px rgba(29,155,210,.14);}
.qp-btn.full{width: 100%; justify-content: center;}
:root{--qp-v16-radius: 18px;
  --qp-v16-card: #ffffff;
  --qp-v16-line: rgba(15, 23, 42, .10);
  --qp-v16-shadow: 0 12px 30px rgba(15, 23, 42, .08);}
html{text-size-adjust: 100%; -webkit-text-size-adjust: 100%;}
body{overflow-x: hidden;}
img, video, canvas, svg{max-width: 100%; height: auto;}
button, a, input, select, textarea{touch-action: manipulation;}
.qp-btn{min-height: 42px;}
.qp-dashboard-main,
.qp-dashboard-content,
.qp-library-content-shell,
.qp-settings-card,
.qp-dashboard-settings,
.qp-game-card,
.qp-card,
.qp-editor,
.qp-question-stage{min-width: 0;}
.qp-dashboard-topbar,
.qp-library-topbar,
.qp-dashboard-settings,
.qp-template-card,
.qp-library-card,
.qp-course-node,
.qp-subject-node,
.qp-settings-card,
.qp-stat-table-only,
.qp-auth-card,
.qp-game-card{border: 1px solid var(--qp-v16-line);
  box-shadow: var(--qp-v16-shadow);}
.qp-dashboard-content,
.qp-library-content-shell{width: min(100%, 1500px);}
.qp-dashboard-hero-simple h2,
.qp-dashboard-title-group h1,
.qp-library-title-group h1{letter-spacing: -.04em;}
html[data-network="slow"] *,
html[data-network="save-data"] *{animation-duration: .001ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: .001ms !important;
  scroll-behavior: auto !important;}
html[data-network="slow"] .qp-game-body::before,
html[data-network="save-data"] .qp-game-body::before{display: none !important;}
@media (max-width: 860px){
.qp-dashboard-shell,
  .qp-dashboard-clean .qp-dashboard-shell{display: block !important; min-height: 100dvh; padding-bottom: 78px;}
.qp-dashboard-nav::-webkit-scrollbar{display: none;}
.qp-dashboard-main{width: 100%;}
.qp-dashboard-topbar,
  .qp-library-topbar{position: sticky; top: 0; z-index: 20; border-radius: 0 0 24px 24px !important; padding: 14px !important; gap: 12px; flex-direction: column; align-items: stretch !important;}
.qp-dashboard-title-group h1,
  .qp-library-title-group h1{font-size: clamp(26px, 8vw, 42px) !important;}
.qp-dashboard-title-group p,
  .qp-library-title-group p{font-size: 14px;}
.qp-dashboard-top-actions,
  .qp-library-view-actions,
  .qp-home-hero-actions{display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%;}
.qp-dashboard-top-actions .qp-btn,
  .qp-home-hero-actions .qp-btn{width: 100%; justify-content: center;}
.qp-dashboard-content,
  .qp-library-content-shell{padding: 14px 12px 92px !important;}
}
@media (max-width: 980px){
.qp-creator-body{overflow: auto !important;}
}
@media (max-width: 760px){
.qp-game-body{min-height: 100dvh;}
}
@media (prefers-reduced-motion: reduce){
*, *::before, *::after{animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;}
}
:root{--qp-mobile-safe-bottom: env(safe-area-inset-bottom, 0px);}
.qp-btn.small{padding: 8px 10px; min-height: 36px;}
@media (max-width: 760px){
.qp-dashboard-shell{display: block; min-height: 100dvh;}
.qp-dashboard-main{padding: 12px;}
.qp-dashboard-topbar{position: static; display: grid; gap: 12px; padding: 14px; border-radius: 22px;}
.qp-dashboard-top-actions{justify-content: stretch;}
.qp-dashboard-top-actions .qp-btn{flex: 1;}
.qp-dashboard-content{padding: 12px 0 calc(18px + var(--qp-mobile-safe-bottom));}
.qp-btn, button.qp-btn, a.qp-btn{min-height: 48px; font-size: 1rem;}
}
html[data-network="slow"] *, html[data-network="save-data"] *{animation-duration: .001ms !important; transition-duration: .08s !important;}
:root{--qp-card-radius: 22px;
  --qp-card-border: rgba(109, 40, 217, .13);
  --qp-card-shadow: 0 12px 30px rgba(42, 17, 101, .075);
  --qp-card-shadow-hover: 0 18px 42px rgba(42, 17, 101, .11);}
.qp-btn{display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  line-height: 1.1;}
.qp-btn:not(.primary):not(.success):not(.danger):not(.gold):not(.white){background: rgba(255,255,255,.92);}
.qp-btn.subtle{box-shadow: none;
  background: #f8fafc;
  color: #475569;}
.qp-section-title-row h2,
.qp-dashboard-title-group h1,
.qp-library-title-group h1{letter-spacing: -.035em;}
.qp-empty{display: grid;
  place-items: center;
  gap: 8px;
  min-height: 110px;
  background: rgba(255,255,255,.70);}
.qp-empty::before{content: '○';
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 16px;
  background: #f5f3ff;
  color: #6d28d9;
  font-weight: 1000;}
@keyframes qpSkeleton{to { background-position: -220% 0; }}
.qp-minimal-ui .qp-dashboard-title-group p:empty,
.qp-minimal-ui .qp-section-title-row p:empty,
.qp-minimal-ui .qp-settings-section-head p:empty,
.qp-minimal-ui .qp-settings-card > p:empty,
.qp-minimal-ui .qp-prop-subtitle:empty{display: none !important;}
.qp-minimal-ui .qp-dashboard-title-group p,
.qp-minimal-ui .qp-section-title-row p,
.qp-minimal-ui .qp-settings-section-head p,
.qp-minimal-ui .qp-auth-hero p:not(.qp-pill),
.qp-minimal-ui .qp-template-card p,
.qp-minimal-ui .qp-library-card p,
.qp-minimal-ui .qp-page-intro-card p{display: none !important;}
.qp-minimal-ui .qp-dashboard-topbar,
.qp-minimal-ui .qp-section-title-row,
.qp-minimal-ui .qp-settings-section-head{margin-bottom: 12px;}
.qp-minimal-ui .qp-dashboard-title-group h1,
.qp-minimal-ui .qp-section-title-row h2,
.qp-minimal-ui .qp-settings-section-head h2{margin-bottom: 0;}
.qp-minimal-ui .qp-btn{min-height: 40px;
  padding-inline: 14px;}
.qp-minimal-ui .qp-btn.small{min-height: 34px; padding-inline: 10px;}
.qp-minimal-ui .qp-empty{min-height: 88px; font-weight: 900;}
.qp-minimal-ui .qp-empty::before{width: 34px; height: 34px; border-radius: 13px;}
.qp-profile-tabs{display: flex;
  gap: 22px;
  align-items: center;
  overflow-x: auto;
  padding: 14px 4px 0;
  border-bottom: 1px solid #e5e7eb;}
.qp-profile-tabs a{white-space: nowrap;
  text-decoration: none;
  color: #475569;
  font-weight: 950;
  padding: 0 0 14px;
  border-bottom: 3px solid transparent;}
.qp-profile-tabs a.active{color: #2e1065; border-color: #6d28d9;}
@view-transition{navigation: auto;}
::view-transition-old(root){animation: qp-view-out .22s var(--qp-ease) both;}
::view-transition-new(root){animation: qp-view-in .38s var(--qp-ease) both;}
html.qp-js-ready body{backface-visibility: hidden;
  transform-origin: 50% 44%;}
html.qp-js-ready body.qp-page-entering{opacity: 0;
  transform: translateY(14px) scale(.985);}
html.qp-js-ready body.qp-page-ready:not(.qp-page-leaving){animation: qp-page-in .42s var(--qp-ease) both;}
html.qp-js-ready body.qp-page-leaving{pointer-events: none;
  animation: qp-page-out .22s var(--qp-ease) both;}
html.qp-js-ready body.qp-page-leaving .qp-topbar,
html.qp-js-ready body.qp-page-leaving .qp-dashboard-shell,
html.qp-js-ready body.qp-page-leaving .qp-game-shell,
html.qp-js-ready body.qp-page-leaving .qp-container,
html.qp-js-ready body.qp-page-leaving .qp-auth-shell{filter: blur(.25px);}
@keyframes qp-page-in{from { opacity: 0; transform: translateY(14px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }}
@keyframes qp-page-out{from { opacity: 1; transform: translateY(0) scale(1); }
  to { opacity: 0; transform: translateY(-10px) scale(.992); }}
@keyframes qp-view-in{from { opacity: 0; transform: translateY(16px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }}
@keyframes qp-view-out{from { opacity: 1; transform: translateY(0) scale(1); }
  to { opacity: 0; transform: translateY(-10px) scale(.992); }}
@media (prefers-reduced-motion: reduce){
@view-transition{navigation: none;}
::view-transition-old(root),
  ::view-transition-new(root),
  html.qp-js-ready body.qp-page-ready:not(.qp-page-leaving),
  html.qp-js-ready body.qp-page-leaving{animation: none !important;}
html.qp-js-ready body,
  html.qp-js-ready body.qp-page-entering,
  html.qp-js-ready body.qp-page-leaving{opacity: 1 !important;
    transform: none !important;
    filter: none !important;}
}
.qp-btn,
button.qp-btn,
a.qp-btn{border-radius: 14px;
  font-weight: 900;
  letter-spacing: -.01em;
  text-decoration: none;
  cursor: pointer;}
.qp-btn.secondary,
.qp-btn:not(.primary):not(.success):not(.danger):not(.ghost):not(.icon){color: #3b0764;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(109,40,217,.16);
  box-shadow: 0 8px 18px rgba(42,17,101,.065);}
.qp-btn.ghost{color: #4c1d95;
  background: rgba(245,243,255,.72);
  border: 1px solid rgba(109,40,217,.14);
  box-shadow: none;}
.qp-btn.gold,
.qp-btn.white{background: rgba(255,255,255,.94);
  color: #3b0764;
  border-color: rgba(109,40,217,.16);}
.qp-btn.is-loading,
.qp-btn[aria-busy="true"]{pointer-events: none;
  opacity: .72;
  cursor: progress;}
.qp-btn:disabled,
button.qp-btn:disabled{opacity: .62;
  cursor: not-allowed;
  transform: none;}
.qp-dashboard-nav a{min-height: 42px;
  white-space: nowrap;}
.qp-dashboard-nav a[data-create-quiz]{font-weight: 1000;}
.qp-dashboard-top-actions:empty{display: none;}
.qp-create-modal-card{border-radius: 28px;
  overflow: hidden;}
.qp-create-modal-head p:not(.qp-pill){margin: 6px 0 0;
  color: #64748b;
  font-weight: 700;}
.qp-create-option{border-radius: 22px;
  min-height: 250px;
  box-shadow: 0 12px 30px rgba(42,17,101,.075);}
.qp-create-option.featured::before{border-radius: 22px 22px 0 0;
  background: linear-gradient(135deg, #6d28d9, #2563eb);}
.qp-create-mode-body{grid-template-columns:repeat(2,minmax(240px,1fr))}
.qp-create-mode-body .qp-create-option-templates,.qp-create-mode-body>a:last-child{grid-column:auto}
.qp-mode-card{min-height:210px}
.qp-mode-card .qp-create-option-icon{font-size:2.1rem}
.qp-create-option-tag.soft{background:rgba(16,185,129,.12);color:#047857}
@media (max-width:760px){
.qp-create-mode-body{grid-template-columns:1fr}
}
.qp-space-chip{appearance:none;border:1px solid rgba(148,163,184,.22);background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,246,255,.82));border-radius:20px;padding:12px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;box-shadow:0 14px 32px rgba(15,23,42,.08);color:#0f172a;width:100%}
.qp-space-chip:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(37,99,235,.14)}
.qp-space-chip b{display:block;font-size:.92rem;line-height:1.2}
.qp-space-chip small{display:block;color:#64748b;font-size:.76rem;line-height:1.2;margin-top:2px}
.qp-space-chip em{font-style:normal;margin-left:auto;font-size:.72rem;font-weight:900;color:#2563eb}
.qp-btn.tiny{padding:7px 9px;border-radius:12px;font-size:.78rem;align-self:center}
@media (max-width:760px){
.qp-space-chip{padding:10px}
}
:root{--qp-space-purple:#6d28d9;
  --qp-space-purple-2:#8b5cf6;
  --qp-space-deep:#3b0764;
  --qp-space-gold:#facc15;}
.qp-space-chip{border:1px solid rgba(139,92,246,.28)!important;background:linear-gradient(135deg,rgba(76,29,149,.95),rgba(124,58,237,.92))!important;color:#fff!important;box-shadow:0 18px 38px rgba(76,29,149,.25)!important}
.qp-space-chip small,.qp-space-chip em{color:rgba(255,255,255,.78)!important}
.qp-pill.danger{background:#fee2e2!important;color:#991b1b!important;border-color:#fecaca!important}
.qp-btn.danger{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}
.qp-sr-only{position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;}
.qp-global-confirm{position:fixed; inset:0; z-index:9999; display:grid; place-items:center; padding:18px; opacity:0; pointer-events:none; transition:.16s ease;}
.qp-global-confirm[hidden]{display:none !important;}
.qp-global-confirm.show{opacity:1; pointer-events:auto;}
.qp-global-confirm-backdrop{position:absolute; inset:0; background:rgba(15,23,42,.58); backdrop-filter:blur(8px);}
.qp-global-confirm-card{position:relative; width:min(460px, 100%); border-radius:26px; background:var(--qp-card,#fff); color:var(--qp-text,#111827); border:1px solid rgba(148,163,184,.25); box-shadow:0 28px 70px rgba(15,23,42,.25); padding:22px; display:grid; grid-template-columns:auto 1fr; gap:16px;}
.qp-global-confirm-icon{width:46px; height:46px; border-radius:16px; display:grid; place-items:center; background:rgba(239,68,68,.12); color:#dc2626; font-weight:900; font-size:24px;}
.qp-global-confirm-card.is-success{border-color:rgba(16,185,129,.32); box-shadow:0 28px 70px rgba(15,23,42,.25),0 0 0 5px rgba(16,185,129,.08);}
.qp-global-confirm-card.is-success .qp-global-confirm-icon{background:#dcfce7; color:#15803d; box-shadow:inset 0 0 0 1px rgba(22,163,74,.2); animation:qp-success-pop .34s ease-out;}
.qp-global-confirm-card.is-success .qp-pill{background:#dcfce7; color:#166534;}
@keyframes qp-success-pop{0% { transform:scale(.72); opacity:.3; } 70% { transform:scale(1.08); } 100% { transform:scale(1); opacity:1; }}
.qp-global-confirm-copy h3{margin:4px 0 6px; font-size:22px;}
.qp-global-confirm-copy p:last-child{margin:0; color:var(--qp-muted,#64748b); font-weight:700; line-height:1.5;}
.qp-global-confirm-actions{grid-column:1/-1; display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap;}
.qp-global-confirm-actions [hidden]{display:none !important;}
.qp-global-confirm-input{margin-top:10px; width:100%; display:block;}
@media (min-width: 981px) and (max-width: 1180px){
.qp-mobile-menu-btn{gap: 8px !important;
    min-width: 86px !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(109, 40, 217, .18) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: #46178f !important;
    font: inherit !important;
    font-weight: 950 !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08) !important;}
.qp-mobile-menu-btn span{font-size: 20px !important; line-height: 1 !important;}
.qp-mobile-menu-btn b{font-size: 13px !important;}
}
.qp-dashboard-nav a[href="/college"] span{font-size:1.05em}
.qp-account-chip-avatar{width: 34px;
  height: 34px;
  border-radius: 12px;
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(124,58,237,.14), rgba(14,165,233,.12));
  font-size: 18px;}
.qp-account-chip-avatar img{width: 100%; height: 100%; object-fit: cover;}
.qp-dashboard-topbar,
.qp-library-topbar,
.qp-dashboard-sidebar,
.qp-card-menu,
.qp-kahoot-dropdown,
.qp-subject-more div{backface-visibility: hidden;
  transform: translateZ(0);}
@supports (backdrop-filter: blur(1px)){
html[data-network="slow"] .qp-dashboard-topbar,
  html[data-network="save-data"] .qp-dashboard-topbar,
  html[data-network="slow"] .qp-library-topbar,
  html[data-network="save-data"] .qp-library-topbar{backdrop-filter: none !important;}
}
.qp-pill.success{background:#dcfce7;color:#166534;border-color:rgba(22,101,52,.18)}
.qp-pill.danger{background:#fee2e2;color:#991b1b;border-color:rgba(153,27,27,.18)}
.qp-create-modal-card-clean{width: min(760px, 100%);
  border-radius: 30px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  border: 1px solid rgba(255,255,255,.72);}
.qp-create-mode-body-clean{grid-template-columns: repeat(2, minmax(240px, 1fr)) !important;
  gap: 18px;
  padding: 26px;
  max-height: none;}
.qp-create-mode-body-clean .qp-create-option{min-height: 230px;
  border-radius: 26px;
  border: 1px solid rgba(148,163,184,.22);
  box-shadow: 0 18px 44px rgba(15,23,42,.08);
  text-decoration: none;}
.qp-create-mode-body-clean .qp-create-option:hover,
.qp-create-mode-body-clean .qp-create-option:focus-visible{transform: translateY(-2px);
  box-shadow: 0 26px 60px rgba(91,33,182,.16);}
.qp-create-mode-body-clean .qp-create-option-icon{width: 74px;
  height: 74px;
  border-radius: 24px;
  margin-top: 18px;}
.qp-create-modal-foot-clean{justify-content: center;
  text-align: center;
  padding: 15px 24px 20px;}
.qp-create-modal-foot-clean span{max-width: 620px;}
@media (max-width: 760px){
.qp-create-mode-body-clean{grid-template-columns: 1fr !important;}
}
.qp-performance-choice{display:flex; gap:8px; align-items:center; flex-wrap:wrap;}
.qp-performance-choice button{border:1px solid rgba(124,58,237,.22); background:#fff; color:#4c1d95; border-radius:14px; padding:9px 12px; font-weight:950; cursor:pointer; box-shadow:0 6px 16px rgba(76,29,149,.08);}
.qp-performance-choice button.active{background:linear-gradient(135deg,#6d28d9,#8b5cf6); color:#fff; border-color:transparent;}
.qp-performance-choice.compact button{padding:6px 9px; border-radius:999px; font-size:12px;}
html[data-qp-performance="high"]{scroll-behavior:auto !important;}
html[data-qp-performance="high"] :is(
  #hostApp > *,
  #playerApp > *,
  .qp-waiting-dots span,
  .qp-boost,
  .qp-confetti,
  .qp-pulse-bg,
  .qp-avatar-emoji,
  .qp-player-avatar,
  .qp-simple-avatar,
  .qp-lobby-player-avatar,
  .qp-lb-row,
  .qp-winner-card,
  .qp-winner-avatar,
  .qp-top10-theater,
  .qp-top10-card,
  .qp-top10-avatar,
  .qp-avatar-premium,
  .qp-hotspot-correct-area,
  .qp-rank-change
){animation:none !important;}
:root{--qp-shell-topbar-h: 76px;
  --qp-shell-sidebar-w: 232px;
  --qp-shell-bg: #f3f4f6;
  --qp-shell-surface: #ffffff;
  --qp-shell-surface-2: #fbfbfe;
  --qp-shell-text: #1f2937;
  --qp-shell-muted: #5f6675;
  --qp-shell-line: rgba(15, 23, 42, .10);
  --qp-shell-primary: var(--qp-purple, #5b21b6);
  --qp-shell-primary-2: var(--qp-purple-2, #7c3aed);
  --qp-shell-primary-soft: rgba(109, 40, 217, .11);
  --qp-shell-shadow: 0 8px 26px rgba(17, 24, 39, .08);}
body.qp-dashboard-clean,
body.qp-home-dashboard-body{background: var(--qp-shell-bg) !important;}
.qp-dashboard-clean .qp-dashboard-shell{grid-template-columns: var(--qp-shell-sidebar-w) minmax(0, 1fr) !important;
  min-height: 100vh !important;}
.qp-dashboard-clean .qp-dashboard-sidebar{position: fixed !important;
  left: 0 !important;
  top: var(--qp-shell-topbar-h) !important;
  width: var(--qp-shell-sidebar-w) !important;
  height: calc(100vh - var(--qp-shell-topbar-h)) !important;
  min-height: 0 !important;
  z-index: 41 !important;
  padding: 10px 14px 16px !important;
  gap: 10px !important;
  border-right: 1px solid var(--qp-shell-line) !important;
  border-radius: 0 !important;
  background: var(--qp-shell-surface) !important;
  box-shadow: 10px 0 26px rgba(17, 24, 39, .045) !important;
  overflow-y: auto !important;
  scrollbar-width: thin;}
.qp-dashboard-clean .qp-dashboard-main{grid-column: 2 !important;
  min-height: 100vh !important;
  padding-top: var(--qp-shell-topbar-h) !important;
  background: var(--qp-shell-bg) !important;}
.qp-dashboard-clean .qp-dashboard-topbar{position: fixed !important;
  inset: 0 0 auto 0 !important;
  min-height: var(--qp-shell-topbar-h) !important;
  height: var(--qp-shell-topbar-h) !important;
  z-index: 70 !important;
  padding: 0 20px !important;
  gap: 18px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--qp-shell-line) !important;
  border-radius: 0 !important;
  background: var(--qp-shell-surface) !important;
  color: var(--qp-shell-text) !important;
  box-shadow: var(--qp-shell-shadow) !important;
  backdrop-filter: blur(16px);
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;}
.qp-topbar-brand{width: calc(var(--qp-shell-sidebar-w) - 6px);
  min-width: calc(var(--qp-shell-sidebar-w) - 6px);
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--qp-shell-primary) !important;
  font-size: 24px;
  font-weight: 950;
  letter-spacing: -.05em;
  text-decoration: none;
  white-space: nowrap;}
.qp-topbar-brand strong{color: var(--qp-shell-primary-2); font-weight: 950;}
.qp-dashboard-clean .qp-dashboard-title-group{flex: 1 1 auto !important;
  min-width: 0 !important;}
.qp-dashboard-clean .qp-dashboard-title-group h1{color: var(--qp-shell-text) !important;
  font-size: 20px !important;
  letter-spacing: -.035em !important;
  line-height: 1.05 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;}
.qp-dashboard-clean .qp-dashboard-title-group p{color: var(--qp-shell-muted) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;}
.qp-dashboard-clean .qp-dashboard-top-actions{margin-left: auto !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;}
.qp-dashboard-clean .qp-dashboard-top-actions .qp-btn,
.qp-dashboard-clean .qp-dashboard-top-actions a.qp-btn,
.qp-dashboard-clean .qp-dashboard-top-actions button.qp-btn{min-height: 42px;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-weight: 900 !important;
  box-shadow: none !important;}
.qp-dashboard-clean .qp-dashboard-nav{display: grid !important;
  gap: 4px !important;
  align-content: start;}
.qp-dashboard-clean .qp-dashboard-nav a,
.qp-dashboard-clean .qp-dashboard-side-bottom a{min-height: 44px;
  padding: 11px 13px !important;
  gap: 12px !important;
  border-radius: 6px !important;
  color: var(--qp-shell-text) !important;
  background: transparent !important;
  font-weight: 820 !important;
  letter-spacing: -.01em;
  text-decoration: none;
  transition: background .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;}
.qp-dashboard-clean .qp-dashboard-nav a span,
.qp-dashboard-clean .qp-dashboard-side-bottom a span{width: 23px !important;
  height: 23px !important;
  display: inline-grid !important;
  place-items: center !important;
  color: var(--qp-shell-primary) !important;
  flex: 0 0 23px;}
.qp-dashboard-clean .qp-dashboard-nav a:hover,
.qp-dashboard-clean .qp-dashboard-side-bottom a:hover{background: var(--qp-shell-primary-soft) !important;
  color: var(--qp-shell-primary) !important;
  transform: none !important;}
.qp-dashboard-clean .qp-space-chip,
.qp-dashboard-clean .qp-top-space-chip{border-radius: 12px !important;
  border: 1px solid var(--qp-shell-line) !important;
  background: var(--qp-shell-surface-2) !important;
  color: var(--qp-shell-text) !important;
  box-shadow: none !important;}
.qp-dashboard-clean .qp-dashboard-content,
.qp-library-content-shell{width: min(100%, 1520px) !important;
  padding: 26px 28px 46px !important;}
.qp-dashboard-clean .qp-dashboard-settings,
.qp-dashboard-clean .qp-dashboard-stats div,
.qp-dashboard-clean .qp-template-card,
.qp-dashboard-clean .qp-library-card,
.qp-dashboard-clean .qp-course-node,
.qp-dashboard-clean .qp-subject-node,
.qp-dashboard-clean .qp-settings-card,
.qp-dashboard-clean .qp-stat-table-only,
.qp-dashboard-clean .qp-admin-table-wrap,
.qp-dashboard-clean .qp-admin-grid > *,
.qp-dashboard-clean .qp-empty{border-color: var(--qp-shell-line) !important;
  box-shadow: 0 8px 20px rgba(17, 24, 39, .055) !important;}
.qp-world-topbar,
.qp-game-topbar,
.qp-topbar{border-bottom: 1px solid var(--qp-shell-line, rgba(15,23,42,.10)) !important;
  background: var(--qp-shell-surface, #fff) !important;
  color: var(--qp-shell-text, #1f2937) !important;
  box-shadow: var(--qp-shell-shadow, 0 8px 26px rgba(17,24,39,.08)) !important;}
@media (max-width: 980px){
:root{--qp-shell-topbar-h: auto; --qp-shell-sidebar-w: 0px;}
.qp-dashboard-clean .qp-dashboard-shell{display: block !important;}
.qp-dashboard-clean .qp-dashboard-main{padding-top: 0 !important;}
.qp-dashboard-clean .qp-dashboard-topbar{position: sticky !important;
    top: 0 !important;
    height: auto !important;
    min-height: 72px !important;
    padding: 12px !important;
    gap: 10px !important;
    flex-wrap: wrap !important;}
.qp-topbar-brand{width: auto;
    min-width: 0;
    font-size: 21px;}
.qp-dashboard-clean .qp-dashboard-title-group{order: 3;
    flex: 1 0 100% !important;}
.qp-dashboard-clean .qp-dashboard-title-group h1,
  .qp-dashboard-clean .qp-dashboard-title-group p{white-space: normal;}
.qp-dashboard-clean .qp-dashboard-top-actions{margin-left: auto !important;
    flex-wrap: wrap !important;
    max-width: 100%;}
.qp-dashboard-clean .qp-dashboard-sidebar{position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    top: auto !important;
    width: auto !important;
    height: 66px !important;
    padding: 6px !important;
    border-radius: 24px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: color-mix(in srgb, var(--qp-shell-surface) 94%, transparent) !important;
    box-shadow: 0 16px 40px rgba(15,23,42,.18) !important;
    backdrop-filter: blur(12px);}
.qp-dashboard-clean .qp-dashboard-nav::-webkit-scrollbar{display: none;}
.qp-dashboard-clean .qp-dashboard-nav a{flex: 1 0 74px !important;
    min-width: 74px !important;
    min-height: 50px !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 2px !important;
    padding: 7px 8px !important;
    border-radius: 17px !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: nowrap !important;}
.qp-dashboard-clean .qp-space-chip{display: none !important;}
.qp-dashboard-clean .qp-dashboard-content,
  .qp-library-content-shell{padding: 14px 12px 92px !important;}
.qp-world-topbar,
  .qp-game-topbar,
  .qp-topbar{flex-wrap: wrap !important; height: auto !important; min-height: 64px !important;}
}
:root{--qp-style-bg: #f2f2f5;
  --qp-style-surface: #ffffff;
  --qp-style-surface-2: #f8f7fb;
  --qp-style-text: #1d1b2f;
  --qp-style-muted: #5e6272;
  --qp-style-border: #e1ddec;
  --qp-style-accent: #46178f;
  --qp-style-accent-2: #6d28d9;
  --qp-style-accent-3: #7c3aed;
  --qp-style-accent-soft: #f0e7ff;
  --qp-style-shadow: 0 2px 8px rgba(15, 23, 42, .10);
  --qp-style-shadow-lift: 0 12px 30px rgba(42, 17, 101, .16);
  --qp-style-radius: 8px;
  --qp-style-radius-lg: 12px;}
body.qp-home-dashboard-body,
body.qp-dashboard-clean,
body.qp-library-page-body,
body.qp-settings-pro-body,
body.qp-server-status-body,
body.qp-admin-center-body,
body.qp-teaching-space-body{background: var(--qp-style-bg) !important;
  color: var(--qp-style-text) !important;}
.qp-dashboard-clean .qp-dashboard-topbar{background: var(--qp-style-surface) !important;
  border-bottom: 1px solid var(--qp-style-border) !important;
  color: var(--qp-style-text) !important;
  box-shadow: var(--qp-style-shadow) !important;}
.qp-topbar-brand{color: var(--qp-style-accent) !important;
  font-size: 25px !important;
  font-weight: 1000 !important;
  letter-spacing: -.06em !important;}
.qp-topbar-brand-icon,
.qp-dashboard-logo-icon,
.qp-logo{border-radius: 7px !important;
  background: linear-gradient(135deg, var(--qp-style-accent), var(--qp-style-accent-2)) !important;
  color: #fff !important;}
.qp-dashboard-clean .qp-dashboard-title-group h1,
.qp-library-title-group h1{color: var(--qp-style-text) !important;
  font-weight: 950 !important;}
.qp-dashboard-clean .qp-dashboard-title-group p,
.qp-library-title-group p,
.qp-muted{color: var(--qp-style-muted) !important;}
.qp-dashboard-clean .qp-dashboard-nav a:hover,
.qp-dashboard-clean .qp-dashboard-side-bottom a:hover{background: var(--qp-style-accent-soft) !important;
  color: var(--qp-style-accent) !important;}
.qp-dashboard-content{background: transparent !important;}
.qp-btn,
.qp-auth-tabs button,
.qp-auth-tab-link,
.qp-library-tabs button,
.qp-card-menu-btn,
.qp-create-close,
.qp-audio-toggle,
.qp-performance-choice button{border-radius: 6px !important;
  font-weight: 950 !important;}
.qp-btn{background: var(--qp-style-surface) !important;
  border: 1px solid var(--qp-style-border) !important;
  color: var(--qp-style-text) !important;
  box-shadow: 0 2px 5px rgba(15,23,42,.08) !important;}
.qp-btn:hover{transform: translateY(-1px) !important; box-shadow: var(--qp-style-shadow) !important;}
.qp-btn.primary,
.qp-auth-tabs .active,
.qp-btn.success,
.qp-dashboard-clean .qp-dashboard-top-actions .qp-btn.primary{background: var(--qp-style-accent) !important;
  border-color: var(--qp-style-accent) !important;
  color: #fff !important;}
.qp-btn.danger{background: #e11d48 !important; border-color: #e11d48 !important; color: #fff !important;}
.qp-btn.ghost,
.qp-btn.subtle{background: transparent !important; box-shadow: none !important;}
.qp-pill,
.qp-status,
.qp-question-chip{border-radius: 999px !important;
  background: var(--qp-style-accent-soft) !important;
  color: var(--qp-style-accent) !important;
  font-weight: 950 !important;}
.qp-dashboard-settings,
.qp-dashboard-library,
.qp-settings-card,
.qp-settings-card.big,
.qp-quick-card,
.qp-template-card,
.qp-library-card,
.qp-kahoot-quiz-card,
.qp-admin-table-wrap,
.qp-admin-grid > article,
.qp-admin-grid > div,
.qp-course-node,
.qp-subject-node,
.qp-location-choice,
.qp-table-wrap,
.qp-stat-table-only,
.qp-stat-table-wrap,
.qp-empty,
.qp-server-hero,
.qp-settings-pro-hero,
.qp-settings-pro-panel,
.qp-settings-pro-tabs,
.qp-status-grid > article{background: var(--qp-style-surface) !important;
  border: 1px solid var(--qp-style-border) !important;
  border-radius: var(--qp-style-radius-lg) !important;
  box-shadow: var(--qp-style-shadow) !important;
  color: var(--qp-style-text) !important;}
.qp-input,
.qp-select,
.qp-textarea,
input.qp-input,
select.qp-select,
textarea.qp-textarea{background: var(--qp-style-surface) !important;
  border: 1px solid #cfd4df !important;
  border-radius: 6px !important;
  color: var(--qp-style-text) !important;
  box-shadow: none !important;}
.qp-input:focus,
.qp-select:focus,
.qp-textarea:focus{border-color: var(--qp-style-accent-2) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--qp-style-accent-2) 18%, transparent) !important;}
@media (max-width: 980px){
.qp-dashboard-clean .qp-dashboard-topbar{box-shadow: var(--qp-style-shadow) !important;}
}
@media (max-width: 560px){
.qp-dashboard-clean .qp-dashboard-top-actions .qp-btn{min-height: 38px !important; padding: 8px 10px !important;}
.qp-topbar-brand{font-size: 20px !important;}
.qp-dashboard-clean .qp-dashboard-title-group h1{font-size: 22px !important;}
}
.qp-btn.tiny.danger-lite,
.qp-btn.danger-lite{background: rgba(239,68,68,.14) !important;
  color: #fee2e2 !important;
  border-color: rgba(248,113,113,.35) !important;}
.qp-lobby-mini-menu .qp-muted,
.qp-player-search-menu .qp-muted,
.qp-player-menu .qp-muted,
.qp-muted,
small{color: var(--qp-muted) !important;}
.qp-dashboard-main,
.qp-dashboard-main h1,
.qp-dashboard-main h2,
.qp-dashboard-main h3,
.qp-dashboard-main p,
.qp-library-card h3,
.qp-settings-card h3,
.qp-stat-table td,
.qp-stat-table th{color: var(--qp-text);}
@view-transition{navigation: none;}
::view-transition-old(root),
::view-transition-new(root),
html.qp-js-ready body.qp-page-ready:not(.qp-page-leaving),
html.qp-js-ready body.qp-page-leaving{animation: none !important;}
html.qp-js-ready body,
html.qp-js-ready body.qp-page-entering,
html.qp-js-ready body.qp-page-leaving{opacity: 1 !important;
  transform: none !important;
  filter: none !important;}
:root,
html[data-theme="light"]{color-scheme: light;
  --qp-bg: #f6f7fb;
  --qp-bg-2: #eef2ff;
  --qp-panel: #ffffff;
  --qp-panel-2: #f8fafc;
  --qp-text: #111827;
  --qp-muted: #64748b;
  --qp-soft: #e5e7eb;
  --qp-border: #d8dce8;
  --qp-purple: #5b21b6;
  --qp-purple-2: #7c3aed;
  --qp-purple-3: #f1edff;
  --qp-blue: #2563eb;
  --qp-green: #059669;
  --qp-yellow: #d97706;
  --qp-red: #dc2626;
  --qp-dark: #111827;
  --qp-radius: 22px;
  --qp-card-shadow: 0 12px 30px rgba(42, 17, 101, .075);
  --qp-card-shadow-hover: 0 18px 42px rgba(42, 17, 101, .11);
  --qp-shadow: 0 18px 45px rgba(17, 24, 39, .11);
  --qp-shadow-soft: 0 10px 25px rgba(17, 24, 39, .075);}
html,
body{color-scheme: light;}
body:not(.qp-game-body){color: var(--qp-text);
  background:
    radial-gradient(circle at 0 0, rgba(124, 58, 237, .12), transparent 34%),
    linear-gradient(135deg, var(--qp-bg), var(--qp-bg-2));}
.qp-theme-toggle,
[data-app-theme],
.qp-theme-choice.dark,
.qp-theme-choice.alkafeel,
.qp-theme-chip.dark,
.qp-theme-chip.alkafeel{display: none !important;}
.qp-card,
.qp-profile-panel,
.qp-profile-panel-dark,
.qp-settings-card,
.qp-settings-admin-card,
.qp-user-import-card,
.qp-admin-live-card,
.qp-admin-quiz-card,
.qp-bank-card,
.qp-library-card,
.qp-kahoot-quiz-card,
.qp-college-manager-card,
.qp-group-manager-card,
.qp-subject-choice-card,
.qp-space-setup-card,
.qp-space-confirm-card,
.qp-global-confirm-card,
.qp-create-modal-card,
.qp-create-modal-card-clean{background: rgba(255, 255, 255, .96);
  color: var(--qp-text);
  border: 1px solid rgba(109, 40, 217, .12);
  box-shadow: var(--qp-card-shadow);}
.qp-topbar,
.qp-dashboard-topbar,
.qp-dashboard-sidebar,
.qp-library-topbar,
.qp-settings-pro-topbar,
.qp-world-topbar,
.qp-creator-topbar-v18{background: rgba(255, 255, 255, .92);
  color: var(--qp-text);
  border-color: rgba(109, 40, 217, .12);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .07);
  backdrop-filter: blur(16px);}
.qp-dashboard-nav a,
.qp-settings-pro-tabs button,
.qp-library-tabs button,
.qp-admin-switch button{color: #334155;
  background: transparent;
  border-color: transparent;}
.qp-dashboard-nav a.active,
.qp-dashboard-nav a:hover,
.qp-settings-pro-tabs button.active,
.qp-settings-pro-tabs button:hover,
.qp-library-tabs button.active,
.qp-library-tabs button:hover,
.qp-admin-switch button.active,
.qp-admin-switch button:hover{color: var(--qp-purple);
  background: var(--qp-purple-3);
  border-color: rgba(124, 58, 237, .18);}
.qp-btn,
.qp-link-btn,
.qp-lobby-lite-btn,
.qp-scroll-btn,
.qp-rail-btn{color: var(--qp-text);
  background: #ffffff;
  border: 1px solid var(--qp-border);
  box-shadow: 0 8px 18px rgba(17, 24, 39, .075);}
.qp-btn.primary,
.qp-prop-primary,
.qp-lobby-start,
.qp-waiting-start{color: #ffffff;
  background: linear-gradient(135deg, var(--qp-purple), var(--qp-blue));
  border-color: transparent;}
.qp-btn.success{color: #ffffff; background: linear-gradient(135deg, #059669, #10b981); border-color: transparent;}
.qp-btn.danger{color: #ffffff; background: linear-gradient(135deg, #dc2626, #f97316); border-color: transparent;}
.qp-btn.ghost{background: transparent; box-shadow: none;}
.qp-btn:focus-visible,
.qp-link-btn:focus-visible,
.qp-dashboard-nav a:focus-visible,
.qp-input:focus-visible,
.qp-select:focus-visible,
.qp-textarea:focus-visible,
.qp-answer-input:focus-visible,
.qp-title-input:focus-visible,
.qp-mini-search:focus-visible,
.qp-mini-select:focus-visible{outline: 3px solid rgba(124, 58, 237, .26);
  outline-offset: 2px;}
.qp-input,
.qp-select,
.qp-textarea,
.qp-mini-search,
.qp-mini-select,
.qp-title-input,
.qp-answer-input,
.qp-points-input,
.qp-global-confirm-input,
.qp-user-mapping-item select,
.qp-admin-edit-form input,
.qp-admin-edit-form select,
.qp-group-create-row input,
.qp-group-import-mapping select{color: var(--qp-text);
  background: #ffffff;
  border-color: var(--qp-border);}
.qp-input::placeholder,
.qp-textarea::placeholder,
.qp-title-input::placeholder,
.qp-answer-input::placeholder,
.qp-mini-search::placeholder{color: #94a3b8;}
.qp-muted,
.qp-prop-subtitle,
.qp-settings-details,
.qp-user-import-help,
.qp-access-note,
.qp-empty,
.qp-friendly-empty{color: var(--qp-muted);}
.qp-pill,
.qp-space-chip,
.qp-stat-group-chip,
.qp-summary-badge,
.qp-mode-pill,
.qp-correct-pill{background: var(--qp-purple-3);
  color: var(--qp-purple);
  border-color: rgba(124, 58, 237, .18);}
.qp-create-modal-backdrop,
.qp-global-confirm-backdrop,
.qp-group-import-overlay,
.qp-space-setup-overlay,
.qp-space-confirm-overlay{background: rgba(15, 23, 42, .42);
  backdrop-filter: blur(10px);}
.qp-user-import-shell,
.qp-group-import-dialog,
.qp-create-modal-card,
.qp-create-modal-card-clean,
.qp-global-confirm-card,
.qp-space-confirm-card{max-height: calc(100dvh - 28px);}
.qp-user-import-dialog,
.qp-group-import-dialog,
.qp-create-modal-body,
.qp-create-mode-body,
.qp-create-mode-body-clean{overflow: auto;}
@media (max-width: 860px){
body:not(.qp-game-body){background: linear-gradient(180deg, #f8fafc, #eef2ff);}
.qp-container,
  .qp-dashboard-main,
  .qp-library-v15,
  .qp-settings-pro,
  .qp-statistics-page,
  .qp-question-bank-page,
  .qp-admin-content{padding-left: 14px !important;
    padding-right: 14px !important;}
.qp-topbar,
  .qp-dashboard-topbar,
  .qp-library-topbar,
  .qp-settings-pro-topbar,
  .qp-world-topbar,
  .qp-creator-topbar-v18{border-radius: 0 0 22px 22px;}
.qp-btn{min-height: 44px;}
}
.qp-mobile-menu-btn,
.qp-mobile-nav-backdrop{display: none;}
@media (max-width: 980px){
body.qp-has-mobile-nav{overflow-x: hidden;}
body.qp-mobile-nav-open{overflow: hidden;
    touch-action: none;}
.qp-mobile-menu-btn{display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 86px;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid rgba(109, 40, 217, .18);
    border-radius: 14px;
    background: #ffffff;
    color: var(--qp-style-accent, #46178f);
    font: inherit;
    font-weight: 950;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;}
.qp-mobile-menu-btn span{font-size: 20px;
    line-height: 1;}
.qp-mobile-menu-btn b{font-size: 13px;
    letter-spacing: -.02em;}
.qp-mobile-menu-btn:focus-visible{outline: 3px solid rgba(124, 58, 237, .32);
    outline-offset: 3px;}
.qp-mobile-nav-backdrop{position: fixed;
    inset: 0;
    z-index: 88;
    width: 100%;
    height: 100%;
    border: 0;
    padding: 0;
    background: rgba(15, 23, 42, .42);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, visibility .18s ease;}
body.qp-mobile-nav-open .qp-mobile-nav-backdrop{display: block;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;}
.qp-dashboard-clean .qp-dashboard-topbar{display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    position: sticky !important;
    top: 0 !important;
    min-height: 68px !important;
    height: auto !important;
    padding: 10px 12px !important;
    gap: 10px !important;
    border-radius: 0 0 20px 20px !important;
    flex-wrap: nowrap !important;
    z-index: 80 !important;}
.qp-dashboard-clean .qp-dashboard-title-group{order: initial !important;
    grid-column: 2 !important;
    min-width: 0 !important;
    flex: initial !important;}
.qp-dashboard-clean .qp-dashboard-title-group h1{font-size: clamp(18px, 5vw, 22px) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;}
.qp-dashboard-clean .qp-dashboard-title-group p{white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-size: 12px !important;}
.qp-dashboard-clean .qp-dashboard-top-actions{grid-column: 3 !important;
    justify-self: end !important;
    margin-left: 0 !important;
    max-width: min(42vw, 230px) !important;
    overflow-x: auto;
    scrollbar-width: none;}
.qp-dashboard-clean .qp-dashboard-top-actions::-webkit-scrollbar{display: none;}
.qp-dashboard-clean .qp-dashboard-top-actions:empty{display: none !important;}
.qp-dashboard-clean .qp-dashboard-main{padding-top: 0 !important;}
.qp-dashboard-clean .qp-dashboard-content,
  .qp-library-content-shell{padding: 16px 12px 32px !important;}
.qp-dashboard-clean .qp-dashboard-sidebar{position: fixed !important;
    left: 0 !important;
    right: auto !important;
    top: 0 !important;
    bottom: 0 !important;
    width: min(86vw, 330px) !important;
    max-width: 330px !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    padding: 16px 14px 18px !important;
    border-radius: 0 28px 28px 0 !important;
    border-right: 1px solid rgba(148, 163, 184, .24) !important;
    background: #ffffff !important;
    box-shadow: 24px 0 60px rgba(15, 23, 42, .22) !important;
    display: grid !important;
    grid-template-rows: auto auto 1fr !important;
    align-items: start !important;
    justify-content: stretch !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    z-index: 95 !important;
    transform: translateX(-112%) !important;
    opacity: .98;
    visibility: hidden;
    pointer-events: none;
    transition: transform .22s ease, visibility .22s ease;
    -webkit-overflow-scrolling: touch;}
.qp-dashboard-clean .qp-dashboard-sidebar .qp-dashboard-logo{display: inline-flex !important;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    margin: 0 0 8px;
    padding: 8px 10px;
    color: var(--qp-style-accent, #46178f) !important;
    font-size: 22px;
    font-weight: 1000;
    text-decoration: none;}
.qp-dashboard-clean .qp-space-chip{display: flex !important;
    margin: 0 0 10px !important;
    min-height: 56px !important;
    border-radius: 18px !important;}
.qp-dashboard-clean .qp-space-chip[style*="display:none"],
  .qp-dashboard-clean .qp-space-chip[style*="display: none"],
  .qp-dashboard-clean .qp-space-chip[hidden]{display: none !important;}
.qp-dashboard-clean .qp-dashboard-nav{display: grid !important;
    grid-auto-rows: minmax(48px, auto) !important;
    gap: 7px !important;
    width: 100% !important;
    overflow: visible !important;
    padding: 4px 0 16px !important;
    scrollbar-width: thin;}
.qp-dashboard-clean .qp-dashboard-nav a,
  .qp-dashboard-clean .qp-dashboard-side-bottom a{display: flex !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    align-items: center !important;
    min-width: 0 !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 13px !important;
    gap: 12px !important;
    border-radius: 16px !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    text-align: left !important;
    white-space: normal !important;}
.qp-dashboard-clean .qp-dashboard-nav a[style*="display:none"],
  .qp-dashboard-clean .qp-dashboard-nav a[style*="display: none"],
  .qp-dashboard-clean .qp-dashboard-nav a[hidden]{display: none !important;}
}
@media (max-width: 520px){
.qp-dashboard-clean .qp-dashboard-topbar{grid-template-columns: auto minmax(0, 1fr) !important;}
.qp-dashboard-clean .qp-dashboard-top-actions{grid-column: 1 / -1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;}
.qp-dashboard-clean .qp-dashboard-top-actions .qp-btn,
  .qp-dashboard-clean .qp-dashboard-top-actions a.qp-btn,
  .qp-dashboard-clean .qp-top-space-chip{width: 100%;
    justify-content: center;}
}
:root{--qp-style-accent: #5b21b6;
  --qp-purple: #5b21b6;
  --qp-purple-dark: #43168c;
  --qp-blue: #1d4ed8;
  --qp-green: #15803d;
  --qp-text: #171326;
  --qp-muted: #625d70;
  --qp-border: #e7e3ee;
  --qp-surface: #ffffff;
  --qp-page: #f7f7fc;}
.qp-dashboard-clean,
.qp-home-dashboard-body{background: var(--qp-page) !important;}
.qp-dashboard-clean .qp-dashboard-main{background: var(--qp-page) !important;}
.qp-btn.primary,
button.qp-btn.primary,
a.qp-btn.primary{border-color: #5b21b6 !important;
  background: #5b21b6 !important;
  color: #ffffff !important;}
.qp-btn.primary:hover,
button.qp-btn.primary:hover,
a.qp-btn.primary:hover{border-color: #43168c !important;
  background: #43168c !important;}
.qp-btn.success,
button.qp-btn.success,
a.qp-btn.success{border-color: #15803d !important;
  background: #15803d !important;
  color: #ffffff !important;}
.qp-dashboard-clean .qp-dashboard-nav .qp-nav-icon{display: grid !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  margin: 0 !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .08) !important;
  color: inherit !important;
  font-size: 21px !important;
  line-height: 1 !important;}
.qp-dashboard-clean .qp-dashboard-nav .qp-nav-label{width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  line-height: 1.2 !important;}
@media (min-width: 981px){
.qp-dashboard-clean .qp-dashboard-shell{grid-template-columns: 84px minmax(0, 1fr) !important;}
.qp-dashboard-clean .qp-dashboard-logo-icon{display: grid !important;
    width: 46px !important;
    height: 46px !important;
    place-items: center !important;
    border-radius: 14px !important;
    background: #5b21b6 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 1000 !important;}
.qp-dashboard-clean .qp-dashboard-nav{display: grid !important;
    grid-auto-rows: 48px !important;
    justify-items: center !important;
    width: 100% !important;
    gap: 7px !important;
    padding: 0 !important;
    overflow: visible !important;}
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link{position: relative !important;
    display: grid !important;
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 5px !important;
    place-items: center !important;
    border-radius: 14px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .74) !important;
    font-size: 0 !important;}
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link:hover{background: rgba(255, 255, 255, .11) !important;
    color: #ffffff !important;}
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link:focus-visible{outline: 3px solid #fbbf24 !important;
    outline-offset: 2px !important;
    box-shadow: none !important;}
}
@media (max-width: 980px){
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link:hover{background: rgba(255, 255, 255, .10) !important;
    color: #ffffff !important;}
.qp-dashboard-clean .qp-dashboard-nav .qp-nav-label{display: inline !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;}
}
:root{--qp-app-sidebar-width: 216px;}
.qp-topbar-brand{display: none !important;}
@media (min-width: 1181px){
.qp-dashboard-clean .qp-dashboard-shell{display: grid !important;
    grid-template-columns: var(--qp-app-sidebar-width) minmax(0, 1fr) !important;
    align-items: start !important;
    width: 100% !important;
    min-height: 100vh !important;
    overflow: visible !important;}
.qp-dashboard-clean .qp-dashboard-sidebar{position: sticky !important;
    inset: 0 auto auto 0 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: var(--qp-app-sidebar-width) !important;
    height: 100vh !important;
    min-height: 100vh !important;
    padding: 16px 12px !important;
    gap: 10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #17123b !important;
    box-shadow: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 60 !important;}
.qp-dashboard-clean .qp-dashboard-main{grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;}
.qp-dashboard-clean .qp-dashboard-topbar{position: sticky !important;
    inset: 0 auto auto 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    z-index: 50 !important;}
.qp-dashboard-clean .qp-dashboard-logo{display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 0 8px !important;
    padding: 6px 8px !important;
    gap: 10px !important;
    border-radius: 16px !important;
    color: #ffffff !important;
    font-size: 21px !important;
    font-weight: 1000 !important;
    text-decoration: none !important;}
.qp-dashboard-clean .qp-dashboard-logo:hover,
  .qp-dashboard-clean .qp-dashboard-logo.active{background: rgba(255, 255, 255, .10) !important;}
.qp-dashboard-clean .qp-dashboard-logo-icon{display: grid !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    place-items: center !important;
    border-radius: 13px !important;
    background: #5b21b6 !important;
    color: #ffffff !important;
    font-size: 21px !important;}
.qp-dashboard-clean .qp-dashboard-logo > span:last-child,
  .qp-dashboard-clean .qp-dashboard-logo-title{display: inline-flex !important;
    align-items: baseline !important;
    color: #ffffff !important;
    font-size: 21px !important;
    line-height: 1 !important;}
.qp-dashboard-clean .qp-dashboard-nav{display: grid !important;
    grid-auto-rows: 48px !important;
    justify-items: stretch !important;
    width: 100% !important;
    gap: 7px !important;
    padding: 0 !important;
    overflow: visible !important;}
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link{display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 5px 8px !important;
    gap: 10px !important;
    border-radius: 14px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .78) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;}
.qp-dashboard-clean .qp-dashboard-nav .qp-nav-label{position: static !important;
    display: inline !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: auto !important;
    color: inherit !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;}
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link:hover{background: rgba(255, 255, 255, .10) !important;
    color: #ffffff !important;}
}
@media (max-width: 1180px){
body.qp-has-mobile-nav{overflow-x: hidden !important;}
body.qp-mobile-nav-open{overflow: hidden !important; touch-action: none;}
.qp-dashboard-clean .qp-dashboard-shell{display: block !important;
    width: 100% !important;
    overflow-x: clip !important;}
.qp-dashboard-clean .qp-dashboard-main{width: 100% !important;
    margin: 0 !important;}
.qp-dashboard-clean .qp-dashboard-sidebar{position: fixed !important;
    inset: 0 auto 0 0 !important;
    width: min(86vw, 310px) !important;
    max-width: 310px !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    padding: 16px 14px 18px !important;
    border: 0 !important;
    border-radius: 0 26px 26px 0 !important;
    background: #17123b !important;
    box-shadow: 24px 0 60px rgba(15, 23, 42, .28) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: translateX(-112%) !important;
    visibility: hidden !important;
    opacity: 1 !important;
    pointer-events: none !important;
    z-index: 110 !important;
    transition: transform .2s ease, visibility .2s ease !important;}
body.qp-mobile-nav-open.qp-dashboard-clean .qp-dashboard-sidebar{transform: translateX(0) !important;
    visibility: visible !important;
    pointer-events: auto !important;}
.qp-dashboard-clean .qp-dashboard-logo{display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 0 10px !important;
    padding: 6px 8px !important;
    gap: 10px !important;
    color: #ffffff !important;
    font-size: 21px !important;}
.qp-dashboard-clean .qp-dashboard-logo > span:last-child,
  .qp-dashboard-clean .qp-dashboard-logo-title{display: inline-flex !important;
    color: #ffffff !important;
    font-size: 21px !important;}
.qp-dashboard-clean .qp-dashboard-nav{display: grid !important;
    grid-auto-rows: minmax(48px, auto) !important;
    gap: 7px !important;
    width: 100% !important;
    padding: 0 0 14px !important;}
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link{display: flex !important;
    width: 100% !important;
    min-height: 48px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 5px 8px !important;
    gap: 10px !important;
    color: rgba(255, 255, 255, .80) !important;
    font-size: 15px !important;}
.qp-mobile-menu-btn{display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;}
.qp-mobile-nav-backdrop{position: fixed !important;
    inset: 0 !important;
    z-index: 105 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: rgba(15, 12, 31, .52) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;}
body.qp-mobile-nav-open .qp-mobile-nav-backdrop{opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;}
}
.qp-save-location-card{display:grid; gap:14px; max-height:calc(100dvh - 24px); overflow-y:auto; padding:24px; border:1px solid rgba(124,58,237,.18); border-radius:20px; background:#fff; box-shadow:0 34px 100px rgba(15,23,42,.38);}
.qp-save-location-card h2,.qp-save-location-card p{margin:0;}
.qp-save-location-card p{color:#64748b;}
.qp-save-location-card label{display:grid; gap:6px;}
.qp-save-location-card label>span{font-size:.75rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; color:#64748b;}
html[data-theme="dark"] .qp-save-location-card{background:#111827; color:#e5e7eb;}
@media (max-width:700px){
.qp-save-location-card{max-height:calc(100dvh - 16px); padding:18px; border-radius:16px;}
}
html[data-theme="light"]{color-scheme: light;}
body.qp-minimal-ui{-webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;}
.qp-dashboard-clean,
.qp-home-dashboard-body{background:
    radial-gradient(circle at 8% 0%, rgba(109, 40, 217, .10), transparent 32%),
    radial-gradient(circle at 100% 12%, rgba(37, 99, 235, .08), transparent 28%),
    #f7f8fc;}
:where(.qp-dashboard-shell, .qp-dashboard-main, .qp-dashboard-content, .qp-dashboard-topbar, .qp-dashboard-settings,
  .qp-card, .qp-game-card, .qp-profile-panel, .qp-settings-card, .qp-admin-card,
  .qp-library-browser, .qp-kahoot-card, .qp-dashboard-hero-simple, .qp-server-hero, .qp-college-layout){min-width: 0;}
:where(.qp-dashboard-content, .qp-dashboard-settings, .qp-card, .qp-profile-panel, .qp-settings-card,
  .qp-admin-card, .qp-library-browser, .qp-kahoot-card, .qp-server-hero, .qp-college-card, .qp-course-node, .qp-subject-node){overflow-wrap: anywhere;
  word-break: normal;}
:where(.qp-dashboard-title-group h1, .qp-dashboard-title-group p, .qp-section-title-row h2, .qp-section-title-row p,
  .qp-card h1, .qp-card h2, .qp-card h3, .qp-profile-panel h2, .qp-profile-panel h3,
  .qp-muted, .qp-pill, .qp-summary-badge, .qp-space-chip, .qp-top-space-chip, .qp-account-chip b,
  .qp-account-chip em, td, th, label, small, em, b){overflow-wrap: anywhere;}
.qp-dashboard-topbar{align-items: center;
  gap: 12px;}
.qp-dashboard-title-group{min-width: 0;}
.qp-dashboard-title-group h1{line-height: 1.05;
  letter-spacing: -.03em;}
.qp-dashboard-top-actions,
.qp-actions,
.qp-admin-toolbar,
.qp-question-bank-actions,
.qp-settings-profile-actions,
.qp-library-actions,
.qp-link-row{min-width: 0;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;}
.qp-btn,
button.qp-btn,
a.qp-btn{display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  max-width: 100%;
  line-height: 1.15;
  white-space: normal;
  text-align: center;}
.qp-btn.small,
button.qp-btn.small,
a.qp-btn.small{min-height: 38px;}
.qp-input,
.qp-select,
.qp-textarea,
input.qp-input,
select.qp-select,
textarea.qp-textarea{min-width: 0;
  max-width: 100%;
  min-height: 44px;}
:where(.qp-btn, button, a, input, select, textarea, summary):focus-visible{outline: 3px solid rgba(37, 99, 235, .34);
  outline-offset: 3px;
  box-shadow: 0 0 0 5px rgba(37, 99, 235, .10);}
.qp-toast{width: min(92vw, 520px);
  text-align: center;}
.qp-empty{line-height: 1.45;}
img,
video,
canvas,
svg{max-width: 100%;}
@media (max-width: 900px){
.qp-dashboard-content{padding-inline: clamp(10px, 3vw, 18px);}
.qp-dashboard-topbar{border-radius: 0 0 22px 22px;}
.qp-dashboard-title-group h1{font-size: clamp(26px, 7vw, 38px);}
.qp-dashboard-title-group p{font-size: 14px;
    line-height: 1.35;}
}
@media (max-width: 760px){
.qp-dashboard-shell{width: 100%;
    overflow-x: clip;}
.qp-dashboard-main{width: 100%;}
.qp-dashboard-topbar{display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;}
.qp-dashboard-topbar .qp-topbar-brand{grid-column: 1 / -1;
    justify-self: start;}
.qp-dashboard-title-group{grid-column: 1 / -1;}
.qp-dashboard-top-actions{grid-column: 1 / -1;
    width: 100%;}
.qp-dashboard-top-actions .qp-btn,
  .qp-admin-toolbar .qp-btn,
  .qp-question-bank-actions .qp-btn,
  .qp-settings-profile-actions .qp-btn,
  .qp-library-actions .qp-btn{flex: 1 1 150px;}
.qp-toast{bottom: max(12px, env(safe-area-inset-bottom));}
}
@media (max-width: 430px){
.qp-dashboard-content{padding-inline: 8px;}
.qp-dashboard-top-actions .qp-btn,
  .qp-admin-toolbar .qp-btn,
  .qp-question-bank-actions .qp-btn,
  .qp-settings-profile-actions .qp-btn,
  .qp-library-actions .qp-btn{flex-basis: 100%;}
.qp-pill,
  .qp-summary-badge,
  .qp-space-chip,
  .qp-top-space-chip{max-width: 100%;}
}
.qp-avatar-premium{position: relative;
  isolation: isolate;
  overflow: visible;
  color: transparent !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  font-size: 0 !important;
  transform-origin: 50% 72%;
  will-change: transform, filter;
  animation: qp-premium-generic 2.8s ease-in-out infinite;}
.qp-avatar-premium::after{position: absolute;
  z-index: 2;
  top: 2%;
  right: 1%;
  display: grid;
  width: 1.1em;
  height: 1.1em;
  place-items: center;
  border-radius: 50%;
  pointer-events: none;
  font-size: 15px;
  line-height: 1;}
@keyframes qp-premium-shadow{0%, 100% { transform: translateY(0); filter: drop-shadow(0 6px 8px rgba(76,29,149,.28)); }
  50% { transform: translateY(-4%); filter: drop-shadow(0 10px 14px rgba(76,29,149,.52)); }}
@keyframes qp-premium-crimson{0%, 100% { transform: translateY(0) rotate(-.5deg); filter: drop-shadow(0 6px 8px rgba(190,18,60,.28)); }
  50% { transform: translateY(-5%) rotate(.5deg); filter: drop-shadow(0 11px 16px rgba(225,29,72,.54)); }}
@keyframes qp-premium-void{0%, 100% { transform: translateY(0); filter: drop-shadow(0 5px 8px rgba(14,165,233,.25)); }
  50% { transform: translateY(-3%) scale(1.02); filter: drop-shadow(0 10px 15px rgba(14,165,233,.48)); }}
@keyframes qp-premium-diamond{0%, 100% { transform: translateY(0) scale(1); filter: drop-shadow(0 6px 9px rgba(37,99,235,.25)); }
  50% { transform: translateY(-4%) scale(1.025); filter: drop-shadow(0 11px 17px rgba(56,189,248,.56)); }}
@keyframes qp-premium-generic{0%, 100% { transform: translateY(0) scale(1); filter: drop-shadow(0 6px 9px rgba(91,33,182,.24)); }
  50% { transform: translateY(-4%) scale(1.018); filter: drop-shadow(0 11px 16px rgba(109,40,217,.42)); }}
@keyframes qp-premium-nova{0%, 100% { transform: translateY(0) rotate(-1deg); filter: drop-shadow(0 5px 7px rgba(109,40,217,.24)); }
  50% { transform: translateY(-6%) rotate(1deg); filter: drop-shadow(0 8px 12px rgba(109,40,217,.44)); }}
@keyframes qp-premium-orbit{0% { transform: translate(-10%, 16%) rotate(0deg) scale(.82); }
  50% { transform: translate(-155%, 225%) rotate(180deg) scale(1.08); }
  100% { transform: translate(-10%, 16%) rotate(360deg) scale(.82); }}
@keyframes qp-premium-storm{0%, 76%, 100% { transform: translateY(0) rotate(0); filter: drop-shadow(0 5px 7px rgba(2,132,199,.24)); }
  82% { transform: translateY(-4%) rotate(-3deg); filter: drop-shadow(0 8px 13px rgba(2,132,199,.55)); }
  88% { transform: translateY(-2%) rotate(3deg); }
  94% { transform: translateY(-4%) rotate(-1deg); }}
@keyframes qp-premium-flash{0%, 76%, 100% { opacity: .55; transform: scale(.8); }
  82%, 94% { opacity: 1; transform: scale(1.18); }}
@keyframes qp-premium-solar{0%, 100% { transform: translateY(0) scale(1); filter: drop-shadow(0 5px 8px rgba(245,158,11,.25)); }
  50% { transform: translateY(-4%) scale(1.035); filter: drop-shadow(0 9px 15px rgba(245,158,11,.52)); }}
@keyframes qp-premium-star{0%, 100% { transform: rotate(-12deg) scale(.82); opacity: .72; }
  50% { transform: rotate(12deg) scale(1.14); opacity: 1; }}
@media (prefers-reduced-motion: reduce){
.qp-avatar-premium,
  .qp-avatar-premium::after{animation: none !important;}
}
.qp-shop-gift-notice{position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(25, 10, 53, .62);
  backdrop-filter: blur(8px);}
.qp-shop-gift-notice section{position: relative;
  width: min(430px, 100%);
  overflow: hidden;
  padding: 36px 28px 30px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 28px;
  color: #fff;
  background: radial-gradient(circle at 50% 0, #a78bfa, transparent 38%), linear-gradient(145deg, #6d28d9, #312e81);
  box-shadow: 0 30px 90px rgba(19,7,45,.45);
  text-align: center;}
.qp-shop-gift-notice section > button{position: absolute; top: 12px; right: 13px; width: 36px; height: 36px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.15); font-size: 24px; cursor: pointer;}
.qp-shop-gift-spark{position: absolute; left: 20%; top: 28%; color: #fde68a; font-size: 32px;}
.qp-shop-gift-coin{font-size: 92px; filter: drop-shadow(0 14px 14px rgba(28,9,67,.35));}
.qp-shop-gift-notice strong{display: block; margin-top: -5px; font-size: 42px;}
.qp-shop-gift-notice p{margin: 10px auto 22px; color: #ede9fe; font-weight: 750;}
.qp-shop-gift-notice a{display: inline-flex; min-height: 43px; align-items: center; padding: 9px 18px; border-radius: 11px; color: #5b21b6; background: #fff; font-weight: 950; text-decoration: none;}
.qp-live-player-title{max-width: 100%;
  overflow: hidden;
  color: #fbbf24;
  font-size: 12px;
  font-weight: 950;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;}
@media (min-width: 1181px){
.qp-dashboard-clean .qp-dashboard-shell{grid-template-columns: var(--qp-app-sidebar-width, 216px) minmax(0, 1fr) !important;}
.qp-dashboard-clean .qp-dashboard-sidebar{position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: var(--qp-app-sidebar-width, 216px) !important;
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: 100vh !important;
    transition: width .12s ease !important;}
.qp-dashboard-clean .qp-dashboard-main{grid-column: 2 !important;}
body.qp-sidebar-collapsed .qp-dashboard-logo-icon,
  body.qp-sidebar-collapsed .qp-dashboard-nav .qp-nav-icon{margin-inline: auto !important;}
}
.qp-sidebar-collapse-btn{width: 100%;
  min-height: 34px;
  border: 0;
  border-radius: 12px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  cursor: pointer;
  font-size: 24px;
  font-weight: 1000;
  line-height: 1;
  transition: background .1s ease, transform .1s ease;}
.qp-sidebar-collapse-btn:hover{background: rgba(255, 255, 255, .14);}
@media (max-width: 1180px){
.qp-sidebar-collapse-btn{display: none !important;}
}
.qp-dashboard-nav a.qp-nav-link,
.qp-dashboard-clean .qp-dashboard-nav a.qp-nav-link,
.qp-dashboard-sidebar,
.qp-dashboard-topbar{transition-duration: .1s !important;}
body.qp-high-performance *,
body.qp-high-performance *::before,
body.qp-high-performance *::after{animation-duration: .001ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: .001ms !important;
  scroll-behavior: auto !important;}
@keyframes qp-library-skeleton{to { background-position: -220% 0; }}
.qp-mobile-bottom-nav{display: none;}
.qp-mobile-bottom-toggle{display: none;}
@media (max-width: 700px){
body.qp-has-mobile-bottom-nav{--qp-mobile-bottom-nav-height: 78px;}
body.qp-has-mobile-bottom-nav .qp-mobile-menu-btn,
  body.qp-has-mobile-bottom-nav.qp-creator-with-app-nav #globalMenuBtn{display: none !important;}
body.qp-has-mobile-bottom-nav .qp-mobile-bottom-nav{position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 104;
    display: flex;
    align-items: stretch;
    gap: 4px;
    width: 100%;
    min-height: var(--qp-mobile-bottom-nav-height);
    margin: 0;
    padding: 6px max(8px, env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-right));
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
    background: rgba(255, 255, 255, .98);
    border-top: 1px solid rgba(124, 58, 237, .16);
    box-shadow: 0 -12px 30px rgba(15, 23, 42, .12);
    transition: transform .22s ease, opacity .18s ease, visibility .18s ease;}
body.qp-has-mobile-bottom-nav .qp-mobile-bottom-toggle{position: fixed;
    right: max(10px, env(safe-area-inset-right));
    bottom: calc(var(--qp-mobile-bottom-nav-height) + 5px + env(safe-area-inset-bottom));
    z-index: 105;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(124, 58, 237, .22);
    border-radius: 999px;
    background: color-mix(in srgb, var(--qp-style-surface) 68%, transparent);
    color: var(--qp-style-accent);
    font: inherit;
    font-size: 18px;
    font-weight: 950;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(15, 23, 42, .14);
    backdrop-filter: blur(8px);
    -webkit-tap-highlight-color: transparent;
    transition: bottom .22s ease, background-color .16s ease, opacity .16s ease;}
body.qp-has-mobile-bottom-nav .qp-mobile-bottom-toggle:focus-visible{outline: 3px solid rgba(124, 58, 237, .3);
    outline-offset: 2px;}
body.qp-has-mobile-bottom-nav.qp-mobile-bottom-nav-hidden .qp-mobile-bottom-nav{visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(calc(100% + 18px));}
body.qp-has-mobile-bottom-nav.qp-mobile-bottom-nav-hidden .qp-mobile-bottom-toggle{bottom: calc(8px + env(safe-area-inset-bottom));
    background: color-mix(in srgb, var(--qp-style-surface) 60%, transparent);
    opacity: .82;}
body.qp-has-mobile-bottom-nav .qp-mobile-bottom-nav::-webkit-scrollbar{display: none;}
.qp-mobile-bottom-link{flex: 0 0 76px;
    min-width: 76px;
    min-height: 60px;
    padding: 6px 5px;
    display: grid;
    grid-template-rows: 28px minmax(16px, auto);
    place-items: center;
    align-content: center;
    gap: 2px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: #5b6474;
    text-align: center;
    text-decoration: none;
    scroll-snap-align: center;
    -webkit-tap-highlight-color: transparent;}
.qp-mobile-bottom-link:hover,
  .qp-mobile-bottom-link:focus-visible{color: #4c1d95;
    background: #f5f3ff;}
.qp-mobile-bottom-link:focus-visible{outline: 3px solid rgba(124, 58, 237, .30);
    outline-offset: -3px;}
.qp-mobile-bottom-link.active{color: #ffffff;
    background: #5b21b6;
    border-color: #5b21b6;
    box-shadow: 0 7px 16px rgba(91, 33, 182, .25);}
.qp-mobile-bottom-icon{width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    font-size: 20px;
    line-height: 1;}
.qp-mobile-bottom-label{display: block;
    width: 100%;
    overflow: hidden;
    color: inherit;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;}
body.qp-has-mobile-bottom-nav .qp-dashboard-content{padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;}
body.qp-has-mobile-bottom-nav.qp-mobile-bottom-nav-hidden .qp-dashboard-content{padding-bottom: calc(48px + env(safe-area-inset-bottom)) !important;}
body.qp-has-mobile-bottom-nav .qp-toast{bottom: calc(92px + env(safe-area-inset-bottom));}
body.qp-has-mobile-bottom-nav.qp-mobile-bottom-nav-hidden .qp-toast{bottom: calc(48px + env(safe-area-inset-bottom));}
body.qp-creator-body .qp-mobile-bottom-toggle,
  body.qp-chat-keyboard-open .qp-mobile-bottom-toggle{display: none !important;}
}
html[data-qp-theme-active="1"]{--qp-bg: var(--qpt-background, #f5f3ff);
  --qp-bg-2: var(--qpt-background, #eef2ff);
  --qp-panel: var(--qpt-surface, #fff);
  --qp-panel-2: var(--qpt-surface-alt, #fafafa);
  --qp-text: var(--qpt-text, #111827);
  --qp-muted: var(--qpt-muted, #6b7280);
  --qp-border: var(--qpt-border, #d7dce8);
  --qp-soft: var(--qpt-border, #e5e7eb);
  --qp-purple: var(--qpt-primary, #6d28d9);
  --qp-purple-2: var(--qpt-primary, #8b5cf6);
  --qp-purple-3: color-mix(in srgb, var(--qpt-primary, #6d28d9) 11%, white);
  --qp-blue: var(--qpt-info, #2563eb);
  --qp-green: var(--qpt-success, #059669);
  --qp-yellow: var(--qpt-warning, #d97706);
  --qp-red: var(--qpt-danger, #dc2626);
  --qp-radius: var(--qpt-card-radius, 22px);
  --qp-shell-bg: var(--qpt-background, #f3f4f6);
  --qp-shell-surface: var(--qpt-surface, #fff);
  --qp-shell-surface-2: var(--qpt-surface-alt, #fbfbfe);
  --qp-shell-text: var(--qpt-text, #1f2937);
  --qp-shell-muted: var(--qpt-muted, #5f6675);
  --qp-shell-line: var(--qpt-border, rgba(15,23,42,.1));
  --qp-shell-primary: var(--qpt-primary, #5b21b6);
  --qp-shell-primary-2: var(--qpt-primary, #7c3aed);
  --qp-shell-primary-soft: color-mix(in srgb, var(--qpt-primary, #6d28d9) 11%, transparent);
  --qp-student-bg: var(--qpt-background, #f7f6fb);
  --qp-student-card: var(--qpt-surface, #fff);
  --qp-student-text: var(--qpt-text, #221f2e);
  --qp-student-muted: var(--qpt-muted, #736d7c);
  --qp-student-line: var(--qpt-border, #ebe8f2);
  --qp-student-purple: var(--qpt-primary, #6428f5);
  --qp-student-purple-dark: color-mix(in srgb, var(--qpt-primary, #6428f5) 82%, black);
  font-size: calc(16px * var(--qpt-font-scale, 1));}
html[data-qp-theme-active="1"] body:not(.qp-game-body){color: var(--qpt-text) !important;
  background: var(--qpt-background) !important;}
html[data-qp-theme-active="1"] body,
html[data-qp-theme-active="1"] button,
html[data-qp-theme-active="1"] input,
html[data-qp-theme-active="1"] select,
html[data-qp-theme-active="1"] textarea{font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;}
html[data-qp-font-family="system"] body{font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;}
html[data-qp-font-family="academic-serif"] h1,
html[data-qp-font-family="academic-serif"] h2,
html[data-qp-font-family="academic-serif"] h3{font-family: Georgia, Cambria, "Times New Roman", serif; letter-spacing: -.018em;}
html[data-qp-theme-active="1"] .qp-dashboard-sidebar,
html[data-qp-theme-active="1"] .qp-dashboard-topbar,
html[data-qp-theme-active="1"] .qp-topbar{border-color: var(--qpt-border) !important; background: var(--qpt-surface) !important; color: var(--qpt-text) !important;}
html[data-qp-theme-active="1"] .qp-dashboard-main,
html[data-qp-theme-active="1"] .qp-dashboard-content{background: var(--qpt-background) !important; color: var(--qpt-text) !important;}
html[data-qp-theme-active="1"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card,.qp-student-panel,.qp-student-row-card,.qp-settings-card,.qp-stat-card,.qp-shop-card,.qp-subject-card,.qp-library-card,.qp-grade-card,.qp-review-card,.qp-support-card){border-color: var(--qpt-border) !important;
  border-width: var(--qpt-border-width, 1px) !important;
  border-radius: var(--qpt-card-radius, 18px) !important;
  background: var(--qpt-surface) !important;
  color: var(--qpt-text) !important;}
html[data-qp-theme-active="1"] :is(.qp-muted,small,.qp-card p,.qp-profile-panel p){color: var(--qpt-muted);}
html[data-qp-theme-active="1"] :is(.qp-btn,button.qp-btn,.qp-input,.qp-select,.qp-textarea){border-radius: var(--qpt-control-radius, 12px) !important;}
html[data-qp-theme-active="1"] :is(.qp-input,.qp-select,.qp-textarea,input:not([type="checkbox"]):not([type="radio"]),select,textarea){border-color: var(--qpt-border); color: var(--qpt-text); background-color: var(--qpt-surface);}
html[data-qp-theme-active="1"] :is(.qp-input,.qp-select,.qp-textarea,input,select,textarea):focus{border-color: var(--qpt-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--qpt-primary) 18%, transparent);}
html[data-qp-theme-active="1"] :is(.qp-btn.primary,.qp-primary-btn,.qp-dashboard-primary-action){border-color: var(--qpt-primary) !important; color: var(--qpt-primary-text) !important; background: var(--qpt-primary) !important;}
html[data-qp-theme-active="1"] :is(.qp-btn.success,.qp-progress-fill,progress::-webkit-progress-value){background: var(--qpt-success) !important;}
html[data-qp-theme-active="1"] :is(.qp-btn.danger,.danger.qp-btn){background: var(--qpt-danger) !important;}
html[data-qp-theme-active="1"] :is(table,th,td,.qp-table-row){border-color: var(--qpt-border) !important;}
html[data-qp-theme-active="1"] thead,
html[data-qp-theme-active="1"] th{color: var(--qpt-muted) !important; background: var(--qpt-surface-alt) !important;}
html[data-qp-theme-active="1"] .qp-dashboard-nav a{color: var(--qpt-muted) !important;}
html[data-qp-theme-active="1"] .qp-dashboard-nav a.active,
html[data-qp-theme-active="1"] .qp-dashboard-nav a:hover{color: var(--qpt-primary) !important; background: color-mix(in srgb, var(--qpt-primary) 10%, var(--qpt-surface)) !important;}
html[data-qp-theme-active="1"] .qp-dashboard-nav .qp-nav-icon svg{display: block; width: 20px; height: 20px;}
html[data-qp-shadow="none"] :is(.qp-card,.qp-profile-panel,.qp-btn){box-shadow: none !important;}
html[data-qp-shadow="subtle"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card,.qp-student-panel){box-shadow: 0 8px 24px rgba(23,32,51,.06) !important;}
html[data-qp-shadow="medium"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card,.qp-student-panel){box-shadow: 0 16px 38px rgba(23,32,51,.12) !important;}
html[data-qp-density="compact"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card){padding: 14px !important;}
html[data-qp-density="spacious"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card){padding: 28px !important;}
html[data-qp-button-shape="pill"] .qp-btn{border-radius: 999px !important;}
html[data-qp-button-shape="square"] .qp-btn{border-radius: 4px !important;}
html[data-qp-button-style="outline"] .qp-btn.primary{color: var(--qpt-primary) !important; background: transparent !important;}
html[data-qp-button-style="soft"] .qp-btn.primary{color: var(--qpt-primary) !important; background: color-mix(in srgb, var(--qpt-primary) 13%, var(--qpt-surface)) !important;}
html[data-qp-card-style="flat"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card,.qp-student-panel){border-color: transparent !important; box-shadow: none !important;}
html[data-qp-card-style="outlined"] :is(.qp-card,.qp-profile-panel,.qp-dashboard-card,.qp-student-panel){box-shadow: none !important;}
html[data-qp-table-style="striped"] tbody tr:nth-child(even){background: var(--qpt-surface-alt) !important;}
html[data-qp-table-style="grid"] :is(th,td){border: var(--qpt-border-width, 1px) solid var(--qpt-border) !important;}
html[data-qp-input-style="filled"] :is(.qp-input,.qp-select,.qp-textarea,input,select,textarea){border-color: transparent; background: var(--qpt-surface-alt);}
html[data-qp-input-style="underlined"] :is(.qp-input,.qp-select,.qp-textarea,input,select,textarea){border-width: 0 0 var(--qpt-border-width, 1px); border-radius: 0 !important; box-shadow: none;}
html[data-qp-nav-style="filled"] .qp-dashboard-nav a.active{color: var(--qpt-primary-text) !important; background: var(--qpt-primary) !important;}
html[data-qp-nav-style="pill"] .qp-dashboard-nav a{border-radius: 999px !important;}
html[data-qp-progress-style="square"] :is(progress,.qp-progress,.qp-progress-fill){border-radius: 2px !important;}
html[data-qp-motion="reduced"]{scroll-behavior: auto !important;}
html[data-qp-motion="reduced"] :is(
  .qp-step,
  .qp-avatar-emoji,
  .qp-player-avatar,
  .qp-simple-avatar,
  .qp-boost,
  .qp-winner-card,
  .qp-winner-avatar,
  .qp-top10-theater,
  .qp-top10-card,
  .qp-top10-avatar,
  .qp-waiting-dots span,
  .qp-correct-reveal,
  .qp-reveal-answer.is-correct,
  .qp-map-correct-ring,
  .qp-lobby-player-avatar,
  .qp-hotspot-correct-area,
  .qp-rank-change,
  .qp-quiz-intro,
  .qp-avatar-premium
){animation: none !important;}
html[data-qp-motion="reduced"] :is(#hostApp > *, #playerApp > *){animation: none !important;}
.qp-theme-controls,.qp-theme-preview,.qp-theme-publish-panel,.qp-theme-history{min-width: 0; padding: 14px; border: 1px solid #dfe4e8; border-radius: 18px; background: #fff;}
.qp-theme-preview{display: grid; gap: 10px; overflow: hidden;}
.qp-message-notification-stack{position: fixed;
  z-index: 10020;
  top: max(18px, env(safe-area-inset-top));
  right: max(18px, env(safe-area-inset-right));
  width: min(390px, calc(100vw - 36px));
  display: grid;
  gap: 10px;
  pointer-events: none;}
.qp-message-notification{min-height: 82px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(109, 40, 217, .18);
  border-radius: 16px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 18px 48px rgba(20, 13, 48, .22), 0 2px 8px rgba(20, 13, 48, .08);
  opacity: 0;
  transform: translate3d(22px, -6px, 0) scale(.98);
  transition: opacity .18s ease, transform .22s cubic-bezier(.2, .8, .2, 1);
  pointer-events: auto;}
.qp-message-notification.is-visible{opacity: 1; transform: translate3d(0, 0, 0) scale(1);}
.qp-message-notification.is-leaving{opacity: 0; transform: translate3d(18px, 0, 0) scale(.98);}
.qp-message-notification-open{min-width: 0;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border: 0;
  padding: 14px 8px 14px 14px;
  background: transparent;
  color: #171329;
  text-align: left;
  cursor: pointer;}
.qp-message-notification-open:hover{background: #f8f5ff;}
.qp-message-notification-open:focus-visible,
.qp-message-notification-action:focus-visible{outline: 3px solid rgba(109, 40, 217, .28); outline-offset: -3px;}
.qp-message-notification-avatar{width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
  background: #eee8ff;
  font-size: 26px;}
.qp-message-notification-avatar img{width: 100%; height: 100%; object-fit: cover;}
.qp-message-notification-copy{min-width: 0; display: grid; gap: 4px;}
.qp-message-notification-copy strong,
.qp-message-notification-copy small{overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.qp-message-notification-copy strong{font-size: 15px; font-weight: 800;}
.qp-message-notification-copy small{color: #625b78; font-size: 13px; line-height: 1.35;}
.qp-message-notification-actions{display: flex;
  align-items: flex-start;
  gap: 2px;
  padding: 9px 9px 0 0;}
.qp-message-notification-action{width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #625b78;
  font-size: 16px;
  cursor: pointer;}
.qp-message-notification-action:hover{background: #eee8ff; color: #5520b7;}
@media (max-width: 700px){
.qp-message-notification-stack{top: max(10px, env(safe-area-inset-top));
    right: 10px;
    left: 10px;
    width: auto;}
.qp-message-notification{min-height: 74px; border-radius: 14px;}
.qp-message-notification-open{grid-template-columns: 44px minmax(0, 1fr); padding: 11px 6px 11px 11px;}
.qp-message-notification-avatar{width: 44px; height: 44px; font-size: 23px;}
.qp-message-notification-actions{padding-top: 7px; padding-right: 7px;}
}
@media (max-width: 700px){
.qp-dashboard-clean .qp-dashboard-top-actions{width: auto !important;
    justify-self: end !important;}
.qp-dashboard-clean .qp-dashboard-top-actions .qp-btn,
  .qp-dashboard-clean .qp-dashboard-top-actions a.qp-btn{width: auto !important;}
}
.qp-post-card{position: relative;
  overflow: hidden;
  border-radius: 18px;
  color: var(--ink, #f8fafc);
  background: linear-gradient(135deg, var(--from, #7c3aed), var(--to, #4f46e5));
  box-shadow: 0 22px 48px rgba(15, 23, 42, .3);}
.qp-post-card-glow{position: absolute;
  inset: -40% -20% auto -20%;
  height: 180%;
  background: radial-gradient(circle at 22% 0%, rgba(255, 255, 255, .38), transparent 55%);
  pointer-events: none;}
.qp-post-card-body{position: relative; padding: 22px 24px 24px;}
.qp-post-card-eyebrow{display: inline-block;
  margin-bottom: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .22);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;}
.qp-post-card h3{margin: 0 0 8px; font-size: 21px; font-weight: 900; line-height: 1.25;}
.qp-post-card p{margin: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  opacity: .95;
  /* An announcement is written with line breaks; they should survive. */
  white-space: pre-wrap;
  overflow-wrap: anywhere;}
.qp-post-popup{position: fixed;
  right: clamp(12px, 3vw, 26px);
  /* Clear of the floating chat launcher, which lives in the same corner. */
  bottom: clamp(84px, 12vh, 104px);
  z-index: 2300;
  width: min(380px, calc(100vw - 24px));
  transform: translateY(18px);
  opacity: 0;
  transition: transform .22s cubic-bezier(.2, .8, .3, 1), opacity .22s ease;}
.qp-post-popup.is-open{transform: translateY(0); opacity: 1;}
.qp-post-close{position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: inherit;
  background: rgba(255, 255, 255, .2);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;}
.qp-post-close:hover{background: rgba(255, 255, 255, .32);}
.qp-post-popup .qp-post-card .qp-post-got-it{margin-top: 16px;
  color: #0f172a;
  background: #ffffff;
  border-color: transparent;
  font-weight: 900;}
@media (prefers-reduced-motion: reduce){
.qp-post-popup{transition: none;}
}
.qp-organization-grace{margin: 0 0 16px;
  padding: 12px 16px;
  border: 1px solid #e8b44c;
  border-radius: 12px;
  background: #fff6df;
  color: #5c3d00;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;}
