#page-exercise-wizard .wizard-grid {
  display: grid;
  grid-template-columns: minmax(280px, .82fr) minmax(420px, 1.18fr);
  gap: 22px;
  margin-top: 20px;
}

#page-exercise-wizard .wizard-chat,
#page-exercise-wizard .wizard-draft-panel {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px;
  background: rgba(255, 252, 244, .62);
}

#page-exercise-wizard .wizard-chat {
  min-height: 600px;
  display: flex;
  flex-direction: column;
}

#page-exercise-wizard .wizard-messages {
  min-height: 320px;
  max-height: 480px;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 10px;
  margin: 10px 0 16px;
  padding: 4px;
}

#page-exercise-wizard .wizard-message {
  border-radius: 14px;
  padding: 11px 13px;
  white-space: pre-wrap;
}

#page-exercise-wizard .wizard-message.user { background: rgba(30, 111, 104, .12); }
#page-exercise-wizard .wizard-message.assistant { background: rgba(217, 111, 50, .12); }
#page-exercise-wizard .wizard-message.system { background: rgba(23, 33, 31, .08); }

#page-exercise-wizard .wizard-message strong {
  display: block;
  font-size: .78rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  margin-bottom: 4px;
}

#page-exercise-wizard .wizard-chat-form,
#page-exercise-wizard .wizard-draft-panel label {
  display: grid;
  gap: 6px;
}

#page-exercise-wizard .wizard-chat-form { margin-top: auto; }

#page-exercise-wizard .wizard-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
}

#page-exercise-wizard .wizard-form-grid label:nth-child(2),
#page-exercise-wizard .wizard-form-grid label:nth-child(3) { grid-column: 1 / -1; }

#page-exercise-wizard .wizard-check-grid,
#page-exercise-wizard .wizard-voice-grid,
#page-exercise-wizard .wizard-case-source-grid {
  display: grid;
  gap: 10px;
  margin: 10px 0 16px;
}

#page-exercise-wizard .wizard-check-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#page-exercise-wizard .wizard-voice-grid,
#page-exercise-wizard .wizard-case-source-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#page-exercise-wizard .wizard-check-grid label,
#page-exercise-wizard .wizard-voice-grid label:first-child {
  display: flex;
  align-items: center;
  gap: 8px;
}

#page-exercise-wizard .wizard-list {
  display: grid;
  gap: 10px;
  margin: 10px 0 18px;
}

#page-exercise-wizard .wizard-card {
  border: 1px solid var(--line);
  border-radius: 13px;
  padding: 12px;
  background: rgba(255, 255, 255, .44);
}

#page-exercise-wizard .wizard-card.unready { border-color: rgba(161, 60, 50, .5); }
#page-exercise-wizard .wizard-card.selected { border-color: var(--brand); box-shadow: 0 0 0 2px rgba(30, 111, 104, .12); }
#page-exercise-wizard .wizard-card h5 { margin: 0 0 4px; font-size: 1rem; }
#page-exercise-wizard .wizard-card p { margin: 4px 0; color: var(--muted); font-size: .92rem; }
#page-exercise-wizard .wizard-card ul { margin: 7px 0 0; padding-left: 19px; color: var(--bad); font-size: .88rem; }

#page-exercise-wizard .wizard-dimension {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border-bottom: 1px solid rgba(23, 33, 31, .08);
  padding: 8px 0;
}

#page-exercise-wizard .wizard-dimension:last-child { border-bottom: 0; }
#page-exercise-wizard .wizard-dimension input { margin-top: 4px; }
#page-exercise-wizard input[type="checkbox"] { width: auto; padding: 0; }
#page-exercise-wizard .wizard-dimension small { display: block; color: var(--muted); }
#page-exercise-wizard .wizard-preview { max-height: 250px; overflow: auto; white-space: pre-wrap; }
#page-exercise-wizard .wizard-routing { overflow-x: auto; margin: 10px 0 18px; }
#page-exercise-wizard .wizard-routing-table { width: 100%; border-collapse: collapse; font-size: .84rem; }
#page-exercise-wizard .wizard-routing-table th,
#page-exercise-wizard .wizard-routing-table td { border-bottom: 1px solid rgba(23, 33, 31, .12); padding: 8px 7px; text-align: left; vertical-align: top; }
#page-exercise-wizard .wizard-routing-table th { color: var(--muted); font-weight: 700; }
#page-exercise-wizard .wizard-routing-table tr.inactive { opacity: .55; }
#page-exercise-wizard .wizard-validation { margin: 12px 0; }
#page-exercise-wizard .wizard-validation ul { margin: 6px 0; padding-left: 20px; }
#page-exercise-wizard .wizard-validation .blocker { color: var(--bad); }
#page-exercise-wizard .wizard-validation .warning { color: var(--warn); }
#page-exercise-wizard .wizard-confirm { display: flex !important; grid-template-columns: auto 1fr; align-items: flex-start; gap: 8px; margin: 12px 0; }
#page-exercise-wizard .wizard-confirm input { margin-top: 4px; }
#page-exercise-wizard .wizard-resume { margin-top: 20px; }

@media (max-width: 900px) {
  #page-exercise-wizard .wizard-grid,
  #page-exercise-wizard .wizard-form-grid,
  #page-exercise-wizard .wizard-voice-grid,
  #page-exercise-wizard .wizard-case-source-grid { grid-template-columns: 1fr; }
  #page-exercise-wizard .wizard-check-grid { grid-template-columns: 1fr; }
  #page-exercise-wizard .wizard-form-grid label:nth-child(2),
  #page-exercise-wizard .wizard-form-grid label:nth-child(3) { grid-column: auto; }
}
