.mconnector-connection { scroll-margin-top: 6rem; }
.mconnector-connection p { max-width: 82ch; }
.mconnector-destination { display: flex; gap: .5rem 1rem; flex-wrap: wrap; align-items: center; padding: .75rem 1rem; border: 1px solid var(--stroke); border-radius: 12px; background: var(--surface-subtle, rgba(95, 136, 201, .06)); }
.mconnector-destination span { color: var(--muted); font-size: .82rem; }
.mconnector-destination strong { overflow-wrap: anywhere; font-size: .9rem; }
.mconnector-profiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0 1.25rem; }
.mconnector-profile { border: 1px solid var(--stroke); border-radius: 14px; padding: .9rem 1rem; min-width: 0; }
.mconnector-profile-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .5rem; margin-bottom: .45rem; }
.mconnector-profile h3 { margin: 0; font-size: .94rem; }
.mconnector-profile code { color: var(--muted); font-size: .76rem; overflow-wrap: anywhere; }
.mconnector-profile-status { color: var(--muted); font-size: .72rem; border-radius: 99px; background: rgba(130, 145, 171, .12); padding: .25rem .5rem; }
.mconnector-profile-status[data-ready="true"] { color: var(--success, #61dfad); background: rgba(26, 173, 116, .14); }
.mconnector-form { display: grid; gap: .9rem; }
.mconnector-form .field { display: grid; gap: .45rem; }
.mconnector-form input[type="text"] { width: min(100%, 30rem); min-width: 0; }
.mconnector-confirmation { display: flex; gap: .65rem; align-items: flex-start; font-size: .88rem; }
.mconnector-confirmation input { flex: 0 0 auto; margin-top: .16rem; }
.mconnector-actions { display: flex; gap: .75rem; justify-content: flex-start; flex-wrap: wrap; margin-top: .3rem; }
.mconnector-download { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--stroke); }
.mconnector-download .field-help { margin: .65rem 0 0; }
.mconnector-message { margin: .9rem 0 0; font-size: .87rem; }
.mconnector-message[data-tone="danger"] { color: var(--danger, #ff999f); }
.mconnector-message[data-tone="warning"] { color: var(--warning, #edc07d); }
.mconnector-message[data-tone="success"] { color: var(--success, #61dfad); }
@media (max-width: 600px) {
  .mconnector-profiles { grid-template-columns: minmax(0, 1fr); }
  .mconnector-actions > button, .mconnector-download > button { width: 100%; white-space: normal; }
}

.portal-diagnostics { margin-top: 1rem; padding: 1rem; border: 1px solid var(--stroke); border-radius: 14px; min-width: 0; }
.portal-diagnostics[hidden] { display: none; }
.portal-diagnostics h3, .portal-diagnostics h4 { margin: 0 0 .5rem; font-size: .95rem; }
.portal-diagnostics p { overflow-wrap: anywhere; }
.portal-diagnostics .mconnector-profiles { margin-bottom: 0; }
.portal-diagnostic-code { display: inline-block; max-width: 100%; overflow-wrap: anywhere; font-size: .76rem; color: var(--muted); }

.portal-transfer-tabs { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 1.1rem; }
.portal-transfer-tabs button { white-space: normal; text-align: left; }
.portal-transfer-tabs [aria-selected="true"] { background: var(--primary, #2864dc); color: #fff; }
[data-transfer-panel][hidden], .portal-database-form[hidden] { display: none; }
.portal-database-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.portal-database-fields input, .portal-database-fields select { width: 100%; min-width: 0; }
.portal-database-counters { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .6rem; margin: 1rem 0; }
.portal-database-counters > div { display: grid; gap: .3rem; padding: .75rem; border: 1px solid var(--stroke); border-radius: 12px; }
.portal-database-counters strong { font-size: 1.2rem; }
.portal-database-counters span { color: var(--muted); font-size: .8rem; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .portal-database-fields { grid-template-columns: minmax(0,1fr); }
  .portal-database-counters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .portal-transfer-tabs > button { width: 100%; }
}
.portal-database-counters strong { min-width: 0; overflow-wrap: anywhere; }
.portal-database-automation { margin-top: 1.25rem; border-top: 1px solid var(--stroke); padding-top: 1rem; }
.portal-database-automation .secondary-button, [data-transfer-panel="database"] > a.secondary-button { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.portal-database-processing-error { margin-top: .75rem; padding: .75rem; border: 1px solid var(--danger, #e58989); border-radius: 12px; }
