@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.stepper{scrollbar-width:thin;justify-content:space-between;align-items:flex-start;gap:.5rem;width:100%;display:flex;overflow-x:auto}@media (max-width:480px){.stepper{gap:.75rem;padding-bottom:.5rem}}.stepper-item{cursor:pointer;border-radius:var(--radius-input);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;min-width:60px;padding:1rem;transition:all .2s;display:flex;position:relative}.stepper-item .step-icon{width:32px;height:32px;color:var(--color-text-disabled);margin-bottom:.25rem;transition:all .3s cubic-bezier(.2,.9,.4,1.1)}.stepper-item .step-icon svg{stroke:currentColor;stroke-width:1.5px;fill:none;width:100%;height:100%;transition:stroke-width .2s}@media (max-width:590px){.stepper-item .step-icon{width:24px;height:24px}}.stepper-item .step-label{color:var(--color-text-secondary);white-space:nowrap;font-size:.7rem;font-weight:500;transition:color .2s}.stepper-item.completed .step-icon{color:var(--color-secondary);opacity:.8}.stepper-item.completed .step-label{color:var(--color-text-secondary)}.stepper-item.active{background-color:#1a4c5f36}.stepper-item.active .step-icon{color:var(--color-primary);filter:drop-shadow(0 2px 4px #042f4033);stroke-width:2.2px;transform:scale(1.2)}.stepper-item.active .step-label{color:var(--color-primary);font-weight:700}.stepper-item.active:after{content:"";background:var(--color-primary);border-radius:2px;width:60%;height:2.5px;position:absolute;bottom:-.25rem;left:20%}.stepper-item:hover:not(.active) .step-icon{color:var(--color-secondary-light);transform:scale(1.05)}.stepper-item:hover:not(.active) .step-label{color:var(--color-secondary-light)}
.spinner-fullscreen{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.spinner-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.spinner{display:inline-block;position:relative}.spinner .spinner-circle{box-sizing:border-box;border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:100%;height:100%;animation:.8s cubic-bezier(.5,0,.5,1) infinite spin;display:block;position:absolute}.spinner.spinner-large{width:100px;height:100px}.spinner.spinner-large .spinner-circle{filter:drop-shadow(0 0 6px);border-width:3px}.spinner.spinner-large .spinner-circle-delayed{opacity:.6;border:2px solid;border-color:currentColor currentColor #0000 #0000;border-radius:50%;width:100%;height:100%;animation:1.2s cubic-bezier(.5,0,.5,1) infinite reverse spin;position:absolute;top:0;left:0}.spinner-small{width:24px;height:24px}.spinner-medium{width:48px;height:48px}.spinner-primary{color:var(--color-primary)}.spinner-secondary{color:var(--color-secondary)}.spinner-white{color:#fff}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.btn{border-radius:var(--radius-input);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.btn.full-width{width:100%}.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:#fff}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-2);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--color-secondary);color:#fff}.btn-secondary:hover:not(:disabled){box-shadow:var(--shadow-2);transform:translateY(-2px)}.btn-outline{border:1px solid var(--color-border);color:var(--color-text-primary);background:0 0}.btn-outline:hover:not(:disabled){border-color:var(--color-secondary);background:#13b0a50d}.btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.1);pointer-events:none;box-shadow:none!important;transform:none!important}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.booking-header{background:var(--color-primary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;height:var(--header-height);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex;position:sticky;top:0}.booking-header .header-left{flex:1;justify-content:flex-start;display:flex}.booking-header .header-left .company-name{color:#fff;letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:600;overflow:hidden}.booking-header .header-center{flex-shrink:0;width:100px;height:50px;position:relative}.booking-header .header-center .logo-wrapper{width:100%;height:100%;position:relative}.booking-header .header-center .logo-wrapper img{object-fit:contain;filter:brightness(0)invert()}.booking-header .header-right{flex:1;justify-content:flex-end;display:flex}.booking-header .header-right .language-select{border-radius:var(--radius-input);color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;outline:none;padding:.4rem .75rem;font-size:.875rem;font-weight:500;transition:all .2s}.booking-header .header-right .language-select:hover{background:#ffffff40;border-color:#ffffff80}.booking-header .header-right .language-select:focus{border-color:var(--color-secondary);box-shadow:0 0 0 2px #13b0a566}.booking-header .header-right .language-select option{background:var(--color-primary-dark);color:#fff}@media (max-width:480px){.booking-header{gap:.5rem;padding:.5rem .75rem}.booking-header .header-left .company-name{font-size:.875rem}.booking-header .header-center{width:32px;height:32px}.booking-header .header-right .language-select{padding:.3rem .6rem;font-size:.75rem}}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.expandable-card{background:var(--color-surface);border-bottom:1px solid var(--color-border);width:100%}.expandable-card.expanded{border-bottom:none}.expandable-card .card-header{cursor:pointer;background:var(--color-surface);box-sizing:border-box;align-items:center;gap:.75rem;width:100%;padding:1rem;transition:background .2s;display:flex}.expandable-card .card-header:hover{background:#13b0a50d}.expandable-card .card-header .header-icon{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.expandable-card .card-header .header-icon svg{width:100%;height:100%;stroke:var(--color-primary);stroke-width:1.8px;fill:none}.expandable-card .card-header .header-text{flex:1}.expandable-card .card-header .header-text .header-title{color:var(--color-text-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600}.expandable-card .card-header .header-text .header-subtitle{color:var(--color-text-secondary);font-size:.75rem}.expandable-card .card-header .header-chevron{color:var(--color-text-secondary);margin-left:.5rem;font-size:.75rem}.expandable-card .card-header.disabled{opacity:.5;cursor:not-allowed}.expandable-card .card-content{background:var(--color-surface);border-top:1px solid var(--color-border);padding:0 1rem 1rem}.expandable-card .content-inner{width:100%;max-width:640px;margin:0 auto}.expandable-card .expanded{box-shadow:var(--shadow-2);border-radius:var(--radius-card) var(--radius-card) 0 0;margin-bottom:1rem}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.datepicker-wrapper{width:100%}.datepicker-label{color:var(--color-text-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.datepicker-trigger{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-input);cursor:pointer;justify-content:space-between;align-items:center;padding:.75rem 1rem;transition:all .2s;display:flex}.datepicker-trigger:hover{border-color:var(--color-primary)}.datepicker-trigger:active{transform:scale(.995)}.datepicker-trigger.placeholder{color:var(--color-text-secondary)}.datepicker-value{color:var(--color-text-primary);font-size:.875rem}.datepicker-icon{color:var(--color-text-secondary);flex-shrink:0}.datepicker-overlay{background:var(--color-overlay);z-index:1000;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (min-width:640px){.datepicker-overlay{align-items:center}}.datepicker-modal{background:var(--color-surface);border-radius:var(--radius-card) var(--radius-card) 0 0;width:100%;max-width:500px;padding:1.5rem;animation:.3s slideUp}@media (min-width:640px){.datepicker-modal{border-radius:var(--radius-card);margin:2rem}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.datepicker-header{justify-content:space-between;align-items:center;margin-bottom:1rem;font-weight:600;display:flex}.datepicker-header button{cursor:pointer;width:36px;height:36px;color:var(--color-text-primary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;font-size:1.25rem;transition:all .2s;display:flex}.datepicker-header button:hover:not(.disabled){background:var(--color-secondary-light);color:#fff}.datepicker-header button.disabled{color:var(--color-text-disabled);cursor:not-allowed;opacity:.5}.datepicker-header span{color:var(--color-text-primary);font-size:1rem}.calendar-weekdays{text-align:center;color:var(--color-text-secondary);grid-template-columns:repeat(7,1fr);margin-bottom:.5rem;font-size:.75rem;font-weight:500;display:grid}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;color:var(--color-text-primary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;transition:all .2s;display:flex}.calendar-day:hover:not(.disabled){background:var(--color-secondary-light);color:#fff}.calendar-day.selected{background:var(--color-primary);color:#fff}.calendar-day.disabled{color:var(--color-text-disabled);cursor:not-allowed}.calendar-day.empty{cursor:default}.datepicker-actions{justify-content:flex-end;gap:1rem;margin-top:1.5rem;display:flex}.datepicker-actions button{border-radius:var(--radius-input);cursor:pointer;border:none;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.datepicker-actions button.cancel{color:var(--color-text-secondary);background:0 0}.datepicker-actions button.cancel:hover{background:var(--color-background-hover)}.datepicker-actions button.confirm{background:var(--color-primary);color:#fff}.datepicker-actions button.confirm:hover{opacity:.9}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-dropdown{width:100%}.modal-dropdown-label{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.75rem;font-weight:500;display:block}.modal-dropdown-trigger{border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);cursor:pointer;justify-content:space-between;align-items:center;padding:.75rem;transition:all .2s;display:flex}.modal-dropdown-trigger:hover{border-color:var(--color-secondary)}.modal-dropdown-trigger.error{border-color:var(--color-error)}.modal-dropdown-trigger.disabled{background:var(--color-background);cursor:not-allowed;opacity:.6}.modal-dropdown-trigger .selected-value{color:var(--color-text-primary);font-size:1rem}.modal-dropdown-trigger .selected-value.placeholder{color:var(--color-text-disabled)}.modal-dropdown-trigger .dropdown-icon{color:var(--color-text-secondary);font-size:.7rem}.modal-dropdown-error{color:var(--color-error);margin-top:.25rem;font-size:.75rem}.modal-overlay{background:var(--color-overlay);z-index:1000;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (min-width:640px){.modal-overlay{align-items:center}}.modal-container{background:var(--color-surface);border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-width:500px;max-height:80vh;animation:.3s slideUp;display:flex}@media (min-width:640px){.modal-container{border-radius:24px;max-height:70vh;margin:1rem}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:1rem;display:flex}.modal-header h3{color:var(--color-text-primary);font-size:1.125rem;font-weight:600}.modal-header .modal-close{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:.25rem;font-size:1.25rem;transition:background .2s;display:flex}.modal-header .modal-close:hover{background:var(--color-background)}.modal-search{border-bottom:1px solid var(--color-border);padding:1rem}.modal-search input{border:1px solid var(--color-border);border-radius:var(--radius-input);box-sizing:border-box;outline:none;width:100%;padding:.75rem;font-size:1rem}.modal-search input:focus{border-color:var(--color-secondary);box-shadow:0 0 0 2px #13b0a533}.modal-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.modal-option{cursor:pointer;border-bottom:1px solid var(--color-border);padding:.75rem 1rem;font-size:1rem;transition:background .1s}.modal-option:last-child{border-bottom:none}.modal-option:hover,.modal-option.highlighted{background:var(--color-secondary-light);color:#fff}.no-options{text-align:center;color:var(--color-text-secondary);padding:1rem}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.journey-selection{flex-direction:column;gap:1.25rem;display:flex}.location-row{gap:1rem;margin-top:1rem;display:flex}@media (max-width:640px){.location-row{flex-direction:column;gap:1rem}}.location-row .input-group{flex:1;position:relative}.input-group label{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.75rem;font-weight:500;display:block}.input-group input,.input-group .date-button{border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);text-align:left;box-sizing:border-box;width:100%;padding:.75rem;font-size:1rem;transition:all .2s}.input-group input:focus,.input-group .date-button:focus{border-color:var(--color-secondary);outline:none;box-shadow:0 0 0 2px #13b0a533}.input-group input.error,.input-group .date-button.error{border-color:var(--color-error)}.input-group .date-button{cursor:pointer}.input-group .date-button:hover{border-color:var(--color-secondary)}.input-group .error-message{color:var(--color-error);margin-top:.25rem;font-size:.75rem;display:block}.trip-type{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-input);gap:.25rem;padding:.25rem;display:flex}.trip-type .segment{border-radius:calc(var(--radius-input) - 2px);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;flex:1;padding:.75rem 0;font-weight:500;transition:all .2s}.trip-type .segment:hover{background:var(--color-secondary-light);color:#fff}.trip-type .segment.active{background:var(--color-secondary-light);color:var(--color-primary);font-weight:600}.date-row{gap:1rem;display:flex}@media (max-width:640px){.date-row{flex-direction:column;gap:1rem}}.date-row .input-group{flex:1}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.available-trips{flex-direction:column;gap:1rem;display:flex}.filter-bar{background:var(--color-surface);border-radius:var(--radius-input);border:1px solid var(--color-border);gap:.5rem;margin-bottom:.5rem;padding:.5rem;display:flex}.filter-bar .filter-btn{border-radius:calc(var(--radius-input) - 2px);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;flex:1;padding:.5rem;font-size:.875rem;font-weight:500;transition:all .2s}.filter-bar .filter-btn:hover{background:#13b0a51a}.filter-bar .filter-btn.active{background:var(--color-primary);color:#fff}.trips-list{flex-direction:column;gap:1rem;display:flex}.trip-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);cursor:pointer;padding:1rem;transition:all .2s}.trip-card:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.trip-card.selected{border-left:4px solid var(--color-secondary);box-shadow:0 0 0 1px #13b0a54d,var(--shadow-2);background:#13b0a514;transform:translateY(-1px)}.trip-card .card-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.trip-card .card-header .bus-info .bus-name{color:var(--color-text-primary);font-size:1rem;font-weight:700;display:block}.trip-card .card-header .bus-info .route{color:var(--color-text-secondary);font-size:.75rem}.trip-card .card-header .price{color:var(--color-primary);font-size:1.25rem;font-weight:700}.trip-card .card-header.selected{color:var(--color-primary);cursor:default;background:#77b9b50e}.trip-card .card-header.selected:hover{background:#13b0a526;transform:none}.trip-card .times{border-top:1px dashed var(--color-border);border-bottom:1px dashed var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 0;display:flex}.trip-card .times .time-block{flex:1}.trip-card .times .time-block .label{color:var(--color-text-secondary);font-size:.7rem;display:block}.trip-card .times .time-block .value{color:var(--color-text-primary);font-size:1rem;font-weight:600}.trip-card .times .time-block .date{color:var(--color-text-secondary);font-size:.7rem}.trip-card .times .duration-arrow{color:var(--color-secondary);padding:0 .25rem;font-size:1.2rem}.trip-card .times .duration{color:var(--color-secondary);border-radius:var(--radius-badge);white-space:nowrap;background:#13b0a51a;padding:.25rem .5rem;font-size:.8rem;font-weight:500}.trip-card .card-footer{justify-content:space-between;align-items:center;display:flex}.trip-card .card-footer .select-btn{background:var(--color-primary);color:#fff;border-radius:var(--radius-input);cursor:pointer;border:none;padding:.5rem 1.25rem;font-weight:600;transition:all .2s}.trip-card .card-footer .select-btn:hover{background:var(--color-primary-light);transform:scale(1.02)}.trip-card .card-footer .select-btn.selected{color:var(--color-primary);border:1px solid var(--color-secondary);cursor:default;background:#13b0a526}.trip-card .card-footer .select-btn.selected:hover{background:#13b0a526;transform:none}.skeleton-filter{background:var(--color-border);border-radius:var(--radius-input);background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;width:100%;height:40px;animation:1.5s infinite shimmer}.trip-card.skeleton .skeleton-line{background:var(--color-border);background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:4px;height:16px;margin-bottom:.75rem;animation:1.5s infinite shimmer}.trip-card.skeleton .skeleton-line.short{width:60%}.trip-card.skeleton .skeleton-line.medium{width:80%}.no-trips{text-align:center;color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--radius-card);border:1px solid var(--color-border);padding:2rem}
.search-results{padding:1rem}.search-results .return-trip{margin-top:2rem}.search-results h2{text-align:center;margin:2rem auto}
.seaterWrapper{flex-direction:column;align-items:center;height:max-content;margin:auto;display:flex}.seaterWrapper .heading{align-items:center;gap:10px;margin:1rem auto;display:flex}.seaterWrapper .returnHeader{margin:2rem auto}.seaterWrapper .seatsContainer{border-radius:10px;flex-direction:column;width:min-content;height:max-content;padding:20px;display:flex;box-shadow:0 13px 27px -5px #32325d40,0 8px 16px -8px #0000004d}.seaterWrapper .showcaseContainer{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.seaterWrapper .showcase{justify-content:space-between;gap:10px;padding-bottom:10px;display:flex}.seaterWrapper .showcase li{white-space:nowrap;align-items:center;gap:5px;display:flex}.seaterWrapper .showcase span{background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:5px;width:25px;height:25px;display:inline-block}.seaterWrapper .showcase p{font-size:.75rem}.seaterWrapper .hrLine{background-color:#919191;width:90%;height:1px;margin:20px auto}.seaterWrapper .seats-ul{flex-wrap:wrap;margin:20px auto;display:flex}.seaterWrapper .seats-ul li{cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:7px;justify-content:center;align-items:center;width:33px;height:33px;margin:7px 5px;font-size:.9rem;font-weight:500;transition:all .3s;display:flex}.seaterWrapper .seats-ul li:hover{transform:scale(1.2)}.seaterWrapper .seats-ul li.processing{opacity:.7;cursor:wait;animation:1.5s infinite pulse-processing;background-image:url(/assets/img/gray.png)!important}.seaterWrapper .seats-ul li.processing:hover{transform:scale(1)}.seaterWrapper .seats-ul li.permanent-unavailable{cursor:not-allowed;opacity:.6;background-image:url(/assets/img/gray.png)!important}.seaterWrapper .seats-ul li.permanent-unavailable:hover{transform:scale(1)}.seaterWrapper .seats-ul li[class*=-unavailable]{cursor:not-allowed;background-color:#919191}.seaterWrapper .seats-ul li[class*=-unavailable]:hover{transform:scale(1)}.seaterWrapper .seats-ul li.booked{color:#aaa;cursor:not-allowed;background-image:url(/assets/img/gray.png)!important}.seaterWrapper .seats-ul li.booked:hover{transform:scale(1)}.seaterWrapper .seats-ul li.reserved{transform:scale(1.1);box-shadow:0 0 10px #8b451380;background-image:url(/assets/img/brown.png)!important}.seaterWrapper .seats-ul li.reserved:hover{transform:scale(1.2)}.seaterWrapper .seats-ul li.selecting{color:#fff;animation:2s infinite pulse-selecting;transform:scale(1.1);box-shadow:0 0 10px #3b82f680;background-color:#3b82f6!important}.seaterWrapper .seats-ul li.selecting:hover{transform:scale(1.2)}.seaterWrapper .seats-ul li.available{background-image:url(/assets/img/green.png)}.seaterWrapper .seats-ul li.available:hover{transform:scale(1.2)}.seaterWrapper .seats-ul li.booked:hover,.seaterWrapper .seats-ul li.permanent-unavailable:hover,.seaterWrapper .seats-ul li[class*=-unavailable]:hover{cursor:not-allowed;transform:scale(1)}.seaterWrapper .available{background-image:url(/assets/img/green.png)}.seaterWrapper .reserved{background-image:url(/assets/img/brown.png)}.seaterWrapper .booked{color:#aaa;background-image:url(/assets/img/gray.png)}.seaterWrapper .unavailable{background-color:#919191}.seaterWrapper .processing{background-color:orange;animation:1.5s infinite pulse-processing}.seaterWrapper .available,.seaterWrapper .reserved,.seaterWrapper .booked{cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:cover}.seaterWrapper .inputWrapperDiv{flex-direction:column;gap:30px;width:100%;min-width:240px;max-width:350px;display:flex}.seaterWrapper .destination-select-container{background-color:#fff;border-radius:5px;align-items:center;width:100%;height:40px;padding:0 10px;display:flex}.seaterWrapper .destination-select{background-color:#fff;width:100%;height:40px;padding-left:10px}.seaterWrapper .passengerInfo-heading{margin-bottom:15px}.seaterWrapper .input-field{margin-top:10px}.seaterWrapper li:first-of-type{background-color:#0000}.seaterWrapper .ticketPriceWrapper{background-color:#fff;border-radius:5px;align-items:center;gap:10px;height:40px;margin-top:10px;padding:0 10px;display:flex}.seaterWrapper .actionBar{background:linear-gradient(135deg, var(--bg-gradient-start) 0%, var(--bg-gradient-end) 100%);z-index:5;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex;position:sticky;bottom:0}.seaterWrapper .seatInfoWrapper{margin:auto 0}.seaterWrapper .totalPrice{font-size:.9rem}@keyframes pulse-processing{0%{opacity:.7}50%{opacity:.4}to{opacity:.7}}@keyframes pulse-selecting{0%{box-shadow:0 0 10px #3b83f650}50%{box-shadow:0 0 15px #3b82f6cc}to{box-shadow:0 0 10px #3b82f680}}
.thirty-seats-ul{width:200px}.thirty-seats-ul li:first-of-type{color:#494949;cursor:pointer;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:80px}.thirty-seats-ul li:nth-of-type(10){margin-right:68px}
.thirty-eight-seats-ul{width:240px}.thirty-eight-seats-ul li:first-of-type{color:#494949;cursor:pointer;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:80px;margin-right:65px}.thirty-eight-seats-ul li:nth-last-of-type(2){margin-left:10px}.thirty-eight-seats-ul li:nth-of-type(5),.thirty-eight-seats-ul li:nth-of-type(9),.thirty-eight-seats-ul li:nth-of-type(15),.thirty-eight-seats-ul li:nth-of-type(19),.thirty-eight-seats-ul li:nth-of-type(23),.thirty-eight-seats-ul li:nth-of-type(27),.thirty-eight-seats-ul li:nth-of-type(31){margin-right:68px}.thirty-eight-seats-ul li:nth-of-type(13){margin-right:120px}.thirty-eight-seats-ul li:nth-of-type(35),.thirty-eight-seats-ul li:nth-of-type(36){margin-right:12px}
.sixty-Seats-ul{width:240px}.sixty-Seats-ul li:first-of-type{color:#494949;cursor:not-allowed;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:100px;margin-right:100px}.sixty-Seats-ul li:nth-child(4){order:1}.sixty-Seats-ul li:nth-child(5){order:2}.sixty-Seats-ul li:nth-child(2){order:3}.sixty-Seats-ul li:nth-child(3){order:4}.sixty-Seats-ul li:nth-child(n+6){order:5}.sixty-Seats-ul li:nth-of-type(5),.sixty-Seats-ul li:nth-of-type(7),.sixty-Seats-ul li:nth-of-type(11),.sixty-Seats-ul li:nth-of-type(15),.sixty-Seats-ul li:nth-of-type(19),.sixty-Seats-ul li:nth-of-type(23),.sixty-Seats-ul li:nth-of-type(27),.sixty-Seats-ul li:nth-of-type(31),.sixty-Seats-ul li:nth-of-type(37),.sixty-Seats-ul li:nth-of-type(41),.sixty-Seats-ul li:nth-of-type(45),.sixty-Seats-ul li:nth-of-type(49),.sixty-Seats-ul li:nth-of-type(53){margin-right:70px}.sixty-Seats-ul li:nth-of-type(35){margin-right:120px}.sixty-Seats-ul li:nth-of-type(57),.sixty-Seats-ul li:nth-of-type(58){margin-right:17px}
.forty-nine-seats-ul{width:220px}.forty-nine-seats-ul li:first-of-type{color:#494949;cursor:pointer;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:80px;margin-right:90px}.forty-nine-seats-ul li:nth-of-type(3),.forty-nine-seats-ul li:nth-of-type(4),.forty-nine-seats-ul li:nth-of-type(5),.forty-nine-seats-ul li:nth-of-type(6){margin-top:30px}.forty-nine-seats-ul li:nth-of-type(4),.forty-nine-seats-ul li:nth-of-type(8),.forty-nine-seats-ul li:nth-of-type(12),.forty-nine-seats-ul li:nth-of-type(16),.forty-nine-seats-ul li:nth-of-type(20),.forty-nine-seats-ul li:nth-of-type(26),.forty-nine-seats-ul li:nth-of-type(30),.forty-nine-seats-ul li:nth-of-type(34),.forty-nine-seats-ul li:nth-of-type(38),.forty-nine-seats-ul li:nth-of-type(42){margin-right:47px}.forty-nine-seats-ul li:nth-of-type(24){margin-right:100px}
.sixty-eight-seats-ul{width:260px}.sixty-eight-seats-ul li:first-of-type{color:#494949;cursor:pointer;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:80px;margin-right:140px}.sixty-eight-seats-ul li:nth-of-type(3){margin-right:90px}.sixty-eight-seats-ul li:nth-of-type(8),.sixty-eight-seats-ul li:nth-of-type(13),.sixty-eight-seats-ul li:nth-of-type(18),.sixty-eight-seats-ul li:nth-of-type(23),.sixty-eight-seats-ul li:nth-of-type(28),.sixty-eight-seats-ul li:nth-of-type(33),.sixty-eight-seats-ul li:nth-of-type(41),.sixty-eight-seats-ul li:nth-of-type(46),.sixty-eight-seats-ul li:nth-of-type(51),.sixty-eight-seats-ul li:nth-of-type(56),.sixty-eight-seats-ul li:nth-of-type(61){margin-right:47px}.sixty-eight-seats-ul li:nth-of-type(38){margin-right:95px}
.seventyFive-Seats-ul{width:300px}.seventyFive-Seats-ul li{margin:4px 5px}.seventyFive-Seats-ul li:first-of-type{color:#494949;cursor:pointer;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:119px}.seventyFive-Seats-ul li:nth-last-of-type(2){margin-left:10px}.seventyFive-Seats-ul li:first-of-type,.seventyFive-Seats-ul li:nth-of-type(6),.seventyFive-Seats-ul li:nth-of-type(11),.seventyFive-Seats-ul li:nth-of-type(19),.seventyFive-Seats-ul li:nth-of-type(24),.seventyFive-Seats-ul li:nth-of-type(29),.seventyFive-Seats-ul li:nth-of-type(34),.seventyFive-Seats-ul li:nth-of-type(39),.seventyFive-Seats-ul li:nth-of-type(44),.seventyFive-Seats-ul li:nth-of-type(49),.seventyFive-Seats-ul li:nth-of-type(54),.seventyFive-Seats-ul li:nth-of-type(59),.seventyFive-Seats-ul li:nth-of-type(67){margin-right:90px}.seventyFive-Seats-ul li:nth-of-type(16),.seventyFive-Seats-ul li:nth-of-type(64){margin-right:140px}.seventyFive-Seats-ul li:nth-of-type(72),.seventyFive-Seats-ul li:nth-of-type(73){margin-right:23px}
.eighty-Seats-ul{width:320px}.eighty-Seats-ul li:first-of-type{color:#494949;cursor:not-allowed;background-image:url(/assets/img/driver.png);background-position:50%;background-repeat:no-repeat;background-size:cover;width:100px;margin-right:120px}.eighty-Seats-ul li:nth-of-type(6),.eighty-Seats-ul li:nth-of-type(11),.eighty-Seats-ul li:nth-of-type(19),.eighty-Seats-ul li:nth-of-type(24),.eighty-Seats-ul li:nth-of-type(29),.eighty-Seats-ul li:nth-of-type(34),.eighty-Seats-ul li:nth-of-type(39),.eighty-Seats-ul li:nth-of-type(44),.eighty-Seats-ul li:nth-of-type(49),.eighty-Seats-ul li:nth-of-type(54),.eighty-Seats-ul li:nth-of-type(59),.eighty-Seats-ul li:nth-of-type(64),.eighty-Seats-ul li:nth-of-type(72){margin-right:100px}.eighty-Seats-ul li:nth-of-type(16),.eighty-Seats-ul li:nth-of-type(69){margin-right:170px}.eighty-Seats-ul li:nth-of-type(77),.eighty-Seats-ul li:nth-of-type(78){margin-right:30px}.eighty-Seats-ul{margin-bottom:20px}
.seat-selection .return-trip{margin:2rem auto}.seat-selection h3{text-align:center}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.passenger-info-screen{width:100%}.passenger-list{flex-direction:column;gap:1.5rem;display:flex}.passenger-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:1.25rem;transition:all .2s}.passenger-card:hover{box-shadow:var(--shadow-2)}.passenger-card .passenger-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.passenger-card .passenger-header .seat-badge{background:var(--color-primary);color:#fff;border-radius:var(--radius-badge);padding:.25rem .75rem;font-size:.75rem;font-weight:600}.passenger-card .passenger-header .passenger-title{color:var(--color-text-secondary);font-size:.875rem;font-weight:600}.passenger-card .form-row{gap:1rem;margin-bottom:1rem;display:flex}@media (max-width:640px){.passenger-card .form-row{flex-direction:column;gap:.75rem}}.passenger-card .form-group{flex-direction:column;flex:1;gap:.25rem;display:flex}.passenger-card .form-group label{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.passenger-card .form-group input,.passenger-card .form-group select{border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);padding:.75rem;font-size:.875rem;transition:all .2s}.passenger-card .form-group input:focus,.passenger-card .form-group select:focus{border-color:var(--color-secondary);outline:none;box-shadow:0 0 0 2px #13b0a533}.passenger-card .form-group input.error,.passenger-card .form-group select.error{border-color:var(--color-error)}.passenger-card .form-group .error-msg{color:var(--color-error);font-size:.7rem}.passenger-card .form-group.full-width{width:100%}.passenger-card .passenger-type-toggle{background:var(--color-background);border-radius:var(--radius-input);gap:.5rem;padding:.25rem;display:flex}.passenger-card .passenger-type-toggle .toggle-btn{border-radius:calc(var(--radius-input) - 2px);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;flex:1;padding:.5rem;font-size:.875rem;font-weight:500;transition:all .2s}.passenger-card .passenger-type-toggle .toggle-btn:hover{background:#13b0a51a}.passenger-card .passenger-type-toggle .toggle-btn.active{background:var(--color-primary-light);color:#fff}

@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.payment-details-screen{flex-direction:column;gap:1.5rem;padding:1rem 0;display:flex}.method-options{flex-wrap:wrap;gap:1rem;display:flex}.method-options .method-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:.5rem;padding:1rem;transition:all .2s;display:flex}.method-options .method-btn:hover{border-color:var(--color-secondary);box-shadow:var(--shadow-2);transform:translateY(-2px)}.method-options .method-btn.active{border:2px solid var(--color-secondary);background:#13b0a50d}.input-group{flex-direction:column;gap:.25rem;display:flex}.input-group label{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.input-group .phone-input-wrapper,.input-group .whatsapp-input-wrapper{align-items:center;gap:.5rem;display:flex}.input-group .phone-input-wrapper .country-code,.input-group .whatsapp-input-wrapper .country-code{border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);cursor:pointer;padding:.75rem;font-size:.875rem}.input-group .phone-input-wrapper input,.input-group .whatsapp-input-wrapper input{border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);flex:1;padding:.75rem;font-size:.875rem;transition:all .2s}.input-group .phone-input-wrapper input:focus,.input-group .whatsapp-input-wrapper input:focus{border-color:var(--color-secondary);outline:none;box-shadow:0 0 0 2px #13b0a533}.input-group .phone-input-wrapper input.error,.input-group .whatsapp-input-wrapper input.error{border-color:var(--color-error)}.input-group .whatsapp-input-wrapper .whatsapp-icon{color:#fff;border-radius:var(--radius-input);background:#25d366;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.input-group .whatsapp-input-wrapper .whatsapp-icon svg{fill:#fff}.input-group .error-msg{color:var(--color-error);font-size:.7rem}.billing-summary{background:var(--color-background);border-radius:var(--radius-card);margin-bottom:.5rem;padding:1rem}.billing-summary .summary-title{color:var(--color-text-primary);margin-bottom:.75rem;font-size:.875rem;font-weight:600}.billing-summary .summary-row{color:var(--color-text-secondary);border-bottom:1px dashed var(--color-border);justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem;display:flex}.billing-summary .summary-row .summary-amount{color:var(--color-text-primary);font-weight:500}.billing-summary .summary-total{color:var(--color-text-primary);justify-content:space-between;align-items:center;margin-top:.25rem;padding-top:.75rem;font-size:1rem;font-weight:700;display:flex}.billing-summary .summary-total .total-amount{color:var(--color-primary);font-size:1.125rem}
.payment-processing-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;background:#0009;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.processing-card{background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-3);text-align:center;border:1px solid #13b0a533;flex-direction:column;align-items:center;gap:1rem;max-width:90%;padding:2rem 2.5rem;animation:.4s cubic-bezier(.2,.9,.4,1.1) slideUp;display:flex}.spinner-wrapper{margin-bottom:.5rem}.processing-message{color:var(--color-primary);letter-spacing:-.3px;font-size:1.25rem;font-weight:600}.processing-dots{color:var(--color-secondary);gap:.25rem;margin-top:-.5rem;font-size:5.5rem;font-weight:700;display:flex}.processing-dots span{animation:1.4s infinite pulse}.processing-dots span:nth-child(2){animation-delay:.2s}.processing-dots span:nth-child(3){animation-delay:.4s}.processing-hint{color:#6c757d;text-align:center;border-top:1px solid #0000001a;width:100%;margin-top:.75rem;padding-top:.75rem;font-size:.75rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.payment-status{text-align:center;flex-direction:column;align-items:center;padding:1rem .5rem;display:flex}.payment-status .status-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:1.5rem;animation:.5s cubic-bezier(.68,-.55,.265,1.55) bounceIn;display:flex}.payment-status .status-icon svg{width:48px;height:48px}.payment-status .status-icon.success{color:#38a169;background:#38a1691a;border:2px solid #38a169}.payment-status .status-icon.error{color:#e53e3e;background:#e53e3e1a;border:2px solid #e53e3e}.payment-status .status-title{color:var(--color-text-primary);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.payment-status .status-message{color:var(--color-text-secondary);max-width:280px;margin-bottom:2rem;font-size:.875rem}.payment-status .booking-summary,.payment-status .passenger-codes{background:var(--color-background);border-radius:var(--radius-card);text-align:left;width:100%;margin-bottom:1rem;padding:1rem}.payment-status .booking-summary .summary-header,.payment-status .booking-summary .codes-header,.payment-status .passenger-codes .summary-header,.payment-status .passenger-codes .codes-header{color:var(--color-primary);border-bottom:1px solid var(--color-border);margin-bottom:.75rem;padding-bottom:.5rem;font-size:.875rem;font-weight:600}.payment-status .booking-summary .summary-row,.payment-status .passenger-codes .summary-row{border-bottom:1px dashed var(--color-border);justify-content:space-between;padding:.5rem 0;font-size:.875rem;display:flex}.payment-status .booking-summary .summary-row .ref,.payment-status .passenger-codes .summary-row .ref{background:#0000000d;border-radius:6px;padding:.2rem .4rem;font-family:monospace}.payment-status .booking-summary .code-item,.payment-status .passenger-codes .code-item{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.8rem;display:flex}.payment-status .booking-summary .code-item code,.payment-status .passenger-codes .code-item code{background:var(--color-primary);color:#fff;border-radius:20px;padding:.2rem .6rem;font-size:.7rem;font-weight:600}.payment-status .whatsapp-notice{border-radius:var(--radius-card);text-align:left;background:#25d3661a;align-items:center;gap:.75rem;width:100%;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex}.payment-status .whatsapp-notice .whatsapp-icon{color:#25d366;flex-shrink:0;width:32px;height:32px}.payment-status .whatsapp-notice p{color:var(--color-text-primary);margin:0;font-size:.75rem}.payment-status .action-buttons{justify-content:center;gap:1rem;width:100%;margin-top:1rem;display:flex}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}
.booking-layout{background:var(--color-background);flex-direction:column;min-height:100vh;display:flex}.booking-layout .progress-indicator{align-items:center;gap:1rem;display:flex}.booking-layout .stepper-container{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:9;width:100%;max-width:100%;top:var(--header-height);position:sticky;overflow-x:auto}.booking-layout .stepper-container .stepper{max-width:100%}.booking-layout .booking-main{flex:1;width:100%;margin:0 auto;padding:0}.booking-layout .sticky-action-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--color-border);z-index:10;background:#ffffffe6;justify-content:space-between;align-items:center;padding:1rem;display:flex;position:sticky;bottom:0}.booking-layout .progress-pill{background:var(--color-primary-light);color:#fff;border-radius:var(--radius-badge);width:min-content;padding:.5rem 1rem;font-size:.875rem}.booking-layout .trip-info{flex-wrap:wrap;font-size:.75rem;display:flex}
