/* Correcao definitiva v10 */
.tab-btn:nth-child(1){background:#E8F1FF!important;color:#0B3A82!important;border-color:#8DB8F4!important}.tab-btn:nth-child(1).active{background:#0B5ED7!important;color:#fff!important}
.tab-btn:nth-child(2){background:#F4E9FF!important;color:#6A238A!important;border-color:#CBA4E3!important}.tab-btn:nth-child(2).active{background:#7B2CBF!important;color:#fff!important}
.tab-btn:nth-child(3){background:#FFF2DD!important;color:#8A4700!important;border-color:#F1B76B!important}.tab-btn:nth-child(3).active{background:#D96C00!important;color:#fff!important}
.tab-btn:nth-child(4){background:#E5F8EE!important;color:#075E35!important;border-color:#74C99A!important}.tab-btn:nth-child(4).active{background:#087F46!important;color:#fff!important}
.tab-btn:nth-child(5){background:#FFE8EE!important;color:#8E1738!important;border-color:#E990A9!important}.tab-btn:nth-child(5).active{background:#C2184B!important;color:#fff!important}
.teoria-card{font-size:16px}.teoria-card .teoria-body{font-size:1em;line-height:1.65}.teoria-size-controls{display:flex;gap:6px;align-items:center;margin-left:auto}.teoria-size-btn{min-width:42px;min-height:38px;border:1px solid #8aa4c4;border-radius:10px;background:#fff;color:#062b57;font-weight:800}.teoria-size-btn.active{background:#0B5ED7;color:#fff}


/* CONSOLIDACAO VISUAL V14 - carregado por ultimo */
.tabs .tab-btn { border-style: solid !important; border-width: 1px !important; font-weight: 800 !important; }
.tabs .tab-btn .tab-label { color: inherit !important; font-weight: 900 !important; line-height: 1.05 !important; white-space: normal !important; overflow-wrap: normal !important; word-break: keep-all !important; text-align: center !important; }
.tabs .tab-btn[data-tab="tab1"] { background:#E8F1FF !important; color:#0B3A82 !important; border-color:#8DB8F4 !important; }
.tabs .tab-btn[data-tab="tab1"].active { background:#0B5ED7 !important; color:#fff !important; }
.tabs .tab-btn[data-tab="tab2"] { background:#F4E9FF !important; color:#6A238A !important; border-color:#CBA4E3 !important; }
.tabs .tab-btn[data-tab="tab2"].active { background:#7B2CBF !important; color:#fff !important; }
.tabs .tab-btn[data-tab="tab3"] { background:#FFF2DD !important; color:#8A4700 !important; border-color:#F1B76B !important; }
.tabs .tab-btn[data-tab="tab3"].active { background:#D96C00 !important; color:#fff !important; }
.tabs .tab-btn[data-tab="tab4"] { background:#E5F8EE !important; color:#075E35 !important; border-color:#74C99A !important; }
.tabs .tab-btn[data-tab="tab4"].active { background:#087F46 !important; color:#fff !important; }
.tabs .tab-btn[data-tab="tab5"] { background:#FFF7D6 !important; color:#6A4700 !important; border-color:#E1BF4D !important; }
.tabs .tab-btn[data-tab="tab5"].active { background:#B77900 !important; color:#fff !important; }

/* Ajuda compacta, sem competir com as ações de estudo */
#fase1-help-button,
.app-header .fase1-help-button,
.app-header button[data-fase1-help="true"] {
  display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:6px !important;
  width:auto !important; min-width:0 !important; min-height:34px !important; padding:6px 12px !important;
  margin-top:10px !important; border-radius:10px !important; font-size:12px !important; line-height:1 !important;
  font-weight:800 !important; white-space:nowrap !important;
}
#fase1-help-button .help-icon { font-size:13px !important; }

/* Flash cards: permitir dimensionamento adaptativo sem colapsar */
.flashcard-wrap { min-height: 420px !important; width: 100% !important; position: relative !important; }
.flashcard-inner { width: 100% !important; min-height: 420px !important; }
.flash-pergunta, .flash-resposta, .flash-hint { max-height:none !important; overflow:visible !important; white-space:normal !important; overflow-wrap:anywhere !important; }

@media(max-width:430px){
  .tabs { gap:3px !important; }
  .tabs .tab-btn { min-width:0 !important; padding:8px 3px !important; }
  .tabs .tab-btn .tab-label { font-size:9.5px !important; }
  .tabs .tab-btn[data-tab="tab3"] .tab-label { max-width:52px !important; }
}


/* Seletor de aparência compacto, no padrão do botão Como usar app */
.app-header .theme-control { gap:6px !important; }
.app-header .theme-select,
.app-header #theme-select {
  width:118px !important; min-width:118px !important;
  height:34px !important; min-height:34px !important;
  padding:5px 30px 5px 10px !important;
  border-radius:10px !important; font-size:12px !important;
  line-height:1 !important; font-weight:800 !important;
}
@media (max-width:430px) {
  .app-header .theme-select, .app-header #theme-select { width:112px !important; min-width:112px !important; }
}

/* Ajuste v17: seletor de aparencia no mesmo padrao do botao Como usar app */
.app-header .theme-select,
.app-header #theme-select,
#fase1-help-button,
.app-header .fase1-help-button {
  box-sizing: border-box !important;
  height: 38px !important;
  min-height: 38px !important;
  border-radius: 9px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}
.app-header .theme-select,
.app-header #theme-select {
  width: 132px !important;
  min-width: 132px !important;
  padding: 0 32px 0 12px !important;
  line-height: 36px !important;
}

/* V18: prevalece sobre prioridade-4 e remove somente o botão grande legado */
.app-header .header-cta:not(#fase1-help-button),
.app-header .help-btn:not(#fase1-help-button),
.app-header button[aria-label="Abrir instruções de uso do MVP"] {
  display: none !important;
}

/* V18: aparência com as mesmas dimensões do botão Como usar app */
.app-header #theme-select,
.app-header .theme-select,
#fase1-help-button {
  box-sizing: border-box !important;
  height: 34px !important;
  min-height: 34px !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}
.app-header #theme-select,
.app-header .theme-select {
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  padding: 0 28px 0 10px !important;
}

/* V21: o botão Como usar app possui modal próprio; o legado permanece invisível. */
.fase1-help-modal[hidden] { display: none !important; }
.fase1-help-modal {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 16px;
}
.fase1-help-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(4, 18, 35, .72);
  backdrop-filter: blur(3px);
}
.fase1-help-panel {
  position: relative;
  width: min(680px, 100%);
  max-height: min(88vh, 760px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: #fff;
  color: #172437;
  border: 1px solid #d8e2ee;
  border-radius: 18px;
  box-shadow: 0 24px 70px rgba(3, 20, 40, .30);
  outline: none;
}
.fase1-help-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 20px 14px;
  border-bottom: 1px solid #d8e2ee;
}
.fase1-help-kicker {
  color: #1769c2;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.fase1-help-header h2 { margin: 3px 0 0; color: #0b2c55; font-size: 24px; }
.fase1-help-close {
  width: 38px;
  height: 38px;
  min-height: 38px;
  padding: 0;
  border: 1px solid #b8c8d8;
  border-radius: 10px;
  background: #f4f7fb;
  color: #0b2c55;
  font-size: 25px;
  line-height: 1;
}
.fase1-help-body {
  overflow-y: auto;
  padding: 18px 20px;
  display: grid;
  gap: 12px;
}
.fase1-help-body article {
  padding: 14px 15px;
  border: 1px solid #d8e2ee;
  border-radius: 12px;
  background: #f8fbff;
}
.fase1-help-body h3 { margin: 0 0 6px; color: #0b2c55; font-size: 16px; }
.fase1-help-body p { margin: 0; color: #42576d; font-size: 15px; line-height: 1.55; }
.fase1-help-footer {
  padding: 14px 20px 20px;
  border-top: 1px solid #d8e2ee;
  display: flex;
  justify-content: flex-end;
}
.fase1-help-done {
  min-height: 42px;
  padding: 0 20px;
  border: 0;
  border-radius: 10px;
  background: #1769c2;
  color: #fff;
  font-weight: 800;
}
body.fase1-help-open { overflow: hidden; }
[data-theme="dark"] .fase1-help-panel { background: #0f2138; color: #edf4fd; border-color: #395774; }
[data-theme="dark"] .fase1-help-header,
[data-theme="dark"] .fase1-help-footer { border-color: #395774; }
[data-theme="dark"] .fase1-help-header h2,
[data-theme="dark"] .fase1-help-body h3 { color: #fff; }
[data-theme="dark"] .fase1-help-body article { background: #142a45; border-color: #395774; }
[data-theme="dark"] .fase1-help-body p { color: #d7e4f3; }
@media (max-width: 520px) {
  .fase1-help-modal { padding: 8px; align-items: end; }
  .fase1-help-panel { max-height: 92vh; border-radius: 16px 16px 10px 10px; }
  .fase1-help-header { padding: 16px 16px 12px; }
  .fase1-help-header h2 { font-size: 21px; }
  .fase1-help-body { padding: 14px 16px; }
  .fase1-help-footer { padding: 12px 16px 16px; }
  .fase1-help-done { width: 100%; }
}


/* V26: controle estável de tamanho do texto, sem reescala cumulativa. */
.fase1-header-tools {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 10px !important;
}
.fase1-header-tools #fase1-help-button { margin-top: 0 !important; }
.fase1-text-size-controls {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  padding: 2px !important;
  min-height: 34px !important;
  border: 1px solid rgba(255,255,255,.48) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.10) !important;
}
.fase1-text-size-btn {
  width: 34px !important;
  height: 30px !important;
  min-width: 34px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 7px !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}
.fase1-text-size-btn:hover,
.fase1-text-size-btn:focus-visible { background: rgba(255,255,255,.20) !important; }
.fase1-text-size-btn.active {
  background: #fff !important;
  color: #0b2c55 !important;
  border-color: #fff !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.18) !important;
}
.fase1-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Tamanhos exatos. Não há cálculo progressivo nem MutationObserver de fonte. */
html[data-study-text-size="small"] .teoria-text,
html[data-study-text-size="small"] .teoria-list li,
html[data-study-text-size="small"] .teoria-destaque,
html[data-study-text-size="small"] .teoria-exemplo { font-size: 14px !important; line-height: 1.55 !important; }
html[data-study-text-size="small"] .teoria-section-title { font-size: 15px !important; }
html[data-study-text-size="small"] .mind-summary-branch li,
html[data-study-text-size="small"] .mind-summary-branch p { font-size: 11px !important; }
html[data-study-text-size="small"] .mind-summary-branch h3 { font-size: 13px !important; }
html[data-study-text-size="small"] .flash-pergunta { font-size: 18px !important; }
html[data-study-text-size="small"] .flash-resposta { font-size: 14px !important; }
html[data-study-text-size="small"] .quiz-box,
html[data-study-text-size="small"] .quiz-option,
html[data-study-text-size="small"] .quiz-feedback,
html[data-study-text-size="small"] .topic-name { font-size: 13px !important; }

html[data-study-text-size="normal"] .teoria-text,
html[data-study-text-size="normal"] .teoria-list li,
html[data-study-text-size="normal"] .teoria-destaque,
html[data-study-text-size="normal"] .teoria-exemplo { font-size: 17px !important; line-height: 1.75 !important; }
html[data-study-text-size="normal"] .teoria-section-title { font-size: 18px !important; }
html[data-study-text-size="normal"] .mind-summary-branch li,
html[data-study-text-size="normal"] .mind-summary-branch p { font-size: 12.5px !important; }
html[data-study-text-size="normal"] .mind-summary-branch h3 { font-size: 15px !important; }
html[data-study-text-size="normal"] .flash-pergunta { font-size: clamp(21px,4vw,28px) !important; }
html[data-study-text-size="normal"] .flash-resposta { font-size: 18px !important; }
html[data-study-text-size="normal"] .quiz-box,
html[data-study-text-size="normal"] .quiz-option,
html[data-study-text-size="normal"] .quiz-feedback,
html[data-study-text-size="normal"] .topic-name { font-size: 15px !important; }

html[data-study-text-size="large"] .teoria-text,
html[data-study-text-size="large"] .teoria-list li,
html[data-study-text-size="large"] .teoria-destaque,
html[data-study-text-size="large"] .teoria-exemplo { font-size: 21px !important; line-height: 1.8 !important; }
html[data-study-text-size="large"] .teoria-section-title { font-size: 23px !important; }
html[data-study-text-size="large"] .mind-summary-branch li,
html[data-study-text-size="large"] .mind-summary-branch p { font-size: 16px !important; line-height: 1.55 !important; }
html[data-study-text-size="large"] .mind-summary-branch h3 { font-size: 19px !important; }
html[data-study-text-size="large"] .flash-pergunta { font-size: 31px !important; line-height: 1.5 !important; }
html[data-study-text-size="large"] .flash-resposta { font-size: 22px !important; line-height: 1.7 !important; }
html[data-study-text-size="large"] .quiz-box,
html[data-study-text-size="large"] .quiz-option,
html[data-study-text-size="large"] .quiz-feedback,
html[data-study-text-size="large"] .topic-name { font-size: 19px !important; line-height: 1.65 !important; }

@media (max-width: 430px) {
  .fase1-header-tools { gap: 6px !important; }
  .fase1-text-size-btn { width: 31px !important; min-width: 31px !important; }
  .fase1-header-tools #fase1-help-button { padding-inline: 10px !important; }
}

/* ============================================================ */
/* REFORMULAÇÃO DOS FLASHCARDS (LAYOUT ESCURO MODERNO - GCP-ACE) */
/* ============================================================ */
.fc-container {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 4px 0 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-sizing: border-box;
}

/* Barra Superior de Progresso */
.fc-top-progress-bar {
  width: 100%;
  height: 5px;
  background: #23252E;
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 2px;
}
.fc-progress-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #10B981, #22C55E);
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: 999px;
}

/* Chips de Estatísticas: Known, Learning, Remaining */
.fc-stats-bar {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-bottom: 4px;
}
.fc-stat-chip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 700;
  border: 1px solid transparent;
  transition: transform 0.15s ease;
}
.fc-stat-chip:hover {
  transform: translateY(-1px);
}
.fc-stat-known {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.25);
  color: #4ADE80;
}
.fc-stat-learning {
  background: rgba(59, 130, 246, 0.1);
  border-color: rgba(59, 130, 246, 0.25);
  color: #60A5FA;
}
.fc-stat-remaining {
  background: rgba(156, 163, 175, 0.08);
  border-color: rgba(156, 163, 175, 0.2);
  color: #9CA3AF;
}
.fc-chip-icon {
  font-size: 14px;
}
.fc-chip-count {
  font-weight: 800;
}
.fc-chip-label {
  font-size: 12px;
  font-weight: 600;
}

/* Barra de Ferramentas / Filtros */
.fc-tools-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #18191E;
  padding: 8px 12px;
  border-radius: 14px;
  border: 1px solid #272832;
}
.fc-tool-group {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1;
}
.fc-tool-label {
  font-size: 11.5px;
  font-weight: 600;
  color: #9CA3AF;
  white-space: nowrap;
}
.fc-select {
  width: 100%;
  background: #22232B;
  border: 1px solid #323440;
  color: #F3F4F6;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 600;
  outline: none;
  cursor: pointer;
}
.fc-btn-icon {
  background: #22232B;
  border: 1px solid #323440;
  color: #F3F4F6;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 14px;
  cursor: pointer;
  transition: transform 0.2s, background 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fc-btn-icon:hover {
  background: #2C2E3A;
  border-color: #4B5563;
}

/* Card Wrap e Flip 3D */
.flashcard-wrap {
  perspective: 1200px;
  min-height: 420px;
  width: 100%;
  margin: 6px 0 16px;
  cursor: pointer;
  position: relative;
}
.flashcard-inner {
  position: relative;
  width: 100%;
  min-height: 420px;
  border-radius: 22px;
  transform-style: preserve-3d;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}
.flashcard-inner.flipped {
  transform: rotateY(180deg);
}

/* Faces do Cartão */
.fc-face {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 420px;
  height: 100%;
  border-radius: 22px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 22px 20px;
  box-sizing: border-box;
  overflow-y: auto;
}

/* Face Frontal (Pergunta) */
.fc-face-front {
  background: #1E2026;
  border: 1.5px solid #2F323D;
  box-shadow: 0 10px 32px rgba(0, 0, 0, 0.45);
}
/* ============================================================ */
/* CABEÇALHO DO MODELO: SETA BRANCA + TÍTULO CENTRALIZADO + AÇÕES */
/* ============================================================ */
.fc-topbar-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 8px 4px 14px 4px !important;
  position: relative !important;
  box-sizing: border-box !important;
}
.fc-btn-back,
button.fc-btn-back,
#fc-btn-back {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  padding: 4px 10px 4px 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #FFFFFF !important;
  line-height: 1 !important;
  transition: transform 0.15s ease, opacity 0.15s ease !important;
}
.fc-btn-back:hover,
button.fc-btn-back:hover {
  transform: translateX(-2px) !important;
  opacity: 0.85 !important;
}
.fc-btn-back svg {
  display: block !important;
  stroke: #FFFFFF !important;
  fill: none !important;
}
.fc-topbar-title,
#fc-topbar-title,
div.fc-topbar-title,
h2.fc-topbar-title,
html[data-theme="dark"] .fc-topbar-title,
html[data-theme="dark"] #fc-topbar-title,
html[data-theme="dark"] div.fc-topbar-title,
html[data-theme="dark"] h2.fc-topbar-title {
  color: #FFFFFF !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  flex: 1 !important;
  font-family: inherit !important;
}
.fc-topbar-actions {
  display: inline-flex !important;
  align-items: center !important;
  gap: 16px !important;
}
.fc-btn-top-icon {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 4px !important;
  margin: 0 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #FFFFFF !important;
  transition: opacity 0.15s ease !important;
}
.fc-btn-top-icon:hover {
  opacity: 0.8 !important;
}
.fc-btn-top-icon svg {
  display: block !important;
  stroke: #FFFFFF !important;
}

/* Face Posterior (Resposta & Explicação - Modelo Exato) */
.fc-face-back {
  background: #1B3D2F !important;
  border: 1.5px solid #285A44 !important;
  box-shadow: 0 10px 36px rgba(0, 0, 0, 0.45) !important;
  transform: rotateY(180deg) !important;
  padding: 22px 20px !important;
}

/* Cabeçalho do Card (Pill e Badges) */
.fc-card-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 14px;
}
.fc-card-topbar-back {
  justify-content: flex-start !important;
  margin-bottom: 18px !important;
}
.fc-card-pill {
  background: #2A2D37;
  color: #4ADE80;
  font-size: 11.5px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(74, 222, 128, 0.25);
  letter-spacing: 0.5px;
}
.fc-section-tag {
  background: rgba(255, 255, 255, 0.06);
  color: #D1D5DB;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 190px;
}
.fc-tap-hint {
  color: #9CA3AF;
  font-size: 11.5px;
  font-weight: 500;
  margin-left: auto;
}
.fc-answer-badge {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  color: #81C784 !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  letter-spacing: 0.2px !important;
}
.fc-badge-icon {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: #2E7D32 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #FFFFFF !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

/* Corpo do Card */
.fc-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 8px 0 12px 0;
}
.fc-card-heading {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #9CA3AF;
  margin-bottom: 10px;
}
.fc-heading-correct {
  color: #8FA89B !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  margin-bottom: 14px !important;
}
.fc-heading-explanation {
  color: #8FA89B !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  margin-top: 18px !important;
  margin-bottom: 10px !important;
}

/* Tipografia das Perguntas e Respostas */
.flash-pergunta {
  color: #FFFFFF !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
  text-align: left !important;
  word-break: break-word;
}
.flash-resposta {
  color: #A5D6A7 !important;
  font-size: 16.5px !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  text-align: left !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 0 14px 0 !important;
  display: block !important;
  word-break: break-word !important;
}
.fc-explanation-wrap {
  margin-top: 8px !important;
  padding-top: 0 !important;
  border-top: none !important;
}
.fc-explanation-text {
  color: #A5D6A7 !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  text-align: left !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  word-break: break-word !important;
}

/* Rodapé do Card */
.fc-card-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 12px;
  padding-top: 8px;
}
.fc-bottom-hint {
  font-size: 11.5px;
  color: #9CA3AF;
  text-align: center;
}
.fc-tap-to-question {
  background: transparent !important;
  border: none !important;
  color: #4ADE80 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  padding: 8px 12px !important;
  transition: transform 0.15s ease, opacity 0.15s ease !important;
}
.fc-tap-to-question:hover {
  opacity: 0.85 !important;
  transform: scale(1.02) !important;
}
  font-size: 12.5px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  border-radius: 8px;
  transition: background 0.15s;
}
.fc-tap-to-question:hover {
  background: rgba(74, 222, 128, 0.12);
}

/* Container de Ações abaixo do Card - Nunca sobrepor o card */
.fc-actions-container {
  position: relative !important;
  z-index: 10 !important;
  margin-top: 18px !important;
  clear: both !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

/* Barra de Avaliação (4 Botões Estilizados) */
.fc-rating-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin: 6px 0;
}
.fc-rate-btn {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 4px !important;
  border-radius: 14px !important;
  cursor: pointer !important;
  transition: all 0.18s ease !important;
  min-height: 58px !important;
  border-width: 1.5px !important;
}
.fc-rate-btn:disabled {
  opacity: 0.35 !important;
  cursor: not-allowed !important;
  transform: none !important;
}
.fc-rate-btn:not(:disabled):hover {
  transform: translateY(-2px) !important;
}
.fc-rate-icon {
  font-size: 16px;
  margin-bottom: 2px;
}
.fc-rate-label {
  font-size: 12px;
  font-weight: 800;
}
.fc-rate-days {
  font-size: 10px;
  opacity: 0.8;
  margin-top: 1px;
}

.fc-rate-errei {
  border-color: #EF4444 !important;
  background: #251414 !important;
  color: #FCA5A5 !important;
}
.fc-rate-errei:not(:disabled):hover {
  background: #3B1C1C !important;
  border-color: #F87171 !important;
}

.fc-rate-dificil {
  border-color: #F59E0B !important;
  background: #261F13 !important;
  color: #FDE047 !important;
}
.fc-rate-dificil:not(:disabled):hover {
  background: #3B2E18 !important;
  border-color: #FBBF24 !important;
}

.fc-rate-acertei {
  border-color: #10B981 !important;
  background: #11281E !important;
  color: #6EE7B7 !important;
}
.fc-rate-acertei:not(:disabled):hover {
  background: #17382A !important;
  border-color: #34D399 !important;
}

.fc-rate-facil {
  border-color: #22C55E !important;
  background: #15803D !important;
  color: #FFFFFF !important;
}
.fc-rate-facil:not(:disabled):hover {
  background: #16A34A !important;
  border-color: #4ADE80 !important;
}

/* Linha de Navegação (Anterior, Virar, Próximo) */
.fc-nav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 8px 0;
}
.fc-nav-btn {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 16px;
  border-radius: 12px;
  background: #20222B;
  border: 1px solid #313442;
  color: #FFFFFF;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s ease;
}
.fc-nav-btn:hover {
  background: #2A2D3A;
  border-color: #4B5563;
  color: #60A5FA;
}
.fc-nav-arrow {
  font-size: 18px;
  line-height: 1;
}
.fc-flip-btn {
  padding: 10px 14px;
  border-radius: 12px;
  background: #181920;
  border: 1px solid #2B2D38;
  color: #9CA3AF;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
}
.fc-flip-btn:hover {
  background: #242632;
  color: #FFFFFF;
  border-color: #3F4453;
}

/* Caixa de Agendamento Espaçado */
.fc-schedule-box {
  background: #181A22;
  border: 1px solid #262936;
  border-radius: 10px;
  padding: 8px 12px;
  font-size: 11.5px;
  color: #9CA3AF;
  text-align: center;
  min-height: 18px;
  margin-top: 4px;
}

/* Light Theme Overrides */
html[data-theme="light"] .fc-face-front {
  background: #FFFFFF;
  border-color: #E5E7EB;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .flash-pergunta {
  color: #111827 !important;
}
html[data-theme="light"] .fc-face-back {
  background: #F0FDF4;
  border-color: #86EFAC;
}
html[data-theme="light"] .flash-resposta {
  color: #15803D !important;
}
html[data-theme="light"] .fc-explanation-text {
  background: #FFFFFF;
  color: #374151;
  border-color: #DCFCE7;
}
html[data-theme="light"] .fc-tools-bar {
  background: #F9FAFB;
  border-color: #E5E7EB;
}
html[data-theme="light"] .fc-select,
html[data-theme="light"] .fc-btn-icon,
html[data-theme="light"] .fc-nav-btn {
  background: #FFFFFF;
  border-color: #D1D5DB;
  color: #111827;
}
html[data-theme="light"] .fc-schedule-box {
  background: #F9FAFB;
  border-color: #E5E7EB;
  color: #4B5563;
}

/* Ocultação dos botões legados da barra do topo (transferidos para o modal de configurações) */
.fase1-header-tools,
#fase1-header-tools,
.app-header .fase1-header-tools,
.app-header-v2 .fase1-header-tools,
.app-header #fase1-help-button,
.app-header-v2 #fase1-help-button {
  display: none !important;
}
