/* Group and Documents tabs (group.js, docs.js). */
.gp, .dp { display: grid; gap: 16px; }
.gp-card h3 { margin: 0 0 6px; }
.gp-card h4 { margin: 14px 0 6px; font-size: 0.95rem; }
.gp-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gp-row .input { flex: 1 1 160px; min-width: 0; }
.gp-invite { font-size: 0.85rem; }
.gp-rsvp { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin: 6px 0 12px; }
.gp-people, .gp-options, .gp-acts-list, .gp-expenses, .gp-balances, .gp-settle, .gp-comments, .dp-docs, .dp-deadlines { list-style: none; margin: 0; padding: 0; }
.gp-people li, .gp-options li, .gp-acts-list li, .gp-expenses li, .gp-balances li, .gp-settle li, .dp-deadlines li {
  display: flex; gap: 10px; align-items: center; justify-content: space-between; flex-wrap: wrap;
  padding: 8px 0; border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.gp-people li:first-child, .gp-options li:first-child, .gp-acts-list li:first-child, .gp-expenses li:first-child,
.gp-balances li:first-child, .gp-settle li:first-child, .dp-deadlines li:first-child { border-top: 0; }
.gp-name { flex: 1; }
.gp-acts { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.gp-options li.is-locked { background: rgba(16, 150, 90, 0.08); border-radius: 8px; padding: 8px; }
.gp-chip { font-size: 0.75rem; padding: 2px 8px; border-radius: 999px; background: rgba(0, 0, 0, 0.06); white-space: nowrap; }
.gp-in, .dp-v-ok, .dp-done .gp-chip { background: rgba(16, 150, 90, 0.14); color: #0b6b40; }
.gp-maybe, .dp-v-unknown, .dp-due_soon .gp-chip { background: rgba(230, 150, 0, 0.16); color: #7a4d00; }
.gp-out, .dp-v-short, .dp-v-expired, .dp-overdue .gp-chip { background: rgba(200, 40, 40, 0.12); color: #9b1c1c; }
.gp-pos { color: #0b6b40; }
.gp-neg { color: #9b1c1c; }
.gp-split { border: 0; padding: 0; margin: 8px 0; display: flex; flex-wrap: wrap; gap: 6px 14px; }
.gp-split legend { width: 100%; margin-bottom: 4px; }
.gp-expense-form { margin-bottom: 12px; }
.gp-upi { margin-top: 14px; }
.gp-upi label { width: 100%; }
.gp-comments li { padding: 8px 0; border-top: 1px solid rgba(0, 0, 0, 0.08); }
.gp-comments li:first-child { border-top: 0; }
.gp-comments p { margin: 4px 0 0; overflow-wrap: anywhere; }
.gp-propose summary { cursor: pointer; margin-top: 10px; font-weight: 600; }
.gp-propose form { margin-top: 8px; }
.gp-city + .gp-city { margin-top: 10px; }
.dp-warn { color: #9b1c1c; }
.dp-entry { margin: 10px 0; padding: 10px 12px; border-radius: 10px; background: rgba(0, 0, 0, 0.035); }
.dp-entry p { margin: 4px 0; }
.dp-edit label { display: flex; flex-direction: column; gap: 4px; flex: 1 1 160px; }
.dp-docs li { padding: 4px 0; }
.dp-docs label { display: flex; gap: 8px; align-items: flex-start; }
.dp-partners { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.dp-partners p { width: 100%; margin: 0; }
.dp-partner { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: 10px; border: 1px solid rgba(0, 0, 0, 0.12); text-decoration: none; color: inherit; flex: 1 1 200px; }
.dp-foot { margin: 0; }
