.mock-review {
  --review-text: #263249;
  --review-muted: #526176;
  --review-border: #dce3ec;
  --review-good: #227351;
  --review-improve: #98621a;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin: 14px 0;
  padding: 18px;
  border: 1px solid var(--review-border);
  border-radius: 16px;
  background: #fff;
  color: var(--review-text);
  font: 400 16px/1.65 system-ui, -apple-system, "Segoe UI", sans-serif;
  text-align: left;
  overflow-wrap: anywhere;
}
.mock-review *, .mock-review *::before, .mock-review *::after { box-sizing: border-box; }
.mock-review .mock-review__header { display: flex; gap: 12px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.mock-review .mock-review__header strong { font-size: 17px; color: var(--review-text); }
.mock-review .mock-review__score { padding: 3px 12px; border-radius: 9px; background: #edf1fc; color: #353b72; font-size: 17px; font-weight: 750; white-space: nowrap; }
.mock-review .mock-review__criteria { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 12px 0 4px; font-size: 14px; line-height: 1.5; color: var(--review-muted); }
.mock-review .mock-review__criteria span { display: inline-flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.mock-review .mock-review__criteria b { color: var(--review-text); white-space: nowrap; }
.mock-review .mock-review__section { margin-top: 20px; padding: 0 0 0 13px; border-left: 3px solid var(--review-border); }
.mock-review .mock-review__section--good { border-left-color: var(--review-good); }
.mock-review .mock-review__section--improve { border-left-color: var(--review-improve); }
.mock-review .mock-review__section h4 { margin: 0 0 9px; padding: 0; font: 700 15px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif; color: var(--review-text); text-align: left; }
.mock-review .mock-review__section p { margin: 0 0 12px; padding: 0; font: inherit; color: var(--review-text); max-width: 72ch; text-align: left; }
.mock-review .mock-review__section p:last-child { margin-bottom: 0; }
.mock-review .mock-review__note { margin: 16px 0 0; padding: 12px 0 0; border-top: 1px solid var(--review-border); font: 400 14px/1.6 system-ui, -apple-system, "Segoe UI", sans-serif; color: var(--review-muted); }
.mock-written-answer { margin: 8px 0; padding: 14px; border: 1px solid #dce3ec; border-radius: 14px; background: #f9fafb; color: #263249; text-align: left; }
.mock-written-answer > strong { display: block; margin-bottom: 10px; }
.mock-written-answer > div { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 16px; line-height: 1.65; }
@media (max-width: 420px) {
  .mock-review { padding: 14px 12px; border-radius: 12px; }
  .mock-review .mock-review__section { padding-left: 10px; }
  .mock-review .mock-review__criteria { gap: 8px 12px; }
}
