﻿/* ==========================================================================
   Panoul de detalii al unui punct de lucru afiliat (Harta-Clinici, mod afiliat)
   Tot ce e aici e sub #divModalDetaliiDateAfiliat, ca sa nu atinga panoul de clinica.
   ========================================================================== */

#divModalDetaliiDateAfiliat,
#modalListaAfiliatiRezervati,
#modalDraftContractAfiliati {
    --pa-principal: #5B45D1;
    --pa-principal-inchis: #4330B0;
    --pa-text: #1F1B3A;
    --pa-text-secundar: #5E5A78;
    --pa-linie: #E7E4F2;
    --pa-nuanta: #F4F2FC;
    --pa-fundal-usor: #FAFAFD;
    --pa-succes: #137A52;
    --pa-succes-fundal: #E6F5EE;
    --pa-avertizare: #7A3A05;
    --pa-avertizare-icon: #9A4A06;
    --pa-avertizare-fundal: #FDF1E4;
    --pa-neutru: #3D3A52;
    --pa-neutru-fundal: #F4F4F7;
    --pa-pericol: #B42318;
    text-align: left;
    color: var(--pa-text);
    font-size: 15px;
    line-height: 1.45;
}

    /* Radacina e afisata/ascunsa de Harta-Clinici.js cu show()/hide(), care ii pun display inline;
       de aceea layout-ul sta pe un wrapper interior, nu pe radacina. */
    #divModalDetaliiDateAfiliat .pa-continut,
    #modalListaAfiliatiRezervati .pa-continut,
    #modalDraftContractAfiliati .pa-continut {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    #divModalDetaliiDateAfiliat .material-symbols-outlined,
    #modalListaAfiliatiRezervati .material-symbols-outlined,
    #modalDraftContractAfiliati .material-symbols-outlined {
        font-size: 20px;
        line-height: 1;
        flex-shrink: 0;
    }

    /* ---------- antet ---------- */

    #divModalDetaliiDateAfiliat .pa-antet,
    #modalListaAfiliatiRezervati .pa-antet,
    #modalDraftContractAfiliati .pa-antet {
        display: flex;
        align-items: flex-start;
        gap: 14px;
        /* loc pentru butonul de inchidere al panoului, care sta pe coltul din dreapta */
        padding-right: 36px;
    }

    #divModalDetaliiDateAfiliat .pa-iconita,
    #modalListaAfiliatiRezervati .pa-iconita,
    #modalDraftContractAfiliati .pa-iconita {
        flex-shrink: 0;
        width: 52px;
        height: 52px;
        border-radius: 14px;
        background: var(--pa-nuanta);
        color: var(--pa-principal);
        display: flex;
        align-items: center;
        justify-content: center;
    }

        #divModalDetaliiDateAfiliat .pa-iconita .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-iconita .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-iconita .material-symbols-outlined {
            font-size: 26px;
        }

    #divModalDetaliiDateAfiliat .pa-iconita-gri,
    #modalListaAfiliatiRezervati .pa-iconita-gri,
    #modalDraftContractAfiliati .pa-iconita-gri {
        background: #EFEEF3;
        color: #55526A;
    }

    #divModalDetaliiDateAfiliat .pa-titlu,
    #modalListaAfiliatiRezervati .pa-titlu,
    #modalDraftContractAfiliati .pa-titlu {
        flex-grow: 1;
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

        #divModalDetaliiDateAfiliat .pa-titlu h2,
        #modalListaAfiliatiRezervati .pa-titlu h2,
        #modalDraftContractAfiliati .pa-titlu h2 {
            margin: 0;
            font-family: Raleway, sans-serif;
            font-size: 22px;
            font-weight: 800;
            line-height: 1.2;
            color: var(--pa-principal);
            overflow-wrap: anywhere;
        }

    #divModalDetaliiDateAfiliat.pa-stare-alocatalteiclinici .pa-titlu h2 {
        color: var(--pa-neutru);
    }

    #divModalDetaliiDateAfiliat .pa-subtitlu,
    #modalListaAfiliatiRezervati .pa-subtitlu,
    #modalDraftContractAfiliati .pa-subtitlu {
        font-size: 14px;
        color: var(--pa-text-secundar);
    }

    #divModalDetaliiDateAfiliat .pa-separator,
    #modalListaAfiliatiRezervati .pa-separator,
    #modalDraftContractAfiliati .pa-separator {
        margin: 0 2px;
    }

    #divModalDetaliiDateAfiliat .pa-id,
    #modalListaAfiliatiRezervati .pa-id,
    #modalDraftContractAfiliati .pa-id {
        font-weight: 600;
    }

    /* ---------- adresa si etichete ---------- */

    #divModalDetaliiDateAfiliat .pa-locatie,
    #modalListaAfiliatiRezervati .pa-locatie,
    #modalDraftContractAfiliati .pa-locatie {
        display: flex;
        flex-direction: column;
        gap: 12px;
        padding: 14px 16px;
        border-radius: 14px;
        background: var(--pa-fundal-usor);
        border: 1px solid var(--pa-linie);
    }

    #divModalDetaliiDateAfiliat .pa-adresa,
    #modalListaAfiliatiRezervati .pa-adresa,
    #modalDraftContractAfiliati .pa-adresa {
        display: flex;
        align-items: flex-start;
        gap: 10px;
    }

        #divModalDetaliiDateAfiliat .pa-adresa .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-adresa .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-adresa .material-symbols-outlined {
            color: var(--pa-text-secundar);
        }

    #divModalDetaliiDateAfiliat .pa-etichete,
    #modalListaAfiliatiRezervati .pa-etichete,
    #modalDraftContractAfiliati .pa-etichete {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

        #divModalDetaliiDateAfiliat .pa-etichete:empty,
        #modalListaAfiliatiRezervati .pa-etichete:empty,
        #modalDraftContractAfiliati .pa-etichete:empty {
            display: none;
        }

    #divModalDetaliiDateAfiliat .pa-eticheta,
    #modalListaAfiliatiRezervati .pa-eticheta,
    #modalDraftContractAfiliati .pa-eticheta {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 12px;
        border-radius: 999px;
        font-size: 13px;
        font-weight: 600;
        line-height: 1.2;
    }

        #divModalDetaliiDateAfiliat .pa-eticheta .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-eticheta .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-eticheta .material-symbols-outlined {
            font-size: 16px;
        }

    #divModalDetaliiDateAfiliat .pa-eticheta-succes,
    #modalListaAfiliatiRezervati .pa-eticheta-succes,
    #modalDraftContractAfiliati .pa-eticheta-succes {
        background: var(--pa-succes-fundal);
        color: var(--pa-succes);
    }

    #divModalDetaliiDateAfiliat .pa-eticheta-avertizare,
    #modalListaAfiliatiRezervati .pa-eticheta-avertizare,
    #modalDraftContractAfiliati .pa-eticheta-avertizare {
        background: var(--pa-avertizare-fundal);
        color: var(--pa-avertizare-icon);
    }

    #divModalDetaliiDateAfiliat .pa-eticheta-principal,
    #modalListaAfiliatiRezervati .pa-eticheta-principal,
    #modalDraftContractAfiliati .pa-eticheta-principal {
        background: var(--pa-nuanta);
        color: var(--pa-principal);
    }

    #divModalDetaliiDateAfiliat .pa-eticheta-neutru,
    #modalListaAfiliatiRezervati .pa-eticheta-neutru,
    #modalDraftContractAfiliati .pa-eticheta-neutru {
        background: #EFEEF3;
        color: #55526A;
    }

    /* ---------- estimari ---------- */

    #divModalDetaliiDateAfiliat .pa-sectiune,
    #modalListaAfiliatiRezervati .pa-sectiune,
    #modalDraftContractAfiliati .pa-sectiune {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    #divModalDetaliiDateAfiliat .pa-supratitlu,
    #modalListaAfiliatiRezervati .pa-supratitlu,
    #modalDraftContractAfiliati .pa-supratitlu {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--pa-text-secundar);
    }

    #divModalDetaliiDateAfiliat .pa-grila-estimari,
    #modalListaAfiliatiRezervati .pa-grila-estimari,
    #modalDraftContractAfiliati .pa-grila-estimari {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    #divModalDetaliiDateAfiliat .pa-placuta,
    #modalListaAfiliatiRezervati .pa-placuta,
    #modalDraftContractAfiliati .pa-placuta {
        display: flex;
        flex-direction: column;
        gap: 6px;
        padding: 14px 16px;
        border-radius: 14px;
        border: 1px solid var(--pa-linie);
        background: #FFFFFF;
    }

    #divModalDetaliiDateAfiliat .pa-placuta-evidentiata,
    #modalListaAfiliatiRezervati .pa-placuta-evidentiata,
    #modalDraftContractAfiliati .pa-placuta-evidentiata {
        grid-column: 1 / -1;
        background: var(--pa-nuanta);
        border-color: transparent;
    }

    #divModalDetaliiDateAfiliat .pa-placuta-eticheta,
    #modalListaAfiliatiRezervati .pa-placuta-eticheta,
    #modalDraftContractAfiliati .pa-placuta-eticheta {
        display: flex;
        align-items: center;
        gap: 6px;
        font-size: 13px;
        font-weight: 500;
        color: var(--pa-text-secundar);
    }

    #divModalDetaliiDateAfiliat .pa-placuta-valoare,
    #modalListaAfiliatiRezervati .pa-placuta-valoare,
    #modalDraftContractAfiliati .pa-placuta-valoare {
        font-family: Raleway, sans-serif;
        font-size: 24px;
        font-weight: 800;
        letter-spacing: -0.01em;
        color: var(--pa-text);
    }

    #divModalDetaliiDateAfiliat .pa-placuta-evidentiata .pa-placuta-valoare,
    #modalListaAfiliatiRezervati .pa-placuta-evidentiata .pa-placuta-valoare,
    #modalDraftContractAfiliati .pa-placuta-evidentiata .pa-placuta-valoare {
        font-size: 28px;
        color: var(--pa-principal);
    }

    #divModalDetaliiDateAfiliat .pa-buton-info,
    #modalListaAfiliatiRezervati .pa-buton-info,
    #modalDraftContractAfiliati .pa-buton-info {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 28px;
        height: 28px;
        margin: -6px 0;
        padding: 0;
        border: 0;
        border-radius: 8px;
        background: none;
        color: var(--pa-text-secundar);
        cursor: pointer;
    }

        #divModalDetaliiDateAfiliat .pa-buton-info:hover,
        #divModalDetaliiDateAfiliat .pa-buton-info:focus-visible,
        #modalListaAfiliatiRezervati .pa-buton-info:hover,
        #modalListaAfiliatiRezervati .pa-buton-info:focus-visible,
        #modalDraftContractAfiliati .pa-buton-info:hover,
        #modalDraftContractAfiliati .pa-buton-info:focus-visible {
            background: rgba(91, 69, 209, 0.10);
            color: var(--pa-principal);
        }

        #divModalDetaliiDateAfiliat .pa-buton-info .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-buton-info .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-buton-info .material-symbols-outlined {
            font-size: 17px;
        }

    #divModalDetaliiDateAfiliat .pa-nota,
    #modalListaAfiliatiRezervati .pa-nota,
    #modalDraftContractAfiliati .pa-nota {
        font-size: 13px;
        color: var(--pa-text-secundar);
    }

    /* ---------- cost ---------- */

    #divModalDetaliiDateAfiliat .pa-cost,
    #modalListaAfiliatiRezervati .pa-cost,
    #modalDraftContractAfiliati .pa-cost {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 16px;
        border-radius: 14px;
        border: 1px dashed #CFC8EC;
    }

    #divModalDetaliiDateAfiliat .pa-cost-rand,
    #modalListaAfiliatiRezervati .pa-cost-rand,
    #modalDraftContractAfiliati .pa-cost-rand {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 16px;
        font-size: 14px;
        color: var(--pa-text-secundar);
    }

        #divModalDetaliiDateAfiliat .pa-cost-rand > span:last-child,
        #modalListaAfiliatiRezervati .pa-cost-rand > span:last-child,
        #modalDraftContractAfiliati .pa-cost-rand > span:last-child {
            color: var(--pa-text);
            font-weight: 600;
            white-space: nowrap;
        }

    #divModalDetaliiDateAfiliat .pa-cost-total,
    #modalListaAfiliatiRezervati .pa-cost-total,
    #modalDraftContractAfiliati .pa-cost-total {
        color: var(--pa-text);
        font-weight: 700;
    }

        #divModalDetaliiDateAfiliat .pa-cost-total > span:last-child,
        #modalListaAfiliatiRezervati .pa-cost-total > span:last-child,
        #modalDraftContractAfiliati .pa-cost-total > span:last-child {
            font-weight: 800;
        }

    #divModalDetaliiDateAfiliat .pa-tva,
    #modalListaAfiliatiRezervati .pa-tva,
    #modalDraftContractAfiliati .pa-tva {
        font-size: 13px;
        font-weight: 500;
        color: var(--pa-text-secundar);
    }

    #divModalDetaliiDateAfiliat .pa-cost-linie,
    #modalListaAfiliatiRezervati .pa-cost-linie,
    #modalDraftContractAfiliati .pa-cost-linie {
        height: 1px;
        background: var(--pa-linie);
    }

    /* ---------- mesaje de stare ---------- */

    #divModalDetaliiDateAfiliat .pa-mesaj,
    #modalListaAfiliatiRezervati .pa-mesaj,
    #modalDraftContractAfiliati .pa-mesaj {
        display: none;
        gap: 12px;
        padding: 16px;
        border-radius: 14px;
        font-size: 14px;
        line-height: 1.5;
    }

        #divModalDetaliiDateAfiliat .pa-mesaj.pa-vizibil,
        #modalListaAfiliatiRezervati .pa-mesaj.pa-vizibil,
        #modalDraftContractAfiliati .pa-mesaj.pa-vizibil {
            display: flex;
        }

        #divModalDetaliiDateAfiliat .pa-mesaj > div,
        #modalListaAfiliatiRezervati .pa-mesaj > div,
        #modalDraftContractAfiliati .pa-mesaj > div {
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

    #divModalDetaliiDateAfiliat .pa-mesaj-titlu,
    #modalListaAfiliatiRezervati .pa-mesaj-titlu,
    #modalDraftContractAfiliati .pa-mesaj-titlu {
        font-weight: 700;
    }

    #divModalDetaliiDateAfiliat .pa-mesaj-avertizare,
    #modalListaAfiliatiRezervati .pa-mesaj-avertizare,
    #modalDraftContractAfiliati .pa-mesaj-avertizare {
        background: var(--pa-avertizare-fundal);
        color: var(--pa-avertizare);
    }

        #divModalDetaliiDateAfiliat .pa-mesaj-avertizare > .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-mesaj-avertizare > .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-mesaj-avertizare > .material-symbols-outlined {
            color: var(--pa-avertizare-icon);
        }

    #divModalDetaliiDateAfiliat .pa-mesaj-neutru,
    #modalListaAfiliatiRezervati .pa-mesaj-neutru,
    #modalDraftContractAfiliati .pa-mesaj-neutru {
        background: var(--pa-neutru-fundal);
        color: var(--pa-neutru);
    }

    #divModalDetaliiDateAfiliat .pa-mesaj-succes,
    #modalListaAfiliatiRezervati .pa-mesaj-succes,
    #modalDraftContractAfiliati .pa-mesaj-succes {
        background: var(--pa-succes-fundal);
        color: var(--pa-succes);
    }

    #divModalDetaliiDateAfiliat .pa-mesaj-eroare,
    #modalListaAfiliatiRezervati .pa-mesaj-eroare,
    #modalDraftContractAfiliati .pa-mesaj-eroare {
        background: #FEF3F2;
        color: #912018;
    }

    /* Actiunea secundara din blocurile de mesaj (ex. "Verifică adresa clinicii"): buton discret, nu link subliniat.
       Preia culoarea mesajului in care sta (avertizare, neutru, succes). */
    #divModalDetaliiDateAfiliat .pa-link-sageata,
    #modalListaAfiliatiRezervati .pa-link-sageata,
    #modalDraftContractAfiliati .pa-link-sageata {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        align-self: flex-start;
        margin-top: 2px;
        padding: 8px 12px 8px 14px;
        border: 1px solid rgba(0, 0, 0, 0.08);
        border-radius: 10px;
        background: #FFFFFF;
        box-shadow: 0 1px 2px rgba(20, 12, 70, 0.06);
        color: inherit;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.2;
        text-decoration: none;
        white-space: nowrap;
        cursor: pointer;
        transition: box-shadow 0.15s ease, border-color 0.15s ease;
    }

        #divModalDetaliiDateAfiliat .pa-link-sageata:hover,
        #modalListaAfiliatiRezervati .pa-link-sageata:hover,
        #modalDraftContractAfiliati .pa-link-sageata:hover {
            color: inherit;
            text-decoration: none;
            border-color: rgba(0, 0, 0, 0.16);
            box-shadow: 0 3px 8px rgba(20, 12, 70, 0.12);
        }

        #divModalDetaliiDateAfiliat .pa-link-sageata:focus-visible,
        #modalListaAfiliatiRezervati .pa-link-sageata:focus-visible,
        #modalDraftContractAfiliati .pa-link-sageata:focus-visible {
            outline: 3px solid rgba(91, 69, 209, 0.35);
            outline-offset: 2px;
        }

        #divModalDetaliiDateAfiliat .pa-link-sageata .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-link-sageata .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-link-sageata .material-symbols-outlined {
            font-size: 18px;
            transition: transform 0.15s ease;
        }

        #divModalDetaliiDateAfiliat .pa-link-sageata:hover .material-symbols-outlined,
        #modalListaAfiliatiRezervati .pa-link-sageata:hover .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-link-sageata:hover .material-symbols-outlined {
            transform: translateX(2px);
        }

    /* ---------- subsol si butoane ---------- */

    #divModalDetaliiDateAfiliat .pa-subsol,
    #modalListaAfiliatiRezervati .pa-subsol,
    #modalDraftContractAfiliati .pa-subsol {
        margin-top: 4px;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    #divModalDetaliiDateAfiliat .pa-actiuni,
    #divModalDetaliiDateAfiliat .pa-actiuni > div,
    #modalListaAfiliatiRezervati .pa-actiuni,
    #modalListaAfiliatiRezervati .pa-actiuni > div,
    #modalDraftContractAfiliati .pa-actiuni,
    #modalDraftContractAfiliati .pa-actiuni > div {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    #divModalDetaliiDateAfiliat .pa-buton,
    #modalListaAfiliatiRezervati .pa-buton,
    #modalDraftContractAfiliati .pa-buton {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        min-height: 52px;
        padding: 0 20px;
        border: 0;
        border-radius: 14px;
        font-family: Raleway, sans-serif;
        font-size: 16px;
        font-weight: 800;
        text-decoration: none;
        cursor: pointer;
        transition: background-color 0.15s ease, box-shadow 0.15s ease, transform 0.05s ease;
    }

        #divModalDetaliiDateAfiliat .pa-buton:active:not(:disabled),
        #modalListaAfiliatiRezervati .pa-buton:active:not(:disabled),
        #modalDraftContractAfiliati .pa-buton:active:not(:disabled) {
            transform: translateY(1px);
        }

        #divModalDetaliiDateAfiliat .pa-buton:focus-visible,
        #modalListaAfiliatiRezervati .pa-buton:focus-visible,
        #modalDraftContractAfiliati .pa-buton:focus-visible {
            outline: 3px solid rgba(91, 69, 209, 0.35);
            outline-offset: 2px;
        }

    #divModalDetaliiDateAfiliat .pa-buton-principal,
    #modalListaAfiliatiRezervati .pa-buton-principal,
    #modalDraftContractAfiliati .pa-buton-principal {
        background: var(--pa-principal);
        color: #FFFFFF;
        box-shadow: 0 8px 18px rgba(91, 69, 209, 0.35);
    }

        #divModalDetaliiDateAfiliat .pa-buton-principal:hover,
        #modalListaAfiliatiRezervati .pa-buton-principal:hover,
        #modalDraftContractAfiliati .pa-buton-principal:hover {
            background: var(--pa-principal-inchis);
            color: #FFFFFF;
        }

        #divModalDetaliiDateAfiliat .pa-buton-principal:disabled,
        #modalListaAfiliatiRezervati .pa-buton-principal:disabled,
        #modalDraftContractAfiliati .pa-buton-principal:disabled {
            opacity: 0.7;
            cursor: progress;
        }

    #divModalDetaliiDateAfiliat .pa-buton-secundar,
    #modalListaAfiliatiRezervati .pa-buton-secundar,
    #modalDraftContractAfiliati .pa-buton-secundar {
        min-height: 48px;
        background: #FFFFFF;
        border: 1.5px solid var(--pa-linie);
        color: var(--pa-principal);
        font-size: 15px;
    }

        #divModalDetaliiDateAfiliat .pa-buton-secundar:hover,
        #modalListaAfiliatiRezervati .pa-buton-secundar:hover,
        #modalDraftContractAfiliati .pa-buton-secundar:hover {
            border-color: #CFC8EC;
            background: var(--pa-fundal-usor);
        }

    #divModalDetaliiDateAfiliat .pa-buton-pericol,
    #modalListaAfiliatiRezervati .pa-buton-pericol,
    #modalDraftContractAfiliati .pa-buton-pericol {
        min-height: 44px;
        background: #FFFFFF;
        border: 1px solid var(--pa-linie);
        color: var(--pa-pericol);
        font-size: 15px;
    }

        #divModalDetaliiDateAfiliat .pa-buton-pericol:hover,
        #modalListaAfiliatiRezervati .pa-buton-pericol:hover,
        #modalDraftContractAfiliati .pa-buton-pericol:hover {
            background: #FEF3F2;
            border-color: #F4C7C2;
        }

    #divModalDetaliiDateAfiliat .pa-buton-dezactivat,
    #divModalDetaliiDateAfiliat .pa-buton-dezactivat:hover,
    #modalListaAfiliatiRezervati .pa-buton-dezactivat,
    #modalListaAfiliatiRezervati .pa-buton-dezactivat:hover,
    #modalDraftContractAfiliati .pa-buton-dezactivat,
    #modalDraftContractAfiliati .pa-buton-dezactivat:hover {
        background: #ECEAF3;
        color: #6F6B86;
        box-shadow: none;
        cursor: not-allowed;
    }

    #divModalDetaliiDateAfiliat .pa-ajutor,
    #modalListaAfiliatiRezervati .pa-ajutor,
    #modalDraftContractAfiliati .pa-ajutor {
        font-size: 13px;
        color: var(--pa-text-secundar);
        text-align: center;
    }

    #divModalDetaliiDateAfiliat .pa-confirmare-cos,
    #modalListaAfiliatiRezervati .pa-confirmare-cos,
    #modalDraftContractAfiliati .pa-confirmare-cos {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 12px 14px;
        border-radius: 12px;
        background: var(--pa-succes-fundal);
        color: var(--pa-succes);
        font-size: 14px;
        font-weight: 700;
    }

    #divModalDetaliiDateAfiliat .pa-link-cos,
    #modalListaAfiliatiRezervati .pa-link-cos,
    #modalDraftContractAfiliati .pa-link-cos {
        display: flex;
        align-self: center;
        align-items: center;
        gap: 8px;
        padding: 8px 12px;
        border-radius: 10px;
        color: var(--pa-principal);
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
    }

        #divModalDetaliiDateAfiliat .pa-link-cos:hover,
        #modalListaAfiliatiRezervati .pa-link-cos:hover,
        #modalDraftContractAfiliati .pa-link-cos:hover {
            background: var(--pa-nuanta);
        }

/* ---------- izolare fata de stilurile vechi ale panoului ----------
   Containerul #modalDateClinica are stiluri generale (text centrat, margini, majuscule) gandite pentru
   panoul de clinica. Selectorii cu doua id-uri de aici au prioritate peste ele. */

#modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat {
    margin: 0;
    padding: 0;
    text-align: left;
}

    /* Cardul alb al panoului (#secondary-wrapper-modal-clinica) nu are padding lateral - panoul de clinica
       isi pune singur marginile. Fara asta, placutele si blocurile colorate lipesc de marginea cardului. */
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-continut {
        box-sizing: border-box;
        padding: 0 28px 28px;
    }

    /* loc pentru X-ul panoului, care sta in coltul din dreapta sus al cardului */
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-antet {
        padding-right: 52px;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-continut div,
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-continut span,
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-continut a {
        text-align: left;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-titlu h2 {
        margin: 0;
        padding: 0;
        text-align: left;
        text-transform: none;
        letter-spacing: normal;
        font-family: Raleway, sans-serif;
        font-size: 22px;
        font-weight: 800;
        line-height: 1.2;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-subtitlu span {
        display: inline;
        margin: 0;
        padding: 0;
    }

    /* #divRezervaAfiliat si #divCosRezervariAfiliati au stiluri vechi in Harta-Clinici.css (latime fixa, centrare,
       pozitionare absoluta in josul panoului), gandite pentru butoanele de dinainte. In panoul nou fac parte din
       fluxul normal al subsolului: le readucem in flux, pe toata latimea, unul sub altul. */
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat #divRezervaAfiliat,
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat #divCosRezervariAfiliati {
        position: static !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        float: none !important;
        margin: 0 !important;
        padding-left: 0;
        padding-right: 0;
        max-width: none !important;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat #divRezervaAfiliat {
        width: 100% !important;
        text-align: left;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat #divCosRezervariAfiliati {
        width: auto !important;
        align-self: center;
        padding: 8px 12px;
        margin-top: 4px !important;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-actiuni .pa-buton {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-link-sageata,
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-link-sageata:hover,
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-link-sageata:focus {
        text-decoration: none;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-ajutor {
        text-align: center;
    }

    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-buton,
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-buton span {
        text-align: center;
    }

/* In starile cu buton "Vezi coșul" in subsol, linkul mic spre coș ar fi o dublura. */
#divModalDetaliiDateAfiliat.pa-stare-incos #divCosRezervariAfiliati,
#divModalDetaliiDateAfiliat.pa-stare-incursdeplata #divCosRezervariAfiliati {
    display: none !important;
}

/* Butonul de iesire de pe coloana de filtre ramanea vizibil peste panou si parea un al doilea X.
   Cat timp panoul de afiliat e deschis il ascundem (clasa e pusa/scoasa din Harta-Clinici.js). */
body.panou-afiliat-deschis .btnInapoiDefault {
    display: none !important;
}

@media screen and (max-width: 480px) {
    #modalDateClinica #divModalDetaliiDateAfiliat.panou-afiliat .pa-continut {
        padding: 0 18px 24px;
    }

    #divModalDetaliiDateAfiliat .pa-placuta-valoare,
    #modalListaAfiliatiRezervati .pa-placuta-valoare,
    #modalDraftContractAfiliati .pa-placuta-valoare {
        font-size: 22px;
    }

    #divModalDetaliiDateAfiliat .pa-placuta-evidentiata .pa-placuta-valoare,
    #modalListaAfiliatiRezervati .pa-placuta-evidentiata .pa-placuta-valoare,
    #modalDraftContractAfiliati .pa-placuta-evidentiata .pa-placuta-valoare {
        font-size: 24px;
    }
}

/* ==========================================================================
   Harta, mod afiliat: markerul clinicii conectate si controlul "Clinica mea"
   ========================================================================== */

/* Google ancoreaza continutul markerului in mijlocul marginii de jos. Eticheta sta deasupra cercului
   (column-reverse) si coboram cu jumatate din cerc, ca centrul lui sa cada exact pe adresa clinicii. */
.pa-marker-clinica-mea {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 4px;
    transform: translateY(22px);
}

.pa-marker-clinica-mea-cerc {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: #5B45D1;
    border: 3px solid #FFFFFF;
    box-shadow: 0 4px 12px rgba(20, 12, 70, 0.35);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .pa-marker-clinica-mea-cerc .material-symbols-outlined {
        font-size: 24px;
    }

.pa-marker-clinica-mea-eticheta {
    padding: 3px 10px;
    border-radius: 999px;
    background: #5B45D1;
    color: #FFFFFF;
    font-family: Raleway, sans-serif;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(20, 12, 70, 0.25);
}

.pa-control-harta {
    margin: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    font-family: Raleway, sans-serif;
}

.pa-control-harta-buton {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 0 18px 0 14px;
    border: 0;
    border-radius: 999px;
    background: #FFFFFF;
    color: #5B45D1;
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-weight: 800;
    box-shadow: 0 4px 14px rgba(20, 12, 70, 0.2);
    cursor: pointer;
}

    .pa-control-harta-buton:hover {
        background: #F4F2FC;
    }

    .pa-control-harta-buton:focus-visible {
        outline: 3px solid rgba(91, 69, 209, 0.35);
        outline-offset: 2px;
    }

    .pa-control-harta-buton .material-symbols-outlined {
        font-size: 22px;
    }

.pa-control-harta-legenda {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #3D3A52;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(20, 12, 70, 0.12);
}

    .pa-control-harta-legenda a {
        color: #5B45D1;
        font-weight: 800;
    }

.pa-control-harta-mostra {
    width: 12px;
    height: 12px;
    border-radius: 999px;
    border: 2px solid #5B45D1;
    background: rgba(91, 69, 209, 0.12);
}

/* ==========================================================================
   Coșul de afiliati rezervati (#modalListaAfiliatiRezervati)
   ========================================================================== */

#modalListaAfiliatiRezervati .pa-modal-cos,
#modalDraftContractAfiliati .pa-modal-cos {
    width: calc(100% - 32px);
    max-width: 1120px;
    margin: 32px auto;
}

    #modalListaAfiliatiRezervati .pa-modal-cos .modal-content,
    #modalDraftContractAfiliati .pa-modal-cos .modal-content {
        border: 0;
        border-radius: 24px;
        box-shadow: 0 24px 48px rgba(20, 12, 70, 0.18);
        overflow: hidden;
    }

#modalListaAfiliatiRezervati .pa-cos,
#modalDraftContractAfiliati .pa-cos {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 32px 36px;
}

/* ---------- antet si pasi ---------- */

#modalListaAfiliatiRezervati .pa-cos-antet,
#modalDraftContractAfiliati .pa-cos-antet {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

#modalListaAfiliatiRezervati .pa-cos-antet-text,
#modalDraftContractAfiliati .pa-cos-antet-text {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

    #modalListaAfiliatiRezervati .pa-cos-antet-text h2,
    #modalDraftContractAfiliati .pa-cos-antet-text h2 {
        margin: 8px 0 0;
        font-family: Raleway, sans-serif;
        font-size: 26px;
        font-weight: 800;
        color: var(--pa-text);
    }

#modalListaAfiliatiRezervati .pa-cos-subtitlu,
#modalDraftContractAfiliati .pa-cos-subtitlu {
    font-size: 15px;
    color: var(--pa-text-secundar);
}

#modalListaAfiliatiRezervati .pa-pasi,
#modalDraftContractAfiliati .pa-pasi {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#modalListaAfiliatiRezervati .pa-pas,
#modalDraftContractAfiliati .pa-pas {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: var(--pa-text-secundar);
}

    #modalListaAfiliatiRezervati .pa-pas + .pa-pas::before,
    #modalDraftContractAfiliati .pa-pas + .pa-pas::before {
        content: "";
        width: 32px;
        height: 2px;
        margin-right: 2px;
        background: var(--pa-linie);
    }

#modalListaAfiliatiRezervati .pa-pas-cerc,
#modalDraftContractAfiliati .pa-pas-cerc {
    width: 26px;
    height: 26px;
    box-sizing: border-box;
    border-radius: 999px;
    border: 1.5px solid #CFC8EC;
    background: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 800;
}

#modalListaAfiliatiRezervati .pa-pas-activ,
#modalDraftContractAfiliati .pa-pas-activ {
    color: var(--pa-text);
}

    #modalListaAfiliatiRezervati .pa-pas-activ .pa-pas-cerc,
    #modalDraftContractAfiliati .pa-pas-activ .pa-pas-cerc {
        border-color: var(--pa-principal);
        background: var(--pa-principal);
        color: #FFFFFF;
    }

#modalListaAfiliatiRezervati .pa-buton-inchide,
#modalDraftContractAfiliati .pa-buton-inchide {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    border: 1px solid var(--pa-linie);
    background: #FFFFFF;
    color: var(--pa-text-secundar);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

    #modalListaAfiliatiRezervati .pa-buton-inchide:hover,
    #modalDraftContractAfiliati .pa-buton-inchide:hover {
        background: var(--pa-fundal-usor);
        color: var(--pa-text);
    }

/* ---------- coș gol ---------- */

#modalListaAfiliatiRezervati .pa-cos-gol {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 32px 16px 16px;
    text-align: center;
    color: var(--pa-text-secundar);
}

    #modalListaAfiliatiRezervati .pa-cos-gol > .material-symbols-outlined {
        font-size: 44px;
        color: #BDB4E6;
    }

#modalListaAfiliatiRezervati .pa-cos-gol-titlu {
    font-family: Raleway, sans-serif;
    font-size: 20px;
    font-weight: 800;
    color: var(--pa-text);
}

#modalListaAfiliatiRezervati .pa-buton-auto,
#modalDraftContractAfiliati .pa-buton-auto {
    width: auto;
    margin-top: 8px;
}

/* ---------- tabelul ---------- */

#modalListaAfiliatiRezervati .pa-cos-rand,
#modalDraftContractAfiliati .pa-cos-rand {
    display: grid;
    grid-template-columns: minmax(0, 2.3fr) minmax(0, 0.8fr) minmax(0, 1.1fr) minmax(0, 0.75fr) minmax(0, 0.95fr) minmax(0, 1.2fr) minmax(0, 0.85fr) 44px;
    gap: 16px;
    align-items: center;
    padding: 16px 0;
    border-top: 1px solid var(--pa-linie);
    font-size: 15px;
    font-weight: 600;
}

#modalListaAfiliatiRezervati .pa-cos-cap,
#modalDraftContractAfiliati .pa-cos-cap {
    align-items: end;
    padding: 0 0 12px;
    border-top: 0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--pa-text-secundar);
}

#modalListaAfiliatiRezervati .pa-dreapta,
#modalDraftContractAfiliati .pa-dreapta {
    text-align: right;
}

#modalListaAfiliatiRezervati .pa-cos-afiliat,
#modalDraftContractAfiliati .pa-cos-afiliat {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

#modalListaAfiliatiRezervati .pa-cos-nume,
#modalDraftContractAfiliati .pa-cos-nume {
    font-size: 16px;
    font-weight: 700;
    overflow-wrap: anywhere;
}

#modalListaAfiliatiRezervati .pa-cos-id,
#modalDraftContractAfiliati .pa-cos-id {
    font-size: 13px;
    font-weight: 600;
    color: var(--pa-text-secundar);
}

#modalListaAfiliatiRezervati .pa-cos-adresa,
#modalDraftContractAfiliati .pa-cos-adresa {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    font-size: 13px;
    font-weight: 400;
    color: var(--pa-text-secundar);
}

    #modalListaAfiliatiRezervati .pa-cos-adresa .material-symbols-outlined,
    #modalDraftContractAfiliati .pa-cos-adresa .material-symbols-outlined {
        font-size: 15px;
        margin-top: 1px;
    }

#modalListaAfiliatiRezervati .pa-cos-secundar,
#modalDraftContractAfiliati .pa-cos-secundar {
    font-weight: 500;
    color: var(--pa-text-secundar);
}

#modalListaAfiliatiRezervati .pa-cos-mic,
#modalDraftContractAfiliati .pa-cos-mic {
    font-size: 12px;
    font-weight: 400;
}

#modalListaAfiliatiRezervati .pa-cos-total-rand,
#modalDraftContractAfiliati .pa-cos-total-rand {
    font-weight: 800;
}

#modalListaAfiliatiRezervati .pa-cos-actiuni,
#modalDraftContractAfiliati .pa-cos-actiuni {
    display: flex;
    justify-content: flex-end;
}

#modalListaAfiliatiRezervati .pa-buton-icon,
#modalDraftContractAfiliati .pa-buton-icon {
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

#modalListaAfiliatiRezervati .pa-buton-icon-pericol,
#modalDraftContractAfiliati .pa-buton-icon-pericol {
    color: var(--pa-pericol);
}

    #modalListaAfiliatiRezervati .pa-buton-icon-pericol:hover,
    #modalListaAfiliatiRezervati .pa-buton-icon-pericol:focus-visible,
    #modalDraftContractAfiliati .pa-buton-icon-pericol:hover,
    #modalDraftContractAfiliati .pa-buton-icon-pericol:focus-visible {
        background: #FEF3F2;
    }

/* ---------- voucher ---------- */

#modalListaAfiliatiRezervati .pa-cos-celula-voucher,
#modalDraftContractAfiliati .pa-cos-celula-voucher {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

#modalListaAfiliatiRezervati .pa-voucher-camp,
#modalDraftContractAfiliati .pa-voucher-camp {
    position: relative;
    display: flex;
    align-items: center;
    gap: 6px;
    width: 136px;
    height: 42px;
    box-sizing: border-box;
    padding: 0 10px;
    border: 1.5px solid #CFC8EC;
    border-radius: 10px;
    background: #FFFFFF;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

    #modalListaAfiliatiRezervati .pa-voucher-camp:focus-within,
    #modalDraftContractAfiliati .pa-voucher-camp:focus-within {
        border-color: var(--pa-principal);
        box-shadow: 0 0 0 3px rgba(91, 69, 209, 0.18);
    }

#modalListaAfiliatiRezervati .pa-voucher-modificat,
#modalDraftContractAfiliati .pa-voucher-modificat {
    border-color: var(--pa-principal);
    background: var(--pa-nuanta);
}

#modalListaAfiliatiRezervati .pa-voucher-input,
#modalDraftContractAfiliati .pa-voucher-input {
    width: 100%;
    min-width: 0;
    border: 0;
    background: transparent;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    color: var(--pa-text);
    text-align: right;
    outline: none;
    -moz-appearance: textfield;
}

    #modalListaAfiliatiRezervati .pa-voucher-input::-webkit-outer-spin-button,
    #modalListaAfiliatiRezervati .pa-voucher-input::-webkit-inner-spin-button,
    #modalDraftContractAfiliati .pa-voucher-input::-webkit-outer-spin-button,
    #modalDraftContractAfiliati .pa-voucher-input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

#modalListaAfiliatiRezervati .pa-voucher-moneda,
#modalDraftContractAfiliati .pa-voucher-moneda {
    font-size: 13px;
    font-weight: 600;
    color: var(--pa-text-secundar);
}

/* iconita de stare (se salveaza / salvat); goala cand nu se intampla nimic, deci nu ocupa loc */
#modalListaAfiliatiRezervati .pa-voucher-stare,
#modalDraftContractAfiliati .pa-voucher-stare {
    font-size: 16px;
    color: var(--pa-text-secundar);
}

#modalListaAfiliatiRezervati .pa-voucher-se-salveaza .pa-voucher-stare,
#modalDraftContractAfiliati .pa-voucher-se-salveaza .pa-voucher-stare {
    animation: pa-rotire 1s linear infinite;
}

#modalListaAfiliatiRezervati .pa-voucher-salvat .pa-voucher-stare,
#modalDraftContractAfiliati .pa-voucher-salvat .pa-voucher-stare {
    color: var(--pa-succes);
}

@keyframes pa-rotire {
    to {
        transform: rotate(360deg);
    }
}

#modalListaAfiliatiRezervati .pa-voucher-eroare,
#modalDraftContractAfiliati .pa-voucher-eroare {
    font-size: 12px;
    font-weight: 600;
    color: var(--pa-pericol);
}

    #modalListaAfiliatiRezervati .pa-voucher-eroare:empty,
    #modalDraftContractAfiliati .pa-voucher-eroare:empty {
        display: none;
    }

#modalListaAfiliatiRezervati .pa-voucher-invalid .pa-voucher-camp,
#modalDraftContractAfiliati .pa-voucher-invalid .pa-voucher-camp {
    border-color: var(--pa-pericol);
    background: #FEF3F2;
}

/* ---------- rezervari care nu mai pot fi platite ---------- */

#modalListaAfiliatiRezervati .pa-cos-rand-nevalabil > [role="cell"]:not(.pa-cos-afiliat):not(.pa-cos-actiuni) {
    opacity: 0.4;
}

#modalListaAfiliatiRezervati .pa-cos-rand-nevalabil .pa-cos-total-rand {
    text-decoration: line-through;
}

#modalListaAfiliatiRezervati .pa-cos-rand-nevalabil .pa-cos-nume {
    color: var(--pa-text-secundar);
}

#modalListaAfiliatiRezervati .pa-cos-motiv {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 6px;
    margin-top: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--pa-avertizare-fundal);
    color: var(--pa-avertizare);
    font-size: 13px;
    font-weight: 600;
}

    #modalListaAfiliatiRezervati .pa-cos-motiv .material-symbols-outlined {
        font-size: 16px;
        color: var(--pa-avertizare-icon);
    }

#modalListaAfiliatiRezervati .pa-voucher-input:disabled {
    cursor: not-allowed;
}

#modalListaAfiliatiRezervati #divCosNevalabile.pa-vizibil {
    display: flex;
}

/* ---------- confirmare stergere in rand ---------- */

#modalListaAfiliatiRezervati .pa-cos-confirmare,
#modalDraftContractAfiliati .pa-cos-confirmare {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px 16px;
    border-radius: 12px;
    background: #FEF3F2;
    color: #912018;
    font-weight: 600;
}

#modalListaAfiliatiRezervati .pa-cos-confirmare-butoane,
#modalDraftContractAfiliati .pa-cos-confirmare-butoane {
    display: flex;
    gap: 8px;
}

#modalListaAfiliatiRezervati .pa-buton-mic,
#modalDraftContractAfiliati .pa-buton-mic {
    width: auto;
    min-height: 40px;
    padding: 0 16px;
    font-size: 14px;
}

/* ---------- partea de jos: explicatie, potential, sumar ---------- */

#modalListaAfiliatiRezervati .pa-cos-jos,
#modalDraftContractAfiliati .pa-cos-jos {
    display: flex;
    gap: 24px;
    align-items: stretch;
    margin-top: 8px;
}

#modalListaAfiliatiRezervati .pa-cos-jos-stanga,
#modalDraftContractAfiliati .pa-cos-jos-stanga {
    flex-grow: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

#modalListaAfiliatiRezervati .pa-cos-explicatie,
#modalDraftContractAfiliati .pa-cos-explicatie {
    display: flex;
    gap: 12px;
    padding: 16px;
    border-radius: 14px;
    background: var(--pa-nuanta);
    font-size: 14px;
    line-height: 1.5;
}

    #modalListaAfiliatiRezervati .pa-cos-explicatie > .material-symbols-outlined,
    #modalDraftContractAfiliati .pa-cos-explicatie > .material-symbols-outlined {
        color: var(--pa-principal);
    }

#modalListaAfiliatiRezervati .pa-cos-potential,
#modalDraftContractAfiliati .pa-cos-potential {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

    #modalListaAfiliatiRezervati .pa-cos-potential .pa-placuta-evidentiata,
    #modalDraftContractAfiliati .pa-cos-potential .pa-placuta-evidentiata {
        grid-column: auto;
    }

#modalListaAfiliatiRezervati .pa-cos-sumar,
#modalDraftContractAfiliati .pa-cos-sumar {
    width: 360px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 20px;
    border-radius: 16px;
    border: 1px solid var(--pa-linie);
    background: var(--pa-fundal-usor);
}

    #modalListaAfiliatiRezervati .pa-cos-sumar .pa-cost-rand,
    #modalDraftContractAfiliati .pa-cos-sumar .pa-cost-rand {
        font-size: 15px;
    }

#modalListaAfiliatiRezervati .pa-cos-total,
#modalDraftContractAfiliati .pa-cos-total {
    font-size: 18px;
}

    #modalListaAfiliatiRezervati .pa-cos-total > span:last-child,
    #modalDraftContractAfiliati .pa-cos-total > span:last-child {
        font-family: Raleway, sans-serif;
        font-size: 24px;
    }

#modalListaAfiliatiRezervati #btnCosVeziContract,
#modalDraftContractAfiliati #btnCosVeziContract {
    margin-top: 4px;
}

    #modalListaAfiliatiRezervati #btnCosVeziContract:disabled,
    #modalDraftContractAfiliati #btnCosVeziContract:disabled {
        opacity: 0.55;
        box-shadow: none;
        cursor: not-allowed;
    }

#modalListaAfiliatiRezervati .pa-buton-text,
#modalDraftContractAfiliati .pa-buton-text {
    min-height: 44px;
    background: transparent;
    color: var(--pa-principal);
    font-size: 15px;
    box-shadow: none;
}

    #modalListaAfiliatiRezervati .pa-buton-text:hover,
    #modalDraftContractAfiliati .pa-buton-text:hover {
        background: var(--pa-nuanta);
    }

#modalListaAfiliatiRezervati #divCosEroare.pa-vizibil,
#modalDraftContractAfiliati #divCosEroare.pa-vizibil {
    display: flex;
}

/* modalul de mesaje trebuie sa stea peste coș (Bootstrap 3 nu stie modale suprapuse) */
#modalMesajAfiliati {
    z-index: 1060;
}

/* ---------- ecrane inguste: fiecare rezervare devine un card ---------- */

@media screen and (max-width: 900px) {
    #modalListaAfiliatiRezervati .pa-cos,
    #modalDraftContractAfiliati .pa-cos {
        padding: 24px 20px;
    }

    #modalListaAfiliatiRezervati .pa-cos-cap,
    #modalDraftContractAfiliati .pa-cos-cap {
        display: none;
    }

    #modalListaAfiliatiRezervati .pa-cos-rand,
    #modalDraftContractAfiliati .pa-cos-rand {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px 16px;
        padding: 16px 0;
    }

        #modalListaAfiliatiRezervati .pa-cos-rand > .pa-cos-afiliat,
        #modalDraftContractAfiliati .pa-cos-rand > .pa-cos-afiliat {
            grid-column: 1 / 2;
        }

        #modalListaAfiliatiRezervati .pa-cos-rand > .pa-cos-actiuni,
        #modalDraftContractAfiliati .pa-cos-rand > .pa-cos-actiuni {
            grid-column: 2 / 3;
            grid-row: 1;
        }

        #modalListaAfiliatiRezervati .pa-cos-rand > [data-eticheta],
        #modalDraftContractAfiliati .pa-cos-rand > [data-eticheta] {
            grid-column: 1 / -1;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            text-align: right;
        }

            #modalListaAfiliatiRezervati .pa-cos-rand > [data-eticheta]::before,
            #modalDraftContractAfiliati .pa-cos-rand > [data-eticheta]::before {
                content: attr(data-eticheta);
                font-size: 13px;
                font-weight: 500;
                color: var(--pa-text-secundar);
                text-align: left;
            }

    #modalListaAfiliatiRezervati .pa-cos-celula-voucher,
    #modalDraftContractAfiliati .pa-cos-celula-voucher {
        flex-wrap: wrap;
    }

    #modalListaAfiliatiRezervati .pa-cos-jos,
    #modalDraftContractAfiliati .pa-cos-jos {
        flex-direction: column;
    }

    #modalListaAfiliatiRezervati .pa-cos-sumar,
    #modalDraftContractAfiliati .pa-cos-sumar {
        width: auto;
    }
}

@media screen and (max-width: 480px) {
    #modalListaAfiliatiRezervati .pa-modal-cos,
    #modalDraftContractAfiliati .pa-modal-cos {
        width: calc(100% - 16px);
        margin: 8px auto;
    }

    #modalListaAfiliatiRezervati .pa-cos-potential,
    #modalDraftContractAfiliati .pa-cos-potential {
        grid-template-columns: minmax(0, 1fr);
    }

    #modalListaAfiliatiRezervati .pa-pas + .pa-pas::before,
    #modalDraftContractAfiliati .pa-pas + .pa-pas::before {
        width: 16px;
    }
}

/* ==========================================================================
   Pasul 2: contractul de afiliere (#modalDraftContractAfiliati)
   Refoloseste structura coșului (pa-cos, pa-pasi, pa-cos-sumar, pa-mesaj, pa-buton).
   ========================================================================== */

#modalListaAfiliatiRezervati .pa-pas-gata,
#modalDraftContractAfiliati .pa-pas-gata {
    color: var(--pa-text);
}

    #modalListaAfiliatiRezervati .pa-pas-gata .pa-pas-cerc,
    #modalDraftContractAfiliati .pa-pas-gata .pa-pas-cerc {
        border-color: var(--pa-succes);
        background: var(--pa-succes);
        color: #FFFFFF;
    }

        #modalListaAfiliatiRezervati .pa-pas-gata .pa-pas-cerc .material-symbols-outlined,
        #modalDraftContractAfiliati .pa-pas-gata .pa-pas-cerc .material-symbols-outlined {
            font-size: 16px;
            font-weight: 700;
        }

#modalDraftContractAfiliati .pa-contract {
    display: flex;
    gap: 28px;
    align-items: stretch;
}

#modalDraftContractAfiliati .pa-contract-document {
    flex-grow: 1;
    min-width: 0;
    height: min(640px, calc(100vh - 260px));
    min-height: 360px;
    box-sizing: border-box;
    overflow-y: auto;
    border-radius: 16px;
    background: #F2F0F8;
    padding: 24px;
}

#modalDraftContractAfiliati .pa-contract-hartie {
    max-width: 620px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 32px 36px;
    border-radius: 6px;
    background: #FFFFFF;
    box-shadow: 0 4px 14px rgba(20, 12, 70, 0.10);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 13px;
    line-height: 1.55;
    color: #2B2840;
    text-align: left;
    overflow-wrap: anywhere;
}

    #modalDraftContractAfiliati .pa-contract-hartie table {
        max-width: 100%;
    }

    #modalDraftContractAfiliati .pa-contract-hartie .tbl-pret td {
        padding: 6px 10px;
        border-top: 1px solid var(--pa-linie);
        font-family: "Source Sans 3", system-ui, sans-serif;
    }

#modalDraftContractAfiliati .pa-contract-incarcare {
    margin: 0;
    font-family: inherit;
    color: var(--pa-text-secundar);
    text-align: center;
}

#modalDraftContractAfiliati .pa-contract-lateral {
    width: 380px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

    #modalDraftContractAfiliati .pa-contract-lateral .pa-cos-sumar {
        width: auto;
    }

    #modalDraftContractAfiliati .pa-contract-lateral .pa-mesaj .pa-buton {
        min-height: 46px;
        font-size: 15px;
    }

#modalDraftContractAfiliati .pa-contract-actiuni {
    display: none;
    flex-direction: column;
    gap: 8px;
}

    #modalDraftContractAfiliati .pa-contract-actiuni.pa-vizibil {
        display: flex;
    }

    #modalDraftContractAfiliati .pa-contract-actiuni .pa-link-sageata {
        align-self: center;
    }

/* Butonul de plata e un LinkButton cu ID vechi: Harta-Clinici.css ii da majuscule, latime si margini proprii.
   Il aducem la acelasi format ca celelalte butoane din coloana (selector cu doua id-uri + !important). */
#modalDraftContractAfiliati #btnSemneazaSiPlatestePtAfiliati {
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    float: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    font-family: Raleway, sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

#modalDraftContractAfiliati #divContractSeIncarca > .material-symbols-outlined {
    animation: pa-rotire 1s linear infinite;
}

/* butonul de plata e un LinkButton (<a>): "dezactivat" e o clasa, nu atributul disabled */
#modalDraftContractAfiliati .pa-buton.pa-dezactivat,
#modalDraftContractAfiliati .pa-buton.pa-dezactivat:hover {
    background: #ECEAF3;
    color: #6F6B86;
    box-shadow: none;
    cursor: not-allowed;
}

@media screen and (max-width: 900px) {
    #modalDraftContractAfiliati .pa-contract {
        flex-direction: column;
    }

    #modalDraftContractAfiliati .pa-contract-document {
        height: 50vh;
        padding: 12px;
    }

    #modalDraftContractAfiliati .pa-contract-hartie {
        padding: 20px;
    }

    #modalDraftContractAfiliati .pa-contract-lateral {
        width: auto;
    }
}
