/* ─────────────────────────────────────────────────────────────
   EHR-mirror "Import to CRM" UI
   Conceptual neighbor: cross-cutting EHR→CRM import flow.
   Loaded by: templates/base/bundles/css.html (always — import
   buttons appear on most EHR list pages, so global is simpler
   than per-page). Consumer templates:
     - templates/ehr_mirror/partials/_crm_link_panel.html
     - templates/ehr_mirror/imports/cascade_summary.html
     - import buttons sprinkled across the EHR list templates
       (patient_detail, transaction_list, etc.)

   Tokens come from core/css/tokens.css; we reuse the existing
   .badge / .btn primitives and only add the layout / status colors
   that are specific to the import flow.
   ───────────────────────────────────────────────────────────── */


/* ── CRM ↔ EHR link panel ─────────────────────────────────── */

.ehr-crm-link-panel__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.35rem 0;
    border-bottom: 1px solid var(--border-color, #e9ecef);
    font-size: 0.8125rem;
}

.ehr-crm-link-panel__row:last-of-type {
    border-bottom: 0;
}

.ehr-crm-link-panel__label {
    color: var(--text-sub, #6c757d);
    font-weight: 600;
}

.ehr-crm-link-panel__value {
    color: var(--text-heading, #212529);
}

.ehr-crm-link-panel__empty {
    margin: 0 0 0.75rem;
}

.ehr-crm-link-panel__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
}


/* ── Status badges ────────────────────────────────────────── */

.ehr-crm-link-panel__badge {
    font-weight: 600;
    text-transform: capitalize;
    padding: 0.25rem 0.625rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.ehr-crm-link-panel__badge--linked,
.ehr-crm-link-panel__badge--synced {
    background: rgba(25, 135, 84, 0.12);
    color: #146c43;
}

.ehr-crm-link-panel__badge--unlinked {
    background: rgba(108, 117, 125, 0.12);
    color: #495057;
}

.ehr-crm-link-panel__badge--pending {
    background: rgba(255, 193, 7, 0.18);
    color: #997404;
}

.ehr-crm-link-panel__badge--conflict {
    background: rgba(214, 51, 132, 0.14);
    color: #ab296a;
}

.ehr-crm-link-panel__badge--error {
    background: rgba(220, 53, 69, 0.14);
    color: #b02a37;
}


/* ── In-row import mini-button (list templates) ───────────── */

.ehr-import-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.55rem;
    font-size: 0.75rem;
    line-height: 1.1;
    border-radius: 999px;
    border: 1px solid var(--border-color, #ced4da);
    background: transparent;
    color: var(--text-sub, #6c757d);
    cursor: pointer;
    transition: background-color 0.12s ease-in-out, color 0.12s ease-in-out, border-color 0.12s ease-in-out;
}

.ehr-import-btn:hover:not(:disabled) {
    background: rgba(13, 110, 253, 0.08);
    border-color: rgba(13, 110, 253, 0.4);
    color: #0a58ca;
}

.ehr-import-btn:disabled,
.ehr-import-btn[aria-disabled='true'] {
    opacity: 0.5;
    cursor: not-allowed;
}

.ehr-import-btn--linked {
    color: #146c43;
    border-color: rgba(25, 135, 84, 0.35);
    background: rgba(25, 135, 84, 0.08);
}

.ehr-import-btn--linked:hover {
    background: rgba(25, 135, 84, 0.16);
    color: #146c43;
}

.ehr-import-form {
    display: inline-block;
    margin: 0;
}


/* ── Patient-detail header import group ───────────────────── */

.ehr-import-header-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
    margin-bottom: 1rem;
}


/* ── Cascade summary page ─────────────────────────────────── */

.ehr-cascade-summary__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0.75rem;
    margin: 1rem 0;
}

.ehr-cascade-summary__tile {
    background: var(--surface-soft, #f8f9fa);
    border: 1px solid var(--border-color, #e9ecef);
    border-radius: 0.5rem;
    padding: 0.875rem 1rem;
    text-align: center;
}

.ehr-cascade-summary__tile-label {
    display: block;
    font-size: 0.75rem;
    color: var(--text-sub, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.25rem;
}

.ehr-cascade-summary__tile-value {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-heading, #212529);
}

.ehr-cascade-summary__errors {
    margin-top: 1rem;
}

.ehr-cascade-summary__errors-list {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0;
    font-size: 0.8125rem;
    color: #b02a37;
}

.ehr-cascade-summary__errors-list li {
    padding: 0.25rem 0;
    border-bottom: 1px dashed rgba(220, 53, 69, 0.2);
}
