/* HML only. Responsive HTML adaptation of the two supplied Testemais SVGs.
   The supplied vector symbol is shared; text and actions remain semantic HTML. */
body {
  --tm-modal-bg:#fff; --tm-modal-border:#dee5ed; --tm-modal-title:#101b35;
  --tm-modal-text:#536176; --tm-modal-secondary:#fff; --tm-modal-close:#eff3f7;
}
body[data-app-theme="dark"] {
  --tm-modal-bg:#101b28; --tm-modal-border:#26394d; --tm-modal-title:#fff;
  --tm-modal-text:#b4c0d0; --tm-modal-secondary:#142130; --tm-modal-close:#1e2d40;
}
body :is(.setup-warning-modal,.professor-master-alert-modal,.study-guided-hint-modal,.ai-generation-modal) {
  box-sizing:border-box; width:min(352px,calc((100vw - 32px) * .8));
  max-height:calc(100dvh - 40px); overflow-y:auto; overscroll-behavior:contain;
  padding:24px 19px 19px; border:1px solid var(--tm-modal-border);
  border-radius:24px; background:var(--tm-modal-bg); color:var(--tm-modal-text);
  box-shadow:0 18px 48px #0003; font-family:Poppins,Arial,sans-serif;
  text-align:center; gap:12px;
}
body :is(.setup-warning-modal__title,.professor-master-alert-modal__title,.ai-generation-modal__title) {
  color:var(--tm-modal-title); font-size:1.16rem; line-height:1.3; margin:0;
  font-weight:700; padding-inline:0; overflow-wrap:anywhere;
}
body :is(.setup-warning-modal__message,.professor-master-alert-modal__status,.study-guided-hint-modal__message,.ai-generation-modal__message) {
  color:var(--tm-modal-text); font-size:.9rem; line-height:1.5;
  white-space:pre-line; overflow-wrap:anywhere; margin:0;
}
body :is(.setup-warning-modal__icon,.study-guided-lock-modal__icon,.professor-master-alert-modal__icon,.ai-generation-modal__icon) {
  width:86px; height:80px; margin:0 auto; border:0; border-radius:0;
  background:transparent url("modal-testemais-symbol.svg") center/contain no-repeat;
  font-size:0; color:transparent; box-shadow:none;
}
body :is(.setup-warning-modal__icon,.study-guided-lock-modal__icon,.professor-master-alert-modal__icon,.ai-generation-modal__icon) > * { visibility:hidden; }
body :is(.setup-warning-modal__actions,.study-guided-replay-modal__actions,.professor-master-alert-modal__actions) {
  display:flex; flex-direction:column; gap:8px; margin-top:6px;
}
body :is(.setup-warning-modal__button,.professor-master-alert-modal__button) {
  flex:0 0 auto; min-width:0; width:100%; min-height:44px; height:auto; padding:10px 8px;
  border-radius:14px; border:1px solid transparent; background:linear-gradient(135deg,#06c8f2,#075cf7);
  color:#fff; font:600 .875rem/1.4 Poppins,Arial,sans-serif; white-space:nowrap;
  overflow-wrap:normal; box-shadow:none;
}
body :is(.setup-warning-modal__button--secondary,.professor-master-alert-modal__button--secondary) {
  background:var(--tm-modal-secondary); color:var(--tm-modal-title); border-color:var(--tm-modal-border);
}
body :is(.setup-warning-modal,.professor-master-alert-modal,.study-guided-hint-modal,.ai-generation-modal) button:focus-visible {
  outline:3px solid #078bf0; outline-offset:3px;
}
body :is(.setup-warning-modal,.professor-master-alert-modal,.study-guided-hint-modal,.ai-generation-modal)[hidden],
body :is(.setup-warning-modal,.professor-master-alert-modal,.study-guided-hint-modal,.ai-generation-modal) [hidden] { display:none!important; }
@media(max-width:360px) {
  body :is(.setup-warning-modal,.professor-master-alert-modal,.study-guided-hint-modal,.ai-generation-modal) { padding:19px 14px 14px; }
}
/* A caixa cresce com toda a dica e reserva espaço para o X na borda inferior. */
body .study-guided-hint-modal {
  height:auto; max-height:none; overflow:visible; padding-bottom:40px;
}
/* Override legacy dark-theme !important rules without affecting other cards. */
body[data-app-theme] .setup-warning-modal { background:var(--tm-modal-bg)!important; border-color:var(--tm-modal-border)!important; }
body[data-app-theme] .setup-warning-modal__title { color:var(--tm-modal-title)!important; }
body[data-app-theme] .setup-warning-modal__message { color:var(--tm-modal-text)!important; }
body[data-app-theme] .setup-warning-modal__icon { background:transparent url("modal-testemais-symbol.svg") center/contain no-repeat!important; color:transparent!important; }
body[data-app-theme] :is(.setup-warning-modal__button,.professor-master-alert-modal__button) { background:linear-gradient(135deg,#007b9e,#075cf7)!important; color:#fff!important; }
body[data-app-theme] :is(.setup-warning-modal__button--secondary,.professor-master-alert-modal__button--secondary) { background:var(--tm-modal-secondary)!important; color:var(--tm-modal-title)!important; border-color:var(--tm-modal-border)!important; }

/* Em modais com duas escolhas, nenhuma ação deve parecer preferencial. */
body[data-app-theme] :is(
  #setupWarningCancelButton:not([hidden]),
  #setupWarningCancelButton:not([hidden]) + #setupWarningConfirmButton,
  #professorMasterAlertModal .professor-master-alert-modal__actions > button,
  #studyGuidedReplayModal .study-guided-replay-modal__actions > button,
  #aiGenerationModal .ai-generation-actions > button
) {
  background:var(--tm-modal-secondary)!important;
  color:var(--tm-modal-title)!important;
  border:1px solid var(--tm-modal-border)!important;
  box-shadow:none;
}
body[data-app-theme] #aiGenerationModal .ai-generation-actions > button {
  flex:1 1 0; min-width:0; width:auto;
  font:600 .875rem/1.4 Poppins,Arial,sans-serif;
}

/* O clique em Gerar teste analisa imagens; só exercícios ou material misto abrem ações. */
body .hml-material-inspection-overlay {
  position:fixed; inset:0; z-index:118; pointer-events:none;
  background:rgba(15,31,39,.22); backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  animation:tm-content-overlay-reveal .4s ease-out both;
}
body .hml-material-inspection-card {
  position:fixed; left:50%; top:50%; z-index:119; isolation:isolate;
  box-sizing:border-box; width:min(352px,calc((100vw - 32px) * .8));
  min-height:230px; padding:24px 19px; display:flex;
  flex-direction:column; align-items:center; justify-content:center; gap:14px;
  color:var(--tm-modal-title); text-align:center; pointer-events:none;
  font-family:Poppins,Arial,sans-serif;
  animation:tm-content-inspection-float 2.4s ease-in-out infinite alternate;
}
body .hml-material-inspection-card::before {
  content:""; position:absolute; inset:0; z-index:0;
  border:1px solid var(--tm-modal-border); border-radius:24px;
  background:var(--tm-modal-bg); box-shadow:0 18px 48px #0003;
  animation:tm-content-inspection-surface 2.4s ease-in-out infinite alternate;
}
body .hml-material-inspection-card__icon {
  position:relative; z-index:1; width:86px; height:80px;
  background:transparent url("modal-testemais-symbol.svg") center/contain no-repeat;
}
body .hml-material-inspection-card__label {
  position:relative; z-index:1; font:500 1rem/1.3 Poppins,Arial,sans-serif;
}
body .hml-material-inspection-overlay[hidden],
body .hml-material-inspection-card[hidden] { display:none!important; }
@keyframes tm-content-inspection-float {
  from { transform:translate(-50%,-46%) scale(.97); }
  to { transform:translate(-50%,-54%) scale(1); }
}
@keyframes tm-content-inspection-surface {
  from { opacity:.45; filter:blur(10px); }
  to { opacity:.88; filter:blur(2px); }
}
body .setup-warning-overlay.is-content-upload-reveal { animation:tm-content-choice-overlay-reveal .65s ease-out both; }
body .setup-warning-modal.is-content-upload-reveal { animation:tm-content-modal-reveal .8s cubic-bezier(.2,.75,.25,1) both; }
@keyframes tm-content-overlay-reveal { from { opacity:0; } to { opacity:1; } }
@keyframes tm-content-choice-overlay-reveal { from { opacity:.75; } to { opacity:1; } }
@keyframes tm-content-modal-reveal {
  from { opacity:.2; filter:blur(9px); transform:translate(-50%,-47%) scale(.98); }
  60% { opacity:.88; filter:blur(2px); transform:translate(-50%,-51%) scale(1); }
  to { opacity:1; filter:blur(0); transform:translate(-50%,-50%) scale(1); }
}
@media (prefers-reduced-motion:reduce) {
  body .hml-material-inspection-overlay,
  body .hml-material-inspection-card,
  body .hml-material-inspection-card::before,
  body .setup-warning-overlay.is-content-upload-reveal,
  body .setup-warning-modal.is-content-upload-reveal { animation:none; }
}
