/* I prodotti di un'agenzia, nella pagina Agency. */
.ag-all { display: flex; align-items: center; gap: 8px; margin: 4px 0 8px; padding: 8px 12px; border-bottom: 1px solid #eee; font-weight: 700; cursor: pointer; }
.ag-products { list-style: none; margin: 0; padding: 0; max-height: 360px; overflow-y: auto; }
.ag-products li label { display: flex; align-items: center; gap: 8px; margin: 0; padding: 6px 12px; border-radius: 4px; cursor: pointer; }
.ag-products li label:hover { background: #f5f5f5; }
.ag-products li label span:first-of-type { flex: 1; }
.ag-id { color: #9B9B9B; font-size: 12px; }

/* Partner Hub dell'agenzia: interruttore, persone, invito. */
.hub-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hub-switch { display: flex; align-items: center; gap: 8px; margin: 0; font-weight: 700; cursor: pointer; }
.hub-note { margin: 8px 0 12px; font-size: 13px; color: #6c757d; }
.hub-note.warn { color: #b02a37; }
.hub-users { list-style: none; margin: 0 0 16px; padding: 0; border-top: 1px solid #eee; }
.hub-users li { display: flex; align-items: center; gap: 10px; padding: 8px 4px; border-bottom: 1px solid #eee; font-size: 13px; }
.hub-users .hub-who { flex: 1; min-width: 0; }
.hub-users .hub-who strong { display: block; }
.hub-users .hub-who span { color: #6c757d; word-break: break-all; }
.hub-badge { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 10px; background: #eef1f6; color: #495057; white-space: nowrap; }
.hub-badge.invited { background: #fff4d6; color: #997404; }
.hub-badge.disabled { background: #fdecee; color: #b02a37; }
.hub-users button { font-size: 12px; padding: 4px 10px; }
.hub-invite { display: flex; flex-direction: column; gap: 8px; }
.hub-msg { margin: 0; font-size: 13px; min-height: 18px; }
.hub-msg.ok { color: #198754; }
.hub-msg.err { color: #b02a37; }
.hub-trial { display: flex; flex-direction: column; gap: 8px; margin: 0 0 16px; padding-bottom: 16px; border-bottom: 1px solid #eee; }
.hub-trial-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hub-trial-row label { margin: 0; font-size: 13px; }
.hub-trial-row input { width: 110px; }
.hub-trial .hub-note { margin: 0; }
.hub-trial button { align-self: flex-start; }
