/* JagdIQ School */
.school-shell{
  width:min(100vw,432px);
  min-height:100dvh;
  margin:0 auto;
  overflow-y:auto;
  color:var(--green,#0b4a38);
  background:
    radial-gradient(circle at 85% 4%,rgba(255,255,255,.28),transparent 24%),
    linear-gradient(180deg,#f5e4cf 0%,#ecd5b6 100%);
}
.school-inner{
  min-height:100dvh;
  box-sizing:border-box;
  padding:max(17px,env(safe-area-inset-top)) 15px max(28px,calc(env(safe-area-inset-bottom) + 20px));
}
.school-head{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  align-items:center;
  gap:10px;
  margin-bottom:15px;
}
.school-back{
  width:44px;height:44px;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.8);border-radius:50%;
  background:rgba(255,249,241,.55);color:inherit;
  box-shadow:0 7px 18px rgba(86,60,37,.08);
}
.school-back svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.school-head span,.school-card-title>span,.school-course-hero>span{
  color:#9a711d;font-size:7px;font-weight:900;letter-spacing:1.05px;
}
.school-head h1{margin:3px 0 0;font-family:Georgia,serif;font-size:26px;line-height:1}
.school-hero,.school-card,.school-course-hero{
  border:1px solid rgba(255,255,255,.8);
  border-radius:27px;
  background:rgba(255,249,241,.56);
  box-shadow:0 10px 25px rgba(91,62,37,.08),inset 0 1px 0 rgba(255,255,255,.92);
}
.school-hero{display:grid;justify-items:center;gap:9px;padding:20px 17px;text-align:center}
.school-hero-icon{
  width:68px;height:68px;display:grid;place-items:center;border-radius:22px;
  background:rgba(11,74,56,.07)
}
.school-hero-icon svg,.school-card-icon svg,.school-assignment-icon svg{
  width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round
}
.school-hero h2{margin:1px 0 0;font-family:Georgia,serif;font-size:27px;line-height:1.06}
.school-hero p{margin:0;max-width:330px;color:#69635b;font-size:10px;line-height:1.45}
.school-card{margin-top:11px;padding:15px}
.school-card-title{margin-bottom:10px}
.school-card-title h3{margin:4px 0 0;font-family:Georgia,serif;font-size:20px}
.school-form-grid{display:grid;gap:9px}
.school-field{display:grid;gap:5px;margin-bottom:9px}
.school-field>span{color:#716b63;font-size:8px;font-weight:800}
.school-field input,.school-field select,.school-field textarea{
  width:100%;box-sizing:border-box;
  min-height:43px;padding:10px 11px;
  border:1px solid rgba(11,74,56,.13);border-radius:13px;
  background:rgba(255,255,255,.48);color:inherit;
  font:inherit;font-size:10px;outline:none;
}
.school-field textarea{resize:vertical}
.school-primary,.school-secondary{
  width:100%;min-height:48px;border-radius:16px;font:inherit;font-size:10px;font-weight:900
}
.school-primary{
  border:0;background:linear-gradient(180deg,#08704d 0%,#07583c 100%);color:#fff;
  box-shadow:0 9px 18px rgba(9,97,63,.14)
}
.school-secondary{
  margin-top:10px;border:1px solid rgba(11,74,56,.15);
  background:rgba(255,249,241,.50);color:inherit
}
.school-primary:disabled,.school-secondary:disabled{opacity:.55}
.school-form-message,.school-message{
  min-height:14px;margin:7px 2px 0;color:#8a493d;font-size:8px;line-height:1.35
}
.school-message{
  padding:9px 11px;border-radius:13px;background:rgba(255,249,241,.48);text-align:center
}
.school-course-hero{position:relative;padding:17px}
.school-course-hero h2{margin:5px 0 3px;font-family:Georgia,serif;font-size:25px}
.school-course-hero p{margin:0;color:#6d675f;font-size:9px}
.school-course-hero>b{
  position:absolute;right:13px;top:13px;padding:6px 8px;border-radius:999px;
  background:rgba(11,74,56,.07);font-size:6.5px;letter-spacing:.8px
}
.school-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.school-kpis>div{
  display:grid;gap:3px;padding:12px;border-radius:18px;
  background:rgba(255,249,241,.51);border:1px solid rgba(255,255,255,.72)
}
.school-kpis span{color:#746e65;font-size:7.5px}
.school-kpis strong{font-family:Georgia,serif;font-size:22px}
.school-invite-card{
  display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:10px
}
.school-card-icon{
  width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:rgba(11,74,56,.07)
}
.school-invite-card>div:nth-child(2){min-width:0;display:grid;gap:2px}
.school-invite-card small{color:#9a711d;font-size:6.5px;font-weight:900;letter-spacing:.8px}
.school-invite-card strong{font-family:Georgia,serif;font-size:15px;overflow-wrap:anywhere}
.school-invite-card span{color:#746e65;font-size:7.5px}
.school-invite-card button,.school-section-title button{
  min-height:34px;padding:0 10px;border:1px solid rgba(11,74,56,.14);border-radius:11px;
  background:rgba(255,255,255,.42);color:inherit;font-size:8px;font-weight:850
}
.school-section-title{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin:17px 2px 8px
}
.school-section-title h2{margin:0;font-family:Georgia,serif;font-size:20px}
.school-section-title>span{
  min-width:26px;height:26px;display:grid;place-items:center;border-radius:9px;
  background:rgba(11,74,56,.07);font-size:8px;font-weight:900
}
.school-student-list,.school-assignment-list,.school-course-list,.school-subject-list{display:grid;gap:7px}
.school-student-list>button,.school-course-list>button{
  display:grid;align-items:center;gap:9px;
  min-height:61px;padding:9px 10px;border:1px solid rgba(255,255,255,.75);
  border-radius:18px;background:rgba(255,249,241,.50);color:inherit;text-align:left
}
.school-student-list>button{grid-template-columns:38px minmax(0,1fr) auto}
.school-student-avatar{
  width:38px;height:38px;display:grid;place-items:center;border-radius:50%;
  background:rgba(11,74,56,.09);font-family:Georgia,serif;font-size:17px;font-weight:700
}
.school-student-copy,.school-student-score{display:grid;gap:3px}
.school-student-copy strong{font-family:Georgia,serif;font-size:13px}
.school-student-copy small,.school-student-score small{color:#766f66;font-size:7px}
.school-student-score{text-align:right}
.school-student-score strong{font-family:Georgia,serif;font-size:17px}
.school-empty{
  padding:16px;border:1px dashed rgba(11,74,56,.15);border-radius:17px;
  background:rgba(255,249,241,.35);color:#746e65;font-size:9px;line-height:1.4;text-align:center
}
.school-assignment{
  display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;
  padding:11px;border:1px solid rgba(255,255,255,.74);border-radius:18px;
  background:rgba(255,249,241,.50)
}
.school-assignment:not(.school-assignment--teacher){grid-template-columns:40px minmax(0,1fr) auto}
.school-assignment-icon{
  width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:rgba(11,74,56,.07)
}
.school-assignment-icon svg{width:23px;height:23px}
.school-assignment-copy{min-width:0;display:grid;gap:3px}
.school-assignment-copy>small{color:#9a711d;font-size:6px;font-weight:900;letter-spacing:.75px}
.school-assignment-copy>strong{font-family:Georgia,serif;font-size:13px}
.school-assignment-copy>p{margin:1px 0;color:#6b655e;font-size:8px;line-height:1.35}
.school-assignment-copy>div{display:flex;justify-content:space-between;gap:7px;color:#766f66;font-size:6.8px}
.school-mini-progress{height:4px!important;overflow:hidden;border-radius:999px;background:rgba(11,74,56,.09)}
.school-mini-progress i{display:block;height:100%;background:var(--green);border-radius:inherit}
.school-assignment-actions{display:grid;align-content:center;gap:5px}
.school-assignment-actions button{
  min-width:55px;min-height:29px;border:0;border-radius:9px;background:#0b6246;color:#fff;font-size:7px;font-weight:850
}
.school-assignment-actions button.quiet{
  border:1px solid rgba(11,74,56,.12);background:transparent;color:inherit
}
.school-done-pill{padding:6px 7px;border-radius:999px;background:rgba(11,106,73,.09);font-size:6px;font-weight:900}
.school-assignment-form[hidden]{display:none}
.school-course-list>button{grid-template-columns:minmax(0,1fr) auto}
.school-course-list span{display:grid;gap:3px}
.school-course-list strong{font-family:Georgia,serif;font-size:14px}
.school-course-list small{color:#746e65;font-size:7.5px}
.school-course-list b{padding:6px 8px;border-radius:999px;background:rgba(11,74,56,.07);font-size:7px}
.school-drawer-layer{
  position:fixed;inset:0;z-index:9000;display:grid;align-items:end;
  background:rgba(31,26,20,.28);backdrop-filter:blur(3px)
}
.school-drawer-backdrop{position:absolute;inset:0;border:0;background:transparent}
.school-drawer{
  position:relative;z-index:1;width:min(100%,432px);max-height:88dvh;margin:0 auto;
  box-sizing:border-box;overflow-y:auto;padding:17px 15px max(24px,env(safe-area-inset-bottom));
  border-radius:27px 27px 0 0;background:#f2dfc5;box-shadow:0 -12px 35px rgba(44,31,20,.16)
}
.school-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.school-drawer-head span{color:#9a711d;font-size:6.5px;font-weight:900;letter-spacing:.9px}
.school-drawer-head h3{margin:3px 0 0;font-family:Georgia,serif;font-size:22px}
.school-drawer-head button{width:37px;height:37px;border:0;border-radius:50%;background:rgba(255,255,255,.42);font-size:22px;color:inherit}
.school-readiness-main{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.school-readiness-main>div{display:grid;gap:3px;padding:13px;border-radius:18px;background:rgba(255,249,241,.54)}
.school-readiness-main small{color:#9a711d;font-size:6px;font-weight:900}
.school-readiness-main strong{font-family:Georgia,serif;font-size:25px}
.school-readiness-main strong.small{font-size:14px}
.school-readiness-main span{color:#746e65;font-size:7.5px}
.school-component-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}
.school-component-grid>div{display:grid;gap:2px;padding:9px 4px;border-radius:13px;background:rgba(255,249,241,.42);text-align:center}
.school-component-grid span{overflow:hidden;color:#746e65;font-size:6px;text-overflow:ellipsis}
.school-component-grid strong{font-family:Georgia,serif;font-size:13px}
.school-subject-list>div{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:9px 10px;border-radius:14px;background:rgba(255,249,241,.44)
}
.school-subject-list span{display:grid;gap:2px}
.school-subject-list strong{font-family:Georgia,serif;font-size:11px}
.school-subject-list small{color:#746e65;font-size:6.5px}
.school-subject-list b{font-family:Georgia,serif;font-size:15px}
.school-loading,.school-error{
  min-height:100dvh;display:grid;align-content:center;justify-items:center;gap:12px;padding:24px;text-align:center
}
.school-loading>span{
  width:34px;height:34px;border:3px solid rgba(11,74,56,.14);border-top-color:currentColor;border-radius:50%;
  animation:school-spin .8s linear infinite
}
.school-loading strong,.school-error h1{font-family:Georgia,serif}
.school-error button{min-width:160px;min-height:42px;border:1px solid rgba(11,74,56,.14);border-radius:13px;background:rgba(255,249,241,.52);color:inherit}
@keyframes school-spin{to{transform:rotate(360deg)}}
@media(max-width:380px){
  .school-inner{padding-left:13px;padding-right:13px}
  .school-hero h2{font-size:24px}
  .school-component-grid{grid-template-columns:repeat(2,1fr)}
  .school-assignment:not(.school-assignment--teacher){grid-template-columns:36px minmax(0,1fr)}
  .school-assignment-actions{grid-column:2;grid-template-columns:1fr 1fr}
}
