.wtp-summary { max-width: 280px; line-height: 1.6; overflow-wrap: anywhere; }
.wtp-avatars { display: flex; flex-wrap: wrap; gap: 5px; max-width: 170px; }
.wtp-avatars img { width: 38px; height: 38px; object-fit: cover; border-radius: 4px; border: 1px solid #e5e7eb; }
#wechatTeacherProfilesModal { pointer-events: auto; }
#wechatTeacherProfilesModal .wtp-modal { width: min(1100px, 96vw); max-width: 1100px; border-radius: 8px; }
.wtp-toolbar { margin-bottom: 12px; }
.wtp-table-wrap { overflow-x: auto; }
.wtp-table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.wtp-table th, .wtp-table td { padding: 10px 8px; vertical-align: top; border-bottom: 1px solid #e5e7eb; }
.wtp-table th { color: #4b5563; font-size: 13px; text-align: left; }
.wtp-table th:nth-child(1) { width: 150px; }
.wtp-table th:nth-child(2) { width: 280px; }
.wtp-table th:nth-child(4) { width: 80px; }
.wtp-table input, .wtp-table textarea { box-sizing: border-box; width: 100%; min-width: 0; padding: 8px; border: 1px solid #d1d5db; border-radius: 4px; font: inherit; font-size: 14px; }
.wtp-table textarea { resize: vertical; min-height: 84px; }
.wtp-photo { display: flex; align-items: flex-start; gap: 8px; }
.wtp-photo img { width: 44px; height: 44px; flex-shrink: 0; object-fit: cover; border-radius: 4px; }
.wtp-error { color: #dc2626; font-size: 14px; margin-top: 12px; overflow-wrap: anywhere; }
@media (max-width: 760px) { .wtp-table { min-width: 850px; } }
