.portal-access-overview { display: grid; gap: 16px; }
.portal-access-table th:first-child { width: 26%; }
.portal-access-table th:nth-child(5) { width: 15%; }
.portal-access-table th:last-child { width: 15%; }
.portal-access-table .portal-text-action { text-align: left; }
.portal-access-qr { display: grid; justify-items: start; gap: 16px; }
.portal-access-qr img { width: 192px; height: 192px; }
.portal-editor-dialog input[type="checkbox"] { width: 18px; height: 18px; min-height: 18px; padding: 0; }
.portal-access-choice { display: flex; align-items: start; gap: 10px; margin-block: 10px; }
.portal-access-choice input { flex: 0 0 18px; }
.portal-editor-dialog fieldset { padding: 0; border: 0; }
#contentLinkFeedback:empty { display: none; }
.portal-editor-dialog [data-patient-field][hidden], .portal-editor-dialog [data-staff-field][hidden] { display: none; }
body.portal-access-dialog-open { overflow: hidden; }
.portal-access-dialog { width: min(880px, calc(100% - 24px)); padding: 0; }
.portal-access-dialog > .portal-dialog-heading { position: sticky; top: 0; z-index: 1; margin: 0;
  padding: 20px 24px; background: white; border-bottom: 1px solid var(--line); }
.portal-access-dialog .portal-dialog-heading button { flex: none; }
.portal-access-dialog-body { display: grid; gap: 24px; padding: 24px; }
.portal-access-summary { display: grid; grid-template-columns: minmax(0, 1fr) 210px; gap: 24px; }
.portal-access-dialog .portal-access-qr { gap: 10px; }
.portal-access-dialog form { display: grid; gap: 16px; }
.portal-access-dialog form h3, .portal-access-dialog form p { margin: 0; }
.portal-access-dialog form > button { justify-self: start; }
.portal-access-dialog [data-access-editor]:empty, .portal-access-dialog [data-access-qr-body]:empty { display: none; }
.portal-access-dialog [data-access-lifecycle]:empty { display: none; }
.portal-access-management { display: grid; gap: 12px; padding-top: 20px; border-top: 1px solid var(--line); }
.portal-access-management h3, .portal-access-management p { margin: 0; }
.portal-access-dialog [inert] { opacity: .65; }
@media (max-width: 700px) {
  .portal-access-dialog > .portal-dialog-heading, .portal-access-dialog-body { padding: 16px; }
  .portal-access-summary { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .portal-access-dialog .portal-access-qr { justify-items: start; }
}
