*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;color:#17203a;background:#f8f9ff}.wrap{max-width:1160px;margin:auto;padding:0 22px}.nav{position:sticky;top:0;z-index:4;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid #e8e9f5}.navin{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-weight:950;text-decoration:none;color:#32236f;font-size:21px}.menu{display:flex;gap:16px;flex-wrap:wrap}.menu a{text-decoration:none;color:#544d70;font-weight:800;font-size:14px}.hero{padding:82px 0 64px;background:radial-gradient(circle at 15% 20%,#d6f8ff 0,transparent 33%),radial-gradient(circle at 88% 15%,#eadcff 0,transparent 36%),linear-gradient(180deg,#fff,#f9f7ff)}h1{font-size:clamp(42px,7vw,76px);line-height:.95;letter-spacing:-3px;margin:0 0 20px}.gradient{background:linear-gradient(90deg,#5b36f2,#009ed8);-webkit-background-clip:text;color:transparent}.hero p{font-size:20px;line-height:1.55;color:#5d647f;max-width:760px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.chip{background:#fff;border:1px solid #e6e4f7;border-radius:999px;padding:9px 12px;font-weight:800;font-size:13px}.btn{display:inline-block;border:0;border-radius:14px;padding:14px 18px;font-weight:900;text-decoration:none;cursor:pointer}.primary{background:linear-gradient(90deg,#5b36f2,#087ddb);color:#fff}.secondary{background:#ece9ff;color:#4c35bd}.section{padding:64px 0}.section h2{font-size:36px;letter-spacing:-1.2px;margin:0 0 12px}.lead{color:#69708b;line-height:1.65;max-width:800px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.card{background:#fff;border:1px solid #e8e7f3;border-radius:22px;padding:23px;box-shadow:0 15px 38px rgba(73,53,150,.07)}.lesson{position:relative;overflow:hidden}.lesson .n{font-size:12px;font-weight:900;color:#674df4}.lesson h3{margin:8px 0}.school{background:#21165c;color:#fff}.school .lead{color:#d9d4ff}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{background:#fff;border-radius:18px;padding:20px;color:#251b55}.stat b{display:block;font-size:28px}.panel{max-width:1000px;margin:30px auto;background:#fff;border:1px solid #e7e5f2;border-radius:22px;padding:24px}.input,select,textarea{width:100%;padding:14px;border:1px solid #d7d4e8;border-radius:13px;font:inherit;background:#fff}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.progress{height:12px;background:#ecebfd;border-radius:99px;overflow:hidden}.bar{height:100%;background:linear-gradient(90deg,#5b36f2,#00a6d9)}.badge{display:inline-block;padding:7px 11px;background:#ece9ff;color:#523ac5;border-radius:999px;font-weight:900;font-size:12px}.mission{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid #eeeaf8}.footer{background:#160f3d;color:#ded9ff;padding:36px 0}.admin{max-width:1100px;margin:30px auto;padding:0 20px}.tablewrap{overflow:auto;background:#fff;border:1px solid #e6e3f1;border-radius:16px}table{width:100%;border-collapse:collapse;min-width:800px}th,td{padding:12px;border-bottom:1px solid #f0edf7;text-align:left;font-size:14px}@media(max-width:800px){.grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.menu{display:none}.two{grid-template-columns:1fr}.hero{padding-top:54px}}
/* Ultimate learning platform extensions */
.shell,.studentdash{max-width:1450px;margin:auto;padding:28px}.dashhead,.sectionhead,.actions,.inlineform{display:flex;align-items:center;gap:12px}.dashhead,.sectionhead{justify-content:space-between}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.stat{background:#fff;border:1px solid #e8e6ff;border-radius:20px;padding:18px}.stat b{display:block;font-size:30px}.stat span,small{display:block;color:#6d6a87}.teachgrid{display:grid;grid-template-columns:320px 1fr;gap:20px}.studentlink{display:block;padding:12px;border-radius:12px;text-decoration:none;color:inherit}.studentlink.active{background:#efefff}.panel .input{margin:6px 0}.wide{width:100%}.loginbox{max-width:460px;margin:8vh auto;background:white;padding:34px;border-radius:28px;box-shadow:0 25px 80px #5246c71c}.bigemoji{font-size:54px}.profilehero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#5c54e8,#27bdd0);color:white;border-radius:28px;padding:30px}.levelorb{width:125px;height:125px;border-radius:50%;display:grid;place-content:center;background:#ffffff22;border:2px solid #ffffff66;text-align:center}.levelorb b{font-size:34px}.missionmap{display:grid;gap:15px;margin-top:20px}.quest{display:grid;grid-template-columns:68px 1fr auto;gap:18px;align-items:center;padding:20px;border:1px solid #e8e6ff;border-radius:20px;background:#fff}.quest.done{background:#f2fff8}.quest.locked{opacity:.55}.questno{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#6258e8;color:white;font-size:24px;font-weight:900}.queststate{font-weight:900;font-size:12px;letter-spacing:.08em}.badgegrid{display:flex;gap:15px;flex-wrap:wrap}.award{width:150px;min-height:120px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#fff8df;border:1px solid #ffe39b;border-radius:18px;font-size:32px}.award b{font-size:14px;margin-top:8px}.btn.success{background:#dcfce7;color:#166534}.short{width:90px}.enhanced small{max-width:650px}.enrollment{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;padding:14px;border-top:1px solid #eee}@media(max-width:850px){.teachgrid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.quest{grid-template-columns:55px 1fr}.queststate{grid-column:2}.dashhead,.sectionhead{align-items:flex-start}}@media(max-width:560px){.shell,.studentdash{padding:12px}.stats{grid-template-columns:1fr 1fr}.dashhead,.sectionhead,.actions{flex-direction:column;align-items:stretch}.profilehero{align-items:flex-start}.levelorb{width:90px;height:90px}.enrollment{grid-template-columns:1fr}}

.quizoption{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #dfe5ff;border-radius:14px;margin:10px 0;background:#fff}.quizoption input{margin-top:5px}.quizresult{padding:16px;border-radius:14px;margin:18px 0}.successbox{background:#e9fff2}.errorbox{background:#fff0f1}


/* ===== BC KIDS ACADEMY school login redesign ===== */
.school-login-page{
  min-height:100vh;
  margin:0;
  background:
    radial-gradient(circle at 10% 10%,rgba(255,210,230,.72),transparent 24%),
    radial-gradient(circle at 88% 8%,rgba(191,236,255,.82),transparent 24%),
    radial-gradient(circle at 78% 86%,rgba(219,255,196,.62),transparent 25%),
    linear-gradient(135deg,#fbf9ff,#f4f7ff 52%,#fffaf2);
  color:#252044;
}
.school-login-shell{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:34px 20px;
}
.school-login-card{
  width:min(1140px,100%);
  min-height:680px;
  display:grid;
  grid-template-columns:1fr 1.05fr;
  overflow:hidden;
  border-radius:38px;
  background:#fff;
  border:1px solid rgba(107,85,212,.08);
  box-shadow:0 34px 100px rgba(83,61,162,.18);
}
.school-login-form{
  padding:46px 62px 54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.school-back-top{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-bottom:28px;
  padding:10px 14px;
  border-radius:12px;
  background:#f2efff;
  color:#654bd5;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.06em;
  text-decoration:none;
  transition:.2s;
}
.school-back-top:hover{
  transform:translateX(-2px);
  background:#e8e1ff;
}
.school-mini-brand{
  width:max-content;
  display:flex;
  align-items:center;
  gap:12px;
  color:#4f3abd;
  text-decoration:none;
  margin-bottom:28px;
}
.school-mini-brand>span{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,#fff1a8,#ffd7e8,#d9e7ff);
  font-size:27px;
}
.school-mini-brand b{display:block;font-size:16px}
.school-mini-brand small{
  display:block;
  font-size:10px;
  color:#8c83aa;
  font-weight:800;
  letter-spacing:.04em;
}
.school-login-badge{
  width:max-content;
  padding:7px 11px;
  border-radius:999px;
  background:#eee8ff;
  color:#6649dc;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.12em;
  margin-bottom:16px;
}
.school-login-form h1{
  margin:0;
  max-width:500px;
  font-size:clamp(48px,5.4vw,74px);
  line-height:.95;
  letter-spacing:-.055em;
}
.school-login-form h1 span{
  background:linear-gradient(90deg,#6c5ce7,#209be8);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.school-login-lead{
  margin:22px 0 30px;
  max-width:500px;
  color:#746c91;
  font-size:17px;
  line-height:1.65;
}
.school-login-fields{
  display:grid;
  gap:22px;
  max-width:520px;
}
.school-field-group{
  display:grid;
  gap:9px;
}
.school-field-group label{
  color:#5b5475;
  font-size:13px;
  font-weight:900;
}
.school-field{
  min-height:62px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 18px;
  border:1.5px solid #ddd7f0;
  border-radius:16px;
  background:#fff;
  transition:.2s;
}
.school-field:focus-within{
  border-color:#7a60e8;
  box-shadow:0 0 0 5px #f0ecff;
}
.school-field>span{font-size:20px}
.school-field input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  padding:18px 0;
  font:inherit;
  font-size:16px;
  color:#2d2748;
}
.school-field input::placeholder{color:#a19ab8}
.school-login-button{
  min-height:62px;
  border:0;
  border-radius:16px;
  background:linear-gradient(90deg,#633cff,#0f8ae5);
  color:#fff;
  font-size:14px;
  font-weight:1000;
  letter-spacing:.06em;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(91,66,225,.23);
  transition:.2s;
}
.school-login-button:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(91,66,225,.3);
}
.school-login-button b{
  margin-left:10px;
  font-size:18px;
}
.school-login-error{
  padding:13px 15px;
  border-radius:13px;
  background:#fff0f2;
  color:#b5324f;
  font-weight:800;
  font-size:13px;
}
.school-login-help{
  margin:22px 0 0;
  color:#978faa;
  font-size:13px;
}
.school-login-adventure{
  position:relative;
  overflow:hidden;
  min-height:680px;
  background:
    radial-gradient(circle at 70% 22%,rgba(255,255,255,.6),transparent 24%),
    linear-gradient(145deg,#6848df 0%,#735de7 42%,#2fa9df 100%);
}
.school-login-adventure:before,
.school-login-adventure:after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:2px dashed rgba(255,255,255,.18);
}
.school-login-adventure:before{width:520px;height:520px;right:-80px;top:50px}
.school-login-adventure:after{width:340px;height:340px;left:-120px;bottom:-100px}
.school-planet{
  position:absolute;
  left:50%;
  top:42%;
  transform:translate(-50%,-50%);
  width:190px;
  height:190px;
  display:grid;
  place-items:center;
  border-radius:45% 55% 50% 50%;
  background:linear-gradient(135deg,#fff2a8,#ffd5e8,#d7f1ff);
  box-shadow:0 28px 60px rgba(45,31,115,.28);
  z-index:3;
}
.school-planet span{font-size:88px}
.school-orbit{
  position:absolute;
  left:50%;
  top:42%;
  width:390px;
  height:220px;
  transform:translate(-50%,-50%) rotate(-10deg);
  border:3px solid rgba(255,255,255,.26);
  border-radius:50%;
}
.school-float{
  position:absolute;
  z-index:4;
  min-width:116px;
  padding:13px 14px;
  border-radius:18px;
  background:#fff;
  text-align:center;
  font-size:27px;
  box-shadow:0 16px 38px rgba(43,27,105,.18);
}
.school-float small{
  display:block;
  margin-top:3px;
  color:#675d82;
  font-size:10px;
  font-weight:900;
}
.school-float.f1{left:56px;top:110px;transform:rotate(-5deg)}
.school-float.f2{right:50px;top:145px;transform:rotate(5deg)}
.school-float.f3{right:78px;bottom:178px;transform:rotate(-3deg)}
.school-progress-card{
  position:absolute;
  left:50%;
  bottom:44px;
  z-index:5;
  width:min(390px,calc(100% - 70px));
  transform:translateX(-50%);
  padding:20px 22px;
  border-radius:22px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 45px rgba(44,28,106,.2);
}
.school-progress-card small{
  color:#7c719a;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.11em;
}
.school-progress-card strong{
  display:block;
  color:#342a63;
  font-size:24px;
  margin:4px 0 10px;
}
.school-progress-card>div{
  height:9px;
  overflow:hidden;
  border-radius:99px;
  background:#eeeaf9;
}
.school-progress-card>div span{
  display:block;
  width:58%;
  height:100%;
  border-radius:99px;
  background:linear-gradient(90deg,#714be8,#35b5e2);
}
.school-progress-card em{
  display:block;
  margin-top:8px;
  color:#847c99;
  font-size:11px;
  font-style:normal;
  font-weight:800;
}
.school-stars i{
  position:absolute;
  z-index:1;
  color:rgba(255,255,255,.72);
  font-style:normal;
}
.school-stars i:nth-child(1){left:55px;top:55px;font-size:26px}
.school-stars i:nth-child(2){right:75px;top:65px;font-size:30px}
.school-stars i:nth-child(3){left:100px;bottom:95px;font-size:18px}
.school-stars i:nth-child(4){right:120px;bottom:95px;font-size:24px}

@media(max-width:900px){
  .school-login-card{grid-template-columns:1fr}
  .school-login-adventure{min-height:430px}
  .school-login-form{padding:38px 34px 44px}
  .school-login-form h1{font-size:54px}
  .school-planet{width:150px;height:150px}
  .school-planet span{font-size:68px}
}
@media(max-width:560px){
  .school-login-shell{padding:14px}
  .school-login-card{border-radius:25px}
  .school-login-form{padding:28px 20px 34px}
  .school-login-form h1{font-size:44px}
  .school-login-fields{gap:18px}
  .school-field{min-height:58px}
  .school-login-adventure{min-height:360px}
  .school-float.f1{left:18px;top:65px}
  .school-float.f2{right:18px;top:88px}
  .school-float.f3{right:35px;bottom:120px}
  .school-progress-card{bottom:24px;width:calc(100% - 36px)}
}

/* ===== Rich lesson content ===== */
.quest-summary{font-size:15px;line-height:1.65;color:#625b7c}
.lesson-content{margin:18px 0 6px;border:1px solid #e3def7;border-radius:18px;background:#faf9ff;overflow:hidden}
.lesson-content>summary{cursor:pointer;padding:14px 16px;font-weight:950;color:#5942c9;list-style:none;background:linear-gradient(90deg,#f4f0ff,#f0faff)}
.lesson-content>summary::-webkit-details-marker{display:none}.lesson-body{padding:18px}.lesson-intro{font-size:15px;line-height:1.75;color:#514a69}.lesson-body h4{font-size:17px;margin:20px 0 8px}.lesson-body ul{margin:8px 0 14px;padding-left:22px}.lesson-body li{margin:9px 0;line-height:1.65;color:#4f4965}.remember-box,.practice-box{padding:16px 18px;border-radius:16px;margin:16px 0}.remember-box{background:#fff8df;border:1px solid #ffe59a}.practice-box{background:#eefdff;border:1px solid #bcebf2}.practice-box p{margin:7px 0 0}.test-note{padding:13px 15px;background:#eef8f2;border-radius:14px;color:#36664b;font-size:13px;line-height:1.55}.locked-note{font-size:13px;color:#8d86a2}.quiz-panel{max-width:900px}.quiz-question{border:1px solid #e5e1f5;border-radius:18px;padding:18px;margin:22px 0}.quiz-question legend{padding:0 8px;font-size:18px;font-weight:900;color:#30285b}.quiz-question legend span{color:#6c53df}.quiz-question .quizoption{transition:.15s}.quiz-question .quizoption:hover{border-color:#8c76ed;background:#f8f5ff}

/* ONLINE SELF-STUDY UPGRADE */
.read-box,.try-box,.parent-box,.check-box{padding:16px 18px;border-radius:16px;margin:16px 0;line-height:1.65}.read-box{background:#f7f5ff;border:1px solid #ddd5ff}.read-box p{margin:10px 0;color:#4f4965}.try-box{background:#fff5eb;border:1px solid #ffd9b4}.try-box ol{margin:8px 0 0;padding-left:23px}.parent-box{background:#f1fbf5;border:1px solid #ccebd8}.parent-box p{margin:7px 0 0}.check-box{background:#f4f9ff;border:1px solid #cfe2f7}.check-box ul{margin-bottom:0}.discount-admin{margin:20px 0}.discount-admin .discount-list{display:grid;gap:10px;margin-top:16px}.discount-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #e6e2f5;border-radius:16px;background:#fff}.discount-row code{font-size:16px;font-weight:900;color:#5942c9}.discount-row small{margin-top:3px}.discount-actions{display:flex;gap:8px;flex-wrap:wrap}.discount-actions form{margin:0}.discount-create{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr 1fr .8fr 1.4fr auto;gap:10px;align-items:end}.discount-create label{font-size:12px;font-weight:900;color:#5d5672}.discount-create .input{width:100%}@media(max-width:1100px){.discount-create{grid-template-columns:1fr 1fr 1fr 1fr}.discount-row{grid-template-columns:1fr 1fr}.discount-actions{grid-column:1/-1}}@media(max-width:650px){.discount-create{grid-template-columns:1fr}.discount-row{grid-template-columns:1fr}}

/* Mini test action belongs at the natural end of each open lesson. */
.lesson-test-action{display:flex;justify-content:flex-end;margin-top:14px}.lesson-test-action .btn{font-size:14px;padding:13px 20px;box-shadow:0 8px 22px rgba(92,84,232,.16)}@media(max-width:560px){.lesson-test-action{justify-content:stretch}.lesson-test-action .btn{width:100%;text-align:center}}

/* ===== Unified login for BC KIDS ACADEMY + student/university internships ===== */
.school-login-types{display:flex;gap:8px;flex-wrap:wrap;max-width:540px;margin:-12px 0 28px}
.school-login-types span{padding:9px 12px;border:1px solid #e4def7;border-radius:999px;background:#faf9ff;color:#574f70;font-size:12px;font-weight:900}
.school-login-adventure{background:radial-gradient(circle at 72% 18%,rgba(255,255,255,.26),transparent 24%),linear-gradient(145deg,#263766 0%,#4c55b9 48%,#198db6 100%)}
.school-planet{border-radius:34px;background:linear-gradient(135deg,#eef5ff,#d8efff,#e6e4ff)}
.school-login-badge{background:#eaf2ff;color:#2f59a6}
.school-progress-card strong{font-size:20px;line-height:1.3}
.intern-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}
.intern-summary-grid>div{padding:18px;border:1px solid #e5e7f2;border-radius:16px;background:#fafbff}
.intern-summary-grid small{font-size:12px;font-weight:800;color:#737991;margin-bottom:6px}
.intern-summary-grid strong{display:block;font-size:25px;color:#252d54}
@media(max-width:700px){.intern-summary-grid{grid-template-columns:1fr}.school-login-types{margin-bottom:22px}}

/* Expanded KIDS Academy lesson content */
.lesson-plan,.glossary-box,.examples-box,.bonus-box{padding:16px 18px;border-radius:16px;margin:16px 0;line-height:1.65}
.lesson-plan{background:#f2fbff;border:1px solid #ccecf7}
.lesson-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:10px}
.lesson-plan-grid span{display:block;background:#fff;border:1px solid #dfeff5;border-radius:10px;padding:9px 11px;color:#4f4965;font-size:13px}
.glossary-box{background:#f8f7ff;border:1px solid #ded8ff}
.glossary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.glossary-grid>div{background:#fff;border:1px solid #e8e4ff;border-radius:12px;padding:11px 12px}
.glossary-grid strong{display:block;color:#30285b;margin-bottom:3px}
.glossary-grid span{font-size:13px;color:#5d5672}
.examples-box{background:#fffaf0;border:1px solid #f7dfac}
.examples-box ul{margin-bottom:0}
.bonus-box{background:#f4f1ff;border:1px solid #d9cffd}
.bonus-box p{margin:7px 0 0}
@media(max-width:700px){.lesson-plan-grid,.glossary-grid{grid-template-columns:1fr}}

/* 2026-09 registration automation + compact mentor view */
.registrations-admin{margin:20px 0}.pending-count{padding:8px 12px;border-radius:999px;background:#fff6d9;color:#8a5a00;font-weight:900;white-space:nowrap}.pending-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.pending-card{border:1px solid #e6e2f5;border-radius:16px;padding:14px;background:#fff}.pending-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pending-top strong{font-size:16px}.pending-top>b{font-size:16px;color:#3f348d;white-space:nowrap}.pending-meta{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.pending-meta span{font-size:12px;padding:6px 8px;border-radius:9px;background:#f7f6fc;color:#59536e}.pending-card details{margin:8px 0;font-size:13px}.pending-card summary{cursor:pointer;font-weight:800;color:#6556bb}.pending-card details p{margin:8px 0;line-height:1.5;color:#625c74}.pending-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.pending-actions form{margin:0}.pending-actions .btn{padding:9px 12px;font-size:11px}.empty-pending{grid-column:1/-1;padding:18px;text-align:center;background:#fafbff;border-radius:14px;color:#73708a}.admin .mission.enhanced{padding:10px 12px;border-radius:12px;gap:10px}.admin .mission.enhanced b{font-size:13px}.admin .mission.enhanced small{font-size:11px;line-height:1.35;max-width:520px}.admin .mission.enhanced .btn{padding:8px 10px;font-size:11px}.admin .panel{padding:18px}.admin .enrollment{padding:9px 10px;font-size:12px}.admin .enrollment small{font-size:11px}@media(max-width:850px){.pending-grid{grid-template-columns:1fr}}

/* ===== Compact teacher student work panels ===== */
.admin-fold{padding:0!important;overflow:hidden}
.admin-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;padding:16px 18px;font-weight:950;color:#30285b;background:#fff}
.admin-fold>summary::-webkit-details-marker,.work-item>summary::-webkit-details-marker{display:none}
.admin-fold>summary:after{content:'＋';font-size:21px;color:#6c53df;margin-left:auto}
.admin-fold[open]>summary:after{content:'−'}
.admin-fold>summary>span{font-size:17px}.admin-fold>summary>small{font-size:12px;color:#817a95;font-weight:800;margin-left:auto}
.admin-fold-body{padding:0 18px 18px;border-top:1px solid #ece9f6}
.compact-work-list{display:grid;gap:8px;padding-top:12px}
.work-item{border:1px solid #e5e1f2;border-radius:13px;background:#fbfaff;overflow:hidden}
.work-item>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer;list-style:none;min-height:54px}
.work-main{display:flex;align-items:center;gap:11px;min-width:0}.work-main>div{min-width:0}.work-main b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;color:#342d55}.work-main small{display:block;margin-top:2px;font-size:11px;color:#88819a}
.work-no{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;background:#eeeaff;color:#6048cf;font-size:12px;font-weight:1000}.work-item.is-done .work-no{background:#e9f8ef;color:#27834d}
.work-preview-btn{flex:0 0 auto;padding:6px 9px;border-radius:8px;background:#f0edfb;color:#6253aa;font-size:10px;font-weight:1000;letter-spacing:.04em}
.work-item[open] .work-preview-btn{background:#e7e1ff}.work-preview{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:11px 12px 12px;border-top:1px solid #e8e4f3;background:#fff}.work-preview p{margin:0;max-width:720px;font-size:12px;line-height:1.5;color:#5f5871}.work-action{margin:0}.work-action .btn{padding:8px 11px;font-size:10px;white-space:nowrap}
@media(max-width:650px){.admin-fold>summary{padding:14px}.admin-fold>summary>small{display:none}.admin-fold-body{padding:0 12px 12px}.work-preview{grid-template-columns:1fr}.work-action .btn{width:100%}.work-preview-btn{display:none}}

/* =========================================================
   PLAYFUL LESSON SKIN — CHILD PROFILES ONLY
   A child profile has .badgegrid. PHP logic and stored data stay untouched.
   ========================================================= */
@supports selector(body:has(.studentdash .badgegrid)){
  body:has(.studentdash .badgegrid){
    background:radial-gradient(circle at 8% 12%,rgba(255,218,104,.24) 0 82px,transparent 83px),radial-gradient(circle at 92% 24%,rgba(100,216,255,.18) 0 105px,transparent 106px),linear-gradient(180deg,#eefaff 0%,#f8f3ff 44%,#fffaf0 100%);
    color:#342c57;
  }
  body:has(.studentdash .badgegrid) .nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.9);border-bottom:2px solid rgba(119,87,231,.13);box-shadow:0 10px 28px rgba(66,46,144,.08);backdrop-filter:blur(16px)}
  body:has(.studentdash .badgegrid) .nav .brand{color:#5540c6;font-weight:1000}
  body:has(.studentdash .badgegrid) .nav .menu a{padding:9px 12px;border-radius:999px;color:#50456f;font-weight:900}
  body:has(.studentdash .badgegrid) .nav .menu a:hover{background:#efeaff;color:#5b42d4}
  .studentdash:has(.badgegrid){max-width:1220px;padding-top:34px;padding-bottom:54px;position:relative}
  .studentdash:has(.badgegrid) .profilehero{position:relative;overflow:hidden;min-height:224px;padding:34px 38px;border:3px solid rgba(255,255,255,.8);border-radius:34px;background:radial-gradient(circle at 89% 22%,rgba(255,235,113,.95) 0 15px,transparent 16px),linear-gradient(135deg,#694ee5 0%,#8d64f7 45%,#22b7dc 100%);box-shadow:0 20px 46px rgba(84,61,188,.25)}
  .studentdash:has(.badgegrid) .profilehero::before{content:"✦  ✧  ★";position:absolute;top:24px;right:33px;color:rgba(255,255,255,.84);font-size:24px;letter-spacing:9px;transform:rotate(8deg)}
  .studentdash:has(.badgegrid) .profilehero>div{position:relative;z-index:1}
  .studentdash:has(.badgegrid) .profilehero h1{margin:8px 0 4px;font-size:clamp(30px,4vw,46px);letter-spacing:-.04em}
  .studentdash:has(.badgegrid) .profilehero p{max-width:650px;font-size:17px;line-height:1.6}
  .studentdash:has(.badgegrid) .profilehero .badge{display:inline-flex;padding:6px 11px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(25,18,104,.18);color:#fff;font-weight:1000;letter-spacing:.05em;font-size:11px}
  .studentdash:has(.badgegrid) .levelorb{position:relative;width:142px;height:142px;background:linear-gradient(145deg,#fff9b8,#ffe46f 52%,#ffb655);border:8px solid rgba(255,255,255,.88);box-shadow:0 16px 34px rgba(36,38,130,.24);color:#51338a;transform:rotate(-6deg)}
  .studentdash:has(.badgegrid) .levelorb::before{content:"⭐";position:absolute;top:-19px;right:-17px;font-size:33px;filter:drop-shadow(0 4px 3px rgba(65,37,142,.22));transform:rotate(12deg)}
  .studentdash:has(.badgegrid) .levelorb b{font-size:39px;line-height:1}
  .studentdash:has(.badgegrid) .levelorb span{font-weight:1000;letter-spacing:.12em;font-size:12px}
  .studentdash:has(.badgegrid) .stats{gap:16px;margin:23px 0}
  .studentdash:has(.badgegrid) .stat{position:relative;overflow:hidden;min-height:120px;padding:22px 20px;border:2px solid rgba(112,84,222,.09);border-radius:24px;box-shadow:0 12px 26px rgba(80,58,150,.08)}
  .studentdash:has(.badgegrid) .stat:nth-child(1){background:#efe9ff}.studentdash:has(.badgegrid) .stat:nth-child(2){background:#e6f9ff}.studentdash:has(.badgegrid) .stat:nth-child(3){background:#fff2d7}.studentdash:has(.badgegrid) .stat:nth-child(4){background:#e7fbe9}
  .studentdash:has(.badgegrid) .stat b{color:#47348c;font-size:34px;line-height:1.15}.studentdash:has(.badgegrid) .stat span{color:#635a79;font-weight:900;font-size:13px}
  .studentdash:has(.badgegrid) .panel{padding:28px;border:2px solid rgba(116,91,210,.09);border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 16px 38px rgba(72,52,138,.08)}
  .studentdash:has(.badgegrid) .panel h2{margin:0 0 18px;color:#40306f;font-size:clamp(25px,3vw,34px);letter-spacing:-.035em}
  .studentdash:has(.badgegrid) .progress{height:16px;overflow:hidden;border:0;border-radius:999px;background:#eeeafe;box-shadow:inset 0 2px 5px rgba(82,55,168,.11)}
  .studentdash:has(.badgegrid) .progress .bar{border-radius:inherit;background:linear-gradient(90deg,#7a54ed,#bf63ec 35%,#25bade 67%,#47cc76);box-shadow:0 0 18px rgba(86,77,237,.42)}
  .studentdash:has(.badgegrid) .missionmap{gap:14px;margin-top:23px}
  .studentdash:has(.badgegrid) .quest{position:relative;overflow:hidden;gap:19px;padding:20px;border:2px solid #ebe6fb;border-radius:24px;box-shadow:0 9px 20px rgba(69,48,133,.06);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
  .studentdash:has(.badgegrid) .quest::after{content:"";position:absolute;width:95px;height:95px;right:-32px;top:-37px;border-radius:50%;background:#eee7ff;opacity:.62}.studentdash:has(.badgegrid) .quest:nth-child(3n+2)::after{background:#daf6ff}.studentdash:has(.badgegrid) .quest:nth-child(3n)::after{background:#fff0c8}
  .studentdash:has(.badgegrid) .quest:hover{transform:translateY(-3px);border-color:#c9bbfb;box-shadow:0 16px 30px rgba(72,51,145,.12)}
  .studentdash:has(.badgegrid) .quest.done{background:linear-gradient(135deg,#edfff3,#fbfffc);border-color:#bceccb}.studentdash:has(.badgegrid) .quest.locked{opacity:.62;background:#faf9ff}
  .studentdash:has(.badgegrid) .questno{width:62px;height:62px;border:4px solid #fff;border-radius:19px;background:linear-gradient(135deg,#7550e7,#a563f3);box-shadow:0 8px 16px rgba(98,68,207,.25);transform:rotate(-4deg)}.studentdash:has(.badgegrid) .quest.done .questno{background:linear-gradient(135deg,#35b96d,#87de64)}
  .studentdash:has(.badgegrid) .quest h3{margin:6px 0;color:#3f3267;font-size:21px}.studentdash:has(.badgegrid) .quest .badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f1edff;color:#6245ce;font-size:11px;font-weight:1000}.studentdash:has(.badgegrid) .queststate{position:relative;z-index:1;padding:7px 10px;border-radius:999px;background:#f2edff;color:#684dd2}.studentdash:has(.badgegrid) .quest.done .queststate{background:#dff8e8;color:#23804a}
  .studentdash:has(.badgegrid) .lesson-content{margin-top:14px;border:1px solid #e6dfff;border-radius:17px;background:#fbfaff;overflow:hidden}.studentdash:has(.badgegrid) .lesson-content>summary{padding:13px 16px;background:linear-gradient(90deg,#f0ebff,#eaf8ff);color:#523cab;font-weight:1000}.studentdash:has(.badgegrid) .lesson-body{padding:21px;background:linear-gradient(180deg,#fff 0%,#fcfbff 100%)}
  .studentdash:has(.badgegrid) .lesson-intro{margin:0 0 18px;padding:17px 18px;border:1px solid #cdeef9;border-radius:18px;background:linear-gradient(135deg,#e8f9ff,#f4fbff);color:#34546d;font-size:16px;font-weight:700;line-height:1.75}
  .studentdash:has(.badgegrid) .lesson-body h4{margin:25px 0 11px;color:#453379;font-size:20px}
  .studentdash:has(.badgegrid) .lesson-plan,.studentdash:has(.badgegrid) .glossary-box,.studentdash:has(.badgegrid) .examples-box,.studentdash:has(.badgegrid) .remember-box,.studentdash:has(.badgegrid) .try-box,.studentdash:has(.badgegrid) .practice-box,.studentdash:has(.badgegrid) .bonus-box,.studentdash:has(.badgegrid) .parent-box,.studentdash:has(.badgegrid) .check-box{padding:18px 19px;border-width:2px;border-radius:20px;box-shadow:0 7px 16px rgba(69,48,133,.045)}
  .studentdash:has(.badgegrid) .lesson-plan>b,.studentdash:has(.badgegrid) .glossary-box>b,.studentdash:has(.badgegrid) .examples-box>b,.studentdash:has(.badgegrid) .remember-box>b,.studentdash:has(.badgegrid) .try-box>b,.studentdash:has(.badgegrid) .practice-box>b,.studentdash:has(.badgegrid) .bonus-box>b,.studentdash:has(.badgegrid) .parent-box>b,.studentdash:has(.badgegrid) .check-box>b{display:block;margin-bottom:10px;color:#42316f;font-size:16px}
  .studentdash:has(.badgegrid) .lesson-plan{border-color:#d8ceff;background:linear-gradient(135deg,#f5f1ff,#fbfaff)}.studentdash:has(.badgegrid) .lesson-plan-grid{gap:10px}.studentdash:has(.badgegrid) .lesson-plan-grid span{min-height:62px;display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #e5ddff;border-radius:14px;background:#fff;color:#4d4664;font-weight:700}.studentdash:has(.badgegrid) .lesson-plan-grid span strong{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:10px;background:linear-gradient(135deg,#7552e9,#ac67ee);color:#fff;font-size:12px}
  .studentdash:has(.badgegrid) .read-box{margin:17px 0;padding:18px 19px;border:2px solid #cbeefa;border-radius:20px;background:#effaff}.studentdash:has(.badgegrid) .read-box>b{display:block;margin-bottom:8px;color:#255d84;font-size:16px}.studentdash:has(.badgegrid) .read-box p{margin:10px 0 0;padding:12px 13px;border-radius:13px;background:rgba(255,255,255,.9);color:#365267;line-height:1.72}
  .studentdash:has(.badgegrid) .glossary-box{border-color:#e0d5ff;background:#f8f5ff}.studentdash:has(.badgegrid) .glossary-grid{gap:10px}.studentdash:has(.badgegrid) .glossary-grid>div{min-height:78px;padding:13px;border:1px solid #e5dcff;border-radius:14px;background:#fff}.studentdash:has(.badgegrid) .glossary-grid strong{color:#5a41b5;font-size:15px}
  .studentdash:has(.badgegrid) .examples-box{border-color:#ffe1a2;background:#fff9e9}.studentdash:has(.badgegrid) .remember-box{border-color:#ffe28f;background:linear-gradient(135deg,#fff8d9,#fffdf4)}.studentdash:has(.badgegrid) .try-box{border:2px solid #c6e9ff;border-radius:20px;background:#edf9ff}.studentdash:has(.badgegrid) .try-box>b{color:#276888}.studentdash:has(.badgegrid) .try-box li::marker{font-weight:1000;color:#2b9ac9}.studentdash:has(.badgegrid) .practice-box{border-color:#bdebc8;background:linear-gradient(135deg,#eaffef,#f7fff7)}.studentdash:has(.badgegrid) .practice-box>b{color:#237b45}.studentdash:has(.badgegrid) .practice-box p{font-weight:750;color:#376b4b}.studentdash:has(.badgegrid) .bonus-box{border-color:#f0caef;background:linear-gradient(135deg,#fff0ff,#f9f0ff)}.studentdash:has(.badgegrid) .parent-box{border-color:#d7d4de;background:#f8f8fb}.studentdash:has(.badgegrid) .check-box{border-color:#bfdefa;background:#eef7ff}
  .studentdash:has(.badgegrid) .chips{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 4px}.studentdash:has(.badgegrid) .chip{padding:8px 11px;border:1px solid #d8ceff;border-radius:999px;background:#f3efff;color:#5d45be;font-size:12px;font-weight:900}.studentdash:has(.badgegrid) .test-note{margin:20px 0 0;padding:15px 17px;border:2px solid #bde8d0;border-radius:17px;background:#edfff4;color:#2c6b47;font-size:14px;font-weight:700}.studentdash:has(.badgegrid) .lesson-test-action .btn.primary{background:linear-gradient(135deg,#6850e7,#2bb7df);color:#fff;border-radius:14px;box-shadow:0 10px 20px rgba(82,65,218,.22)}
  .studentdash:has(.badgegrid) .badgegrid{gap:16px}.studentdash:has(.badgegrid) .award{width:168px;min-height:138px;padding:14px;border:2px solid #ffe190;border-radius:25px;background:linear-gradient(145deg,#fffbe7,#fff1b9);box-shadow:0 12px 24px rgba(176,128,25,.12);transform:rotate(-1deg)}.studentdash:has(.badgegrid) .award:nth-child(even){background:linear-gradient(145deg,#f5f0ff,#e4dcff);border-color:#d6c8ff;transform:rotate(1deg)}.studentdash:has(.badgegrid) .award b{color:#49337f;font-size:14px}
  @media(max-width:700px){.studentdash:has(.badgegrid){padding-top:18px;padding-bottom:35px}.studentdash:has(.badgegrid) .profilehero{padding:27px 22px;min-height:0}.studentdash:has(.badgegrid) .profilehero::before{right:14px;top:15px;font-size:17px;letter-spacing:3px}.studentdash:has(.badgegrid) .levelorb{width:100px;height:100px;border-width:5px}.studentdash:has(.badgegrid) .levelorb b{font-size:28px}.studentdash:has(.badgegrid) .stats{gap:10px}.studentdash:has(.badgegrid) .stat{min-height:102px;padding:16px 13px;border-radius:19px}.studentdash:has(.badgegrid) .stat b{font-size:27px}.studentdash:has(.badgegrid) .panel{padding:19px 14px;border-radius:24px}.studentdash:has(.badgegrid) .quest{gap:13px;padding:15px;border-radius:20px}.studentdash:has(.badgegrid) .questno{width:51px;height:51px;font-size:20px;border-width:3px;border-radius:16px}.studentdash:has(.badgegrid) .quest h3{font-size:18px}.studentdash:has(.badgegrid) .award{width:calc(50% - 8px);min-height:124px}.studentdash:has(.badgegrid) .lesson-body{padding:14px}.studentdash:has(.badgegrid) .lesson-intro,.studentdash:has(.badgegrid) .lesson-plan,.studentdash:has(.badgegrid) .glossary-box,.studentdash:has(.badgegrid) .examples-box,.studentdash:has(.badgegrid) .remember-box,.studentdash:has(.badgegrid) .try-box,.studentdash:has(.badgegrid) .practice-box,.studentdash:has(.badgegrid) .bonus-box,.studentdash:has(.badgegrid) .parent-box,.studentdash:has(.badgegrid) .check-box{padding:15px}.studentdash:has(.badgegrid) .lesson-plan-grid{grid-template-columns:1fr}}
  @media(prefers-reduced-motion:reduce){.studentdash:has(.badgegrid) .quest{transition:none}.studentdash:has(.badgegrid) .quest:hover{transform:none}}
}
