/* Sprint 10.5D — focused adaptive practice experience */
.practice-shell {
  max-width: 980px !important;
  margin-inline: auto !important;
}

.practice-topbar {
  min-height: var(--amp-header-height);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: var(--amp-space-4);
  align-items: center;
  margin-bottom: var(--amp-space-4);
  padding-bottom: var(--amp-space-3);
  border-bottom: 1px solid var(--amp-color-border);
}
.practice-topbar-copy { min-width: 0; text-align: center; }
.practice-topbar h1 {
  margin: 0.15rem 0 0;
  font-size: var(--amp-font-size-xl);
}
.practice-notice { margin-bottom: var(--amp-space-5); }
.practice-gate { padding: var(--amp-space-6); }

.practice-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--amp-space-5);
  align-items: end;
  margin-bottom: var(--amp-space-3);
}
.practice-context-copy { min-width: 0; }
.practice-context h2 {
  margin: var(--amp-space-2) 0 var(--amp-space-1);
  font-size: var(--amp-font-size-xl);
}
.practice-progress-copy {
  min-width: 110px;
  text-align: right;
  display: grid;
  gap: var(--amp-space-1);
}
.practice-progress-copy strong { font-size: var(--amp-font-size-xl); }
.practice-session-track { margin: 0 0 var(--amp-space-4); }

.practice-question-card {
  padding: clamp(1rem, 3vw, 2rem);
  box-shadow: var(--amp-shadow-medium);
}
.practice-question-heading { margin-bottom: var(--amp-space-3); }
.practice-prompt {
  max-width: 760px;
  margin: var(--amp-space-5) 0;
  font-size: clamp(1.3rem, 3vw, 1.75rem);
  line-height: 1.42;
}
.practice-answer-actions {
  margin-top: var(--amp-space-4);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--amp-space-4);
}
.practice-answer-actions .help-controls {
  margin: 0;
  flex: 1 1 auto;
}
.practice-answer-actions > #submitBtn {
  flex: 0 0 auto;
  min-width: 180px;
}
.practice-next-row {
  margin-top: var(--amp-space-4);
  padding-top: var(--amp-space-4);
  border-top: 1px solid var(--amp-color-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--amp-space-4);
}
.practice-next-row #nextBtn { flex: 0 0 auto; }

.practice-mastery-card {
  margin-top: var(--amp-space-4);
  padding: var(--amp-space-4) var(--amp-space-5);
  box-shadow: var(--amp-shadow-low);
}
.practice-mastery-card .progress-track { margin-bottom: var(--amp-space-2); }
.practice-mastery-card #recommendation { margin-bottom: 0; }

.practice-completion {
  padding: clamp(1.25rem, 4vw, 2.5rem);
  text-align: left;
  box-shadow: var(--amp-shadow-medium);
}
.practice-completion h2 {
  margin: var(--amp-space-2) 0;
  font-size: var(--amp-font-size-2xl);
}
.practice-completion-stats {
  margin: var(--amp-space-5) 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--amp-space-3);
}
.practice-completion-stats .stat {
  background: var(--amp-color-bg-subtle);
  border: 1px solid var(--amp-color-border);
  border-radius: var(--amp-radius-md);
}
.practice-completion-stats strong { font-size: var(--amp-font-size-xl); }
.practice-completion-actions { margin-top: var(--amp-space-5); }

.practice-blocked {
  display: grid;
  gap: var(--amp-space-3);
  text-align: left;
}
.practice-blocked h2 { margin: 0; }
.practice-blocked .row { margin-top: var(--amp-space-2); }

@media (max-width: 760px) {
  .practice-topbar {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
  .practice-topbar-copy {
    text-align: left;
    order: -1;
  }
  .practice-topbar > a { width: 100%; }
  .practice-context { grid-template-columns: 1fr; align-items: stretch; }
  .practice-progress-copy { text-align: left; }
  .practice-answer-actions,
  .practice-next-row { align-items: stretch; flex-direction: column; }
  .practice-answer-actions > #submitBtn,
  .practice-next-row #nextBtn { width: 100%; min-width: 0; }
  .practice-completion-stats { grid-template-columns: 1fr; }
}
