/* Parties and roles (modules/20-parties). Class prefix pt-. */
.pt-tiles { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.pt-tiles .ct-tile small { display: block; color: var(--muted); font-size: 11.5px; margin-top: 3px; }
.pt-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
.pt-cols > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
.pt-note { margin-top: 4px; padding: 6px 9px; background: #f5f8fb; border-radius: 6px; overflow-wrap: anywhere; font-size: 12.5px; }
.pt-side .ct-btn { width: 100%; justify-content: center; }
.pt-acts { white-space: nowrap; }
.pt-acts form { display: inline-block; margin: 0; }
.pt-code .ct-input { width: 92px; }
.pt-list { margin: 0; padding-left: 18px; line-height: 1.6; font-size: 13px; }
.pt-checks { display: grid; gap: 6px; margin-bottom: 10px; }
.pt-consents { margin-top: 12px; }
.pt-map { display: grid; grid-template-columns: minmax(150px, 220px) 1fr; gap: 18px; align-items: center; }
.pt-edges { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 10px; position: relative; }
.pt-node { display: block; border: 1px solid #cbd7e2; border-radius: 8px; padding: 9px 11px; background: #fff; color: inherit; position: relative; }
.pt-node b { display: block; } .pt-node small { color: var(--muted); }
.pt-node.me { background: linear-gradient(160deg, var(--brand-navy-3, #123d72), var(--brand-navy, #061a36)); color: #fff; text-align: center; padding: 16px; }
.pt-node.me i { font-size: 22px; } .pt-node.me small { color: #b9cde3; }
.pt-node.own { border-style: dashed; }
.pt-rel { display: block; font-size: 10.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--brand-primary); font-weight: 700; }
a.pt-node:hover { text-decoration: none; border-color: var(--brand-primary); }
@media (max-width: 640px) { .pt-cols { grid-template-columns: 1fr; } .pt-map { grid-template-columns: 1fr; } }
