/*
=====================================================
GAL Sports Manager
Registration Styles
Version : 1.0
=====================================================
*/

#text-8 {
    display: none !important;
}

#tt-summary{
    background:#fff;
    border:1px solid #ddd;
    border-radius:10px;
    padding:20px;
    margin-top:20px;
}

.tt-summary-card hr{
    border:none;
    border-top:1px solid #ddd;
}

.tt-disabled{
    opacity:.45;
    pointer-events:none;
}

.tt-empty{
    color:#666;
    text-align:center;
    padding:20px;
}
/* ===========================================
   Registration Summary Card
=========================================== */

#tt-summary{

    margin-top:25px;
    margin-bottom:25px;

    padding:24px;

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:14px;

    box-shadow:0 8px 20px rgba(0,0,0,.05);

    font-family:inherit;

}


#tt-summary h3{

    margin:0 0 18px;

    font-size:22px;

    font-weight:700;

}






/* ===========================================
   Discount Banner
=========================================== */

.tt-discount-banner{

    display:none;

    margin-bottom:18px;

    padding:14px 18px;

    background:#ecfdf3;

    color:#0f7a42;

    border:1px solid #b7ebc8;

    border-radius:10px;

    font-size:15px;

}



/* ===========================================
   Event Rows
=========================================== */

.tt-event-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:12px 0;

    border-bottom:1px dashed #ececec;

}

.tt-event-row:last-child{

    border-bottom:none;

}

.tt-event-name{

    font-size:15px;

    font-weight:500;

}

.tt-event-price{

    font-weight:700;

    white-space:nowrap;

}



/* ===========================================
   Empty State
=========================================== */

.tt-empty{

    color:#888;

    font-style:italic;

    padding:12px 0;

}



/* ===========================================
   Totals
=========================================== */

.tt-total-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:12px;

    font-size:16px;

}

.tt-total{

    margin-top:18px;

    padding-top:18px;

    border-top:2px solid #ececec;

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:22px;

    font-weight:700;

}



/* ===========================================
   Discount Row
=========================================== */

#tt-discount-row{

    color:#198754;

    font-weight:600;

}



/* ===========================================
   Disabled Events
=========================================== */

.tt-disabled{

    opacity:.45;

    transition:.25s;

    cursor:not-allowed !important;

}

.tt-disabled input{

    cursor:not-allowed;

}


.tt-disabled:hover{

    opacity:.65;

}



/* ===========================================
   Tooltip
=========================================== */

.tt-disabled[title]{

    position:relative;

}



/* ===========================================
   Highlight Total
=========================================== */

#tt-total{

    color:#1565c0;

    font-size:26px;

    font-weight:700;

}







/* ===========================================
   Mobile
=========================================== */

@media(max-width:768px){

    #tt-summary{

        padding:18px;

    }

    .tt-event-row{

        font-size:14px;

    }

    #tt-total{

        font-size:22px;

    }

}
/*==========================================
Payment Error
==========================================*/

.tt-payment-error-card{

    display:flex;

    gap:18px;

    align-items:flex-start;

    background:#fdeaea;

    border:1px solid #ef9a9a;

    border-left:6px solid #d32f2f;

    border-radius:12px;

    padding:18px 22px;

    margin:25px 0;

    box-shadow:0 3px 8px rgba(0,0,0,.06);

}

.tt-payment-error-icon{

    font-size:30px;

    line-height:1;

}

.tt-payment-error-content{

    flex:1;

}

.tt-payment-error-title{

    font-size:20px;

    font-weight:700;

    color:#b71c1c;

    margin-bottom:12px;

}

.tt-payment-error-text{

    color:#5f2120;

    line-height:1.7;

    font-size:15px;

}

.tt-payment-list{

    margin:12px 0 12px 20px;

}

.tt-payment-list li{

    margin-bottom:6px;

}

.tt-payment-note{

    font-weight:600;

    color:#b71c1c;

}
#forminator-module-80 .forminator-button-submit{

    width:100% !important;

    height:64px;

    border:none;

    border-radius:12px;

    color:#01101f;

    font-size:22px;

    font-weight:700;

    letter-spacing:1px;

}
/* ===========================================
   Registration History Validation
=========================================== */

.tt-registration-history-error-card {

    margin-top: 12px;

    padding: 12px 16px;

    background: #fdeaea;

    color: #b71c1c;

    border: 1px solid #ef9a9a;

    border-left: 5px solid #d32f2f;

    border-radius: 8px;

    font-size: 15px;

    font-weight: 600;

    line-height: 1.5;

}
/* Registration History description */

#forminator-module-80
#group-2
> .forminator-description.forminator-repeater-description {
    color: black !important;
    font-size: 15px !important;
    font-weight: bolder !important;
    background-color: #FFF8DC !important;
}

.gal-capacity-notice {
    margin: 6px 0 12px 28px;
    padding: 9px 12px;
    border-left: 4px solid #e34844;
    background: #fff1f0;
    color: #8a1f1c;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    border-radius: 4px;
}




/* TGAL Pickleball: live availability */
.gal-pb-capacity-panel{margin:16px 0 24px;padding:20px;border-radius:16px;background:linear-gradient(145deg,#fffaf0,#fff 55%);border:1px solid #edc982;box-shadow:0 8px 24px rgba(65,49,15,.10);color:#233044;font-family:inherit}
.gal-pb-cap-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}
.gal-pb-cap-heading strong{display:block;font-size:19px;line-height:1.3}
.gal-pb-cap-heading small{display:block;color:#687386;margin-top:4px;font-size:12px}
.gal-pb-cap-live-dot{flex:none;width:11px;height:11px;margin-top:7px;border-radius:50%;background:#19a06b;box-shadow:0 0 0 5px #dff5ea}
.gal-pb-cap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.gal-pb-cap-row{border:1px solid #e8e8e8;border-radius:11px;padding:12px 13px;background:#fff;min-width:0}
.gal-pb-cap-row-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap}
.gal-pb-cap-name{font-size:13px;font-weight:750}
.gal-pb-cap-count{font-size:12px;font-weight:700;color:#256b52}
.gal-pb-cap-track{height:5px;background:#edf0f2;border-radius:10px;overflow:hidden;margin-top:10px}
.gal-pb-cap-track span{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#f0b23d,#d88a19)}
.gal-pb-cap-detail{font-size:11px;color:#69778a;line-height:1.6;margin-top:8px}
.gal-pb-cap-full .gal-pb-cap-count{color:#b45445}
.gal-pb-cap-note{font-size:12px;color:#5c6676;line-height:1.5;margin-top:14px}
/* Keep the form background visible: mute only disabled checkbox text and box. */
#forminator-module-794 label.gal-pb-option-unavailable,
#forminator-module-794 label.tt-disabled,
#forminator-module-794 label:has(input[type="checkbox"]:disabled){
    opacity:1!important;
    filter:none!important;
    background:transparent!important;
    box-shadow:none!important;
    cursor:not-allowed!important;
}
#forminator-module-794 label.gal-pb-option-unavailable,
#forminator-module-794 label.tt-disabled,
#forminator-module-794 label:has(input[type="checkbox"]:disabled),
#forminator-module-794 label.gal-pb-option-unavailable span,
#forminator-module-794 label.tt-disabled span,
#forminator-module-794 label:has(input[type="checkbox"]:disabled) span{
    color:#8e8b87!important;
    text-shadow:none!important;
}
#forminator-module-794 label.gal-pb-option-unavailable input[type="checkbox"],
#forminator-module-794 label.tt-disabled input[type="checkbox"],
#forminator-module-794 label input[type="checkbox"]:disabled{
    opacity:.55!important;
    accent-color:#a3a3a3!important;
    cursor:not-allowed!important;
}
#forminator-module-794 label:has(input[type="checkbox"]:disabled) *{cursor:not-allowed!important}
@media(max-width:650px){.gal-pb-cap-grid{grid-template-columns:1fr}.gal-pb-capacity-panel{padding:14px}}

.gal-pb-cap-note {
    color: #c62828 !important;
    font-weight: 600 !important;
    font-size: 13px;
    line-height: 1.6;
    margin-top: 14px;
}
/* Display-only: occupied capacity percentage. No registration logic changes. */
.gal-pb-cap-stats{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:9px;font-size:12px;color:#738094}
.gal-pb-cap-stats strong{font-weight:800;color:#28364a;white-space:nowrap}
.gal-pb-cap-track{height:9px;margin-top:8px}
.gal-pb-cap-row{padding:13px 15px}
@media(max-width:420px){.gal-pb-cap-stats{font-size:11px}}

/* Mixed Doubles gender-wise availability */
.gal-pb-cap-detail .gal-pb-gender-stat {
    font-weight: 600;
    color: #27714f;
}

/* Highlight registrations exceeding gender capacity */
.gal-pb-cap-detail .gal-pb-gender-over {
    color: #c62828;
}
