
:root{--bg:#f5f7fb;--surface:#fff;--surface2:#f8fafc;--ink:#162033;--muted:#6b7688;--line:#e3e8f0;--p:#3157e5;--p2:#2545bd;--ok:#16844b;--bad:#bd3d34;--shadow:0 14px 40px rgba(27,39,65,.08)}
html[data-theme=dark]{--bg:#0f1521;--surface:#171f2d;--surface2:#1d2737;--ink:#eef3fb;--muted:#9aa9bd;--line:#2b384b;--p:#7690ff;--p2:#8ea3ff;--ok:#52cf88;--bad:#ff7c73;--shadow:0 15px 45px rgba(0,0,0,.24)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif}button,select{font:inherit}button{cursor:pointer}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.hidden{display:none!important}
.topbar{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav{height:72px;display:flex;align-items:center}.brand{border:0;background:none;color:var(--ink);display:flex;align-items:center;gap:10px;text-align:left}.brandMark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--p),#795cff);color:#fff;font-weight:900}.brand>span:last-child{display:grid;line-height:1}.brand small{color:var(--muted);font-size:11px;margin-top:5px}.navRight{margin-left:auto;display:flex;gap:8px}.navBtn,.iconBtn,.ghost,.danger{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:9px 13px;font-weight:750}.iconBtn{width:42px}.primary{border:1px solid var(--p);background:var(--p);color:#fff;border-radius:13px;padding:11px 15px;font-weight:800}.primary:hover{background:var(--p2)}.primary.large{padding:14px 20px}.danger{color:var(--bad)}
.hero{padding:58px 0 30px;display:grid;grid-template-columns:1.45fr .75fr;gap:28px;align-items:center}.eyebrow,.kicker{font-size:12px;letter-spacing:.12em;font-weight:900;color:var(--p)}.hero h1{font-size:clamp(42px,5.5vw,70px);line-height:.98;letter-spacing:-.045em;margin:14px 0 18px}.heroCopy>p{color:var(--muted);font-size:18px;line-height:1.65;max-width:720px}.stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.stats span{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 12px;color:var(--muted);font-size:13px}.stats b{color:var(--ink)}.currentCard{background:linear-gradient(145deg,color-mix(in srgb,var(--p) 12%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--p) 25%,var(--line));border-radius:28px;padding:25px;box-shadow:var(--shadow)}.now{font-size:11px;font-weight:900;color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface));padding:6px 8px;border-radius:999px}.currentIcon{font-size:38px;margin:22px 0 8px}.currentCard h2{font-size:23px;margin:0 0 10px}.currentCard p{color:var(--muted);line-height:1.55;font-size:14px}
.sectionHead{margin:38px 0 16px}.sectionHead h2{font-size:30px;margin:5px 0}.sectionHead p{color:var(--muted);margin:0;line-height:1.55}.topicsGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:44px}.topicCard{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:19px;min-height:225px;box-shadow:var(--shadow);display:flex;flex-direction:column}.topicCard.open{border-color:color-mix(in srgb,var(--p) 35%,var(--line))}.topicCard.locked{opacity:.72}.topicCard .status{position:absolute;right:16px;top:16px;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:900}.opened{color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 25%,var(--line))}.closed{color:var(--muted);background:var(--surface2);border:1px solid var(--line)}.topicCard .icon{font-size:30px}.topicCard h3{font-size:17px;line-height:1.35;margin:13px 0 8px}.topicCard p{font-size:13px;color:var(--muted);line-height:1.45}.cardBottom{margin-top:auto;display:flex;align-items:center;gap:7px}.pill{display:inline-flex;border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.cardBottom button{margin-left:auto}
.back{margin-top:28px;border:0;background:none;color:var(--muted);font-weight:800;padding:8px 0}.topicHero{margin-top:14px;padding:28px;border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--p) 13%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--p) 25%,var(--line));box-shadow:var(--shadow)}.topicHeroLine{color:var(--muted);font-size:13px;font-weight:750}.topicHero h1{font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.035em;margin:10px 0 12px}.topicHero p{color:var(--muted);line-height:1.6;max-width:840px}.topicLayout{display:grid;grid-template-columns:1fr 320px;gap:15px;margin-top:15px;padding-bottom:45px}.topicMain{display:grid;gap:15px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:21px;box-shadow:var(--shadow)}.panelHead{display:flex;gap:14px;align-items:flex-start}.panelHead>div:first-child{flex:1}.panel h2{font-size:23px;margin:5px 0 8px}.panel h3{font-size:20px}.muted{color:var(--muted);line-height:1.6}.openBadge,.lockBadge{font-size:11px;font-weight:900;border-radius:999px;padding:7px 9px;white-space:nowrap}.openBadge{color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 24%,var(--line))}.lockBadge{color:var(--muted);background:var(--surface2);border:1px solid var(--line)}.controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-top:18px}.controls label{font-size:12px;font-weight:850;color:var(--muted)}select{display:block;margin-top:6px;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);font-weight:750}.sticky{position:sticky;top:88px}.goals{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:11px}.goals li{display:flex;gap:9px;color:var(--muted);font-size:14px;line-height:1.45}.goals li:before{content:'✓';color:var(--ok);font-weight:900}.empty,.lockedBox{border:1px dashed var(--line);border-radius:15px;background:var(--surface2);padding:17px;color:var(--muted);line-height:1.55}.resourceCard{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:15px;background:var(--surface2);padding:13px;margin-top:10px}.resourceText{flex:1}.resourceText small{display:block;color:var(--muted);margin-top:3px}.resourceCard a{text-decoration:none}
.quizShell{max-width:900px;margin:35px auto 60px}.quizHeader{display:flex;align-items:center;gap:15px;margin-bottom:16px}.quizHeader>div{flex:1}.quizHeader h2{margin:8px 0 0;font-size:22px}.progressRow{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;color:var(--muted);font-size:13px;font-weight:800;margin-bottom:13px}.progress{height:9px;border-radius:999px;background:var(--surface2);border:1px solid var(--line);overflow:hidden}.progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--p),#785cff)}.questionCard{background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:var(--shadow)}.questionMeta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;font-weight:800}.questionCard h3{font-size:26px;line-height:1.35;margin:18px 0 22px}.answers{display:grid;gap:10px}.answer{border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:15px;padding:15px;text-align:left;font-weight:700}.answer:hover{border-color:var(--p)}.answer.correct{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface));color:var(--ok)}.answer.wrong{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 9%,var(--surface));color:var(--bad)}.answer:disabled{cursor:default}.feedback{margin-top:15px;padding:14px;border-radius:14px;background:var(--surface2);border:1px solid var(--line);line-height:1.55}.questionActions{display:grid;grid-template-columns:1fr auto;margin-top:16px}
.resultCard{max-width:760px;margin:45px auto 16px;background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:30px;text-align:center;box-shadow:var(--shadow)}.scoreCircle{width:145px;height:145px;border-radius:50%;margin:20px auto;display:grid;place-items:center;background:conic-gradient(var(--p) var(--score),var(--line) 0);position:relative}.scoreCircle:after{content:'';position:absolute;inset:12px;border-radius:50%;background:var(--surface)}.scoreCircle strong{z-index:1;font-size:32px}.resultStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.resultStats>div{background:var(--surface2);border:1px solid var(--line);border-radius:15px;padding:13px}.resultStats strong{display:block;font-size:24px}.resultStats span{font-size:12px;color:var(--muted)}.resultActions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}#errorsReview{max-width:900px;margin:0 auto 55px}.errorItem{padding:14px 0;border-bottom:1px solid var(--line)}.errorItem p{color:var(--muted);line-height:1.5}.histHead{display:flex;align-items:center}.histHead>div{flex:1}.historyRow{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.historyRow small{color:var(--muted)}.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:12px 16px;border-radius:13px;font-weight:750;z-index:100;box-shadow:var(--shadow)}footer{border-top:1px solid var(--line);padding:26px 0;color:var(--muted);font-size:12px;text-align:center}
@media(max-width:900px){.hero{grid-template-columns:1fr}.topicsGrid{grid-template-columns:repeat(2,1fr)}.topicLayout{grid-template-columns:1fr}.sticky{position:static}}
@media(max-width:620px){.wrap{width:min(100% - 24px,1180px)}.navBtn{display:none}.hero{padding-top:38px}.hero h1{font-size:43px}.topicsGrid{grid-template-columns:1fr}.questionCard{padding:19px}.questionCard h3{font-size:21px}.resultStats{grid-template-columns:1fr}.stats{display:grid}}


/* ===== V3: Auth / teacher / student dashboard ===== */
code{background:var(--surface2);border:1px solid var(--line);border-radius:7px;padding:2px 6px}
.authShell{min-height:82vh;display:grid;place-items:center;padding:40px 0}
.authShell.two{grid-template-columns:1.1fr .8fr;gap:40px;align-items:center}
.authIntro h1{font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:-.04em;margin:14px 0 18px}
.authIntro>p{color:var(--muted);font-size:18px;line-height:1.6}
.featureList{list-style:none;padding:0;display:grid;gap:12px;color:var(--muted)}
.featureList li:before{content:"✓";color:var(--ok);font-weight:900;margin-right:10px}
.authCard{width:min(100%,480px);background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:var(--shadow)}
.authCard h1{font-size:30px}.authCard p{color:var(--muted);line-height:1.55}
.authTabs{display:flex;gap:7px;margin-bottom:20px}.tab{flex:1;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:11px;padding:10px;font-weight:800}.tab.active{background:var(--p);color:#fff;border-color:var(--p)}
.authCard form{display:grid;gap:14px}.authCard label,.formGroup label{font-size:12px;font-weight:850;color:var(--muted)}
.authCard input,.formGroup input,.formGroup textarea,.formGroup select,.inlineInput{width:100%;margin-top:6px;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);color:var(--ink)}
.wide{width:100%}.formHint{font-size:12px}.formMessage{margin-top:14px;border-radius:12px;padding:11px;background:var(--surface2);border:1px solid var(--line);font-size:13px}.formMessage.error{color:var(--bad)}
.notice{border:1px solid color-mix(in srgb,var(--p) 25%,var(--line));background:color-mix(in srgb,var(--p) 8%,var(--surface));padding:14px;border-radius:14px;color:var(--muted);line-height:1.55}
.pageHero{padding:40px 0 18px}.pageHero h1{font-size:clamp(34px,4vw,52px);letter-spacing:-.03em;margin:8px 0}.pageHero p{color:var(--muted);max-width:780px}
.dashboardGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0 24px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:var(--shadow)}.metric strong{display:block;font-size:27px}.metric span{color:var(--muted);font-size:12px}
.contentGrid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;padding-bottom:44px}.stack{display:grid;gap:14px}
.classCard,.studentRow,.resourceRow,.assignmentRow,.submissionRow{background:var(--surface2);border:1px solid var(--line);border-radius:15px;padding:14px}
.classCard{display:flex;align-items:center;gap:14px;margin-top:10px}.classCard .grow,.studentRow .grow,.resourceRow .grow,.assignmentRow .grow,.submissionRow .grow{flex:1}
.classCard h3,.studentRow h3{margin:0 0 4px}.subtle{color:var(--muted);font-size:12px}
.actions{display:flex;gap:8px;flex-wrap:wrap}.smallBtn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:8px 10px;font-weight:750}.smallBtn.primaryLike{background:var(--p);border-color:var(--p);color:#fff}
.tableWrap{overflow:auto}.dataTable{width:100%;border-collapse:collapse;font-size:13px}.dataTable th,.dataTable td{text-align:left;padding:11px;border-bottom:1px solid var(--line);white-space:nowrap}.dataTable th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.classHeader{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.classHeader .grow{flex:1}.joinCode{font-family:ui-monospace,monospace;font-size:18px;font-weight:900;letter-spacing:.12em;background:var(--surface2);border:1px dashed var(--line);padding:8px 11px;border-radius:11px}
.topicToggleRow{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.topicToggleRow:last-child{border-bottom:0}.toggle{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--muted)}
.topicStudentCard{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow);position:relative}.topicStudentCard.locked{opacity:.62}.topicStudentCard h3{margin:9px 0}.topicStudentCard p{color:var(--muted);font-size:13px;line-height:1.5}.studentTopics{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.modal{position:fixed;inset:0;background:rgba(10,15,25,.6);z-index:100;display:grid;place-items:center;padding:20px}.modalCard{width:min(720px,100%);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.3);position:relative}.modalClose{position:absolute;right:14px;top:12px;border:0;background:none;color:var(--muted);font-size:30px}
.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formGroup textarea{min-height:100px;resize:vertical}
.fileInput{display:block;width:100%;border:1px dashed var(--line);background:var(--surface2);padding:16px;border-radius:13px;margin-top:8px}
.badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:850;background:var(--surface2);border:1px solid var(--line);color:var(--muted)}
.badge.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 25%,var(--line))}.badge.warn{color:#b7791f}.badge.bad{color:var(--bad)}
.sectionTitle{display:flex;align-items:center;gap:10px;margin-bottom:12px}.sectionTitle .grow{flex:1}.sectionTitle h2{margin:0}
.emptyState{text-align:center;color:var(--muted);padding:28px 12px}.emptyState b{display:block;color:var(--ink);font-size:17px;margin-bottom:5px}
@media(max-width:900px){.authShell.two,.contentGrid{grid-template-columns:1fr}.dashboardGrid{grid-template-columns:repeat(2,1fr)}.studentTopics{grid-template-columns:1fr}}
@media(max-width:620px){.dashboardGrid{grid-template-columns:1fr 1fr}.formGrid{grid-template-columns:1fr}.topicToggleRow{grid-template-columns:1fr}.navRight .navBtn{display:none}}

/* ===== v3.2 ===== */
.studentUploadPanel{margin:4px 0 26px}
.studentUploadPanel .miniList{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:8px}
.studentUploadPanel .submissionRow{display:flex;align-items:center;gap:10px}
input:disabled{opacity:.7;cursor:not-allowed}

/* ===== v3.3 ===== */
.inlineCount{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:5px;border-radius:999px;background:var(--p);color:#fff;font-size:11px;font-weight:900}
.dangerMini{color:var(--bad)!important;border-color:color-mix(in srgb,var(--bad) 35%,var(--line))!important}
.classHeaderActions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.detailMetrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0 22px}
.detailColumns{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.historyRow{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.assignmentBlock{padding:12px 0;border-bottom:1px solid var(--line)}
.submittedFiles{margin:8px 0 0 18px;padding-left:12px;border-left:2px solid var(--line)}
.previewBanner{margin-top:18px;padding:12px 15px;border-radius:14px;background:color-mix(in srgb,var(--p) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--p) 28%,var(--line));display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.previewBanner span{color:var(--muted)}
.previewDisabled{opacity:.92}
@media(max-width:850px){.detailMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.detailColumns{grid-template-columns:1fr}.classHeaderActions{justify-content:flex-start}}


/* ===== v3.5 · klasės skelbimai ir nuorodos ===== */
.classPostsPanel{margin:4px 0 22px}
.classPost{
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px 18px;
  margin-top:12px;
  background:var(--card);
}
.classPost h3{margin:4px 0 6px}
.classPost p{margin:0 0 10px;white-space:pre-wrap;line-height:1.55}
.teacherPost{display:flex;align-items:flex-start;gap:14px}
.postMeta{font-size:12px;color:var(--muted);font-weight:700}
.postLink{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:4px;
  font-weight:800;
  text-decoration:none;
  color:#3157e8;
}
.postLink:hover{text-decoration:underline}
textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
  background:var(--card);
  color:var(--text);
  font:inherit;
  resize:vertical;
}
.dangerSoft{white-space:nowrap}

/* ===== v3.7 ===== */
.postActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* ===== v3.8 ===== */
.assignmentActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.editAssignmentToggle{margin-top:4px;justify-content:flex-start}


/* ===== v3.10 · Klausimų bankas ===== */
.questionBankTools{margin-bottom:18px}
.questionFilters{
  display:grid;
  grid-template-columns:minmax(220px,2fr) repeat(3,minmax(160px,1fr));
  gap:12px;
  align-items:end;
}
.questionFilters label{margin:0}
.questionBankCount{margin-top:14px;color:var(--muted)}
.questionBankList{display:grid;gap:14px;padding-bottom:34px}
.bankQuestion{margin:0}
.bankQuestionHeader{display:flex;gap:14px;align-items:flex-start}
.bankQuestionHeader h3{margin:10px 0 5px;font-size:20px;line-height:1.35}
.bankQuestionMeta{display:flex;gap:7px;flex-wrap:wrap}
.bankNumber{
  min-width:38px;height:38px;border-radius:12px;
  display:grid;place-items:center;font-weight:900;
  border:1px solid var(--line);color:var(--muted)
}
.bankOptions{display:grid;gap:8px;margin-top:16px}
.bankOption{
  display:flex;gap:10px;align-items:center;
  border:1px solid var(--line);border-radius:13px;padding:11px 13px
}
.optionLetter{
  width:28px;height:28px;flex:0 0 28px;border-radius:9px;
  display:grid;place-items:center;font-weight:900;
  border:1px solid var(--line)
}
.correctOption{font-weight:700}
.correctMark{margin-left:auto;white-space:nowrap}
.bankExplanation{
  margin-top:14px;padding:13px 15px;border-radius:14px;
  background:var(--soft);line-height:1.55
}
.bankExplanation p{margin:7px 0 0}
@media (max-width:900px){
  .questionFilters{grid-template-columns:1fr 1fr}
}
@media (max-width:580px){
  .questionFilters{grid-template-columns:1fr}
  .bankOption{align-items:flex-start}
  .correctMark{display:block;margin-left:0}
}

/* ===== v3.11 · Klausimų bankas prie kiekvienos temos ===== */
.topicQuestionFilters{
  grid-template-columns:minmax(240px,2fr) minmax(170px,1fr) minmax(170px,1fr) auto;
}
.topicFilterReset{align-self:end;margin-bottom:1px}
@media (max-width:900px){
  .topicQuestionFilters{grid-template-columns:1fr 1fr}
  .topicFilterReset{align-self:stretch}
}
@media (max-width:580px){
  .topicQuestionFilters{grid-template-columns:1fr}
}

/* ===== v4.0 · Kiekviena klasė turi savo temas ===== */
.topicToggleRow{align-items:center}
.topicToggleRow .actions{flex-wrap:wrap}
.classProgramHint{margin-top:5px}
@media (max-width:980px){
  .topicToggleRow{align-items:flex-start}
}

/* ===== v4.3 · Mokytojo aplinkos tvarkymas ===== */
.latestClassGroup{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:10px;background:var(--card)}
.latestClassGroup summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;font-weight:800}
.latestClassGroup summary::-webkit-details-marker{display:none}
.latestClassGroup summary::after{content:'▾';margin-left:auto;transition:transform .18s ease}
.latestClassGroup[open] summary::after{transform:rotate(180deg)}
.latestClassItems{border-top:1px solid var(--line);padding:4px 12px 10px}
.latestClassItems .studentRow:last-child{border-bottom:0}
.topicMessageRow{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--line)}
.topicMessageRow:first-of-type{border-top:0}
@media (max-width:760px){.topicMessageRow{align-items:flex-start;flex-wrap:wrap}}


/* ===== v4.4 · grupavimas ir išdėstymo patobulinimai ===== */
.classCardActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}

.latestWorkIdentity{display:flex;flex-direction:column;gap:3px}
.latestWorkTitle{color:var(--p);font-weight:850;line-height:1.35}

.topicToggleRow{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(520px,auto);
  gap:18px;
  align-items:center;
  padding:14px 0;
  border-bottom:1px solid var(--line);
}
.topicInfo{min-width:0}
.topicInfo>b{display:block;line-height:1.35}
.topicControls{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.topicActionButtons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.topicAccessToggles{
  display:flex;
  align-items:center;
  gap:4px;
  flex-wrap:wrap;
  background:var(--surface2);
  border:1px solid var(--line);
  border-radius:13px;
  padding:6px 8px;
}
.topicAccessToggles .toggle{
  padding:4px 6px;
  white-space:nowrap;
  color:var(--ink);
}

.topicContentGroup{
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  margin-top:12px;
  background:var(--surface2);
}
.topicContentGroup>summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 16px;
}
.topicContentGroup>summary::-webkit-details-marker{display:none}
.topicContentGroup>summary::after{
  content:'▾';
  color:var(--muted);
  font-size:15px;
  margin-left:4px;
  transition:transform .18s ease;
}
.topicContentGroup[open]>summary::after{transform:rotate(180deg)}
.topicContentBody{
  border-top:1px solid var(--line);
  padding:12px;
  background:var(--surface);
}
.topicContentBody .resourceRow,
.topicContentBody .assignmentRow,
.topicContentBody .submissionRow{margin-top:8px}
.topicContentBody .resourceRow:first-child,
.topicContentBody .assignmentRow:first-child,
.topicContentBody .submissionRow:first-child{margin-top:0}

.topicSummaryCounts{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}
.topicGroupToolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}
.topicSubsection{padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}
.topicSubsection:first-of-type{margin-top:0}
.topicSubsection h3{margin:0 0 9px;font-size:15px}
.topicEmptyLine{color:var(--muted);font-size:13px;padding:10px 2px}

@media(max-width:1050px){
  .topicToggleRow{grid-template-columns:1fr}
  .topicControls{justify-content:flex-start}
}
@media(max-width:700px){
  .topicControls{align-items:flex-start;flex-direction:column}
  .topicAccessToggles{width:100%}
  .topicContentGroup>summary{align-items:flex-start;flex-wrap:wrap}
  .topicSummaryCounts{margin-left:0}
  .classCardActions{width:100%;justify-content:flex-start}
}

/* ===== v4.5 · Klausimų banko eksportas ===== */
.questionBankHeaderActions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
@media(max-width:700px){
  .questionBankHeaderActions{justify-content:flex-start;width:100%}
}

/* ===== v4.6 · grupės pavadinimas + naršyklės Back ===== */
.classNameLine{display:flex;align-items:center;gap:7px;min-width:0}
.classNameLine h3{margin:0}
.classEditIcon{
  width:30px;height:30px;
  display:inline-grid;place-items:center;
  border:1px solid var(--line);
  border-radius:9px;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  font-size:17px;
  line-height:1;
  flex:0 0 auto;
}
.classEditIcon:hover{color:var(--ink);background:var(--surface2)}

/* ===== v4.7 · nauja užduotis tiesiai temos grupėje ===== */
.smallPrimary{
  padding:9px 13px;
  min-height:38px;
}
.topicGroupToolbar{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

/* ===== v5.1 · 10 klasės klausimų blokai ===== */
.questionBlockCard{border:1px solid var(--line);border-radius:16px;margin-top:12px;overflow:hidden;background:var(--surface2)}
.questionBlockCard>summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:15px 16px}
.questionBlockCard>summary::-webkit-details-marker{display:none}
.questionBlockTitle{display:flex;align-items:center;gap:14px;min-width:0}
.blockEnableToggle{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;white-space:nowrap;background:var(--surface)}
.questionBlockBody{border-top:1px solid var(--line);padding:12px;background:var(--surface)}
.questionBlockToolbar{display:flex;justify-content:flex-end;margin-bottom:10px}
.compactBankQuestion{margin-top:10px}
.bankQuestionActions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
.practiceBlockPicker{display:grid;gap:8px;margin:12px 0 14px}
.practiceAllBlocks,.practiceBlockChoice,.practiceBlockSingle{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:11px 12px;background:var(--surface2)}
.practiceBlockChoice small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:720px){.questionBlockTitle{align-items:flex-start;flex-direction:column}}


/* ===== v5.3 · Subalansuota praktika ir saugus atsiskaitymas ===== */
.multiHint{color:var(--muted);font-size:13px;margin-bottom:10px}
.multiAnswer{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:13px;padding:12px 13px;background:var(--surface2);cursor:pointer}
.multiAnswer input{margin-top:3px;transform:scale(1.15)}
.confirmAnswerBtn{margin-top:12px}
.matchingGrid{display:grid;gap:10px}
.matchingRow{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.3fr);gap:12px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface2);font-weight:750}
.matchingRow select{width:100%;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.neutralFeedback{border-color:color-mix(in srgb,var(--p) 28%,var(--line));background:color-mix(in srgb,var(--p) 7%,var(--surface))}
.attemptHistoryRow{display:flex;align-items:center;gap:10px;margin-top:8px}
.assessmentMetrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.assessmentFocusPanel{margin:16px 0}
.assessmentQuestionDetail{border:1px solid var(--line);border-radius:15px;padding:14px;margin-top:10px;background:var(--surface2)}
.assessmentQuestionDetail.isCorrect{border-left:4px solid var(--ok)}
.assessmentQuestionDetail.isWrong{border-left:4px solid var(--bad)}
.assessmentQuestionDetail p{line-height:1.55}
@media(max-width:700px){.matchingRow{grid-template-columns:1fr}.assessmentMetrics{grid-template-columns:1fr 1fr}}

/* ===== v5.8: editable assessment answers + compact presence ===== */
.answer.selected{border-color:var(--p);background:color-mix(in srgb,var(--p) 11%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--p) 18%,transparent)}
.multiAnswer.selected,.matchingRow.selected{border-color:var(--p);background:color-mix(in srgb,var(--p) 8%,var(--surface))}
.questionNav{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 13px;padding:10px 0}
.questionNavBtn{width:34px;height:34px;padding:0;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-weight:850}
.questionNavBtn.answered{border-color:color-mix(in srgb,var(--ok) 45%,var(--line));background:color-mix(in srgb,var(--ok) 8%,var(--surface));color:var(--ok)}
.questionNavBtn.partial{border-color:color-mix(in srgb,var(--p) 35%,var(--line));color:var(--p)}
.questionNavBtn.current{outline:2px solid var(--p);outline-offset:1px;color:var(--ink)}
.questionActions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.questionNavActions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.saveStatus{font-size:12px;color:var(--muted);font-weight:750}.saveStatus.saved{color:var(--ok)}.saveStatus.saving{color:var(--p)}.saveStatus.local{color:var(--bad)}
@media(max-width:620px){.questionActions{grid-template-columns:1fr}.questionNavActions{justify-content:stretch}.questionNavActions button{flex:1}.questionNavBtn{width:32px;height:32px}}


/* ===== v5.10 · kompaktiškesni rezultatai + mokytojo pastabų dizainas ===== */
.assessmentTopicCell{
  width:220px;
  max-width:220px;
  white-space:normal!important;
}
.assessmentTopicToggle{
  width:100%;
  display:flex;
  align-items:flex-start;
  gap:6px;
  padding:2px 0;
  border:0;
  background:transparent;
  color:var(--ink);
  text-align:left;
  font:inherit;
  font-weight:650;
}
.assessmentTopicText{
  display:block;
  flex:1;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.assessmentTopicChevron{
  flex:0 0 auto;
  color:var(--muted);
  font-size:15px;
  line-height:1.2;
  transition:transform .16s ease;
}
.assessmentTopicToggle:hover .assessmentTopicText{color:var(--p)}
.assessmentTopicToggle.expanded .assessmentTopicText{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  line-height:1.35;
}
.assessmentTopicToggle.expanded .assessmentTopicChevron{transform:rotate(180deg)}

.teacherUpdatesSection{
  margin:2px 0 8px;
  padding:17px 18px;
  border:1px solid color-mix(in srgb,var(--p) 20%,var(--line));
  border-left:4px solid var(--p);
  border-radius:18px;
  background:color-mix(in srgb,var(--p) 5%,var(--surface));
}
.teacherUpdatesHeader{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding-bottom:10px;
}
.teacherUpdatesHeader .grow{flex:1}
.teacherUpdatesHeader h2{margin:2px 0 3px;font-size:20px}
.teacherUpdatesHeader p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.teacherUpdatesCount{
  min-width:28px;
  height:28px;
  padding:0 8px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
.teacherUpdatesList{display:grid}
.teacherUpdateItem{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:11px;
  padding:13px 0;
  border-top:1px solid color-mix(in srgb,var(--p) 12%,var(--line));
}
.teacherUpdateItem:first-child{border-top:0}
.teacherUpdateIcon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--p);
  font-weight:950;
}
.teacherUpdateIcon.link{
  background:color-mix(in srgb,var(--p) 9%,var(--surface));
  border-color:color-mix(in srgb,var(--p) 22%,var(--line));
}
.teacherUpdateContent{min-width:0}
.teacherUpdateMeta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  color:var(--muted);
  font-size:11px;
  font-weight:750;
}
.teacherUpdateMeta span{
  color:var(--p);
  font-size:10px;
  letter-spacing:.08em;
  font-weight:900;
}
.teacherUpdateContent h3{
  margin:4px 0 4px;
  font-size:16px;
  line-height:1.35;
}
.teacherUpdateContent p{
  margin:0 0 7px;
  color:var(--muted);
  white-space:pre-wrap;
  line-height:1.5;
  font-size:13px;
}
.teacherUpdateLink{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:3px;
  padding:7px 10px;
  border:1px solid color-mix(in srgb,var(--p) 25%,var(--line));
  border-radius:10px;
  background:var(--surface);
  color:var(--p);
  text-decoration:none;
  font-size:12px;
  font-weight:850;
}
.teacherUpdateLink:hover{background:color-mix(in srgb,var(--p) 6%,var(--surface))}
@media(max-width:760px){
  .assessmentTopicCell{width:180px;max-width:180px}
  .teacherUpdatesSection{padding:15px}
}

/* ===== v5.11 · dviejų dalių atsiskaitymas ===== */
.assessmentPracticalSetting{
  display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid var(--line);
  border-radius:14px;background:color-mix(in srgb,var(--p) 4%,var(--surface));
}
.assessmentPracticalSetting input{margin-top:3px;flex:0 0 auto}
.assessmentPracticalSetting span{display:grid;gap:3px}
.assessmentPracticalSetting small{color:var(--muted);line-height:1.4}
.assessmentStepsMini,.assessmentStepBar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.assessmentStepsMini{margin:10px 0}
.assessmentStepsMini span,.assessmentStepBar span{
  padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);
  color:var(--muted);font-size:12px;font-weight:850
}
.assessmentStepsMini span.active,.assessmentStepBar span.active{border-color:color-mix(in srgb,var(--p) 40%,var(--line));background:color-mix(in srgb,var(--p) 8%,var(--surface));color:var(--p)}
.assessmentStepsMini span.done,.assessmentStepBar span.done{border-color:color-mix(in srgb,#1f9d55 35%,var(--line));color:#178447;background:color-mix(in srgb,#1f9d55 7%,var(--surface))}
.assessmentStepBar{max-width:1180px;margin:0 auto 18px;padding:0 4px}
.practicalAssessmentGrid{align-items:start}
.rubricPreview{display:grid;gap:7px;margin:16px 0}
.rubricPreview>div{display:flex;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.rubricPreview b{white-space:nowrap;color:var(--p)}
.practicalFileCard{display:flex;align-items:center;gap:10px;padding:12px;margin:10px 0;border:1px dashed var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 92%,transparent)}
.practicalFileCard.ready{border-style:solid;border-color:color-mix(in srgb,#1f9d55 35%,var(--line));background:color-mix(in srgb,#1f9d55 5%,var(--surface))}
.practicalFileIcon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-weight:900;color:var(--p)}
.practicalUploadButton{cursor:pointer}
.practicalSubmitStatus{margin:14px 0}
.fullWidth{width:100%;justify-content:center;margin-top:8px}
.practicalTeacherPanel{margin-top:14px}
.assessmentLogoPreview{display:block;max-width:420px;max-height:280px;width:auto;height:auto;object-fit:contain;margin:12px auto 16px;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff}
.practicalTeacherFiles{display:grid;gap:6px}
.practicalGradeForm{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.rubricInputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rubricInputs label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px}
.rubricInputs label span{font-size:11px;color:var(--muted)}
.rubricInputs input{grid-column:1/-1}
@media(max-width:760px){
 .rubricInputs{grid-template-columns:1fr}
 .practicalFileCard{align-items:flex-start;flex-wrap:wrap}
 .assessmentLogoPreview{max-width:100%}
}


/* ===== v5.13 · sunkesni atsiskaitymo klausimai ===== */
.questionVisual{
  margin:0 0 14px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:color-mix(in srgb,var(--p) 3%,var(--surface));
  color:var(--ink);
}
.questionVisualCaption{font-size:12px;color:var(--muted);font-weight:750;margin-bottom:10px}
.questionVisual svg{display:block;width:100%;max-height:210px}
.questionVisual svg text{fill:currentColor;font:800 18px system-ui,sans-serif}
.questionVisual .visualAccent{fill:var(--p)}
.questionVisual .visualHandle{fill:var(--surface);stroke:var(--p);stroke-width:5}
.visualCompare,.compositionCompare,.gradientSamples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.visualCompare>div,.compositionCompare>div,.gradientSamples>div{display:grid;gap:8px;place-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.visualCompare span{font-size:11px;color:var(--muted)}
.visualSmooth{fill:color-mix(in srgb,var(--p) 18%,var(--surface));stroke:var(--p);stroke-width:6}
.pixelCircle{width:112px;height:112px;border-radius:50%;background:var(--p);image-rendering:pixelated;clip-path:polygon(28% 0,72% 0,72% 7%,86% 7%,86% 14%,93% 14%,93% 28%,100% 28%,100% 72%,93% 72%,93% 86%,86% 86%,86% 93%,72% 93%,72% 100%,28% 100%,28% 93%,14% 93%,14% 86%,7% 86%,7% 72%,0 72%,0 28%,7% 28%,7% 14%,14% 14%,14% 7%,28% 7%)}
.crowdedMock,.balancedMock{width:100%;height:135px;border-radius:10px;background:var(--surface2);position:relative;overflow:hidden}
.crowdedMock span{position:absolute;background:color-mix(in srgb,var(--p) 35%,var(--surface));border:1px solid var(--p);border-radius:7px}
.crowdedMock span:nth-child(1){inset:8px 48% 78px 8px}.crowdedMock span:nth-child(2){inset:8px 8px 76px 54%}.crowdedMock span:nth-child(3){inset:52px 42% 42px 6px}.crowdedMock span:nth-child(4){inset:55px 6px 40px 60%}.crowdedMock span:nth-child(5){inset:96px 49% 8px 5px}.crowdedMock span:nth-child(6){inset:94px 5px 6px 53%}
.balancedMock .heroBox,.balancedMock span{position:absolute;display:block;background:color-mix(in srgb,var(--p) 30%,var(--surface));border-radius:8px}
.balancedMock .heroBox{left:18px;top:18px;width:45%;height:56px}.balancedMock span:nth-child(2){left:18px;bottom:22px;width:64%;height:12px}.balancedMock span:nth-child(3){right:18px;bottom:20px;width:22%;height:34px}
.gradientSamples{grid-template-columns:repeat(4,minmax(0,1fr))}
.gradientSamples span{display:block;width:100%;height:72px;border-radius:10px}
.solidSample{background:var(--p)}
.gradientSample{background:linear-gradient(90deg,var(--p),#34d8e8)}
.outlineSample{border:7px solid var(--p);background:transparent}
.transparentSample{background:repeating-conic-gradient(#d8deea 0 25%,#fff 0 50%) 50%/20px 20px}
.sequenceGrid{display:grid;gap:10px}
.sequenceRow{display:grid;grid-template-columns:1fr 115px;gap:12px;align-items:center;border:1px solid var(--line);background:var(--surface2);border-radius:13px;padding:12px 13px}
.sequenceRow.selected{border-color:var(--p);background:color-mix(in srgb,var(--p) 8%,var(--surface))}
.sequenceRow select,.matchingRow select{min-width:0}
.sequenceHint{min-height:18px;color:var(--bad);font-size:12px;font-weight:750}
.shortAnswerInput{width:100%;resize:vertical;min-height:110px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);color:var(--ink);padding:14px;font:inherit;line-height:1.5}
.shortAnswerInput:focus{outline:2px solid color-mix(in srgb,var(--p) 35%,transparent);border-color:var(--p)}
.shortAnswerMeta{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:6px}
@media(max-width:620px){
 .gradientSamples{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sequenceRow{grid-template-columns:1fr}
}


/* ===== v5.14 · motyvacinė sistema ===== */
.motivationCard{
  margin:0 0 22px;
  padding:21px;
  border:1px solid color-mix(in srgb,var(--p) 24%,var(--line));
  border-radius:22px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--p) 8%,var(--surface)),var(--surface));
  box-shadow:var(--shadow);
}
.motivationTop{display:flex;align-items:center;gap:18px}.motivationTop>div:first-child{flex:1}.motivationTop h2{margin:3px 0 3px}.motivationTop p{margin:0;color:var(--muted);font-size:13px}
.xpOrb{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--p);color:white;line-height:1;text-align:center;box-shadow:0 10px 30px color-mix(in srgb,var(--p) 25%,transparent)}
.xpOrb strong{font-size:22px}.xpOrb span{font-size:10px;font-weight:900;letter-spacing:.08em}
.xpTrack,.masteryTrack,.miniProgress{height:9px;border-radius:999px;background:var(--line);overflow:hidden}.xpTrack{margin:15px 0}.xpTrack span,.masteryTrack span,.miniProgress span{display:block;height:100%;border-radius:inherit;background:var(--p)}
.motivationMiniGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.motivationMiniGrid>div{padding:11px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.motivationMiniGrid strong{display:block;font-size:15px}.motivationMiniGrid span{font-size:11px;color:var(--muted)}
.classChallengeMini{display:flex;align-items:center;gap:14px;margin-top:12px;padding:11px 12px;border:1px dashed color-mix(in srgb,var(--p) 32%,var(--line));border-radius:14px}.classChallengeMini .grow{display:flex;flex-direction:column}.classChallengeMini b{font-size:13px}.classChallengeMini span{font-size:11px;color:var(--muted)}.classChallengeMini .miniProgress{width:150px;flex:0 0 150px}
.motivationActions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}
.topicMasteryBox{margin:10px 0 14px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.topicMasteryBox.empty{display:flex;flex-direction:column;gap:4px;color:var(--muted)}.topicMasteryBox.empty b{color:var(--ink)}
.masteryHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.masteryHead strong{color:var(--p)}.masteryTrack{margin-bottom:6px}
.achievementsGrid{align-items:start}.badgeGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.achievementBadge{display:flex;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--surface2)}.achievementBadge.locked{opacity:.58;filter:grayscale(.7)}.achievementBadge.unlocked{border-color:color-mix(in srgb,var(--p) 28%,var(--line));background:color-mix(in srgb,var(--p) 5%,var(--surface))}.badgeIcon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);font-size:24px;font-weight:950}.achievementBadge p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.4}
.masteryList{display:grid;gap:14px}.masteryRow{padding:12px 0;border-bottom:1px solid var(--line)}.masteryRow:last-child{border-bottom:0}
.motivationResult{margin:18px 0 20px;text-align:left;border:1px solid color-mix(in srgb,var(--p) 28%,var(--line));border-radius:18px;padding:16px;background:color-mix(in srgb,var(--p) 5%,var(--surface))}
.rewardXp{display:flex;align-items:center;justify-content:space-between;gap:12px}.rewardXp span{font-size:12px;color:var(--muted);font-weight:800}.rewardXp strong{font-size:25px;color:var(--p)}
.rewardLevel{display:flex;align-items:center;gap:12px;margin-top:10px}.rewardLevel .grow{display:flex;flex-direction:column}.rewardLevel .grow span{font-size:11px;color:var(--muted)}.rewardLevel .miniProgress{width:145px;flex:0 0 145px}
.rewardFacts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.rewardFacts span{font-size:11px;padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
.newBadge{display:flex;align-items:center;gap:11px;margin-top:13px;padding:11px;border-radius:14px;background:var(--surface);border:1px solid color-mix(in srgb,var(--p) 25%,var(--line))}.newBadge>span{font-size:28px}.newBadge div{display:flex;flex-direction:column}.newBadge small{color:var(--p);font-weight:900;letter-spacing:.06em}.newBadge b{font-size:15px}
@media(max-width:760px){.motivationMiniGrid{grid-template-columns:repeat(2,1fr)}.classChallengeMini{align-items:flex-start;flex-direction:column}.classChallengeMini .miniProgress{width:100%;flex:auto}.badgeGrid{grid-template-columns:1fr}.motivationActions{align-items:flex-start;flex-direction:column}.rewardLevel{align-items:flex-start;flex-direction:column}.rewardLevel .miniProgress{width:100%;flex:auto}}


/* ===== v5.15 · mokytojo motyvacijos valdymas ===== */
.motivationAdminPanel{max-width:100%}
.motivationMasterSwitch{display:flex;align-items:center;gap:18px;padding:16px;margin:8px 0 14px;border:1px solid color-mix(in srgb,var(--p) 24%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--p) 5%,var(--surface))}
.motivationMasterSwitch .grow{display:flex;flex-direction:column;gap:4px}
.motivationMasterSwitch .grow span{font-size:12px;color:var(--muted)}
.motivationBigToggle{white-space:nowrap;font-weight:850}
.motivationStudentSelect{min-width:230px;max-width:100%;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:8px 10px;font:inherit}
.motivationAdminTable td{vertical-align:middle}
@media(max-width:700px){.motivationMasterSwitch{align-items:flex-start;flex-direction:column}.motivationStudentSelect{min-width:180px}}
