/* Kunden-Dashboard senden (assets/customer-portal.js) */
.portal-dialog { width: min(720px, calc(100vw - 24px)); }
.pt-form { display: grid; gap: 10px; }
.pt-intro { margin: 0; font-size: 13.5px; color: var(--muted); }
.pt-intro b { color: var(--text); font-weight: 600; }
.pt-sent { margin: 0; display: flex; gap: 6px; align-items: center; font-size: 12.5px; background: var(--green-soft); color: var(--green); border-radius: var(--r); padding: 6px 10px; }
.pt-rcpt { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pt-f { display: grid; gap: 4px; }
.pt-f input, .pt-form textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--line); border-radius: var(--r); padding: 7px 10px; font: inherit; font-size: 13.5px; background: var(--card); }
.pt-form textarea { resize: vertical; min-height: 110px; }
.pt-h { margin: 6px 0 0; font-size: 14px; }
.pt-rel { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pt-group { border: 1px solid var(--line); border-radius: var(--r); padding: 8px 10px; display: grid; gap: 4px; align-content: start; }
.pt-group h4 { margin: 0 0 2px; font-size: 12.5px; display: flex; gap: 6px; align-items: center; color: var(--muted); text-transform: uppercase; letter-spacing: .03em; }
.pt-item { display: flex; gap: 8px; align-items: flex-start; font-size: 13px; cursor: pointer; padding: 3px 0; }
.pt-item input { margin-top: 3px; }
.pt-item b { font-weight: 600; }
.pt-item small { display: block; color: var(--muted); font-size: 12px; }
.pt-none { margin: 0; font-size: 12.5px; color: var(--muted); }
.pt-hidden { margin: 0; font-size: 12px; color: var(--muted); display: flex; gap: 6px; align-items: center; }
.pt-err { margin: 0; min-height: 1em; color: var(--red); font-size: 12.5px; }
.pt-revoke { color: var(--red); }
.portal-dialog .dialog-foot { flex-wrap: wrap; gap: 8px; }
.portal-rel, .portal-files { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; font-size: 12.5px; color: var(--muted); margin-top: 6px; }
@media (max-width: 640px) {
  .pt-rcpt, .pt-rel { grid-template-columns: 1fr; }
}
/* Button im Kundenkopf: Männchen, nach dem Versand mit grünem Haken */
.portal-btn .pb-ic { position: relative; display: inline-grid; place-items: center; margin-right: 4px; }
.portal-btn .pb-ok { position: absolute; right: -6px; bottom: -5px; width: 12px; height: 12px; border-radius: 50%; background: var(--green); color: #fff; display: grid; place-items: center; box-shadow: 0 0 0 1.5px var(--card); }
.portal-btn .pb-ok svg { stroke-width: 3.5; }
.portal-btn.portal-sent { border-color: #c6e7d3; background: var(--green-soft); color: var(--green); }
.portal-btn.portal-sent .pb-ic > svg { color: var(--green); }
