 /* Modal wrapper covers viewport and centers modal */
 #modalFixedWrapper {
     position: fixed;
     top: 0;
     left: 0;
     width: 100vw;
     height: 100vh;
     z-index: 998;
     display: flex;
     align-items: center;
     justify-content: center;
     opacity: 0;
     pointer-events: none;
     transition: opacity 0.3s;
 }

 #modalFixedWrapper.active {
     opacity: 1;
     pointer-events: auto;
 }

 #modalDimmer.active {
     display: flex !important;
     align-items: center;
     justify-content: center;
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     z-index: 998;
     width: 100vw;
     height: 100vh;
     background-color: rgba(0, 0, 0, 0.7);
 }

#basicModal {
    position: relative;
    margin: 0 auto;
    max-width: 500px;
    width: 100%;
    max-height: 80vh;
    overflow-y: auto;
    overflow-x: visible;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    border-radius: 12px;
    background: #fff;
    display: none;
    flex-direction: column;
    z-index: 999;
}

#basicModal .quote-form {
    overflow: visible;
}

#basicModal .location-input {
    overflow: visible;
}

 #basicModal.active {
     display: flex !important;
 }

 @media (max-width: 600px) {
     #basicModal {
         max-width: 95vw;
         min-width: 0;
     }
 }

 .modal-close-btn {
     position: absolute;
     top: 12px;
     right: 16px;
     background: transparent;
     border: none;
     font-size: 2rem;
     color: #888;
     cursor: pointer;
     z-index: 10002;
     padding: 0;
     line-height: 1;
     transition: color 0.2s;
 }

 .modal-close-btn:hover {
     color: #333;
 }

 /* Form styles */
 #modalFixedWrapper .hero-card {
     border-radius: 12px !important;
     box-shadow: none !important;
     width: 100% !important;
     padding: 10px !important;
 }

 #modalFixedWrapper .hero-card .ui.button {
     border-radius: 10px !important;
 }

/* Vehicle VRM styling in modal */
#basicModal .vehicle-vrm {
    display: inline-block;
    background: #FFD700;
    background: linear-gradient(to bottom, #ffeea8 0%, #ffe972 100%);
    color: #5a5a5a;
    font-family: monospace, sans-serif;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 2px;
    padding: 8px 16px;
    border-radius: 4px;
    border: 1px solid #b0b0b0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.13);
    text-transform: uppercase;
}

/* Grey button styling for modal */
#basicModal .ui.huge.grey.wide.button {
    background: #767676;
    color: white;
}

#basicModal .ui.huge.grey.wide.button:hover {
    background: #5a5a5a;
}

/* Vehicle Not Found Error */
#basicModal #vehicle_not_found_error {
    background: #fff5f5;
    border: 1px solid #fc8181;
    color: #c53030;
    padding: 15px;
    border-radius: 6px;
    margin-bottom: 20px;
    text-align: center;
}

#basicModal #vehicle_not_found_error i {
    margin-right: 8px;
}

/* Vehicle Autocomplete Styles - matches location dropdown exactly */
.vehicle-autocomplete-dropdown {
    position: absolute;
    z-index: 10001;
    background: #FFFFFF;
    border: 1px solid rgba(34, 36, 38, 0.15);
    border-radius: 0.28571429rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    max-height: 300px;
    overflow-y: auto;
    margin-top: 2px;
}

#basicModal .vehicle-autocomplete-dropdown {
    position: fixed;
}

.vehicle-autocomplete-item {
    padding: 0.67857143em 1em;
    height: 53px;
    font-size: 15px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.5em;
    color: rgba(0, 0, 0, 0.87);
    transition: background-color 0.1s ease;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}

.vehicle-autocomplete-item:hover {
    background-color: #F5F5F5;
}

.vehicle-autocomplete-item:first-child {
    border-top-left-radius: 0.28571429rem;
    border-top-right-radius: 0.28571429rem;
}

.vehicle-autocomplete-item:last-child {
    border-bottom-left-radius: 0.28571429rem;
    border-bottom-right-radius: 0.28571429rem;
}

/* Transmission Dropdown Styling - matches other inputs */
#basicModal #manual_transmission {
    width: 100%;
    padding: 0.78571429em 1em;
    font-size: 1em;
    border: 1px solid rgba(34, 36, 38, 0.15);
    border-radius: 0.28571429rem;
    background: white;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1em center;
    padding-right: 3em;
}

#basicModal #manual_transmission:focus {
    outline: none;
    border-color: #85b7d9;
}

#basicModal #manual_transmission.error {
    border-color: #db2828 !important;
    background-color: #fff6f6 !important;
}

/* Style select options like location dropdown items */
#basicModal #manual_transmission option {
    padding: 0.67857143em 1em;
    font-size: 15px;
    background: white;
    color: rgba(0, 0, 0, 0.87);
}

#basicModal #manual_transmission option:hover {
    background-color: #F5F5F5;
}

#basicModal #manual_transmission option:checked {
    background-color: #F5F5F5;
}

/* Manual vehicle details step specific styling */
#basicModal  .hero-card .step[data-step-name="vehicle-manual"] .ui.input {
    margin-bottom: 10px !important;
}

#basicModal .step[data-step-name="vehicle-manual"] .step-number {
    margin-bottom: 0 !important;
}

/* Disabled button styling for VRM submit */
#basicModal #not_my_car_vrm_submit_button:disabled {
    pointer-events: none;
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

/* Vehicle Not Found Error Styling */
#basicModal .vehicle-not-found-error {
    background: #fdf8f8;
    border: 1px solid #fce8e8;
    border-radius: 8px;
    padding: 16px;
    display: flex!important;
    align-items: center;
    gap: 12px;
}

#basicModal .vehicle-not-found-icon {
    width: 24px;
    height: 24px;
    min-width: 24px;
    background: #e53e3e;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

#basicModal .vehicle-not-found-icon span {
    color: white;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
}

#basicModal .vehicle-not-found-content {
    flex: 1;
}

#basicModal .vehicle-not-found-heading {
    font-weight: bold;
    color: #000000;
    font-size: 16px;
    margin-bottom: 4px;
}

#basicModal .vehicle-not-found-text {
    color: #6b463a;
    font-size: 14px;
    line-height: 1.4;
}