/* ============================================================
   INCEPTION V66 - DATA PESERTA TEAM MANAGER
   UI/UX tetap mengikuti Participant Portal yang sudah ada.
   ============================================================ */

.participant-payment-row-v66 {
    margin-top: -2px !important;
}

.participant-payment-action-v66 {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
}

.participant-payment-status-v66 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 6px 10px;
    border: 1px solid #dfe6f2;
    border-radius: 999px;
    background: #f7f9fd;
    color: #66738f;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.participant-payment-status-v66.is-submitted {
    border-color: #f3d6a8;
    background: #fff7e8;
    color: #b66a12;
}

.participant-payment-status-v66.is-verified {
    border-color: #bfe5cf;
    background: #eefaf3;
    color: #287a4e;
}

.participant-payment-status-v66.is-rejected {
    border-color: #f3c7c7;
    background: #fff1f1;
    color: #bc4b4b;
}

/* Ketua tetap: tidak ada tombol Ganti/Hapus. */
.participant-person-card-v55.is-leader {
    grid-template-rows: auto auto !important;
}

.participant-person-card-v55.is-leader > .participant-person-head-v55 {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
}

.participant-team-count-v66 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end;
    display: grid;
    gap: 2px;
    min-width: 250px;
    padding: 8px 12px;
    border: 1px solid #e1e7f2;
    border-radius: 11px;
    background: #fbfcff;
    text-align: left;
}

.participant-team-count-v66 strong {
    color: #26324d;
    font-size: 11px;
    font-weight: 800;
}

.participant-team-count-v66 span {
    color: #8a95aa;
    font-size: 9px;
    font-weight: 600;
}

.participant-person-card-v55.is-leader > .participant-person-fields-v55 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-top: 7px;
}

/* Ganti / hapus anggota. */
.participant-person-card-v55:not(.is-leader) {
    grid-template-rows: auto auto !important;
}

.participant-person-card-v55:not(.is-leader) > .participant-person-head-v55 {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
}

.participant-member-actions-v66 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 7px;
}

.participant-member-actions-v66 button {
    min-height: 31px;
    padding: 0 11px;
    border-radius: 9px;
    font-family: inherit;
    font-size: 10px;
    font-weight: 800;
    cursor: pointer;
    transition: .18s ease;
}

.participant-member-actions-v66 .is-change {
    border: 1px solid #dbe4ff;
    background: #f4f7ff;
    color: #506bc6;
}

.participant-member-actions-v66 .is-change:hover {
    border-color: #b9c8fb;
    background: #edf2ff;
}

.participant-member-actions-v66 .is-delete {
    border: 1px solid #f3d5d8;
    background: #fff4f5;
    color: #d55d69;
}

.participant-member-actions-v66 .is-delete:hover:not(:disabled) {
    border-color: #eab8bd;
    background: #ffedef;
}

.participant-member-actions-v66 .is-delete:disabled {
    opacity: .42;
    cursor: not-allowed;
}

.participant-person-card-v55:not(.is-leader) > .participant-person-fields-v55 {
    grid-column: 2 !important;
    grid-row: 2 !important;
    margin-top: 7px;
}

/* Tambah anggota. */
.participant-add-member-v66 {
    width: 100%;
    min-height: 52px;
    display: grid;
    place-items: center;
    gap: 2px;
    padding: 9px 16px;
    border: 1px dashed #bfcceb;
    border-radius: 13px;
    background: #fbfcff;
    color: #526bc3;
    font-family: inherit;
    cursor: pointer;
    transition: .18s ease;
}

.participant-add-member-v66:hover {
    border-color: #8fa5df;
    background: #f6f8ff;
}

.participant-add-member-v66 strong {
    font-size: 12px;
    font-weight: 800;
}

.participant-add-member-v66 span {
    color: #8994aa;
    font-size: 9.5px;
    font-weight: 600;
}

@media (max-width: 1099px) {
    .participant-payment-action-v66 {
        grid-template-columns: 1fr auto !important;
    }

    .participant-payment-status-v66 {
        grid-column: 1 / -1;
        justify-self: start;
    }
}

@media (max-width: 760px) {
    .participant-person-card-v55.is-leader,
    .participant-person-card-v55:not(.is-leader) {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
    }

    .participant-person-card-v55.is-leader > .participant-person-head-v55,
    .participant-person-card-v55.is-leader > .participant-person-fields-v55,
    .participant-person-card-v55:not(.is-leader) > .participant-person-head-v55,
    .participant-person-card-v55:not(.is-leader) > .participant-person-fields-v55,
    .participant-team-count-v66,
    .participant-member-actions-v66 {
        grid-column: 1 !important;
        grid-row: auto !important;
        justify-self: stretch;
    }

    .participant-team-count-v66 {
        min-width: 0;
    }

    .participant-member-actions-v66 {
        justify-content: flex-end;
        margin-top: 4px;
    }

    .participant-person-card-v55.is-leader > .participant-person-fields-v55,
    .participant-person-card-v55:not(.is-leader) > .participant-person-fields-v55 {
        margin-top: 0;
    }

    .participant-payment-action-v66 {
        grid-template-columns: 1fr !important;
    }

    .participant-payment-action-v66 .participant-upload-v56 {
        justify-self: stretch !important;
        text-align: center;
    }
}

/* ===== INCEPTION V66.1 UI POLISH START ===== */
/*
   Perbaikan kecil setelah V66:
   - Bukti pembayaran sejajar dengan Kartu Pelajar.
   - Status pembayaran berada setelah file, bukan sebelum file.
   - Header Ketua + jumlah peserta sejajar dalam satu baris.
   - Field Ketua kembali full width 2 kolom tepat di bawah header.
   - Tombol Ganti/Hapus anggota sejajar di header card anggota.
   UI/UX lama tetap dipertahankan.
*/

@media (min-width: 1100px) {
    /* ---------------------------------------------------------
       BUKTI PEMBAYARAN
       Label | file | status | tombol
       --------------------------------------------------------- */
    .participant-payment-row-v66 {
        margin-top: 0 !important;
    }

    .participant-payment-row-v66 .participant-section-kicker-v55 {
        white-space: nowrap !important;
        font-size: 10.5px !important;
        letter-spacing: .12em !important;
    }

    .participant-payment-action-v66 {
        grid-template-columns: minmax(0, 1fr) auto auto !important;
        gap: 10px !important;
        align-items: center !important;
    }

    .participant-payment-action-v66 .participant-file-badge {
        grid-column: 1 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
    }

    .participant-payment-action-v66 .participant-payment-status-v66 {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        margin: 0 !important;
    }

    .participant-payment-action-v66 .participant-upload-v56 {
        grid-column: 3 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        margin: 0 !important;
    }

    /* ---------------------------------------------------------
       KETUA
       [01 Ketua Tim]                    [Jumlah Peserta 3/5]
       --------------------------------------------------------- */
    .participant-person-card-v55.is-leader {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto !important;
        column-gap: 16px !important;
        row-gap: 14px !important;
        align-items: center !important;
        padding: 18px !important;
    }

    .participant-person-card-v55.is-leader > .participant-person-head-v55 {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 0 !important;
    }

    .participant-person-card-v55.is-leader > .participant-team-count-v66 {
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: center !important;
        justify-self: end !important;
        min-width: 250px !important;
        margin: 0 !important;
    }

    .participant-person-card-v55.is-leader > .participant-person-fields-v55 {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        margin: 0 !important;
        padding-top: 14px !important;
        border-top: 1px solid #edf0f5 !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px 15px !important;
    }

    /* ---------------------------------------------------------
       ANGGOTA
       [02 Anggota 1]                       [Ganti] [Hapus]
       --------------------------------------------------------- */
    .participant-person-card-v55:not(.is-leader) {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto !important;
        column-gap: 12px !important;
        row-gap: 12px !important;
        align-items: center !important;
        padding: 18px !important;
    }

    .participant-person-card-v55:not(.is-leader) > .participant-person-head-v55 {
        grid-column: 1 !important;
        grid-row: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 0 !important;
    }

    .participant-person-card-v55:not(.is-leader) > .participant-member-actions-v66 {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        margin: 0 !important;
    }

    .participant-person-card-v55:not(.is-leader) > .participant-person-fields-v55 {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        margin: 0 !important;
        padding-top: 12px !important;
        border-top: 1px solid #edf0f5 !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
}

@media (max-width: 1099px) {
    .participant-payment-action-v66 {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 9px !important;
    }

    .participant-payment-action-v66 .participant-file-badge {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
    }

    .participant-payment-action-v66 .participant-payment-status-v66 {
        grid-column: 1 !important;
        grid-row: 2 !important;
        justify-self: start !important;
    }

    .participant-payment-action-v66 .participant-upload-v56 {
        grid-column: 2 !important;
        grid-row: 2 !important;
        justify-self: end !important;
    }
}

@media (max-width: 760px) {
    .participant-payment-action-v66 {
        grid-template-columns: 1fr !important;
    }

    .participant-payment-action-v66 .participant-file-badge,
    .participant-payment-action-v66 .participant-payment-status-v66,
    .participant-payment-action-v66 .participant-upload-v56 {
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    .participant-payment-action-v66 .participant-upload-v56 {
        justify-self: stretch !important;
    }
}
/* ===== INCEPTION V66.1 UI POLISH END ===== */

/* ===== INCEPTION V66.2 UI POLISH START ===== */
/*
   Fokus V66.2:
   1. Grid Kartu Pelajar dan Bukti Pembayaran konsisten.
   2. Status pembayaran lebih proporsional.
   3. Card Ketua lebih padat tanpa whitespace berlebihan.
   4. Tombol Ganti/Hapus lebih terbaca namun tetap soft.
   5. CTA Tambah Anggota tidak terasa seperti placeholder kosong.
   6. Spacing dan typography main content dibuat lebih konsisten.
   HANYA CSS — logic V66 tidak disentuh.
*/

/* ============================================================
   DESKTOP BESAR
   ============================================================ */
@media (min-width: 1100px) {

    /* --------------------------------------------------------
       PAYMENT ROW = satu grid dengan KARTU PELAJAR
       -------------------------------------------------------- */
    .participant-payment-row-v66 {
        box-sizing: border-box !important;
        margin: 0 24px !important;
        padding: 16px 0 !important;
        grid-template-columns: 140px minmax(0, 1fr) auto !important;
        column-gap: 14px !important;
        row-gap: 0 !important;
        align-items: center !important;
    }

    .participant-payment-row-v66 > .participant-team-document-copy-v56 {
        grid-column: 1 !important;
        min-width: 140px !important;
        align-self: center !important;
    }

    .participant-payment-row-v66 .participant-section-kicker-v55 {
        white-space: nowrap !important;
        font-size: 11.5px !important;
        line-height: 1.2 !important;
        letter-spacing: .105em !important;
    }

    .participant-payment-row-v66 > .participant-payment-action-v66 {
        grid-column: 2 / 4 !important;
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) auto auto !important;
        gap: 12px !important;
        align-items: center !important;
    }

    .participant-payment-action-v66 .participant-file-badge {
        min-height: 53px !important;
        padding: 10px 14px !important;
        border-radius: 11px !important;
    }

    .participant-payment-status-v66 {
        min-height: 34px !important;
        padding: 0 12px !important;
        font-size: 10.5px !important;
        line-height: 1 !important;
        box-sizing: border-box !important;
        flex: 0 0 auto !important;
    }

    .participant-payment-action-v66 .participant-upload-v56 {
        min-height: 43px !important;
        padding: 9px 16px !important;
    }

    /* --------------------------------------------------------
       KETUA: kompak + hierarchy jelas
       -------------------------------------------------------- */
    .participant-person-card-v55.is-leader {
        padding: 16px 18px 17px !important;
        column-gap: 18px !important;
        row-gap: 10px !important;
        align-items: center !important;
    }

    .participant-person-card-v55.is-leader > .participant-person-head-v55 {
        min-height: 46px !important;
        align-self: center !important;
    }

    .participant-person-card-v55.is-leader > .participant-team-count-v66 {
        min-width: 238px !important;
        padding: 9px 12px !important;
        border-radius: 10px !important;
        align-self: center !important;
    }

    .participant-team-count-v66 strong {
        font-size: 11.25px !important;
        line-height: 1.25 !important;
    }

    .participant-team-count-v66 span {
        font-size: 9.25px !important;
        line-height: 1.35 !important;
    }

    .participant-person-card-v55.is-leader > .participant-person-fields-v55 {
        padding-top: 11px !important;
        gap: 11px 15px !important;
    }

    /* --------------------------------------------------------
       ANGGOTA: tombol lebih jelas + header rapi
       -------------------------------------------------------- */
    .participant-person-card-v55:not(.is-leader) {
        padding: 16px 18px 17px !important;
        row-gap: 10px !important;
    }

    .participant-person-card-v55:not(.is-leader) > .participant-person-fields-v55 {
        padding-top: 11px !important;
        gap: 11px !important;
    }

    .participant-member-actions-v66 {
        gap: 8px !important;
    }

    .participant-member-actions-v66 button {
        min-height: 34px !important;
        padding: 0 13px !important;
        border-radius: 9px !important;
        font-size: 10.5px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
    }

    .participant-member-actions-v66 .is-change {
        border-color: #cfd9f8 !important;
        background: #f2f5ff !important;
        color: #4762c2 !important;
    }

    .participant-member-actions-v66 .is-change:hover {
        border-color: #aebff2 !important;
        background: #eaf0ff !important;
    }

    .participant-member-actions-v66 .is-delete {
        border-color: #efced2 !important;
        background: #fff3f4 !important;
        color: #cf5965 !important;
    }

    .participant-member-actions-v66 .is-delete:disabled {
        opacity: .58 !important;
        color: #cf7f87 !important;
        background: #fff8f8 !important;
        border-color: #f0dfe1 !important;
    }

    /* --------------------------------------------------------
       TYPOGRAPHY / INPUTS
       -------------------------------------------------------- */
    .participant-person-card-v55 .participant-person-head-v55 strong {
        font-size: 13.5px !important;
    }

    .participant-person-card-v55 .participant-person-head-v55 span {
        font-size: 9.75px !important;
    }

    .participant-person-card-v55 .participant-person-fields-v55 label {
        gap: 6px !important;
        font-size: 10.75px !important;
    }

    .participant-person-card-v55 .participant-person-fields-v55 input {
        height: 43px !important;
        font-size: 13px !important;
    }

    /* --------------------------------------------------------
       JARAK ANTAR CARD
       -------------------------------------------------------- */
    .participant-person-stack-v55 {
        gap: 14px !important;
    }

    /* --------------------------------------------------------
       TAMBAH ANGGOTA: tetap full-flow, tetapi punya breathing room
       -------------------------------------------------------- */
    .participant-add-member-v66 {
        width: auto !important;
        min-height: 58px !important;
        margin: 4px 18px 6px !important;
        padding: 10px 18px !important;
        gap: 3px !important;
        border-color: #c4cfea !important;
        border-radius: 12px !important;
        background: #fbfcff !important;
    }

    .participant-add-member-v66 strong {
        font-size: 12.5px !important;
        line-height: 1.25 !important;
    }

    .participant-add-member-v66 span {
        font-size: 9.75px !important;
        line-height: 1.35 !important;
    }

    .participant-add-member-v66:hover {
        border-color: #9cafe3 !important;
        background: #f6f8ff !important;
    }

    /* --------------------------------------------------------
       SAVE BAR: jangan mepet border bawah
       -------------------------------------------------------- */
    .participant-content:has(.participant-person-card-v55) .participant-save {
        min-height: 82px !important;
        padding: 16px 18px 20px !important;
        margin-top: 2px !important;
        box-sizing: border-box !important;
    }

    .participant-content:has(.participant-person-card-v55) .participant-save > div > span,
    .participant-content:has(.participant-person-card-v55) .participant-save > div > strong {
        font-size: 12.5px !important;
        line-height: 1.45 !important;
    }

    .participant-content:has(.participant-person-card-v55) .participant-save button {
        min-height: 46px !important;
        padding: 0 21px !important;
        font-size: 12.5px !important;
    }
}

/* ============================================================
   TABLET / DESKTOP SEDANG
   ============================================================ */
@media (min-width: 901px) and (max-width: 1099px) {
    .participant-payment-row-v66 {
        margin-left: 20px !important;
        margin-right: 20px !important;
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .participant-payment-status-v66 {
        min-height: 33px !important;
        padding: 0 11px !important;
        font-size: 10.25px !important;
    }

    .participant-member-actions-v66 button {
        min-height: 33px !important;
        padding: 0 12px !important;
        font-size: 10.25px !important;
    }

    .participant-add-member-v66 {
        width: auto !important;
        margin: 4px 16px 6px !important;
        min-height: 56px !important;
    }
}

/* ============================================================
   MOBILE
   ============================================================ */
@media (max-width: 900px) {
    .participant-payment-row-v66 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .participant-payment-status-v66 {
        min-height: 32px !important;
        padding: 0 11px !important;
    }

    .participant-member-actions-v66 button {
        min-height: 34px !important;
        padding: 0 12px !important;
    }

    .participant-add-member-v66 {
        width: auto !important;
        margin: 4px 0 6px !important;
        min-height: 56px !important;
    }
}
/* ===== INCEPTION V66.2 UI POLISH END ===== */

/* INCEPTION_TEMP_HIDE_REGISTRATION_STATS_START
   Statistik tetap tersimpan dan API tetap aktif.
   Hanya disembunyikan sementara karena jumlah peserta masih sedikit.
*/
#statistik,
.public-stats-section {
    display: none !important;
}
/* INCEPTION_TEMP_HIDE_REGISTRATION_STATS_END */
