/* ================================================================
   GLOBAL
=================================================================*/
.cpcrm-wrap {
    font-family: Inter, Arial, sans-serif;
    padding: 10px;
    max-width: 1100px;
    margin: auto;
    color: var(--text, #111);
}

.cpcrm-wrap ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* ================================================================
   HERO SECTION — 3D SILVER METAL
=================================================================*/
.cp-hero{

display:flex;
justify-content:space-between;
gap:20px;
padding:40px;
width:100%;
box-sizing:border-box;

border-radius:26px;

/* glass panel */

background:rgba(255,255,255,0.55);
backdrop-filter:blur(18px);
-webkit-backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,0.5);

box-shadow:
0 20px 60px rgba(0,0,0,.08),
inset 0 1px 0 rgba(255,255,255,.8);

position:relative;
overflow:hidden;

}

/* GREEN WAVE */

.cp-hero::before{

content:"";
position:absolute;

width:500px;
height:500px;

background:radial-gradient(circle,#7bdcb5,transparent 70%);

left:-160px;
top:-160px;

filter:blur(70px);
opacity:.55;

animation:waveFloat 10s infinite alternate;

}

/* BLUE WAVE */

.cp-hero::after{

content:"";
position:absolute;

width:500px;
height:500px;

background:radial-gradient(circle,#8cc7ff,transparent 70%);

right:-160px;
bottom:-160px;

filter:blur(80px);
opacity:.55;

animation:waveFloat 12s infinite alternate;

}

/* WAVE ANIMATION */

@keyframes waveFloat{

0%{transform:translateY(0px);}
100%{transform:translateY(-40px);}

}


/* STATS GLASS CARDS */

.cp-stat-card{

background:rgba(255,255,255,0.65);

backdrop-filter:blur(12px);
-webkit-backdrop-filter:blur(12px);

border:1px solid rgba(255,255,255,0.6);

border-radius:16px;

padding:18px;

text-align:center;

box-shadow:
0 8px 25px rgba(0,0,0,.08);

transition:.25s;

}

.cp-stat-card:hover{

transform:translateY(-6px);

box-shadow:
0 18px 40px rgba(0,0,0,.12);

}

/* NUMBER */

.cp-stat-card strong{

font-size:26px;

font-weight:800;

color:#1f2937;

display:block;

}

/* LABEL */

.cp-stat-card span{

font-size:13px;

color:#555;

}

.cp-hero-left { flex: 1; }
.cp-welcome {
    font-size: 28px;
    font-weight: 900;
    margin: 0 0 6px;
}
.cp-hero-meta span {
    font-size: 14px;
    color: #333;
    font-weight: 600;
}

.cp-stats-grid {
    margin-top: 14px;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 12px;
}
.cp-stat-card {
    background: #f8faff;
    padding: 14px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.05);
}

/* ================================================================
   MAIN TABS
=================================================================*/
.cp-main-tabs {
    display: flex;
    gap: 14px;
    margin-top: 12px;
}
.cp-main-tab {
    padding: 10px 18px;
    border-radius: 10px;
    background: #f2f4ff;
    font-weight: 700;
    cursor: pointer;
    color: #444;
}
.cp-main-tab.active {
    background: #004CFF;
    color: #fff;
}

/* ================================================================
   FILTER PILLS + SEARCH
=================================================================*/
.cpcrm-pill {
    padding: 6px 16px;
    border-radius: 20px;
    background: #eee;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
}
.cpcrm-pill.active {
    background: #004CFF;
    color: #fff;
}

.cpcrm-search {
    margin: 14px 0;
    text-align: center;
}
.cpcrm-search-input {
    width: 90%;
    padding: 10px;
    border-radius: 10px;
    border: 1px solid #ddd;
}



.cpcrm-card {
    background: #fff;
    border-radius: 18px;
    padding: 22px;
    box-shadow:
        0 8px 20px rgba(0,0,0,0.05),
        0 15px 40px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: all .35s ease;
}
.cpcrm-card:hover {
    transform: translateY(-12px) scale(1.02) rotateX(3deg);
    box-shadow:
        0 15px 40px rgba(0,0,0,0.08),
        0 20px 60px rgba(0,0,0,0.12);
}

.cpcrm-top {
    display: flex;
    gap: 12px;
    align-items: center;
}
.thumb {
    width: 64px;
    height: 64px;
    border-radius: 10px;
    object-fit: cover;
}

.cpcrm-title { font-size: 18px; font-weight: 700; }
.cpcrm-sub {
    font-size: 13px;
    color: #777;
    margin-top: 3px;
}

/* -------- GOLD COMMISSION BADGE CENTERED -------- */
.cpcrm-comm-box {
    display: block;
    margin: 0 auto 14px auto;
    padding: 10px 18px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 800;
    text-align: center;
    background: linear-gradient(135deg, #ffd84d, #f7b500);
    color: #4a3500;
    box-shadow:
        0 4px 12px rgba(247,181,0,0.35),
        inset 0 2px 4px rgba(255,255,255,0.4),
        inset 0 -2px 4px rgba(0,0,0,0.12);
    border: 1px solid rgba(255,210,50,0.6);
}

/* FORCE GREEN TICK — ALWAYS SHOW */
.cpcrm-features-list li {
    font-size: 14px;
    color: #333;
    padding-left: 26px !important;
    margin-bottom: 6px;
    position: relative;
}
.cpcrm-features-list li::before {
    content: "✔" !important;
    position: absolute;
    left: 0;
    top: 2px;
    font-size: 16px;
    color: #0ac56b !important;
    font-weight: 900;
    text-shadow:
        0 0 4px rgba(0,255,150,0.4),
        0 0 8px rgba(0,255,150,0.2);
}

/* ============================================================
   PREMIUM CENTER-ALIGNED BUTTONS (Share + Apply Now)
============================================================ */
.cpcrm-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    margin-top: 18px;
    width: 100%;
}

/* SAME SIZE BUTTONS */
.cpcrm-btn {
    width: 140px;               /* <<< SAME WIDTH FOR BOTH */
    text-align: center;
    padding: 12px 0;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: 0.25s ease;
    border: none;
}

/* SHARE BUTTON */
.cpcrm-btn.share {
    background: #e6fff3;
    color: #00b06b;
    box-shadow: 0 4px 12px rgba(0, 180, 110, 0.18);
}
.cpcrm-btn.share:hover {
    background: #00c57c;
    color: #fff;
}

/* APPLY BUTTON */
.cpcrm-btn.apply {
    background: #0057ff;
    color: #fff;
    box-shadow: 0 4px 14px rgba(0, 90, 255, 0.28);
}
.cpcrm-btn.apply:hover {
    background: #0042d6;
}

/* KNOW MORE BUTTON — Full width below */
.cpcrm-know-more {
    width: 100%;
    padding: 14px;
    margin-top: 12px;
    border-radius: 12px;
    background: #f7f9ff;
    color: #003cbd;
    border: 1px solid #d8e2ff;
    font-weight: 700;
    text-align: center;
    box-shadow: 0 3px 10px rgba(0, 40, 160, 0.05);
}
.cpcrm-know-more:hover {
    background: #e8f0ff;
}

/* ============================================================
   UNIVERSAL BACKDROP
============================================================ */
.cp-modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.55);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 999999;
    padding: 20px;
}

/* ============================================================
   MAIN POPUP BOX
============================================================ */
.cp-modal {
    width: 100%;
    max-width: 420px;
    background: #fff;
    border-radius: 20px;
    padding: 26px;
    box-shadow: 0 25px 55px rgba(0,0,0,0.25);
    animation: cpPop .28s ease-out;
}

@keyframes cpPop {
    0% { transform: scale(.85); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

.cp-modal h3 {
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 18px;
}

/* ============================================================
   INPUTS (Apply Form)
============================================================ */
.cp-modal .cp-input {
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #ddd;
    font-size: 15px;
    margin-bottom: 12px;
}

/* ============================================================
   SHARE ICON GRID
============================================================ */
.cp-share-icons {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
    margin-top: 14px;
}

.cp-share-icons a {
    padding: 12px;
    border-radius: 14px;
    background: #eafff4;
    color: #00b372;
    font-weight: 700;
    text-align: center;
    transition: .2s;
}
.cp-share-icons a:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.1);
}

/* ============================================================
   POPUP BUTTONS
============================================================ */
.cp-modal .cp-btn-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 18px;
}

.cp-btn {
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    transition: .2s;
}

.cp-btn.cancel {
    background: #eafff4;
    color: #00b372;
}
.cp-btn.cancel:hover {
    box-shadow: 0 6px 14px rgba(0,255,150,0.18);
}

.cp-btn.submit,
.cp-btn.close {
    background: #0056ff;
    color: #fff;
}
.cp-btn.submit:hover,
.cp-btn.close:hover {
    background: #0041d6;
}

/* ============================================================
   MOBILE — GLOBAL DASHBOARD RESPONSIVE
   (no design change, sirf layout adjust)
============================================================ */
@media (max-width: 768px) {

    /* HERO */
    .cp-hero {
        flex-direction: column;
        text-align: center;
        padding: 22px;
    }

    .cp-stats-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 8px;
    }


    /* BUTTONS – full width */
    .cpcrm-actions {
        flex-direction: column;
        width: 100%;
        gap: 12px;
    }
    .cpcrm-btn {
        width: 100% !important;
        padding: 14px 0;
        font-size: 16px;
    }
    .cpcrm-know-more {
        width: 100%;
    }

    /* SEARCH */
    .cpcrm-search-input {
        width: 100%;
    }

    /* PROFILE SECTION (if used) */
    .cp-profile-grid {
        flex-direction: column !important;
    }

    /* MODAL – bottom sheet style */
    .cp-modal-backdrop {
        align-items: flex-end;
        padding: 0;
    }
    .cp-modal {
        border-radius: 22px 22px 0 0;
        width: 100%;
        max-width: 100%;
        padding: 26px;
        animation: slideUp .28s ease-out;
    }

    .cp-share-icons {
        grid-template-columns: repeat(3,1fr);
    }
}

/* Elementor tabs spacing (same as before) */
.elementor-widget-tabs .elementor-tab-title {
    margin: 0 10px !important;
}

/* ============================================================
   LEADS TABLE — MOBILE RESPONSIVE
============================================================ */
@media(max-width:768px){

    .cpcrm-table {
        width: 100%;
        border-collapse: collapse;
        display: block;
    }

    .cpcrm-table thead {
        display: none !important;
    }

    .cpcrm-table tbody tr {
        display: block;
        background: #fff;
        margin-bottom: 14px;
        padding: 14px 16px;
        border-radius: 14px;
        box-shadow: 0 4px 14px rgba(0,0,0,0.06);
    }

    .cpcrm-table tbody td {
        display: flex;
        justify-content: space-between;
        padding: 6px 0;
        border-bottom: 1px solid #eee;
        font-size: 15px;
    }

    .cpcrm-table tbody td:last-child {
        border-bottom: none;
    }

    .cpcrm-table tbody td:before {
        content: attr(data-title);
        font-weight: 700;
        color: #111;
        margin-right: 10px;
        text-transform: capitalize;
    }
}

/* ======================================
LEAD CARD BUTTON ROW
======================================*/

.cp-lead-card .cp-claim-btn,
.cp-lead-card .cp-appno-btn{
flex:1;
}

.cp-lead-card .cp-claim-btn{
text-align:center;
}

/* BUTTON ROW */

.cp-button-row{
display:flex;
gap:12px;
margin-top:14px;
align-items:center;
}

/* BOTH ELEMENT SAME SIZE */

.cp-button-row .cp-claim-btn,
.cp-button-row .cp-appno-done{
flex:1;
height:42px;
display:flex;
align-items:center;
justify-content:center;
border-radius:10px;
font-weight:700;
font-size:13px;
}

/* APP NO BADGE */

.cp-appno-done{
background:#e8f7ef;
color:#16a34a;
}

/* CLAIM BUTTON */

.cp-claim-btn{
background:#2f6fed;
color:#fff;
border:none;
cursor:pointer;
}

/* CLAIMED */

.cp-claimed{
background:#16a34a;
cursor:not-allowed;
opacity:0.9;
}

.cp-status{
display:inline-block;
padding:5px 10px;
border-radius:20px;
font-size:12px;
font-weight:700;
background:#fff4e5;
color:#b36b00;
box-shadow:0 2px 6px rgba(0,0,0,.06);
}

.cp-lead-card{
transition:all .25s ease;
}

.cp-lead-card:hover{
transform:translateY(-6px);
box-shadow:0 12px 30px rgba(0,0,0,.12);
}

/* CONTENT AREA */
.cp-lead-content{
flex:1;
}


/* TEXT WRAP FIX */
.cpcrm-card *{
word-break:break-word;
}

/* PREVENT OVERFLOW */
.cpcrm-card{
overflow:hidden;
}

/* CARD LAYOUT FIX */
.cp-lead-card{
display:flex;
flex-direction:column;
justify-content:space-between;
min-height:160px;
padding:18px;
position:relative;
}

/* TOP CONTENT */
.cp-lead-content{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:10px;
flex-wrap:wrap;
}

/* TEXT SIDE */
.cp-lead-info{
flex:1;
min-width:140px;
}

/* RIGHT SIDE INFO */
.cp-lead-meta{
text-align:right;
font-size:13px;
}

/* BUTTON ROW ALWAYS BOTTOM */
.cp-button-row{
display:flex;
gap:10px;
margin-top:14px;
}

/* GRID STABLE */
.cpcrm-grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
gap:18px;
align-items:stretch;
}

/* TEXT BREAK FIX */
.cp-lead-card *{
word-break:break-word;
}

.cp-subagent-icon{
    position:absolute;
    top:12px;
    right:12px;
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;

    border:none;
    border-radius:12px;

    background:#F1F5FF;
    color:#2563EB;

    cursor:pointer;
    z-index:100;

    box-shadow:0 6px 18px rgba(0,0,0,.12);

    transition:.25s;
}

.cp-subagent-icon:hover{
    transform:translateY(-2px);
    background:#2563EB;
    color:#fff;
}