.physics-helper {
  max-width: 860px;
  margin: 2rem auto;
  border: 1px solid #d9d9d9;
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}
.physics-helper__header { padding: 1.25rem 1.5rem; border-bottom: 1px solid #e7e7e7; background: #f7f7f7; }
.physics-helper__header h2 { margin: 0 0 0.35rem; font-size: 1.6rem; }
.physics-helper__header p { margin: 0; color: #555; }
.physics-helper__access { padding: 1.25rem 1.5rem 1.5rem; background: #fff; }
.physics-helper__privacy { margin-bottom: 1.25rem; padding: 1rem 1.1rem; border: 1px solid #dcdcdc; border-radius: 12px; background: #f8f8f8; }
.physics-helper__privacy h3 { margin: 0 0 0.6rem; font-size: 1.2rem; }
.physics-helper__privacy p { margin: 0.55rem 0; line-height: 1.55; }
.physics-helper label { display: block; margin-bottom: 0.4rem; font-weight: 700; }
.physics-helper__access-row { display: flex; gap: 0.75rem; align-items: center; }
.physics-helper__access-input, .physics-helper__select, .physics-helper textarea { box-sizing: border-box; border: 1px solid #cfcfcf; border-radius: 10px; padding: 0.75rem; font: inherit; }
.physics-helper__access-input { flex: 1; min-width: 0; }
.physics-helper__access-message { min-height: 1.25rem; margin: 0.75rem 0 0; color: #8a1f11; font-weight: 600; }
.physics-helper__controls { padding: 1rem 1.5rem; border-bottom: 1px solid #e7e7e7; }
.physics-helper__select, .physics-helper textarea { width: 100%; }
.physics-helper__messages { min-height: 300px; max-height: 520px; overflow-y: auto; padding: 1.25rem 1.5rem; background: #fbfbfb; }
.physics-helper__message { margin-bottom: 1rem; padding: 0.9rem 1rem; border-radius: 12px; line-height: 1.5; }
.physics-helper__message--assistant { background: #ffffff; border: 1px solid #e2e2e2; }
.physics-helper__message--student { background: #f0f4ff; border: 1px solid #d9e2ff; }
.physics-helper__message-label { font-size: 0.82rem; font-weight: 800; margin-bottom: 0.35rem; color: #333; }
.physics-helper__message-body { color: #111; }
.physics-helper__form { padding: 1rem 1.5rem 1.5rem; border-top: 1px solid #e7e7e7; }
.physics-helper textarea { resize: vertical; min-height: 90px; }
.physics-helper button { margin-top: 0.75rem; border: 0; border-radius: 10px; padding: 0.75rem 1rem; font-weight: 800; cursor: pointer; background: #111; color: #fff; }
.physics-helper button:disabled { opacity: 0.65; cursor: not-allowed; }
.physics-helper__chat[hidden], .physics-helper__access[hidden] { display: none; }
@media (max-width: 600px) { .physics-helper__access-row { display: block; } .physics-helper__access-row button { width: 100%; } }
