/**
 * PSG Academy AirDatepicker Custom Styles
 * Version: 1.3
 */

/* AirDatepicker Theme Customization */
.air-datepicker-body--day-name {
    color: #FF1541;
    background-color: #f4f4f4;
}

.air-datepicker-cell.-day-:hover {
    background: #e0f0ff;
    color: #000;
}

.air-datepicker-cell.-selected-, 
.air-datepicker-cell.-selected-:hover {
    background: #FF1541;
    color: #fff;
}

.air-datepicker-cell.-current- {
    border-color: #FF1541;
    color: #FF1541;
}

.air-datepicker-cell.-disabled- {
    color: #ccc;
    background: #f9f9f9;
}

.air-datepicker-nav--title, 
.air-datepicker-nav--action {
    color: #FF1541;
}

/* PSG Registration Form Styles */
.psg-registration-form select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 10px 40px 10px 12px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 0px;
    background-color: #fff;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2210%22%20height%3D%226%22%20viewBox%3D%220%200%2010%206%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200l5%206%205-6z%22%20fill%3D%22%230073aa%22/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 10px 6px;
    width: 100%;
    color: #333;
}

.psg-registration-form input[type="text"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 10px 40px 10px 12px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 0px;
    width: 100%;
    color: #333;
}

.psg-registration-form select:focus {
    outline: none;
    border-color: #FF1541;
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
}

.psg-registration-form input[type="text"]:focus {
    outline: none;
    border-color: #FF1541;
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
}

.psg-registration-form select:disabled {
    background-color: #f5f5f5 !important;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Error States */
.psg-error {
    border-color: #FF1541 !important;
    box-shadow: 0 0 0 2px rgba(255, 21, 65, 0.2) !important;
}

/* Session Selection Styles */
#psg_sessions_checkbox_container fieldset {
    border: 1px solid #ccc;
    margin: 10px 0;
    padding: 10px;
    border-radius: 4px;
}

#psg_sessions_checkbox_container legend {
    font-weight: bold;
    padding: 0 5px;
    color: #333;
}

#psg_sessions_checkbox_container .psg-session-checkbox {
    margin-right: 8px;
    accent-color: #FF1541;
}

/* Price Summary Table */
#psg_price_summary table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
    background: #fff;
    border: 1px solid #ddd;
}

#psg_price_summary th,
#psg_price_summary td {
    padding: 8px 12px;
    text-align: left;
    border-bottom: 1px solid #eee;
}

#psg_price_summary th {
    background: #f8f9fa;
    font-weight: 600;
    width: 60%;
}

#psg_price_summary td {
    text-align: right;
    font-weight: 500;
}

#psg_price_summary tr:last-child th,
#psg_price_summary tr:last-child td {
    border-bottom: none;
    font-size: 16px;
}

/* Responsive Design */
@media (max-width: 768px) {
    .psg-registration-form select,
    .psg-registration-form input[type="text"] {
        padding: 12px 40px 12px 15px;
        font-size: 16px; /* Prevents zoom on iOS */
    }
    
    #psg_price_summary table {
        font-size: 14px;
    }
    
    #psg_price_summary th,
    #psg_price_summary td {
        padding: 6px 8px;
    }
}


/* Add this to your CSS for proper RTL layout */
/* Arabic Datepicker Styles */
.air-datepicker.rtl {
    direction: rtl;
    text-align: right;
    font-family: 'Tahoma', 'Arial', sans-serif;
}

.air-datepicker.rtl .air-datepicker-nav--title {
    text-align: center;
}

.air-datepicker.rtl .air-datepicker-nav--action {
    transform: rotate(180deg);
}

.air-datepicker.rtl .air-datepicker--content {
    direction: ltr; /* Keep calendar grid LTR */
}

.air-datepicker.rtl .air-datepicker-body--day-name {
    text-align: center;
}

.air-datepicker.rtl .air-datepicker-cell {
    text-align: center;
}

