.tournament-player-list {counter-reset: rank;}
.tournament-player {counter-increment: rank;}
.tournament-player-rank::before {content: "#" counter(rank); font-weight: bold; margin-right: 10px; display: inline-block; width: 30px;}
.tournament-player-info { display: flex; align-items: center; justify-content: space-between; padding: 8px 12px; border-bottom: 1px solid #333; }
.tournament-player-name {flex-grow: 1;}
.tournament-player-score {white-space: nowrap;}



.selected-marker {color: #ff014f; margin: auto 4px; font-size: 15px;}
.newpoints-menu {border: 1px solid var(--border-color);border-radius: 6px;overflow: hidden;}
.menu-option {padding: 1px;display: flex;}
.tcat_menu {display: flex ; align-items: center; padding: 5px; background: #2d303a; border-radius: 5px;margin-bottom: 4px;}
.expcolimage {margin-right: 10px;}
.tournament-grid {display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; padding: 20px 20px; font-family: 'Segoe UI', sans-serif;}
.tournament-card {position: relative; width: 320px; background: #2d303a; border-radius: 12px; overflow: hidden; padding: 20px; color: #fff;}

.tournament-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #0f151c;
    border-radius: 8px;
    padding: 10px 15px;
    color: #fff;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 14px;
}

.tournament-header.green { background-color: #ff014f; }
.tournament-header.yellow { background-color: #ffb400; }

.tournament-timer {
    font-size: 12px;
    color: #aaa;
    margin-bottom: 15px;
}

.tournament-title {
    text-align: center;
    margin-bottom: 20px;
}
.tournament-title .subtitle {
    font-size: 12px;
    color: #bbb;
    letter-spacing: 1px;
}
.tournament-title .title {
    font-size: 20px;
    font-weight: bold;
    color: #00ff90;
}

.tournament-prize {
    background-color: #131b24;
    border-radius: 8px;
    text-align: center;
    padding: 10px;
    margin-bottom: 20px;
    font-size: 14px;
    color: #f5f5f5;
}
.tournament-prize i {
    color: #ffb400;
    margin-right: 5px;
}

.tournament-player {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.tournament-player img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    margin-right: 12px;
    border: 2px solid #222;
}
.tournament-player-info {
    display: flex;
    justify-content: space-between;
    width: 100%;
    font-size: 14px;
}
.tournament-player-name {
    color: #fff;
    font-weight: 500;
}
.tournament-player-score {color: #c9b37e;font-weight: bold;}
.tournament-player-score i {margin-left: 5px;color: #00b4ff;}

@media (max-width: 768px) {
    .tournament-grid {
        flex-direction: column;
        align-items: center;
    }
}

.tournament__list-item-npxc::before {content: ""; position: absolute; top: 20px; left: 70px; width: 15%; height: 18%; background-color: #ff014f; z-index: 0;}
.tournament__list-item-npxc {position: relative; width: 100%; max-width: 1000px; margin: 0 auto; margin-bottom: 5px;}
.tournament__list-item-npxc svg {position: absolute; top: -35px; left: 0; width: 100%; z-index: 0;}
.tournament__list-content-npxc {position: relative; display: flex ; align-items: center; justify-content: space-between; padding: 25px 20px; z-index: 1;}

.tournament__list-name-npxc {flex: 1;margin-left: 20px;}
.tournament__list-name-npxc .team-name {font-size: 15px;font-weight: bold;margin: 0;}
.tournament__list-name-npxc .status {font-size: 13px;color: #c9b37e;}

        .tournament__list-prize-npxc,
        .tournament__list-time-npxc {
            text-align: center;
            margin: 0 20px;
        }

        .tournament__list-prize-npxc .title,
        .tournament__list-time-npxc .title {
            font-size: 13px;
            color: #aaa;
            margin-bottom: 5px;
        }

.tournament__list-prize-npxc span, .tournament__list-time-npxc span {font-size: 12px;font-weight: bold;color: #c9b37e;}
.tournament__list-time-npxc i{font-size: 12px;}
.tournament__list-prize-npxc i{font-size: 12px;}

        .tournament__list-live-npxc a {
            background: #2c2f3b;
            color: #fff;
            padding: 10px 18px;
            border-radius: 8px;
            font-size: 12px;
            font-weight: bold;
            text-decoration: none;
            display: flex;
            align-items: center;
            gap: 8px;
            transition: background 0.3s ease;
        }



        .background-path {fill: #2d303a;}

        @media (max-width: 768px) {
            .tournament__list-content-npxc {
                flex-direction: column;
                align-items: flex-start;
                gap: 20px;
                padding: 30px;
            }

            .tournament__list-prize-npxc,
            .tournament__list-time-npxc {
                margin: 0;
            }
        }




        a:hover {
            text-decoration: underline;
        }

        .newpoints-page {
            display: flex;
            gap: 20px;
            padding: 20px;
        }

.newpoints-sidebar {width: 250px; position: sticky; top: 100px; height: fit-content; background: var(--card-bg); border: 1px solid var(--border); border-radius: 6px; padding: 15px;}

        .newpoints-sidebar h3 {
            font-size: 16px;
            margin-bottom: 15px;
            border-bottom: 1px solid var(--border);
            padding-bottom: 8px;
        }

        .newpoints-sidebar a {
            display: block;
            margin: 10px 0;
            color: var(--text-muted);
            font-size: 14px;
        }

        .newpoints-sidebar a:hover {
            color: var(--text);
        }

        .newpoints-main {
            flex-grow: 1;
        }

.newpoints-block { border: 1px solid var(--border); border-radius: 6px; margin-bottom: 20px;}

        .newpoints-block h4 {
            margin-top: 0;
            font-size: 18px;
            border-bottom: 1px solid var(--border);
            padding-bottom: 10px;
        }

        .newpoints-errors {
            background-color: #512626;
            color: #ffbcbc;
            padding: 10px;
            border-radius: 4px;
            margin-bottom: 20px;
            border: 1px solid #723030;
        }

        @media (max-width: 768px) {
            .newpoints-page {
                flex-direction: column;
            }

            .newpoints-sidebar {
                width: 100%;
                position: static;
            }
        }









.donation-form {max-width: 500px; margin: 0 auto; padding: 20px; background: #2d303a; border-radius: 8px;}
.donation-header {font-size: 1.6em; font-weight: bold; margin-bottom: 20px; text-align: center; color: #ffffff; border-bottom: 1px solid #333; padding-bottom: 10px;}
.donation-field {margin-bottom: 18px;}
.donation-field label {display: block; margin-bottom: 6px; font-size: 15px;}
.field-title {display: block;font-weight: 600;margin-bottom: 2px;color: #e2e2e2;}
.field-desc {display: block;font-size: 0.85em;color: #aaa;}
.donation-input {width: 100%!important; padding: 10px!important; background-color: #2b2b3c!important; border: 1px solid #444!important; border-radius: 5px!important; color: #fff!important; font-size: 1em!important; transition: border-color 0.3s ease, background-color 0.3s ease!important;}
.donation-input:focus {border-color: #ff014f!important;background-color: #2f2f42!important;outline: none!important;}
.donation-submit {text-align: center;margin-top: 25px;}




.logs-container { width: 100%; margin: 0 auto; background: #2d303a; border-radius: 8px; overflow-x: auto; box-shadow: 0 0 12px rgba(0,0,0,0.3); font-family: "Segoe UI", sans-serif; color: #f1f1f1; }
.logs-header {background: #393c49; padding: 15px; font-size: 1.4em; font-weight: bold; text-align: center; border-bottom: 1px solid #333;}

.logs-row {
    display: flex;
    flex-wrap: wrap;
    padding: 10px 15px;
    border-bottom: 1px solid #2d2d3c;
}

.logs-thead { background-color: #505463; font-weight: bold; text-transform: uppercase; color: #a1a1b5; }
.logs-cell { flex: 1; min-width: 100px; padding: 8px 10px; text-align: left; font-size: 13px; }


.logs-cell.id {
    max-width: 50px;
    text-align: center;
}

.logs-cell.points,
.logs-cell.primary,
.logs-cell.secondary,
.logs-cell.tertiary,
.logs-cell.type,
.logs-cell.date {
    text-align: center;
}

/* Optional Hover Effect */
.logs-row:not(.logs-thead):hover {
    background-color: #212428;
}

/* Optional: Responsive Optimization */
@media (max-width: 768px) {
    .logs-cell {
        min-width: 50%;
        padding: 6px;
    }

    .logs-row.logs-thead {
        display: none;
    }
}





.logs-delete-button {
    background-color: #dc3545!important;
    color: #fff!important;
    padding: 6px 14px!important;
    border: none!important;
    border-radius: 4px!important;
    font-size: 0.9em!important;
    font-weight: 600!important;
    cursor: pointer!important;
    transition: background-color 0.3s ease!important;
}

.logs-delete-button:hover {
    background-color: #b52a37!important;
}
.logs-cell.user {
    text-align: center;
    flex: 1;
    min-width: 100px;
    color: #cdd6f4;
    font-weight: 500;
}
.logs-row.empty {
    justify-content: center;
    background-color: #2a2a3d;
    padding: 20px;
    font-style: italic;
    color: #bbb;
}

.logs-cell.full-width {
    width: 100%;
    text-align: center;
}




.logs-row {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.logs-cell {
    flex: 1;
    min-width: 100px;
    padding: 10px;
    box-sizing: border-box;
    text-align: left;
}

.logs-cell.id,
.logs-cell.points,
.logs-cell.type,
.logs-cell.date,
.logs-cell.delete {
    text-align: center;
}


.logs-cell.delete {order: unset !important;float: none !important;display: block;}
.logs-filter-container {background: #2e303a; padding: 20px; border-radius: 8px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.4); margin: 0 auto 20px auto;}

.logs-filter-header {
    font-size: 1.3em;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
    color: #f1f1f1;
}

.logs-filter-row {
    display: flex;
    flex-direction: column;
    margin-bottom: 15px;
    color: #ccc;
}

.logs-filter-row label {margin-bottom: 5px;font-weight: 600;}
.logs-filter-input input,
.logs-filter-input select {width: 100%; padding: 8px; border-radius: 4px; background: #2b2b3c; border: 1px solid #444; color: #f1f1f1; height: 100px;}
.logs-filter-submit {margin-top: 15px;}
.newpoints-pagination-container {display: flex; justify-content: flex-end; margin-top: 15px; margin-bottom: 10px; padding: 5px 10px;}
.pagination {display: flex;flex-wrap: wrap;gap: 5px;}
.pagination a,
.pagination span {background: #2e303a; color: #ccc; padding: 6px 10px; border-radius: 4px; text-decoration: none; font-size: 0.95em; transition: background 0.2s ease;}
.pagination a:hover {background: #3b3b4f;}
.pagination_current {background: #63677c!important;color: #fff;font-weight: bold;}


.bank-transactions {margin: 0 auto; max-width: 100%; background-color: #2d303a; border-radius: 8px; overflow-x: auto; box-shadow: 0 0 12px rgba(0, 0, 0, 0.3); font-family: "Segoe UI", sans-serif; color: #e1e1e6; padding: 0;}
.bank-header {background: #393c49;padding: 16px; border-bottom: 1px solid #333; font-size: 1.3em; display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center;}
.bank-balances span {margin-left: 20px;font-size: 0.9em;color: #aaa;}

.bank-thead, .bank-row {
    display: flex;
    flex-wrap: nowrap;
    padding: 10px 15px;
    border-bottom: 1px solid #2d2d3c;
    overflow-x: auto;
}

.bank-thead {background: #505463; font-weight: bold; text-transform: uppercase; font-size: 0.9em; color: #a1a1b5;}
.bank-row:hover {background-color: #212428;}
.bank-col {flex: 1; padding: 5px 10px; box-sizing: border-box; font-size: 12px;}
.bank-col.id,
.bank-col.points,
.bank-col.stamp,
.bank-col.status,
.bank-col.complete,
.bank-col.options {text-align: center;}

@media (max-width: 768px) {
    .bank-thead {
        display: none;
    }
    .bank-row {
        flex-direction: column;
        border-bottom: 1px solid #444;
    }
    .bank-col {
        padding: 6px 10px;
        border-bottom: 1px dashed #444;
        text-align: left !important;
    }
}
.transaction-status-approved {
    color: #28a745;
    font-weight: bold;
}

.transaction-status-pending {
    color: #ffc107;
    font-weight: bold;
}

.transaction-status-declined {
    color: #dc3545;
    font-weight: bold;
}
.bank-row-empty {
    justify-content: center;
    background-color: #2a2a3d;
    padding: 20px;
    font-style: italic;
    color: #bbb;
}

.bank-col.full-width {
    width: 100%;
    text-align: center;
    font-size: 0.95em;
}
.bank-transaction-modal {
    background: #1e1e2f;
    padding: 20px;
    border-radius: 8px;
    max-width: 600px;
    margin: 0 auto;
    box-shadow: 0 0 12px rgba(0,0,0,0.4);
    font-family: "Segoe UI", sans-serif;
    color: #f1f1f1;
    position: relative;
    z-index: 100;
}

.bank-modal-scroll {
    max-height: 400px;
    overflow-y: auto;
}

.bank-form-header {
    margin-bottom: 20px;
    font-size: 1.2em;
}

.bank-form-desc {
    font-size: 0.95em;
    color: #aaa;
    margin-top: 8px;
}

.bank-form-group {
    margin-bottom: 18px;
}

.bank-form-group label {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
}

.bank-form-group select,
.bank-form-group input[type="text"],
.bank-form-group input[type="number"] {
    width: 100%;
    padding: 8px;
    background: #2c2c3d;
    border: 1px solid #444;
    border-radius: 5px;
    color: #fff;
}

.bank-form-rates {
    margin-top: 6px;
    margin-bottom: 10px;
    font-size: 0.85em;
    color: #aaa;
}

.bank-form-confirm {
    margin-bottom: 16px;
}

.bank-form-submit {
    text-align: center;
}

.bank-form-submit .button {
    background-color: #007bff;
    color: white;
    padding: 10px 24px;
    border: none;
    border-radius: 5px;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.bank-form-submit .button:hover {
    background-color: #0056b3;
}






