/* Small labels use the reading face. The carved logo and large play signs
   keep their illustrated lettering; decoration belongs around the text. */
:root {
  --reading-font: "NanumSquareRound", "Malgun Gothic", sans-serif;
  --reading-ink: #263b29;
  --reading-muted: #555d45;
}
body :is(.btn, .btn.sm, .btn.big, .btn.sm.y, .btn.sm.g, .btn.sm.p,
  .btn.sm.gray, .tab, .tab.on, .lgGoBtn, .lgWide, .lgWide.ex,
  .lgPad button, .qp-demo-toolbar button) {
  --candy-label: var(--reading-ink);
  color: var(--reading-ink);
  font-family: var(--reading-font);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.3;
  -webkit-text-fill-color: currentColor;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
body .btn.sm { font-size: 14px; }
body .btn:not(.sm):not(.big) { font-size: 16px; }
body .btn.big { font-size: 20px; }
body .qp-demo-toolbar.qp-demo-toolbar.qp-demo-toolbar button {
  font-size: 14px;
  color: var(--reading-ink);
  font-family: var(--reading-font);
  font-weight: 800;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
body .tab > :is(span, .candy-label) {
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  -webkit-text-fill-color: currentColor;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
body :is(.hint, .qp-demo-toolbar small) {
  color: var(--reading-muted);
  font-family: var(--reading-font);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
body :is(.inp, .tarea) {
  font-family: var(--reading-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
}
body :is(.inp, .tarea)::placeholder { color: #68715a; }
body .gold {
  color: #624218;
  font-family: var(--reading-font);
  font-weight: 700;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
body .gold b { color: #624218; font-weight: 800; }
/* 창 제목 띠: 파란 UI 남색 띠(U6, 2026-10-21) */
body .pnl-h {
  color: #fff;
  background: linear-gradient(#18348a, #0b1f5e);
  border-bottom: 2px solid #05164a;
  box-shadow: inset 0 2px 0 #3a64c8;
  font-family: var(--reading-font);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
/* The teacher operates one quiz library and one list of published sessions. */
body .teacher-top > .nm {
  color: #fffbea;
  font-family: var(--reading-font);
  font-size: 19px;
  font-weight: 800;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
body .teacher-top .tab { font-size: 15px; }
.teacher-library { max-width: 1420px; margin: 0 auto; padding: 25px 28px; }

.teacher-library-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 20px 0; color: var(--reading-muted); }
.teacher-library-toolbar label { display: flex; align-items: center; gap: 12px; font-weight: 800; }
.teacher-library-toolbar .inp { width: 300px; }
.teacher-quiz-list { display: grid; gap: 14px; }
.teacher-quiz-card { display: flex; align-items: center; gap: 22px; padding: 20px; background: #fff; border: 2px solid #9fc8f5; border-radius: 15px; box-shadow: 0 2px 0 #b8d4f2; color: var(--bu-text-dark); }
.teacher-quiz-details { flex: 1; min-width: 0; }
.teacher-quiz-details h3 { margin: 0 0 8px; font-size: 20px; overflow-wrap: anywhere; }
.teacher-quiz-details p { margin: 0; font-size: 15px; color: var(--reading-muted); }
.teacher-quiz-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
@media (min-width: 661px) and (max-width: 1100px) {
  body .teacher-top > .nm { font-size: 16px; }
  body .teacher-top .tab { font-size: 14px; padding: 7px 9px; }
  .teacher-quiz-card { gap: 14px; flex-wrap: wrap; }
  .teacher-quiz-details { flex-basis: 45%; }
  .teacher-quiz-actions { flex-basis: 100%; }
}
