/* ===========================
   MAIN CONTENT
=========================== */

.main-content{
    flex:1;
    padding:30px;
    background:#0f172a;
    min-height:100vh;
    overflow-y:auto;
}

/* ===========================
   PAGE HEADER
=========================== */

.page-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:30px;
}

.page-header h1{
    color:#fff;
    font-size:30px;
    font-weight:600;
}

.page-header p{
    color:#94a3b8;
    margin-top:8px;
    font-size:15px;
}

/* ===========================
   SUMMARY CARDS
=========================== */

.summary-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-bottom:30px;
}

.summary-card{
    background:#1e293b;
    border-radius:16px;
    padding:25px;
    text-align:center;
    transition:.3s;
    border:1px solid #293548;
}

.summary-card:hover{
    transform:translateY(-5px);
    border-color:#f4b400;
    box-shadow:0 0 20px rgba(244,180,0,.15);
}

.summary-card i{
    font-size:30px;
    color:#f4b400;
    margin-bottom:15px;
}

.summary-card h3{
    color:#cbd5e1;
    font-size:16px;
    font-weight:500;
    margin-bottom:12px;
}

.summary-card span{
    color:#fff;
    font-size:28px;
    font-weight:700;
}

/* ===========================
   TWO COLUMN GRID
=========================== */

.earning-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:25px;
    margin-bottom:30px;
}

/* ===========================
   CARDS
=========================== */

.earning-card{
    background:#1e293b;
    border-radius:18px;
    padding:25px;
    border:1px solid #293548;
}

.earning-card h2{
    color:#fff;
    font-size:22px;
    margin-bottom:25px;
}

.earning-card h2 i{
    color:#f4b400;
    margin-right:8px;
}

/* ===========================
   LABELS
=========================== */

.earning-card label{
    display:block;
    color:#cbd5e1;
    margin-top:18px;
    margin-bottom:8px;
    font-size:14px;
}

/* ===========================
   INPUTS
=========================== */

.earning-card input,
.earning-card select{
    width:100%;
    padding:13px 15px;
    background:#111827;
    border:1px solid #374151;
    color:#fff;
    border-radius:10px;
    font-size:14px;
    outline:none;
    transition:.3s;
}

.earning-card [hidden]{
    display:none;
}

.withdraw-amount-row{
    display:flex;
    align-items:stretch;
    gap:10px;
}

.withdraw-amount-row input{
    min-width:0;
    flex:1;
}

.withdraw-amount-row button{
    min-width:76px;
    padding:0 18px;
    border:1px solid #f4b400;
    border-radius:10px;
    background:#111827;
    color:#f4b400;
    font-weight:700;
    cursor:pointer;
}

.withdraw-amount-row button:disabled{
    cursor:not-allowed;
    opacity:.5;
}

.saved-bank-account{
    display:flex;
    width:100%;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    margin-top:18px;
    padding:15px;
    border:1px solid #f4b400;
    border-radius:12px;
    background:#111827;
    color:#fff;
    text-align:left;
    cursor:pointer;
}

.saved-bank-account span:first-child{
    display:grid;
    gap:5px;
}

.saved-bank-account small{
    color:#cbd5e1;
    overflow-wrap:anywhere;
}

.saved-bank-select-label{
    color:#f4b400;
    white-space:nowrap;
    font-weight:600;
}

.saved-bank-account:hover{
    background:#182235;
}

.withdrawal-verification-dialog{
    position:fixed;
    top:50%;
    left:50%;
    width:min(92vw, 460px);
    max-height:calc(100vh - 32px);
    margin:0;
    padding:0;
    border:1px solid #374151;
    border-radius:18px;
    background:#1e293b;
    color:#fff;
    box-shadow:0 24px 80px rgba(0,0,0,.55);
    transform:translate(-50%, -50%);
    overflow-y:auto;
}

.withdrawal-verification-dialog::backdrop{
    background:rgba(3,7,18,.78);
    backdrop-filter:blur(3px);
}

.withdrawal-verification-content{
    position:relative;
    padding:30px;
}

.withdrawal-verification-content h2{
    margin:0 36px 12px 0;
    color:#fff;
}

.withdrawal-verification-content p{
    color:#cbd5e1;
    line-height:1.55;
}

.withdrawal-verification-content label{
    display:block;
    margin:20px 0 8px;
    color:#cbd5e1;
}

.withdrawal-verification-content input{
    width:100%;
    padding:13px 15px;
    border:1px solid #374151;
    border-radius:10px;
    background:#111827;
    color:#fff;
    letter-spacing:.2em;
}

.withdrawal-verification-content input:focus{
    outline:none;
    border-color:#f4b400;
}

.withdrawal-dialog-close{
    position:absolute;
    top:12px;
    right:16px;
    border:0;
    background:transparent;
    color:#cbd5e1;
    font-size:28px;
    cursor:pointer;
}

.withdrawal-resend-btn{
    width:100%;
    margin-top:12px;
    padding:12px;
    border:1px solid #374151;
    border-radius:10px;
    background:transparent;
    color:#f4b400;
    cursor:pointer;
}

.withdrawal-verification-content button:disabled{
    cursor:not-allowed;
    opacity:.55;
    transform:none;
}

.earning-card input:focus,
.earning-card select:focus{
    border-color:#f4b400;
}

/* ===========================
   COPY BOX
=========================== */

.copy-box{
    display:flex;
    gap:10px;
    margin-bottom:15px;
}

.copy-box input{
    flex:1;
}

.copy-box button{
    width:100px;
    border:none;
    background:#f4b400;
    color:#111;
    border-radius:10px;
    cursor:pointer;
    font-weight:600;
    transition:.3s;
}

.copy-box button:hover{
    background:#ffd54f;
}

/* ===========================
   REFERRAL NOTE
=========================== */

.referral-note{
    margin-top:20px;
    padding:15px;
    background:#111827;
    border-left:4px solid #f4b400;
    border-radius:10px;
    color:#cbd5e1;
    line-height:1.6;
    font-size:14px;
}

/* ===========================
   WITHDRAW SECTIONS
=========================== */

#nairaSection{
    margin-top:15px;
    display:block;
}

/* Keep unsupported payout methods hidden until they are implemented. */
#cryptoSection{
    display:none;
}

/* ===========================
   BUTTON
=========================== */

.yellow-btn{
    width:100%;
    margin-top:25px;
    background:#f4b400;
    color:#111;
    border:none;
    padding:14px;
    border-radius:10px;
    cursor:pointer;
    font-size:15px;
    font-weight:600;
    transition:.3s;
}

.yellow-btn:hover{
    background:#ffd54f;
    transform:translateY(-2px);
}
/* ===========================
   TABLE CARDS
=========================== */

.table-card{
    background:#1e293b;
    border:1px solid #293548;
    border-radius:18px;
    padding:25px;
    margin-top:30px;
    overflow:hidden;
}

.table-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

.table-header h2{
    color:#fff;
    font-size:22px;
    font-weight:600;
}

.table-header i{
    color:#f4b400;
    margin-right:8px;
}

/* ===========================
   TABLE
=========================== */

.table-card{
    overflow-x:auto;
}

.table-card table{
    width:100%;
    border-collapse:collapse;
    min-width:700px;
}

.table-card thead{
    background:#111827;
}

.table-card th{
    padding:15px;
    color:#f4b400;
    text-align:left;
    font-size:15px;
    font-weight:600;
}

.table-card td{
    padding:16px 15px;
    color:#d1d5db;
    border-top:1px solid #293548;
    font-size:14px;
}

.table-card tbody tr{
    transition:.3s;
}

.table-card tbody tr:hover{
    background:#111827;
}

/* ===========================
   STATUS BADGES
=========================== */

.status{
    padding:7px 14px;
    border-radius:20px;
    font-size:12px;
    font-weight:600;
    display:inline-block;
}

.status.paid{
    background:rgba(34,197,94,.15);
    color:#22c55e;
}

.status.pending{
    background:rgba(245,158,11,.15);
    color:#f59e0b;
}

.status.rejected{
    background:rgba(239,68,68,.15);
    color:#ef4444;
}

/* ===========================
   SCROLLBAR
=========================== */

::-webkit-scrollbar{
    width:8px;
    height:8px;
}

::-webkit-scrollbar-track{
    background:#111827;
}

::-webkit-scrollbar-thumb{
    background:#475569;
    border-radius:10px;
}

::-webkit-scrollbar-thumb:hover{
    background:#f4b400;
}

/* ===========================
   ANIMATION
=========================== */

.summary-card,
.earning-card,
.table-card{
    animation:fadeUp .5s ease;
}

@keyframes fadeUp{

    from{

        opacity:0;
        transform:translateY(20px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

/* ===========================
   RESPONSIVE
=========================== */

@media(max-width:1200px){

    .summary-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .earning-grid{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .main-content{

        padding:20px;

    }

    .page-header{

        flex-direction:column;
        align-items:flex-start;
        gap:15px;

    }

    .summary-grid{

        grid-template-columns:1fr;

    }

    .summary-card{

        padding:20px;

    }

    .earning-card{

        padding:20px;

    }

    .copy-box{

        flex-direction:column;

    }

    .copy-box button{

        width:100%;

    }

    .yellow-btn{

        width:100%;

    }

}

@media(max-width:500px){

    .page-header h1{

        font-size:26px;

    }

    .summary-card span{

        font-size:24px;

    }

    .table-header h2{

        font-size:18px;

    }

    .table-card table{

        min-width:600px;

    }

}