.progress-panel {
  grid-column: 1 / -1;
}
.progress-panel > summary {
  cursor: pointer;
  padding: 21px 24px;
  min-height: 64px;
  font-size: 14px;
}
.progress-panel > summary span {
  margin-left: 18px;
  font-size: 12px;
  color: var(--muted);
}
.progress-panel > summary h2 {
  display: inline;
  margin: 0;
  font: 700 14px Arial, Helvetica, sans-serif;
  letter-spacing: normal;
}
.progress-content {
  max-width: 740px;
  padding: 0 24px 24px;
}
.progress-content h3 {
  font-size: 17px;
  margin: 23px 0 8px;
}
.progress-caption {
  font-size: 12px;
  color: var(--muted);
}
.progress-content label {
  display: block;
  font-size: 13px;
  font-weight: 700;
  margin: 19px 0 9px;
}
.progress-content textarea {
  font: 14px/1.5 monospace;
  color: var(--ink);
  background: var(--white);
  width: 100%;
  border: 1px solid #abb6a3;
  border-radius: 4px;
  padding: 12px;
  resize: vertical;
  overflow-wrap: anywhere;
}
.progress-content textarea:focus-visible {
  outline: 3px solid #b84c24;
  outline-offset: 4px;
}
.progress-content button {
  margin-top: 10px;
}
.save-review, .save-confirm {
  margin-top: 20px;
  padding: 18px;
  border: 1px solid var(--line);
  background: #eef1e6;
  border-radius: 4px;
  font-size: 13px;
}
.save-confirm {
  background: #fff3e4;
  border-color: #d4af89;
}
.save-review p:last-child, .save-confirm p:last-child {
  margin-bottom: 0;
}
.progress-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.progress-actions button {
  flex: 1 1 180px;
}
.save-message, .save-error {
  padding: 13px;
  font-size: 13px;
  margin: 17px 0 0;
  border-radius: 4px;
  background: #e1ebd4;
}
.save-error {
  background: #fff0dc;
  border: 1px solid #caa070;
}
.progress-content .reset-button {
  text-align: left;
  width: auto;
  padding-left: 0;
  margin-top: 20px;
}
@media (max-width: 650px) {
  .progress-panel > summary {
    padding: 18px 20px;
  }
  .progress-panel > summary span {
    display: block;
    margin: 9px 0 0 16px;
    line-height: 1.5;
  }
  .progress-content {
    padding: 0 20px 20px;
  }
  .progress-content textarea {
    font-size: 16px;
  }
}
