/* Oficina · Gerador de Aulas
   Estados adicionados para ordem pedagógica instantânea e modo Apenas exercícios. */

.ga-pedagogy-ready {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: -4px 0 12px;
  padding: 9px 11px;
  border: 1px solid rgba(64, 207, 151, .34);
  border-radius: 10px;
  background: rgba(35, 150, 108, .08);
  color: #91dfbe;
  font-size: 11.5px;
}

.ga-pedagogy-ready button {
  flex: none;
  border: 0;
  background: transparent;
  color: #c9b6dc;
  font: 700 11px Inter, sans-serif;
  cursor: pointer;
}

.ga-pedagogy-ready button:hover { color: #fff; }
.ga-pedagogy-ready button:disabled { cursor: wait; opacity: .65; }

.ga-production-mode-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.ga-production-entry {
  margin: 0 0 22px;
  padding: 16px;
  border: 1px solid rgba(212, 175, 55, .28);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(212, 175, 55, .075), rgba(124, 59, 178, .08));
}

.ga-production-entry-head {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 13px;
}

.ga-production-entry-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: rgba(212, 175, 55, .14);
  color: #f0d986;
}

.ga-production-entry-head h4,
.ga-content-context-head h4 {
  margin: 0 0 3px;
  color: #fff;
  font: 600 17px Poppins, Inter, sans-serif;
}

.ga-production-entry-head p,
.ga-content-context-head p {
  margin: 0;
  color: #c3b2d6;
  font-size: 13px;
}

.ga-content-context-head { margin-bottom: 16px; }

.ga-production-mode {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 11px;
  align-items: start;
  min-height: 112px;
  padding: 14px;
  text-align: left;
  color: #fff;
  border: 1px solid #3a3450;
  border-radius: 13px;
  background: rgba(18, 13, 25, .28);
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.ga-production-mode:hover { border-color: #72598d; transform: translateY(-1px); }
.ga-production-mode.is-active {
  border: 2px solid #d4af37;
  padding: 13px;
  background: linear-gradient(135deg, rgba(212, 175, 55, .12), rgba(91, 31, 126, .12));
  box-shadow: inset 0 0 0 1px rgba(212, 175, 55, .06);
}

.ga-production-mode-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 11px;
  background: #2a1c38;
  color: #c9a9df;
  font-size: 17px;
}

.ga-production-mode.is-active .ga-production-mode-icon {
  background: rgba(212, 175, 55, .17);
  color: #f0d986;
}

.ga-production-mode strong,
.ga-production-mode small,
.ga-production-mode em { display: block; }
.ga-production-mode strong { margin-bottom: 4px; font: 600 13.5px Poppins, Inter, sans-serif; }
.ga-production-mode small { color: #bbaacb; font-size: 11.5px; line-height: 1.45; }
.ga-production-mode em {
  width: max-content;
  margin-top: 9px;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(124, 59, 178, .17);
  color: #c8a5e1;
  font: normal 800 9.5px Inter, sans-serif;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.ga-production-mode.is-active em { background: rgba(212, 175, 55, .14); color: #f0d986; }

.ga-lesson-type-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 9px;
}

.ga-lesson-type-grid.is-compact { grid-template-columns: repeat(5, minmax(130px, 1fr)); }
.ga-lesson-type.is-disabled {
  min-height: 68px;
  filter: saturate(.4);
  opacity: .42;
}
.ga-lesson-type.is-disabled > div:last-child { display: none; }

.ga-mode-explanation {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(124, 59, 178, .28);
  border-radius: 10px;
  background: rgba(124, 59, 178, .08);
  color: #baa9c8;
  font-size: 12px;
}

.ga-exercise-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.ga-exercise-header h4 { margin: 0 0 4px; color: #fff; font: 600 18px Poppins, Inter, sans-serif; }
.ga-exercise-header p { margin: 0; color: #bcaaca; font-size: 13px; }
.ga-exercise-header > span {
  flex: none;
  padding: 6px 9px;
  border: 1px solid rgba(212, 175, 55, .38);
  border-radius: 999px;
  background: rgba(212, 175, 55, .09);
  color: #f0d986;
  font: 800 10px Inter, sans-serif;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.ga-exercise-source,
.ga-exercise-ready {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 12px 13px;
  border: 1px solid rgba(64, 207, 151, .3);
  border-radius: 11px;
  background: rgba(35, 150, 108, .07);
  color: #8edbb9;
}
.ga-exercise-source > i,
.ga-exercise-ready > i { margin-top: 3px; }
.ga-exercise-source strong,
.ga-exercise-source small,
.ga-exercise-ready strong,
.ga-exercise-ready small { display: block; }
.ga-exercise-source strong,
.ga-exercise-ready strong { color: #dff7eb; font-size: 12.5px; }
.ga-exercise-source small,
.ga-exercise-ready small { margin-top: 3px; color: #94b9a8; font-size: 11px; line-height: 1.45; }

.ga-exercise-counts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.ga-exercise-count-row {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 12px 13px;
  border: 1px solid #312941;
  border-radius: 11px;
  background: #17121f;
}
.ga-exercise-dot { width: 9px; height: 9px; border-radius: 50%; }
.ga-exercise-count-row strong,
.ga-exercise-count-row small { display: block; }
.ga-exercise-count-row strong { color: #fff; font: 600 12.5px Poppins, Inter, sans-serif; }
.ga-exercise-count-row small { margin-top: 2px; color: #91849f; font-size: 10.5px; }
.ga-exercise-stepper { display: flex; align-items: center; gap: 3px; }
.ga-exercise-stepper button {
  width: 40px;
  height: 40px;
  border: 1px solid #443653;
  border-radius: 8px;
  background: transparent;
  color: #eee5f5;
  font-size: 17px;
  cursor: pointer;
}
.ga-exercise-stepper button:disabled { cursor: not-allowed; opacity: .3; }
.ga-exercise-stepper b { width: 28px; color: #fff; text-align: center; font: 600 15px Poppins, sans-serif; }

.ga-exercise-option-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(185px, 1fr)); gap: 9px; }
.ga-exercise-option {
  min-height: 80px;
  padding: 12px 13px;
  border: 1px solid #3a3450;
  border-radius: 11px;
  background: #17121f;
  color: #fff;
  text-align: left;
  cursor: pointer;
}
.ga-exercise-option.is-active { border: 2px solid #d4af37; padding: 11px 12px; background: rgba(212, 175, 55, .07); }
.ga-exercise-option strong,
.ga-exercise-option small { display: block; }
.ga-exercise-option strong { color: inherit; font: 600 12.5px Poppins, Inter, sans-serif; }
.ga-exercise-option.is-active strong { color: #f0d986; }
.ga-exercise-option small { margin-top: 4px; color: #9687a6; font-size: 10.5px; line-height: 1.4; }

.ga-exercise-force {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 9px;
  padding: 9px 11px;
  border: 1px solid #312941;
  border-radius: 10px;
  background: #17121f;
}
.ga-exercise-force > span:first-child { margin-right: 3px; color: #aa98b8; font-size: 11px; }

.ga-exercise-output {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid #332941;
}
.ga-exercise-output > div { display: flex; align-items: flex-start; gap: 8px; }
.ga-exercise-output i { margin-top: 2px; color: #d4af37; }
.ga-exercise-output strong,
.ga-exercise-output small { display: block; }
.ga-exercise-output strong { color: #e9e1ef; font-size: 10.5px; }
.ga-exercise-output small { margin-top: 2px; color: #85768f; font-size: 9.5px; line-height: 1.35; }

.ga-exercise-review-row {
  display: grid;
  grid-template-columns: minmax(130px, .38fr) minmax(0, 1fr);
  gap: 16px;
  padding: 12px 2px;
  border-bottom: 1px solid #312941;
  font-size: 12.5px;
}
.ga-exercise-review-row span { color: #9485a1; }
.ga-exercise-review-row strong { color: #eee7f4; font-weight: 600; text-align: right; }
.ga-exercise-ready { margin-top: 18px; }
.ga-exercise-generate {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-top: 12px;
  padding: 12px 16px;
  border: 1px solid #8f4bbe;
  border-radius: 11px;
  background: linear-gradient(135deg, #7826a5, #632083);
  color: #fff;
  font: 700 13px Poppins, Inter, sans-serif;
  cursor: pointer;
  box-shadow: 0 8px 22px rgba(86, 24, 116, .24);
}
.ga-exercise-generate:hover { filter: brightness(1.08); }

body.theme-light .ga-production-mode,
body.theme-light .ga-exercise-count-row,
body.theme-light .ga-exercise-option,
body.theme-light .ga-exercise-force { background: #fff; border-color: #ddd4e5; color: #25172f; }
body.theme-light .ga-production-mode.is-active,
body.theme-light .ga-exercise-option.is-active { background: #fffaf0; border-color: #b68c00; }
body.theme-light .ga-production-entry { background: linear-gradient(135deg, #fffaf0, #faf5fc); border-color: #d8c78d; }
body.theme-light .ga-production-mode strong,
body.theme-light .ga-exercise-count-row strong,
body.theme-light .ga-exercise-stepper b,
body.theme-light .ga-exercise-header h4,
body.theme-light .ga-exercise-review-row strong { color: #24152d; }
body.theme-light .ga-production-entry-head h4,
body.theme-light .ga-content-context-head h4 { color: #24152d; }
body.theme-light .ga-production-mode small,
body.theme-light .ga-exercise-count-row small,
body.theme-light .ga-exercise-option small,
body.theme-light .ga-exercise-header p,
body.theme-light .ga-exercise-review-row span { color: #6f6377; }
body.theme-light .ga-production-entry-head p,
body.theme-light .ga-content-context-head p { color: #6f6377; }
body.theme-light .ga-lesson-type.is-disabled { opacity: .48; }
body.theme-light .ga-mode-explanation { background: #f8f2fb; color: #5c4d65; }
body.theme-light .ga-exercise-review-row,
body.theme-light .ga-exercise-output { border-color: #e5dfe9; }

@media (max-width: 1100px) {
  .ga-lesson-type-grid.is-compact { grid-template-columns: repeat(3, minmax(140px, 1fr)); }
  .ga-exercise-output { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .ga-production-mode-grid,
  .ga-exercise-counts,
  .ga-exercise-option-grid { grid-template-columns: 1fr; }
  .ga-lesson-type-grid.is-compact { grid-template-columns: repeat(2, minmax(120px, 1fr)); }
  .ga-exercise-header { align-items: flex-start; flex-direction: column; }
  .ga-pedagogy-ready { align-items: flex-start; flex-direction: column; }
  .ga-exercise-review-row { grid-template-columns: 1fr; gap: 4px; }
  .ga-exercise-review-row strong { text-align: left; }
  .ga-exercise-stepper button { width: 44px; height: 44px; }
}

@media (max-width: 430px) {
  .ga-production-entry { padding: 12px; }
  .ga-production-mode { grid-template-columns: 36px minmax(0, 1fr); min-height: 0; padding: 12px; }
  .ga-production-mode.is-active { padding: 11px; }
  .ga-production-mode-icon { width: 36px; height: 36px; }
  .ga-lesson-type-grid.is-compact,
  .ga-exercise-output { grid-template-columns: 1fr; }
  .ga-exercise-count-row { grid-template-columns: 8px minmax(0, 1fr); }
  .ga-exercise-stepper { grid-column: 2; justify-self: start; margin-top: 5px; }
}
