/* DataNexin Contact Intelligence — flat premium drawer */

#dnIntelRevealSection{
    display:none !important;
}

/* Universal DataNexin blue system */
:root{
    --dn-blue-primary:#2F80D9;
    --dn-blue-hover:#2873C5;
    --dn-blue-pressed:#2164AD;
    --dn-blue-soft:#EDF6FE;
    --dn-blue-soft-border:#CFE3F7;
    --dn-blue-focus:rgba(47,128,217,.22);
}

/* The drawer itself is the single product surface */
#dnContactDrawer .dn-contact-drawer__panel{
    width:min(500px,100vw);
    border-left:1px solid #dce4ed;
    background:#ffffff;
    box-shadow:-22px 0 60px rgba(20,45,75,.16);
}

#dnContactDrawer .dn-contact-drawer__header{
    min-height:70px;
    padding:14px 18px;
    border-bottom:1px solid #e3e9ef;
    background:#ffffff;
}

#dnContactDrawer .dn-contact-drawer__body{
    padding:0;
    background:#ffffff;
}

/* Remove every nested-card treatment */
#dnContactDrawer .dn-intel-content{
    display:block !important;
    overflow:visible;
    border:0 !important;
    border-radius:0 !important;
    background:#ffffff !important;
    box-shadow:none !important;
}

#dnContactDrawer .dn-intel-content[hidden]{
    display:none !important;
}

#dnContactDrawer .dn-intel-card{
    margin:0;
    padding:20px;
    border:0 !important;
    border-radius:0 !important;
    background:#ffffff !important;
    box-shadow:none !important;
}

/* Contact identity */
#dnContactDrawer .dn-intel-profile{
    margin:0;
    padding:20px;
    border:0;
    border-bottom:1px solid #edf1f5;
    background:#ffffff;
}

#dnContactDrawer .dn-intel-avatar{
    width:50px;
    min-width:50px;
    height:50px;
    border:1px solid #cfe0f1;
    background:#eef6fd;
    color:#2a6599;
}

#dnContactDrawer .dn-intel-name-row h3{
    color:#203b57;
    font-size:18px;
    font-weight:780;
}

#dnContactDrawer .dn-intel-role{
    margin-top:4px;
    color:#687c91;
    font-size:12px;
    line-height:1.45;
}

/* Add to List */
#dnContactDrawer .dn-intel-list-action{
    margin:0;
    padding:0 20px 18px;
    border:0;
    border-bottom:1px solid #edf1f5;
    background:#ffffff;
}

#dnContactDrawer .dn-intel-list-action__button{
    min-height:42px;
    border:1px solid #d2deea;
    border-radius:10px;
    background:#ffffff;
    color:#294d70;
    font-size:12px;
    font-weight:750;
    box-shadow:none;
}

#dnContactDrawer .dn-intel-list-action__button:hover{
    border-color:#99c1e6;
    background:#f7fbff;
    color:#1768aa;
}

/* Section headings */
#dnContactDrawer .dn-intel-card__title{
    margin-bottom:10px;
    color:#657a90;
    font-size:10px;
    font-weight:800;
    letter-spacing:.085em;
}

/* Contact information rows */
#dnContactDrawer .dn-intel-card--contact{
    border-bottom:1px solid #edf1f5 !important;
}

#dnContactDrawer .dn-intel-card--contact .dn-intel-detail-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
}

#dnContactDrawer .dn-intel-card--contact .dn-intel-detail-row{
    min-height:70px;
    display:grid !important;
    grid-template-columns:40px minmax(0,1fr) auto;
    align-items:center;
    gap:13px;
    padding:13px 0;
    border-bottom:1px solid #edf1f5;
}

#dnContactDrawer .dn-intel-card--contact .dn-intel-detail-row:last-child{
    border-bottom:0;
}

#dnContactDrawer .dn-intel-contact-icon{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border:1px solid #dce5ee;
    border-radius:50%;
    background:#f4f7fa;
    color:#526b83;
    font-size:15px;
}

#dnContactDrawer .dn-intel-detail-copy{
    min-width:0;
}

#dnContactDrawer .dn-intel-card--contact .dn-intel-detail-label{
    display:block;
    margin:0 0 4px;
    color:#8190a1;
    font-size:10px;
    font-weight:700;
}

#dnContactDrawer .dn-intel-card--contact .dn-intel-detail-value{
    display:block;
    color:#263f58;
    font-size:13px;
    font-weight:700;
    line-height:1.4;
    overflow-wrap:anywhere;
}

/* Independent access actions */
#dnContactDrawer .dn-intel-field-access{
    min-width:124px;
    min-height:40px;
    padding:9px 13px;
    border:1px solid #ccd8e4;
    border-radius:10px;
    background:#ffffff;
    color:#294f74;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    font-size:11px;
    font-weight:760;
    white-space:nowrap;
    cursor:pointer;
    box-shadow:none;
}

#dnContactDrawer .dn-intel-field-access[hidden]{
    display:none !important;
}

#dnContactDrawer .dn-intel-field-access:hover{
    border-color:#8ebbe5;
    background:#f6faff;
    color:#1767a9;
}

#dnContactDrawer .dn-intel-field-access:disabled{
    border-color:#d9e1e9;
    background:#f5f7f9;
    color:#8c98a5;
    cursor:wait;
}

/* Action confirmation only */
#dnContactDrawer .dn-intel-field-message{
    margin-top:12px;
    padding:10px 12px;
    border:1px solid #dce5ee;
    border-radius:8px;
    background:#f8fafc;
    color:#566b81;
    font-size:11px;
    line-height:1.45;
}

#dnContactDrawer .dn-intel-field-message.is-success{
    border-color:#b9dfc7;
    background:#f0faf4;
    color:#247044;
}

#dnContactDrawer .dn-intel-field-message.is-error{
    border-color:#edc7c7;
    background:#fff6f6;
    color:#963b3b;
}

/* Professional profile — plain information, no tiles */
#dnContactDrawer .dn-intel-facts{
    margin:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px 22px;
}

#dnContactDrawer .dn-intel-facts > div{
    min-width:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
}

#dnContactDrawer .dn-intel-facts dt{
    margin-bottom:4px;
    color:#8493a3;
    font-size:10px;
    font-weight:700;
}

#dnContactDrawer .dn-intel-facts dd{
    margin:0;
    color:#304b66;
    font-size:12px;
    font-weight:700;
    line-height:1.4;
}

/* Footer actions */
#dnContactDrawer .dn-intel-card--actions{
    padding-top:17px;
    border-top:1px solid #edf1f5 !important;
}

#dnContactDrawer .dn-intel-actions{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
}

#dnContactDrawer .dn-intel-action{
    min-height:40px;
    border-radius:9px;
    font-size:11px;
}

#dnContactDrawer .dn-intel-access-note{
    display:none !important;
}

@media(max-width:520px){
    #dnContactDrawer .dn-intel-card--contact .dn-intel-detail-row{
        grid-template-columns:38px minmax(0,1fr);
    }

    #dnContactDrawer .dn-intel-field-access{
        grid-column:2;
        min-width:0;
        justify-self:start;
    }

    #dnContactDrawer .dn-intel-facts,
    #dnContactDrawer .dn-intel-actions{
        grid-template-columns:1fr;
    }
}

/* ===== Contact details refinement v2 ===== */

/*
 * Compact, information-first contact rows.
 * Field values remain visually primary; access actions are secondary.
 */
#dnContactDrawer .dn-intel-card--contact{
    padding:18px 20px 17px;
}

#dnContactDrawer
.dn-intel-card--contact
.dn-intel-card__title{
    margin-bottom:9px;
    color:#61758a;
    font-size:10px;
    font-weight:800;
    letter-spacing:.075em;
}

#dnContactDrawer
.dn-intel-card--contact
.dn-intel-detail-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:3px !important;
}

#dnContactDrawer
.dn-intel-card--contact
.dn-intel-detail-row{
    min-height:56px;
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) auto;
    align-items:center;
    column-gap:12px;
    padding:8px 0;
    border:0 !important;
}

#dnContactDrawer
.dn-intel-card--contact
.dn-intel-detail-row:first-child,
#dnContactDrawer
.dn-intel-card--contact
.dn-intel-detail-row:last-child{
    padding-top:8px;
    padding-bottom:8px;
}

#dnContactDrawer .dn-intel-contact-icon{
    width:34px;
    height:34px;
    border:1px solid #dce5ee;
    border-radius:50%;
    background:#f7f9fc;
    color:#506b86;
    font-size:14px;
    box-shadow:none;
}

#dnContactDrawer
.dn-intel-card--contact
.dn-intel-detail-label{
    margin:0 0 3px;
    color:#8190a1;
    font-size:10px;
    font-weight:680;
    line-height:1.2;
}

#dnContactDrawer
.dn-intel-card--contact
.dn-intel-detail-value{
    color:#29435d;
    font-size:13px;
    font-weight:680;
    line-height:1.35;
}

/*
 * Quiet outlined action: clearly available without competing
 * with the actual contact information.
 */
#dnContactDrawer .dn-intel-field-access{
    min-width:116px;
    min-height:36px;
    padding:8px 11px;
    border:1px solid #ccd8e4;
    border-radius:9px;
    background:#ffffff;
    color:#315779;
    gap:6px;
    font-size:11px;
    font-weight:730;
    box-shadow:none;
}

#dnContactDrawer .dn-intel-field-access:hover{
    border-color:#8fbbe3;
    background:#f6faff;
    color:#1767a9;
    box-shadow:none;
}

#dnContactDrawer .dn-intel-field-access i{
    font-size:12px;
}

/* Keep confirmation feedback compact after an access action. */
#dnContactDrawer .dn-intel-field-message{
    margin-top:9px;
    padding:9px 11px;
    border-radius:8px;
}

@media(max-width:520px){
    #dnContactDrawer
    .dn-intel-card--contact
    .dn-intel-detail-row{
        grid-template-columns:32px minmax(0,1fr);
        column-gap:10px;
        row-gap:5px;
    }

    #dnContactDrawer .dn-intel-contact-icon{
        width:32px;
        height:32px;
        font-size:13px;
    }

    #dnContactDrawer .dn-intel-field-access{
        grid-column:2;
        min-width:0;
        min-height:35px;
        justify-self:start;
    }
}

/* ===== End contact details refinement v2 ===== */

/* ===== Universal blue controls ===== */

/*
 * Every primary-blue action in Search uses the same solid states.
 * No gradients and no dark navy borders.
 */
.dn-shell button.btn.primary.dn-search-access-trigger,
.dn-shell #filtersSubmitBtn,
.dn-shell .filters-footer .btn.primary,
.dn-shell .dn-page-btn.is-active,
#dnContactDrawer .dn-intel-action--primary,
#dnx-list-modal .btn.btn-dark{
    border-color:var(--dn-blue-primary) !important;
    background:var(--dn-blue-primary) !important;
    color:#ffffff !important;
    box-shadow:none !important;
}

.dn-shell button.btn.primary.dn-search-access-trigger:hover,
.dn-shell #filtersSubmitBtn:hover,
.dn-shell .filters-footer .btn.primary:hover,
.dn-shell .dn-page-btn.is-active:hover,
#dnContactDrawer .dn-intel-action--primary:hover,
#dnx-list-modal .btn.btn-dark:hover{
    border-color:var(--dn-blue-hover) !important;
    background:var(--dn-blue-hover) !important;
    color:#ffffff !important;
    box-shadow:none !important;
}

.dn-shell button.btn.primary.dn-search-access-trigger:active,
.dn-shell #filtersSubmitBtn:active,
.dn-shell .filters-footer .btn.primary:active,
.dn-shell .dn-page-btn.is-active:active,
#dnContactDrawer .dn-intel-action--primary:active,
#dnx-list-modal .btn.btn-dark:active{
    border-color:var(--dn-blue-pressed) !important;
    background:var(--dn-blue-pressed) !important;
    color:#ffffff !important;
    box-shadow:none !important;
}

.dn-shell button.btn.primary.dn-search-access-trigger:focus-visible,
.dn-shell #filtersSubmitBtn:focus-visible,
.dn-shell .filters-footer .btn.primary:focus-visible,
.dn-shell .dn-page-btn.is-active:focus-visible,
#dnContactDrawer .dn-intel-action--primary:focus-visible,
#dnx-list-modal .btn.btn-dark:focus-visible{
    outline:0 !important;
    box-shadow:
        0 0 0 3px var(--dn-blue-focus) !important;
}

/* Secondary access actions use the same palette softly. */
#dnContactDrawer .dn-intel-field-access{
    border-color:var(--dn-blue-soft-border);
    background:#ffffff;
    color:var(--dn-blue-primary);
    box-shadow:none;
}

#dnContactDrawer .dn-intel-field-access:hover{
    border-color:var(--dn-blue-primary);
    background:var(--dn-blue-soft);
    color:var(--dn-blue-hover);
    box-shadow:none;
}

#dnContactDrawer .dn-intel-field-access:active{
    border-color:var(--dn-blue-pressed);
    background:var(--dn-blue-soft);
    color:var(--dn-blue-pressed);
    box-shadow:none;
}

#dnContactDrawer .dn-intel-field-access:focus-visible{
    outline:0;
    box-shadow:
        0 0 0 3px var(--dn-blue-focus);
}

/* Quiet blue hover for outlined workflow controls. */
#dnContactDrawer .dn-intel-list-action__button:hover,
#dnContactDrawer .dn-intel-action:not(
    .dn-intel-action--primary
):hover{
    border-color:var(--dn-blue-soft-border);
    background:var(--dn-blue-soft);
    color:var(--dn-blue-hover);
}

/* ===== End universal blue controls ===== */

/* ===== Reusable interactive contact values ===== */

.dn-contact-value{
    width:100%;
    min-width:0;
    display:flex;
    align-items:center;
    gap:5px;
}

.dn-contact-value__copy{
    flex:0 0 23px;
    width:23px;
    height:23px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid transparent;
    border-radius:6px;
    background:transparent;
    color:#8291a1;
    font-family:inherit;
    font-size:11px;
    line-height:1;
    cursor:pointer;
}

.dn-contact-value__copy:hover{
    border-color:var(
        --dn-blue-soft-border,
        #CFE3F7
    );
    background:var(
        --dn-blue-soft,
        #EDF6FE
    );
    color:var(
        --dn-blue-primary,
        #2F80D9
    );
}

.dn-contact-value__copy:focus-visible{
    outline:0;
    box-shadow:
        0 0 0 3px
        var(
            --dn-blue-focus,
            rgba(47,128,217,.22)
        );
}

.dn-contact-value__copy.is-copied{
    border-color:var(
        --dn-blue-soft-border,
        #CFE3F7
    );
    background:var(
        --dn-blue-soft,
        #EDF6FE
    );
    color:var(
        --dn-blue-primary,
        #2F80D9
    );
}

.dn-contact-value__copy:disabled{
    cursor:default;
}

.dn-contact-value__link{
    min-width:0;
    display:block;
    overflow:hidden;
    color:#365a7a;
    font-size:11px;
    font-weight:550;
    line-height:1.35;
    text-decoration:none;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.dn-contact-value__link:hover{
    color:var(
        --dn-blue-primary,
        #2F80D9
    );
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:2px;
}

.dn-contact-value__link:focus-visible{
    border-radius:3px;
    outline:0;
    box-shadow:
        0 0 0 3px
        var(
            --dn-blue-focus,
            rgba(47,128,217,.22)
        );
}

#dnContactDrawer
.dn-intel-detail-value
.dn-contact-value{
    width:auto;
    max-width:100%;
    display:inline-flex;
    align-items:center;
    gap:6px;
}

#dnContactDrawer
.dn-intel-detail-value
.dn-contact-value__link{
    order:1;
    flex:0 1 auto;
    max-width:calc(100% - 31px);
    font-size:13px;
    font-weight:680;
}

#dnContactDrawer
.dn-intel-detail-value
.dn-contact-value__copy{
    order:2;
    flex:0 0 25px;
    width:25px;
    height:25px;
}

/* ===== End interactive contact values ===== */
