/* Chat-first workspace: keep the conversation as the primary surface. */
main {
  max-width: 1540px;
  padding-left: 24px;
  padding-right: 24px;
}

.workspace {
  height: min(1000px, calc(100vh - 32px));
  min-height: 760px;
  grid-template-columns: 220px minmax(0, 1fr);
}

.workspace > aside { padding: 24px 16px; }

.panel {
  grid-template-rows: auto minmax(0, 1fr) auto auto auto;
  min-height: 0;
}

.messages {
  min-height: 0;
  max-height: none;
  padding: 32px clamp(24px, 4vw, 64px);
  scrollbar-width: thin;
}

.msg {
  max-width: 88%;
  margin-bottom: 24px;
  font-size: 16px;
  line-height: 1.82;
}

.msg.ai {
  padding: 28px 30px;
  border-radius: 4px 22px 22px 22px;
}

@media (max-width: 760px) {
  main { padding-left: 8px; padding-right: 8px; }
  .workspace {
    height: calc(100dvh - 16px);
    min-height: 640px;
    display: flex;
    flex-direction: column;
  }
  .workspace > aside { flex: 0 0 auto; padding: 12px 10px; }
  .panel { flex: 1; min-height: 0; }
  .panel-head { height: 60px; padding: 0 14px; }
  .messages { min-height: 0; max-height: none; padding: 18px 12px; }
  .msg { max-width: 96%; font-size: 15px; }
  .msg.ai { padding: 20px 18px; }
  form {
    position: relative;
    margin: 0 8px calc(8px + env(safe-area-inset-bottom));
  }
}
