.writing-source-comment {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  padding: 12px;
  border: 1px solid #d7dde5;
  border-radius: 6px;
  background: #ffffff;
}

.writing-source-comment h4 {
  margin: 0;
  color: #1f2a37;
  font-size: 14px;
}

.writing-source-comment p {
  color: #4b5563;
  font-size: 13px;
  line-height: 1.6;
}

.writing-source-overview {
  border-color: #b7d3f3;
  background: #f3f8ff;
}

.writing-exam-mode .exam-header {
  position: sticky;
  top: 0;
  z-index: 18;
  padding: 8px 0 10px;
  background: #f3f6fb;
}

.exam-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.writing-top-model-button {
  display: none;
  align-items: center;
  justify-content: center;
  min-width: 136px;
  min-height: 54px;
  padding: 0 18px;
  border: 0;
  border-radius: 8px;
  background: #ff4b42;
  color: #ffffff;
  box-shadow: 0 10px 24px rgba(255, 75, 66, 0.28);
  cursor: pointer;
  font: inherit;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0;
}

.writing-exam-mode .writing-top-model-button {
  display: inline-flex;
}

.writing-top-model-button[hidden] {
  display: none;
}

.writing-top-model-button:hover {
  background: #e83f38;
}

.writing-top-model-button.is-active {
  background: #111827;
  box-shadow: 0 10px 24px rgba(17, 24, 39, 0.24);
}

.writing-editor-body {
  grid-template-rows: minmax(0, 1fr);
}

.writing-composer-view {
  display: grid;
  grid-template-rows: minmax(280px, 1fr) auto;
  min-height: 0;
}

.writing-study-view {
  min-height: 0;
  overflow: auto;
  background: #f7f9fb;
}

.writing-composer-view[hidden],
.writing-study-view[hidden] {
  display: none;
}

.writing-exam-study {
  min-height: 100%;
  margin: 0;
  padding: 18px;
}

.writing-exam-study .writing-study-panel {
  margin-top: 0;
}

.writing-exam-study-actions,
.writing-study-return-bar {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}

.writing-study-return-bar {
  position: sticky;
  top: 0;
  z-index: 4;
  padding: 6px 0;
  background: rgba(248, 250, 252, 0.96);
}

.writing-exam-study-actions.bottom,
.writing-study-return-bar.bottom {
  position: static;
  margin-top: 10px;
  margin-bottom: 0;
  padding: 0;
  background: transparent;
}

.writing-return-button {
  border-color: #111827;
  background: #111827;
  color: #ffffff;
  font-weight: 900;
  white-space: nowrap;
}

.writing-return-button:hover {
  background: #1f2937;
}

@media (max-width: 720px) {
  .exam-header-actions {
    align-items: stretch;
    justify-content: stretch;
  }

  .writing-top-model-button,
  .writing-exam-mode .timer {
    width: 100%;
  }
}
