 .bus-loading-screen {position: relative;display: flex;align-items: center;justify-content: center;padding: 56px 16px;color: var(--text);overflow-x: hidden;-webkit-font-smoothing: antialiased;}.bus-loading-screen::before {position: absolute;top: 50%;left: 50%;width: 360px;height: 360px;content: "";background: radial-gradient(circle, color-mix(in srgb, var(--secondary) 16%, transparent) 0%, color-mix(in srgb, var(--primary) 8%, transparent) 45%, transparent 70%);border-radius: 50%;transform: translate(-50%, -50%);pointer-events: none;animation: busGlow 4s ease-in-out infinite;}.bus-loading-screen .bus-loading-card {position: relative;z-index: 1;width: 100%;max-width: 420px;padding: 34px 28px 24px;overflow: hidden;text-align: center;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-xl);box-shadow: var(--shadow-sm);animation: busCardAppear 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;}.bus-loading-screen .bus-loading-card::before {position: absolute;top: 0;left: 0;width: 100%;height: 4px;content: "";background: linear-gradient(90deg, var(--primary), var(--secondary), var(--primary));background-size: 200% 100%;animation: busBarFlow 3s linear infinite;}.bus-loading-screen .bus-loading-card::after {position: absolute;top: -70px;right: -70px;width: 170px;height: 170px;content: "";background: radial-gradient(circle, color-mix(in srgb, var(--secondary) 14%, transparent), transparent 70%);border-radius: 50%;pointer-events: none;}.bus-loading-screen .bus-loading-icon {position: relative;display: flex;align-items: center;justify-content: center;width: 66px;height: 66px;margin: 0 auto 16px;color: var(--white);background: linear-gradient(135deg, var(--primary-light), var(--primary-dark));border-radius: 20px;box-shadow: 0 10px 24px color-mix(in srgb, var(--primary) 28%, transparent);animation: busFloat 2.2s ease-in-out infinite;}.bus-loading-screen .bus-loading-icon::after {position: absolute;inset: -6px;content: "";border: 2px solid var(--secondary);border-radius: 24px;opacity: 0;animation: busRing 2.2s ease-out infinite;}.bus-loading-screen .bus-loading-icon i {font-size: 28px;}.bus-loading-screen .bus-loading-label {display: inline-block;margin-bottom: 10px;padding: 4px 12px;color: var(--primary);background: color-mix(in srgb, var(--primary) 16%, transparent);border-radius: var(--radius-pill);font-size: 10px;font-weight: 700;letter-spacing: 1.6px;text-transform: uppercase;}.bus-loading-screen .bus-loading-card h4 {margin: 0 0 6px;color: var(--heading);font-size: 22px;font-weight: 700;line-height: 1.3;}.bus-loading-screen .bus-loading-dots {display: inline-block;min-width: 22px;color: var(--secondary-dark);animation: busDotsPulse 1.2s infinite;}.bus-loading-screen .bus-loading-card>p {margin: 0;color: var(--text-light);font-size: 13px;font-weight: 400;line-height: 1.6;}.bus-loading-screen .bus-loading-route {display: grid;grid-template-columns: minmax(0, 1fr) 76px minmax(0, 1fr);align-items: center;gap: 10px;margin: 24px 0 20px;padding: 16px 14px;background: linear-gradient(180deg, var(--bg), var(--bg-light));border: 1px solid var(--border);border-radius: var(--radius);}.bus-loading-screen .bus-city {min-width: 0;text-align: left;}.bus-loading-screen .bus-city-end {text-align: right;}.bus-loading-screen .bus-city>i {display: inline-flex;align-items: center;justify-content: center;width: 20px;height: 20px;margin-right: 5px;color: var(--white);background: var(--primary);border-radius: 50%;font-size: 9px;vertical-align: middle;}.bus-loading-screen .bus-city-end>i {margin-right: 5px;margin-left: 0;background: var(--secondary-dark);order: 2;}.bus-loading-screen .bus-city>span {display: inline-block;color: var(--text-muted);font-size: 10px;font-weight: 700;letter-spacing: 1px;vertical-align: middle;}.bus-loading-screen .bus-city strong {display: block;margin-top: 7px;overflow: hidden;color: var(--heading);font-size: 14px;font-weight: 700;line-height: 1.4;text-overflow: ellipsis;white-space: nowrap;}.bus-loading-screen .bus-route-arrow {position: relative;display: flex;align-items: center;justify-content: center;height: 30px;color: var(--primary);}.bus-loading-screen .bus-route-arrow>span {flex: 1;height: 0;border-top: 2px dashed var(--border);}.bus-loading-screen .bus-route-arrow>i {position: absolute;top: 50%;left: 0;display: flex;align-items: center;justify-content: center;width: 26px;height: 26px;margin-top: -13px;color: var(--white);background: var(--primary);border-radius: 50%;box-shadow: 0 4px 10px color-mix(in srgb, var(--primary) 45%, transparent);font-size: 12px;animation: busTravel 2s ease-in-out infinite;}.bus-loading-screen .bus-loading-progress {position: relative;width: 100%;height: 6px;margin: 0 0 14px;overflow: hidden;background: var(--bg-light);border-radius: var(--radius-pill);box-shadow: inset 0 1px 2px color-mix(in srgb, var(--primary) 8%, transparent);}.bus-loading-screen .bus-loading-progress>span {position: absolute;top: 0;left: -45%;width: 45%;height: 100%;background: linear-gradient(90deg, var(--primary), var(--secondary), var(--secondary-light));border-radius: inherit;animation: busProgressMove 1.6s ease-in-out infinite;}.bus-loading-screen .bus-loading-status {display: inline-flex;align-items: center;justify-content: center;gap: 8px;padding: 6px 14px;color: var(--text);background: var(--bg);border: 1px solid var(--border);border-radius: var(--radius-pill);font-size: 12px;font-weight: 500;line-height: 1.5;}.bus-loading-screen .bus-pulse {position: relative;flex: 0 0 8px;width: 8px;height: 8px;background: var(--success);border-radius: 50%;animation: busStatusPulse 1.5s ease-out infinite;}.bus-loading-screen .bus-loading-date {display: flex;align-items: center;justify-content: center;gap: 12px;margin-top: 20px;padding-top: 16px;border-top: 1px dashed var(--border);text-align: left;}.bus-loading-screen .bus-loading-date>i {display: flex;align-items: center;justify-content: center;width: 38px;height: 38px;flex-shrink: 0;color: var(--primary);background: color-mix(in srgb, var(--primary) 16%, transparent);border-radius: var(--radius-sm);font-size: 16px;}.bus-loading-screen .bus-loading-date>div {min-width: 0;}.bus-loading-screen .bus-loading-date small {display: block;margin-bottom: 2px;color: var(--text-muted);font-size: 10px;font-weight: 700;letter-spacing: 1px;}.bus-loading-screen .bus-loading-date strong {display: block;overflow-wrap: anywhere;color: var(--heading);font-size: 14px;font-weight: 700;line-height: 1.4;}@keyframes busCardAppear {from {opacity: 0;transform: translateY(18px) scale(0.97);}to {opacity: 1;transform: translateY(0) scale(1);}}@keyframes busFloat {0%, 100% {transform: translateY(0);}50% {transform: translateY(-5px);}}@keyframes busRing {0% {opacity: 0.7;transform: scale(0.9);}100% {opacity: 0;transform: scale(1.3);}}@keyframes busTravel {0%, 100% {left: 0;}50% {left: calc(100% - 26px);}}@keyframes busProgressMove {0% {left: -45%;}100% {left: 100%;}}@keyframes busBarFlow {0% {background-position: 0% 0;}100% {background-position: 200% 0;}}@keyframes busGlow {0%, 100% {opacity: 0.7;transform: translate(-50%, -50%) scale(1);}50% {opacity: 1;transform: translate(-50%, -50%) scale(1.12);}}@keyframes busStatusPulse {0% {box-shadow: 0 0 0 0 color-mix(in srgb, var(--success) 40%, transparent);}70% {box-shadow: 0 0 0 7px color-mix(in srgb, var(--success) 0%, transparent);}100% {box-shadow: 0 0 0 0 color-mix(in srgb, var(--success) 0%, transparent);}}@keyframes busDotsPulse {0%, 20% {opacity: 0.35;}50% {opacity: 1;}80%, 100% {opacity: 0.55;}}@media (max-width: 575.98px) {.bus-loading-screen {padding: 28px 12px;}.bus-loading-screen .bus-loading-card {max-width: 360px;padding: 26px 18px 20px;}.bus-loading-screen .bus-loading-icon {width: 56px;height: 56px;margin-bottom: 12px;border-radius: 16px;}.bus-loading-screen .bus-loading-icon i {font-size: 24px;}.bus-loading-screen .bus-loading-card h4 {font-size: 19px;}.bus-loading-screen .bus-loading-card>p {font-size: 12px;}.bus-loading-screen .bus-loading-route {grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr);gap: 6px;margin: 20px 0 16px;padding: 13px 10px;}.bus-loading-screen .bus-city strong {font-size: 12px;}.bus-loading-screen .bus-route-arrow>i {width: 22px;height: 22px;margin-top: -11px;font-size: 10px;}.bus-loading-screen .bus-loading-status {font-size: 11px;}@keyframes busTravel {0%, 100% {left: 0;}50% {left: calc(100% - 22px);}}}@media (max-width: 359.98px) {.bus-loading-screen .bus-loading-card {padding: 22px 12px 16px;}.bus-loading-screen .bus-loading-route {grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1fr);gap: 4px;padding: 10px 6px;}.bus-loading-screen .bus-city strong {font-size: 11px;}.bus-loading-screen .bus-city>span {font-size: 9px;}.bus-loading-screen .bus-loading-status {padding: 5px 10px;font-size: 10px;}}@media (prefers-reduced-motion: reduce) {.bus-loading-screen *, .bus-loading-screen *::before, .bus-loading-screen *::after {animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;scroll-behavior: auto !important;}}.mobile-action-buttons, .close-btn {display: none;}@media (max-width: 991px) {.search-area.modify-area {margin: 0;padding: 0;background: transparent;position: unset;}.mobile-action-buttons {display: flex;align-items: center;gap: 10px;width: 100%;margin: 15px 0 15px;padding: 8px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--surface);box-shadow: var(--shadow-sm);}.mobile-action-buttons .sidebar-toggle {flex: 1;display: flex;align-items: center;justify-content: center;gap: 8px;min-height: 42px;padding: 9px 14px;border: 0;border-radius: var(--radius-sm);background: var(--primary);color: var(--white);font-size: 12px;font-weight: 600;line-height: 1;text-decoration: none;cursor: pointer;transition: var(--transition);}.mobile-action-buttons .sidebar-toggle i {font-size: 14px;}.mobile-action-buttons .sidebar-toggle:hover {background: var(--primary-dark);color: var(--white);text-decoration: none;}.mobile-action-buttons .sidebar-toggle:active {transform: translateY(1px);}.filter-toggle {position: fixed;top: 0;left: 0;z-index: 1020;width: min(90%, 400px);height: 100dvh;padding: 20px;padding-top: 60px;background: var(--surface);border-right: 1px solid var(--border);overflow-x: hidden;overflow-y: auto;-webkit-overflow-scrolling: touch;transform: translateX(-105%);visibility: hidden;box-shadow: var(--shadow-sm);transition: transform var(--transition), visibility 0s linear .3s;}.filter-toggle.active {transform: translateX(0);visibility: visible;transition: transform var(--transition), visibility 0s linear 0s;}.close-btn {position: absolute;top: 12px;right: 12px;z-index: 10;display: flex;align-items: center;justify-content: center;}.close-btn i {display: flex;align-items: center;justify-content: center;width: 36px;height: 36px;border: 1px solid var(--border);border-radius: var(--radius-pill);background: var(--surface);color: var(--heading);font-size: 14px;cursor: pointer;box-shadow: var(--shadow-sm);transition: var(--transition);}.close-btn i:hover {background: var(--primary);border-color: var(--primary);color: var(--white);transform: rotate(90deg);}.close-btn i:active {transform: rotate(90deg) scale(.94);}.filter-toggle {scrollbar-width: thin;scrollbar-color: var(--border) transparent;}.filter-toggle::-webkit-scrollbar {width: 5px;}.filter-toggle::-webkit-scrollbar-track {background: transparent;}.filter-toggle::-webkit-scrollbar-thumb {background: var(--border);border-radius: var(--radius-pill);}.filter-toggle::-webkit-scrollbar-thumb:hover {background: var(--text-muted);}.sidebar-overlay {position: fixed;inset: 0;z-index: 1010;width: 100%;height: 100%;background: rgba(20, 33, 61, .48);opacity: 0;visibility: hidden;pointer-events: none;transition: opacity var(--transition), visibility 0s linear .3s;}.sidebar-overlay.active {opacity: 1;visibility: visible;pointer-events: auto;transition: opacity var(--transition), visibility 0s linear 0s;}}@media (max-width: 575.98px) {.mobile-action-buttons {gap: 8px;margin-bottom: 12px;margin-top: 12px;padding: 7px;border-radius: var(--radius-sm);}.mobile-action-buttons .sidebar-toggle {min-height: 40px;padding: 8px 10px;font-size: 11px;}.mobile-action-buttons .sidebar-toggle i {font-size: 13px;}.filter-toggle {width: 92%;max-width: 360px;padding: 16px;padding-top: 58px;}.close-btn {top: 10px;right: 10px;}.close-btn i {width: 34px;height: 34px;font-size: 13px;}}.modify-search-area {padding: 30px 0;min-height: 100%;}.modify-search-area .search-wrapper {margin: 0;box-shadow: none;}.search-area.modify-search-area .bus-search.ft-group {padding: 15px;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius);box-shadow: var(--shadow-sm);}@media (max-width:998px) {.modify-search-area {padding: 0;}.search-area.modify-search-area .bus-search.ft-group {padding: 15px 12px;}}@media (min-width: 992px) {.search-area.modify-search-area .normal-trip {border: none;}.search-area.modify-search-area .normal-trip>.d-lg-flex {padding: 0px 0;}}.bus-filter-sidebar {width: 100%;min-width: 0;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius);box-shadow: var(--shadow-sm);color: var(--text);overflow: hidden;}.bus-filter-sidebar .close-btn {display: none;}.bus-filter-sidebar .bus-filter-close {align-items: center;justify-content: space-between;gap: 12px;padding: 14px 18px;background: var(--surface);border-bottom: 1px solid var(--border);}.bus-filter-sidebar .bus-filter-close .close-label {color: var(--heading);font-size: 16px;font-weight: 700;}.bus-filter-sidebar .bus-filter-close button {display: inline-flex;align-items: center;justify-content: center;width: 36px;height: 36px;padding: 0;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--bg-light);color: var(--primary);font-size: 17px;cursor: pointer;transition: var(--transition);}.bus-filter-sidebar .bus-filter-close button:hover {background: var(--primary);border-color: var(--primary);color: var(--white);}.bus-filter-sidebar .bus-filter-header {display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 20px 18px;background: var(--surface);border-bottom: 1px solid var(--border);}.bus-filter-sidebar .bus-filter-heading {display: flex;align-items: center;gap: 12px;min-width: 0;}.bus-filter-sidebar .bus-filter-icon, .bus-filter-sidebar .bus-widget-icon {display: inline-flex;align-items: center;justify-content: center;flex-shrink: 0;background: var(--bg-light);color: var(--primary);border-radius: var(--radius-sm);}.bus-filter-sidebar .bus-filter-icon {width: 35px;height: 35px;font-size: 16px;}.bus-filter-sidebar .bus-filter-heading h2 {margin: 0;color: var(--heading);font-size: 17px;font-weight: 700;line-height: 1.35;}.bus-filter-sidebar .bus-filter-heading p {margin: 0;color: var(--text-light);font-size: 12px;line-height: 1.5;}.bus-filter-sidebar .bus-reset-btn, .bus-filter-sidebar .tts__fliter__reset {display: inline-flex;align-items: center;justify-content: center;gap: 6px;flex-shrink: 0;color: var(--primary) !important;font-size: 12px;font-weight: 600;text-decoration: none !important;transition: var(--transition);}.bus-filter-sidebar .bus-reset-btn:hover, .bus-filter-sidebar .tts__fliter__reset:hover {color: var(--secondary-dark) !important;}.bus-filter-sidebar .widget.filters {display: flex;align-items: center;justify-content: space-between;gap: 10px;padding: 20px 18px;margin: 0;background: var(--surface);border-bottom: 1px solid var(--border);}.bus-filter-sidebar .widget.filters .title {display: flex;align-items: center;gap: 9px;margin: 0;color: var(--heading);font-size: 16px;font-weight: 700;}.bus-filter-sidebar .widget.filters .title i {color: var(--primary);}.bus-filter-sidebar .widget, .bus-filter-sidebar .bus-filter-widget {min-width: 0;margin: 0;padding: 20px 18px;background: var(--surface);border-bottom: 1px solid var(--border);}.bus-filter-sidebar .widget:last-child, .bus-filter-sidebar .bus-filter-widget:last-child {border-bottom: 0;}.bus-filter-sidebar .bus-widget-heading {display: flex;align-items: center;gap: 10px;margin-bottom: 15px;}.bus-filter-sidebar .bus-widget-icon {width: 34px;height: 34px;font-size: 14px;}.bus-filter-sidebar .widget-title {margin: 0;color: var(--heading);font-size: 14px;font-weight: 700;line-height: 1.4;}.bus-filter-sidebar .widget>.widget-title {margin: 0 0 15px;}.bus-filter-sidebar .bus-filter-heading i, .bus-filter-sidebar .bus-widget-heading i {flex-shrink: 0;}.bus-filter-sidebar .bus-widget-heading>i {color: var(--primary);}.bus-filter-sidebar .bus-filter-search {position: relative;margin-bottom: 12px;}.bus-filter-sidebar .bus-filter-search>i {position: absolute;top: 50%;left: 13px;z-index: 2;color: var(--text-light);font-size: 13px;transform: translateY(-50%);pointer-events: none;}.bus-filter-sidebar .bus-filter-search .form-control, .bus-filter-sidebar input.form-control1 {display: block;width: 100%;min-width: 0;height: 42px;padding: 9px 12px;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--bg);color: var(--text);font-size: 12px;font-weight: 400;box-shadow: none;outline: none;transition: var(--transition);}.bus-filter-sidebar .bus-filter-search .form-control {padding-left: 36px;}.bus-filter-sidebar .bus-filter-search .form-control:focus, .bus-filter-sidebar input.form-control1:focus {border-color: var(--primary-light);background: var(--surface);box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-light) 8%, transparent);}.bus-filter-sidebar .bus-filter-search .form-control::placeholder, .bus-filter-sidebar input.form-control1::placeholder {color: var(--text-muted);opacity: 1;}.bus-filter-sidebar .bus-filter-options {display: flex;flex-direction: column;gap: 2px;}.bus-filter-sidebar .promoOffersContent {min-width: 0;}.bus-filter-sidebar .bus-filter-option, .bus-filter-sidebar .promoOffersContent .form-check {display: flex;align-items: center;gap: 9px;min-width: 0;margin: 0;padding: 9px 7px;border-radius: var(--radius-sm);transition: var(--transition);}.bus-filter-sidebar .bus-filter-option:hover, .bus-filter-sidebar .promoOffersContent .form-check:hover {background: var(--bg);}.bus-filter-sidebar .form-check-input {flex-shrink: 0;accent-color: var(--primary);cursor: pointer;}.bus-filter-sidebar .bus-filter-option .form-check-input, .bus-filter-sidebar .promoOffersContent .form-check-input {position: static;float: none;width: 16px;height: 16px;margin: 0;border-color: var(--border);border-radius: 4px;box-shadow: none;cursor: pointer;transition: var(--transition);}.bus-filter-sidebar .bus-filter-option .form-check-input:checked, .bus-filter-sidebar .promoOffersContent .form-check-input:checked {background-color: var(--primary);border-color: var(--primary);}.bus-filter-sidebar .bus-filter-option .form-check-input:focus, .bus-filter-sidebar .promoOffersContent .form-check-input:focus {border-color: var(--primary-light);box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-light) 10%, transparent);}.bus-filter-sidebar .bus-filter-option .form-check-label, .bus-filter-sidebar .promoOffersContent .form-check-label {display: flex;align-items: center;flex: 1;min-width: 0;margin: 0;color: var(--text);font-size: 12px;font-weight: 500;line-height: 1.5;cursor: pointer;}.bus-filter-sidebar .bus-option-name {overflow-wrap: anywhere;}.bus-filter-sidebar .bus-filter-scroll, .bus-filter-sidebar .bus0filter {max-height: 220px;overflow-x: hidden;overflow-y: auto;padding-right: 4px;scrollbar-width: thin;scrollbar-color: var(--border) transparent;}.bus-filter-sidebar .bus0filter::-webkit-scrollbar, .bus-filter-sidebar .bus-filter-scroll::-webkit-scrollbar {width: 5px;}.bus-filter-sidebar .bus0filter::-webkit-scrollbar-track, .bus-filter-sidebar .bus-filter-scroll::-webkit-scrollbar-track {background: transparent;}.bus-filter-sidebar .bus0filter::-webkit-scrollbar-thumb, .bus-filter-sidebar .bus-filter-scroll::-webkit-scrollbar-thumb {background: var(--border);border-radius: var(--radius-pill);}.bus-filter-sidebar .bus0filter::-webkit-scrollbar-thumb:hover, .bus-filter-sidebar .bus-filter-scroll::-webkit-scrollbar-thumb:hover {background: var(--text-muted);}.bus-filter-sidebar .filters-wrap {width: 100%;}.bus-filter-sidebar .price_filter, .bus-filter-sidebar .bus-price-filter {padding: 10px 5px 5px;}.bus-filter-sidebar .price-range {margin: 0;}.bus-filter-sidebar .ui-slider {position: relative;height: 5px;border: 0;border-radius: var(--radius-pill);background: var(--border);}.bus-filter-sidebar .ui-slider .ui-slider-range {position: absolute;height: 100%;border: 0;background: var(--primary);}.bus-filter-sidebar .ui-slider .ui-slider-handle {position: absolute;top: 50%;width: 17px;height: 17px;margin-top: -1px;border: 3px solid var(--white);border-radius: var(--radius-pill);background: var(--primary);box-shadow: var(--shadow-sm);transform: translateY(-50%);cursor: grab;outline: none;}.bus-filter-sidebar .ui-slider .ui-slider-handle:focus-visible {box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);}.bus-filter-sidebar .price_slider_amount, .bus-filter-sidebar .bus-price-amount {display: flex;align-items: center;justify-content: space-between;gap: 12px;margin-top: 17px;}.bus-filter-sidebar .bus-price-box {display: flex;flex-direction: column;gap: 5px;width: 50%;min-width: 0;}.bus-filter-sidebar .bus-price-box>span {color: var(--text-light);font-size: 10px;font-weight: 500;}.bus-filter-sidebar .price_slider_amount input {width: 100%;min-width: 0;padding: 0;border: 0;outline: none;background: transparent;color: var(--heading);font-size: 13px;font-weight: 700;box-shadow: none;}.bus-filter-sidebar .price_slider_amount input:focus {border: 0;box-shadow: none;}.bus-filter-sidebar .bus-filter-description {margin: -7px 0 12px;color: var(--text-light);font-size: 11px;line-height: 1.5;}.bus-filter-sidebar .bus-time-options {display: grid;grid-template-columns: repeat(2, 1fr);gap: 8px;}.bus-filter-sidebar .bus-time-option {position: relative;min-width: 0;margin: 0;}.bus-filter-sidebar .bus-time-option .form-check-input {position: absolute;width: 1px;height: 1px;margin: 0;overflow: hidden;opacity: 0;pointer-events: none;}.bus-filter-sidebar .bus-time-option .form-check-label {display: flex;align-items: center;gap: 10px;min-height: 43px;padding: 8px 10px;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--surface);color: var(--text);font-size: 12px;font-weight: 500;line-height: 1.4;cursor: pointer;transition: var(--transition);}.bus-filter-sidebar .bus-time-icon {display: inline-flex;align-items: center;justify-content: center;flex: 0 0 29px;width: 29px;height: 29px;border-radius: var(--radius-sm);background: var(--bg-light);color: var(--primary);font-size: 13px;transition: var(--transition);}.bus-filter-sidebar .bus-time-option .form-check-label:hover {border-color: var(--secondary);background: var(--bg);}.bus-filter-sidebar .bus-time-option .form-check-input:checked+.form-check-label {border-color: var(--primary);background: var(--bg-light);color: var(--primary);}.bus-filter-sidebar .bus-time-option .form-check-input:checked+.form-check-label .bus-time-icon {background: var(--primary);color: var(--white);}.bus-filter-sidebar .bus-time-option .form-check-input:focus-visible+.form-check-label {outline: 2px solid var(--accent);outline-offset: 2px;}.bus-filter-sidebar .bus-filter-empty {display: flex;align-items: center;justify-content: center;gap: 8px;padding: 16px 8px;color: var(--text-muted);font-size: 12px;text-align: center;}.bus-filter-sidebar .bus-filter-empty i {color: var(--text-light);}@media (max-width: 991px) {.bus-filter-sidebar {width: 100%;border: 0;border-radius: 0;box-shadow: none;}.bus-filter-sidebar .close-btn, .bus-filter-sidebar .bus-filter-close {display: flex;}.bus-filter-sidebar .bus-filter-header {padding: 16px 0;}.bus-filter-sidebar .price_filter, .bus-filter-sidebar .bus-price-filter {padding: 10px 10px 5px 10px;}.bus-filter-sidebar .widget, .bus-filter-sidebar .bus-filter-widget, .bus-filter-sidebar .widget.filters {padding: 18px 0px;}}@media (max-width: 480px) {.bus-filter-sidebar .bus-filter-heading h2 {font-size: 15px;}.bus-filter-sidebar .bus-filter-heading p {font-size: 11px;}.bus-filter-sidebar .bus-filter-icon {width: 38px;height: 38px;}.bus-filter-sidebar .bus-reset-btn, .bus-filter-sidebar .tts__fliter__reset {gap: 4px;font-size: 11px;}.bus-filter-sidebar .widget, .bus-filter-sidebar .bus-filter-widget, .bus-filter-sidebar .widget.filters {padding: 16px 0px;}.bus-filter-sidebar .widget.filters .title {font-size: 14px;}.bus-filter-sidebar .bus-price-amount, .bus-filter-sidebar .price_slider_amount {gap: 8px;}}@media (prefers-reduced-motion: reduce) {.bus-filter-sidebar *, .bus-filter-sidebar *::before, .bus-filter-sidebar *::after {scroll-behavior: auto !important;transition: none !important;}}.bus-results-toolbar {display: flex;align-items: center;justify-content: space-between;gap: 20px;width: 100%;min-height: 76px;padding: 14px 18px;margin-bottom: 20px;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius);box-shadow: var(--shadow-sm);box-sizing: border-box;}.bus-results-summary {display: flex;align-items: center;flex-wrap: wrap;gap: 10px;min-width: 0;}.bus-results-summary strong {color: var(--heading);font-size: 14px;font-weight: 700;line-height: 1.5;}.bus-summary-divider {width: 5px;height: 5px;flex-shrink: 0;background: var(--text-muted);border-radius: var(--radius-pill);}.bus-results-summary .bus-starting-fare {color: var(--danger);font-size: 12px;font-weight: 600;}.bus-results-toolbar .bus-sortbar {display: flex;align-items: center;gap: 4px;flex-shrink: 0;max-width: 100%;padding: 5px;background: var(--bg-light);border: 1px solid var(--border);border-radius: var(--radius-pill);}.bus-results-toolbar .bus-sort-label {padding: 0 10px;color: var(--heading);font-size: 12px;font-weight: 800;letter-spacing: 1.2px;white-space: nowrap;}.bus-results-toolbar .bus-sort-item {display: inline-flex;align-items: center;justify-content: center;gap: 7px;min-height: 36px;padding: 9px 13px;color: var(--text);background: transparent;border: 1px solid transparent;border-radius: var(--radius-pill);font-size: 12px;font-weight: 600;line-height: 1.3;text-decoration: none;white-space: nowrap;cursor: pointer;transition: var(--transition);}.bus-results-toolbar .bus-sort-item>span {line-height: 1.3;}.bus-results-toolbar .bus-sort-item>i {color: var(--text-muted);font-size: 11px;}.bus-results-toolbar .bus-sort-item:hover {color: var(--primary);background: var(--white);border-color: var(--border);}.bus-results-toolbar .bus-sort-item.active {color: var(--white);background: var(--primary);border-color: var(--primary);box-shadow: var(--shadow-sm);}.bus-results-toolbar .bus-sort-item.active>i {color: var(--secondary-light);}.bus-results-toolbar .bus-sort-item:focus-visible {outline: 2px solid var(--accent);outline-offset: 3px;}.bus-booking-section {display: flex;flex-direction: column;gap: 16px;color: var(--text);}.bus-booking-section button {}.bus-booking-section .bus-result-card {background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-lg);overflow: hidden;box-shadow: var(--shadow-sm);transition: box-shadow var(--transition), border-color var(--transition);}.bus-booking-section .bus-result-card:hover {box-shadow: var(--shadow);border-color: var(--secondary);}.bus-booking-section .bus-banner {background: color-mix(in srgb, var(--secondary) 14%, var(--white));border-bottom: 1px solid color-mix(in srgb, var(--secondary) 40%, var(--white));color: var(--primary);font-size: 13px;font-weight: 500;padding: 9px 20px;}.bus-booking-section .bus-banner i {color: var(--secondary-dark);margin-right: 6px;}.bus-booking-section .bus-card-grid {display: grid;grid-template-columns: 250px 1fr 250px;}.bus-booking-section .bus-col {padding: 20px;display: flex;flex-direction: column;gap: 12px;}.bus-booking-section .bus-col-route {border-left: 1px solid var(--border);border-right: 1px solid var(--border);}.bus-booking-section .bus-operator {display: flex;align-items: center;gap: 12px;}.bus-booking-section .bus-operator-icon {width: 42px;height: 42px;flex: 0 0 42px;border-radius: var(--radius);background: linear-gradient(135deg, var(--primary), var(--secondary));color: var(--white);font-weight: 700;font-size: 15px;display: flex;align-items: center;justify-content: center;}.bus-booking-section .bus-operator-info h5 {margin: 0 0 2px;font-size: 16px;font-weight: 700;color: var(--heading);}.bus-booking-section .bus-operator-info span {font-size: 10px;color: var(--text-light);line-height: 15px;display: inline-block;}.bus-booking-section .bus-tags {display: flex;flex-wrap: wrap;gap: 8px;margin-top: 16px;}.bus-booking-section .bus-tag {font-size: 10px;font-weight: 500;color: var(--text);background: var(--bg-light);border: 1px solid var(--border);border-radius: var(--radius-sm);padding: 3px 10px;}.bus-booking-section .bus-tag-ac {color: var(--primary);background: color-mix(in srgb, var(--accent) 10%, var(--white));border-color: color-mix(in srgb, var(--accent) 35%, var(--white));}.bus-booking-section .bus-map-btn {width: 100%;margin-top: auto;padding: 10px 14px;background: var(--bg);border: 1px solid var(--border);border-radius: var(--radius-pill);color: var(--primary);font-size: 12px;font-weight: 600;display: flex;align-items: center;justify-content: center;gap: 8px;transition: var(--transition);}.bus-booking-section .bus-map-btn:hover {background: var(--primary);border-color: var(--primary);color: var(--white);}.bus-booking-section .bus-route {display: flex;align-items: flex-start;justify-content: space-between;gap: 12px;}.bus-booking-section .bus-route-point {display: flex;flex-direction: column;gap: 2px;min-width: 90px;}.bus-booking-section .bus-route-destination {align-items: flex-end;text-align: right;}.bus-booking-section .bus-route-time {font-size: 22px;font-weight: 700;color: var(--heading);line-height: 1.1;display: flex;align-items: center;gap: 8px;}.bus-booking-section .bus-route-date {font-size: 12.5px;color: var(--text-light);}.bus-booking-section .bus-next-day {font-style: normal;font-size: 10px;font-weight: 600;color: var(--secondary-dark);background: color-mix(in srgb, var(--warning) 12%, var(--white));border: 1px solid color-mix(in srgb, var(--warning) 45%, var(--white));border-radius: var(--radius-sm);padding: 1px 7px;}.bus-booking-section .bus-route-middle {flex: 1;display: flex;flex-direction: column;align-items: center;gap: 6px;padding-top: 2px;}.bus-booking-section .bus-duration {font-size: 12.5px;color: var(--text-light);}.bus-booking-section .bus-duration i {margin-right: 4px;}.bus-booking-section .bus-route-line {position: relative;width: 100%;height: 2px;background: var(--secondary);margin-top: 6px;}.bus-booking-section .bus-route-line::before, .bus-booking-section .bus-route-line::after {content: "";position: absolute;top: 50%;width: 8px;height: 8px;border-radius: var(--radius-pill);background: var(--secondary);transform: translateY(-50%);}.bus-booking-section .bus-route-line::before {left: 0;}.bus-booking-section .bus-route-line::after {right: 0;}.bus-booking-section .bus-points {list-style: none;margin: 0px 0 0;padding: 0;display: flex;flex-direction: column;gap: 9px;}.bus-booking-section .bus-points li {display: flex;align-items: center;flex-wrap: wrap;gap: 8px;font-size: 12px;color: var(--heading);}.bus-booking-section .bus-points li span {color: var(--text-light);}.bus-booking-section .bus-points i {width: 14px;text-align: center;font-size: 13px;}.bus-booking-section .bus-pin-from {color: var(--secondary-dark);}.bus-booking-section .bus-pin-to {color: var(--accent);}.bus-booking-section .bus-pin-policy {color: var(--warning);}.bus-booking-section .bus-link {color: var(--accent);font-weight: 500;text-decoration: none;cursor: pointer;}.bus-booking-section .bus-link:hover {color: var(--primary);}.bus-booking-section .bus-link i {font-size: 10px;margin-left: 3px;transition: transform var(--transition);}.bus-booking-section .bus-link:not(.collapsed) i {transform: rotate(180deg);}.bus-booking-section .bus-points-list {padding-left: 22px;}.bus-booking-section .bus-points-list ul {list-style: none;margin: 0;padding: 0;max-height: 150px;overflow: auto;display: flex;flex-direction: column;gap: 6px;width: 100%;}.bus-booking-section .bus-points-list li {font-size: 13px;}.bus-booking-section .bus-col-price {display: flex;flex-direction: column;}.bus-booking-section .bus-price-top {display: flex;align-items: center;flex-wrap: wrap;justify-content: space-between;gap: 10px;}.bus-booking-section .bus-availability {display: inline-flex;align-items: center;gap: 6px;white-space: nowrap;font-size: 11px;font-weight: 500;color: var(--success);background: color-mix(in srgb, var(--success) 8%, var(--white));border: 1px solid color-mix(in srgb, var(--success) 35%, var(--white));border-radius: var(--radius-pill);padding: 4px 12px;}.bus-booking-section .bus-price {font-size: 22px;font-weight: 800;color: var(--primary);line-height: 1.1;}.bus-booking-section .bus-price span {margin-right: 2px;}.bus-booking-section .bus-price-sub {display: flex;align-items: center;font-size: 12.5px;color: var(--text-light);}.bus-booking-section .bus-fare-list {margin-top: 8px;font-size: 13px;color: var(--text);}.bus-booking-section .bus-fare-list div {display: flex;justify-content: space-between;padding: 3px 0;border-bottom: 1px dashed var(--border);}.bus-booking-section .bus-seat-btn {width: 100%;margin-top: auto;padding: 10px 18px;border: 0;border-radius: var(--radius-pill);background: linear-gradient(90deg, var(--primary) 0%, var(--primary-light) 100%);color: var(--white);font-weight: 600;display: flex;align-items: center;justify-content: center;gap: 10px;box-shadow: var(--shadow-sm);transition: var(--transition);}.bus-booking-section .bus-col-price .bus-seat-btn {margin-top: auto;}.bus-booking-section .bus-seat-btn:hover {background: linear-gradient(90deg, var(--secondary-dark), var(--secondary));color: var(--white);transform: translateY(-1px);box-shadow: var(--shadow);}.bus-booking-section .bus-policy {border-top: 1px solid var(--border);background: var(--bg);}.bus-booking-section .bus-policy-content {padding: 18px 20px;}.bus-booking-section .bus-policy-content h6 {font-size: 14px;font-weight: 700;color: var(--heading);margin-bottom: 12px;}.bus-booking-section .bus-policy-content h6 span {margin-left: 8px;font-weight: 400;color: var(--text-light);}.bus-booking-section .bus-policy-table {margin: 0;font-size: 13px;}.bus-booking-section .bus-policy-table th {background: var(--primary);color: var(--white);font-weight: 600;border-color: var(--primary);}.bus-booking-section .bus-policy-table td {background: var(--surface);border-color: var(--border);color: var(--text);}@media (max-width:991px) {.bus-booking-section .bus-card-grid {grid-template-columns: 1fr;}.bus-booking-section .bus-col-route {border: 0;border-top: 1px solid var(--border);border-bottom: 1px solid var(--border);}.bus-booking-section .bus-price-sub{justify-content: flex-end;}}@media (max-width:575px) {.bus-booking-section .bus-route-time {font-size: 21px;}.bus-booking-section .bus-price {font-size: 26px;}}.bus-empty-state {display: flex;align-items: center;flex-direction: column;justify-content: center;gap: 12px;position: relative;z-index: 1;width: 100%;max-width: 420px;margin: 30px auto;padding: 34px 28px 24px;overflow: hidden;text-align: center;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-xl);box-shadow: var(--shadow-sm);animation: busCardAppear 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;}.bus-empty-state .bus-empty-icon {display: flex;align-items: center;justify-content: center;width: 64px;height: 64px;color: var(--primary);background: var(--bg-light);border-radius: var(--radius-lg);font-size: 25px;}.bus-empty-state .bus-eyebrow {display: inline-block;margin-bottom: 10px;padding: 4px 12px;color: var(--primary);background: color-mix(in srgb, var(--secondary) 16%, transparent);border-radius: var(--radius-pill);font-size: 10px;font-weight: 700;letter-spacing: 1.6px;text-transform: uppercase;}.bus-empty-state h4 {margin: 0 0 6px;color: var(--heading);font-size: 22px;font-weight: 700;line-height: 1.3;}.bus-empty-state p {max-width: 400px;margin: 0;color: var(--text-light);font-size: 13px;line-height: 1.7;}.bus-empty-state .bus-primary-btn {display: inline-flex;align-items: center;justify-content: center;gap: 8px;min-height: 42px;margin-top: 5px;padding: 11px 18px;color: var(--white);background: var(--primary);border: 1px solid var(--primary);border-radius: var(--radius);font-size: 12px;font-weight: 700;cursor: pointer;transition: var(--transition);}.bus-empty-state .bus-primary-btn:hover {background: var(--primary-light);border-color: var(--primary-light);}@media (max-width: 1100px) {.bus-booking-section .bus-result-card {grid-template-columns: minmax(170px, 0.8fr) minmax(250px, 1.2fr);}.bus-booking-section .bus-card-top {grid-column: 1;grid-row: 1;}.bus-booking-section .bus-route {grid-column: 2;grid-row: 1;}.bus-booking-section .bus-card-bottom {grid-column: 1 / -1;grid-row: 2;flex-direction: row;align-items: center;gap: 20px;padding: 16px 20px;border-top: 1px solid var(--border);border-left: 0;}.bus-booking-section .bus-price-block {align-items: flex-start;}.bus-booking-section .bus-seat-btn {width: auto;min-width: 180px;}}@media (max-width: 768px) {.bus-results-toolbar {align-items: flex-start;flex-direction: column;gap: 14px;padding: 15px;}.bus-results-summary {width: 100%;}.bus-results-toolbar .bus-sortbar {width: 100%;justify-content: flex-start;overflow-x: auto;overscroll-behavior-x: contain;scrollbar-width: thin;}.bus-results-toolbar .bus-sort-item {flex: 0 0 auto;padding-right: 12px;padding-left: 12px;}.bus-booking-section .bus-result-card {grid-template-columns: minmax(0, 1fr);}.bus-booking-section .bus-card-top {grid-column: 1;grid-row: auto;flex-direction: row;align-items: center;justify-content: space-between;flex-wrap: wrap;gap: 12px;padding: 16px;border-right: 0;border-bottom: 1px solid var(--border);}.bus-booking-section .bus-operator {flex: 1 1 220px;}.bus-booking-section .bus-availability {flex-shrink: 0;}.bus-booking-section .bus-route {grid-column: 1;grid-row: auto;}.bus-booking-section .bus-card-bottom {grid-column: 1;grid-row: auto;padding: 16px 20px;}}@media (max-width: 576px) {.bus-results-toolbar {gap: 12px;padding: 13px;margin-bottom: 16px;}.bus-results-summary strong {font-size: 13px;}.bus-results-toolbar .bus-sortbar {gap: 3px;padding: 4px;}.bus-results-toolbar .bus-sort-label {padding: 0 7px;font-size: 9px;letter-spacing: 0.8px;}.bus-results-toolbar .bus-sort-item {min-height: 34px;gap: 5px;padding: 8px 10px;font-size: 11px;}.bus-booking-section {gap: 14px;}.bus-booking-section .bus-result-card {border-radius: var(--radius);}.bus-booking-section .bus-card-top {align-items: flex-start;flex-direction: column;padding: 15px;}.bus-booking-section .bus-operator {flex: 1 1 auto;}.bus-booking-section .bus-operator-icon {flex-basis: 42px;width: 42px;height: 42px;font-size: 17px;}.bus-booking-section .bus-route {grid-template-columns: minmax(0, 1fr) minmax(55px, 0.65fr) minmax(0, 1fr);gap: 8px;}.bus-booking-section .bus-route-time {font-size: 21px;}.bus-booking-section .bus-route-point {gap: 5px;}.bus-booking-section .bus-route-point strong, .bus-booking-section .bus-route-date {font-size: 10px;}.bus-booking-section .bus-route-middle {gap: 8px;}.bus-booking-section .bus-duration {gap: 4px;font-size: 10px;}.bus-booking-section .bus-route-line>i {flex-basis: 23px;width: 23px;height: 23px;margin: 0 2px;font-size: 10px;}.bus-booking-section .bus-route-middle small {font-size: 9px;}.bus-booking-section .bus-card-bottom {flex-direction: row;align-items: center;justify-content: space-between;gap: 12px;padding: 15px;}.bus-booking-section .bus-price {font-size: 23px;}.bus-booking-section .bus-price>span {font-size: 17px;}.bus-booking-section .bus-seat-btn {flex: 0 1 auto;width: auto;min-width: 140px;min-height: 42px;gap: 7px;padding: 10px 12px;font-size: 11px;}.bus-booking-section .bus-policy-toggle {min-height: 45px;padding: 12px 15px;font-size: 11px;}.bus-booking-section .bus-policy-content {padding: 14px;}.bus-booking-section .bus-policy-content h6 {font-size: 12px;}.bus-booking-section .bus-policy-content h6 span {width: 100%;margin-left: 0;}.bus-booking-section .bus-policy-table th, .bus-booking-section .bus-policy-table td {padding: 11px;font-size: 11px;}.bus-empty-state {padding: 32px 16px;}.bus-empty-state h4 {font-size: 16px;}}@media (max-width: 380px) {.bus-results-toolbar .bus-sort-label {padding: 0 4px;font-size: 8px;}.bus-results-toolbar .bus-sort-item {gap: 4px;padding: 8px;font-size: 10px;}.bus-booking-section .bus-route {grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr);gap: 5px;}.bus-booking-section .bus-route-time {font-size: 18px;}.bus-booking-section .bus-route-point strong, .bus-booking-section .bus-duration {font-size: 9px;}.bus-booking-section .bus-route-line>i {flex-basis: 20px;width: 20px;height: 20px;margin: 0 1px;font-size: 9px;}.bus-booking-section .bus-card-bottom {gap: 8px;padding: 12px;}.bus-booking-section .bus-price {font-size: 20px;}.bus-booking-section .bus-price>span {font-size: 15px;}.bus-booking-section .bus-seat-btn {min-width: 118px;gap: 5px;padding: 10px 8px;font-size: 10px;}}@media (prefers-reduced-motion: reduce) {.bus-booking-section .bus-result-card, .bus-booking-section .bus-operator-icon, .bus-booking-section .bus-seat-btn, .bus-booking-section .bus-seat-btn i, .bus-booking-section .bus-policy-arrow, .bus-results-toolbar .bus-sort-item {transition: none;}.bus-booking-section .bus-result-card:hover {transform: none;}}#seatLayoutToggle {color: var(--text);}#seatLayoutToggle .modal-dialog {display: flex;align-items: stretch;width: calc(100% - 32px);max-width: 1200px;height: 90dvh;max-height: 90dvh;margin: 5dvh auto;}#seatLayoutToggle .bus-custom-modal {display: flex;flex: 1 1 auto;flex-direction: column;width: 100%;min-width: 0;min-height: 0;height: 100%;max-height: 100%;overflow: hidden;border: 1px solid var(--border);border-radius: var(--radius-lg);background: var(--surface);box-shadow: var(--shadow-lg);}#seatLayoutToggle .bus-modal-header {display: flex;flex: 0 0 auto;align-items: flex-start;justify-content: space-between;gap: 20px;padding: 15px 20px;border-bottom: 1px solid var(--border);background: var(--white);}#seatLayoutToggle .bus-modal-heading {min-width: 0;}#seatLayoutToggle .modal-title {margin: 0;color: var(--heading);font-size: 22px;font-weight: 700;line-height: 1.3;}#seatLayoutToggle .bus-modal-subtitle {margin: 7px 0 0;color: var(--text-light);font-size: 13px;line-height: 1.6;}#seatLayoutToggle .btn-close {flex-shrink: 0;margin: 2px 0 0;padding: 10px;border-radius: var(--radius-pill);background-color: var(--bg-light);opacity: 1;transition: var(--transition);}#seatLayoutToggle .btn-close:hover {background-color: var(--border);transform: rotate(90deg);}#seatLayoutToggle .btn-close:focus-visible {outline: 2px solid var(--primary);outline-offset: 3px;}#seatLayoutToggle .bus-main {flex: 1 1 auto;min-width: 0;min-height: 0;overflow-x: hidden;overflow-y: auto;padding: 15px 20px 20px;background: var(--bg);scrollbar-width: thin;scrollbar-color: var(--text-muted) var(--bg-light);overscroll-behavior: contain;}#seatLayoutToggle .bus-main::-webkit-scrollbar {width: 6px;}#seatLayoutToggle .bus-main::-webkit-scrollbar-track {background: var(--bg-light);}#seatLayoutToggle .bus-main::-webkit-scrollbar-thumb {border-radius: var(--radius-pill);background: var(--text-muted);}.bus-seat-error {width: 100%;max-width: 460px;margin: 0 auto;padding: 36px 28px 30px;box-sizing: border-box;text-align: center;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-lg);box-shadow: var(--shadow);animation: busErrorFadeIn 0.35s ease-out;}.bus-seat-error .bus-error-icon {width: 76px;height: 76px;margin: 0 auto 22px;display: flex;align-items: center;justify-content: center;color: var(--danger);background: var(--bg);border: 1px solid var(--border);border-radius: var(--radius-pill);}.bus-seat-error .bus-error-icon i {font-size: 34px;line-height: 1;}.bus-seat-error h5 {margin: 0 0 12px;color: var(--heading);font-size: 21px;font-weight: 700;line-height: 1.4;}.bus-seat-error p {max-width: 350px;margin: 0 auto 26px;color: var(--text);font-size: 14px;font-weight: 400;line-height: 1.8;}.bus-seat-error .bus-error-btn {min-width: 130px;min-height: 46px;padding: 12px 28px;display: inline-flex;align-items: center;justify-content: center;color: var(--white);background: var(--primary);border: 1px solid var(--primary);border-radius: var(--radius-sm);font-size: 14px;font-weight: 600;line-height: 1.4;cursor: pointer;transition: var(--transition);}.bus-seat-error .bus-error-btn:hover {color: var(--white);background: var(--primary-dark);border-color: var(--primary-dark);box-shadow: var(--shadow-sm);transform: translateY(-2px);}.bus-seat-error .bus-error-btn:active {transform: translateY(0);box-shadow: none;}.bus-seat-error .bus-error-btn:focus-visible {outline: 2px solid var(--accent);outline-offset: 3px;}@keyframes busErrorFadeIn {from {opacity: 0;transform: translateY(10px);}to {opacity: 1;transform: translateY(0);}}@media (max-width: 576px) {.bus-seat-error {max-width: 100%;padding: 28px 20px 24px;border-radius: var(--radius);}.bus-seat-error .bus-error-icon {width: 64px;height: 64px;margin-bottom: 18px;}.bus-seat-error .bus-error-icon i {font-size: 29px;}.bus-seat-error h5 {font-size: 19px;}.bus-seat-error p {font-size: 13px;line-height: 1.7;}.bus-seat-error .bus-error-btn {width: 100%;max-width: 220px;}}@media (prefers-reduced-motion: reduce) {.bus-seat-error, .bus-seat-error .bus-error-btn {animation: none;transition: none;}}.bus-seat-loading {width: 100%;min-height: 100%;padding: 40px 20px;display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-lg);animation: busLoadingFadeIn 0.3s ease;}.bus-seat-loading .spinner-border {width: 48px;height: 48px;margin-bottom: 22px;color: var(--primary) !important;border-width: 4px;border-right-color: transparent;animation: spinner-border 0.8s linear infinite;}.bus-seat-loading h6 {margin: 0 0 8px;color: var(--heading);font-size: 17px;font-weight: 700;line-height: 1.5;}.bus-seat-loading p {max-width: 340px;margin: 0;color: var(--text-light);font-size: 13px;font-weight: 400;line-height: 1.7;}.bus-seat-loading::after {content: "";display: block;width: 100px;height: 4px;margin-top: 24px;overflow: hidden;border-radius: var(--radius-pill);background: linear-gradient(90deg, var(--primary) 0%, var(--accent) 50%, var(--primary) 100%) 0 0 / 200% 100%, var(--bg-light);animation: busLoadingProgress 1.5s ease-in-out infinite;}@keyframes busLoadingFadeIn {from {opacity: 0;transform: translateY(6px);}to {opacity: 1;transform: translateY(0);}}@keyframes busLoadingProgress {0% {background-position: 100% 0, 0 0;}100% {background-position: -100% 0, 0 0;}}@media (max-width: 991.98px) {.bus-seat-loading {min-height: 280px;padding: 32px 18px;}.bus-seat-loading .spinner-border {width: 42px;height: 42px;margin-bottom: 18px;}.bus-seat-loading h6 {font-size: 16px;}}@media (max-width: 575.98px) {.bus-seat-loading {min-height: 240px;padding: 28px 16px;border-radius: var(--radius);}.bus-seat-loading .spinner-border {width: 38px;height: 38px;border-width: 3px;margin-bottom: 16px;}.bus-seat-loading h6 {font-size: 15px;}.bus-seat-loading p {max-width: 280px;font-size: 12px;}.bus-seat-loading::after {margin-top: 20px;}}@media (prefers-reduced-motion: reduce) {.bus-seat-loading, .bus-seat-loading .spinner-border, .bus-seat-loading::after {animation: none;}}#seatLayoutToggle .bus-booking-tabs {display: flex;flex-wrap: wrap;gap: 8px;margin: 0 0 20px;padding: 6px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--white);}#seatLayoutToggle .bus-booking-tabs .nav-item {flex: 1 1 150px;min-width: 0;}#seatLayoutToggle .bus-booking-tabs .nav-link {display: flex;align-items: center;justify-content: center;gap: 8px;width: 100%;min-height: 46px;padding: 11px 14px;border: 1px solid transparent;border-radius: var(--radius-sm);background: transparent;color: var(--text-light);font-size: 13px;font-weight: 600;white-space: normal;transition: var(--transition);}#seatLayoutToggle .bus-booking-tabs .nav-link i {flex-shrink: 0;font-size: 15px;}#seatLayoutToggle .bus-booking-tabs .nav-link:hover {background: var(--bg-light);color: var(--primary);}#seatLayoutToggle .bus-booking-tabs .nav-link.active {border-color: var(--primary);background: var(--primary);color: var(--white);box-shadow: var(--shadow-sm);}#seatLayoutToggle .bus-booking-tabs .nav-link:focus-visible {outline: 2px solid var(--secondary);outline-offset: 2px;}#seatLayoutToggle .bus-booking-tab-content, #seatLayoutToggle .bus-booking-tab-content>.tab-pane, #seatLayoutToggle .bus-seat-content {min-width: 0;}#seatLayoutToggle .bus-seat-main-row {align-items: flex-start;}#seatLayoutToggle .bus-seat-panel, #seatLayoutToggle .bus-booking-summary, #seatLayoutToggle .bus-points-card {min-width: 0;border: 1px solid var(--border);border-radius: var(--radius);background: var(--surface);box-shadow: var(--shadow-sm);}#seatLayoutToggle .bus-seat-panel {padding: 22px;overflow: hidden;}#seatLayoutToggle .bus-panel-heading {display: flex;align-items: center;justify-content: space-between;gap: 15px;margin-bottom: 20px;}#seatLayoutToggle .bus-panel-heading h6 {display: flex;align-items: center;gap: 9px;margin: 0;color: var(--heading);font-size: 17px;font-weight: 700;}#seatLayoutToggle .bus-panel-heading h6>i {color: var(--secondary-dark);font-size: 18px;}#seatLayoutToggle .bus-panel-heading p {margin: 7px 0 0;color: var(--text-light);font-size: 12px;line-height: 1.6;}#seatLayoutToggle .bus-seat-layout-wrapper {width: 100%;max-width: 100%;min-width: 0;overflow-x: auto;overflow-y: hidden;padding: 14px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--bg);scrollbar-width: thin;scrollbar-color: var(--text-muted) var(--bg-light);}#seatLayoutToggle .bus-seat-layout-wrapper::-webkit-scrollbar {height: 7px;}#seatLayoutToggle .bus-seat-layout-wrapper::-webkit-scrollbar-track {border-radius: var(--radius-pill);background: var(--bg-light);}#seatLayoutToggle .bus-seat-layout-wrapper::-webkit-scrollbar-thumb {border-radius: var(--radius-pill);background: var(--text-muted);}#seatLayoutToggle .bus-seat-layout {width: max-content;min-width: 100%;color: var(--text);}#seatLayoutToggle .bus-seat-layout .outerseat, #seatLayoutToggle .bus-seat-layout .outerlowerseat {position: relative;box-sizing: border-box;width: max-content;min-width: 100%;margin: 0 0 14px;padding: 12px 8px;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--white);}#seatLayoutToggle .bus-seat-layout .outerlowerseat {margin-bottom: 0;}#seatLayoutToggle .bus-seat-layout .outerseat::after, #seatLayoutToggle .bus-seat-layout .outerlowerseat::after {display: block;clear: both;content: "";}#seatLayoutToggle .bus-seat-layout .busSeatlft {float: left;width: 30px;min-height: 60px;margin: 10px 10px 10px 0;text-align: center;}#seatLayoutToggle .bus-seat-layout .busSeatrgt {float: left;width: max-content;min-width: 0;}#seatLayoutToggle .bus-seat-layout .busSeat {float: none;width: max-content;height: auto;padding: 0;}#seatLayoutToggle .bus-seat-layout .seatcontainer {position: relative;z-index: 2;clear: both;width: max-content;min-width: 0;height: auto;margin: 0;overflow: visible;word-spacing: normal;}#seatLayoutToggle .bus-seat-layout .seatcontainer table {width: max-content;min-width: 400px;min-height: 140px;margin: 0;border: 0;border-collapse: separate;border-spacing: 5px 7px;table-layout: auto;}#seatLayoutToggle .bus-seat-layout .seatcontainer tr, #seatLayoutToggle .bus-seat-layout .seatcontainer td {border: 0;}#seatLayoutToggle .bus-seat-layout .seatcontainer td {min-width: 20px;height: 25px;padding: 0;text-align: center;vertical-align: middle;}#seatLayoutToggle .bus-seat-layout :is(.nseat, .snseat, .bseat, .rseat, .sseat, .srseat, .hseat, .bhseat, .rhseat, .shseat, .srhseat, .vseat, .bvseat, .rvseat, .svseat, .srvseat) {position: absolute;flex-shrink: 0;margin: 0 auto;background-image: url("../../img/transparent-bus-seatlayout.gif");background-repeat: no-repeat;}#seatLayoutToggle .bus-seat-layout :is(.nseat, .snseat, .bseat, .rseat, .sseat, .srseat) {width: 20px;height: 20px;cursor: pointer;}#seatLayoutToggle .bus-seat-layout .nseat {background-position: 0 0;}#seatLayoutToggle .bus-seat-layout .bseat {background-position: 0 -40px;cursor: default;}#seatLayoutToggle .bus-seat-layout .rseat {background-position: -20px -20px;}#seatLayoutToggle .bus-seat-layout .snseat {background-position: 0 -60px;}#seatLayoutToggle .bus-seat-layout .srseat {background-position: -20px -60px;}#seatLayoutToggle .bus-seat-layout :is(.hseat, .bhseat, .rhseat, .shseat, .srhseat) {width: 40px;height: 20px;cursor: pointer;z-index: 2;}#seatLayoutToggle .bus-seat-layout .hseat {background-position: -40px 0;}#seatLayoutToggle .bus-seat-layout .bhseat {background-position: -40px -40px;cursor: default;}#seatLayoutToggle .bus-seat-layout .rhseat {background-position: -80px -20px;}#seatLayoutToggle .bus-seat-layout .shseat {background-position: -40px -60px;}#seatLayoutToggle .bus-seat-layout .srhseat {background-position: -80px -60px;}#seatLayoutToggle .bus-seat-layout :is(.vseat, .bvseat, .rvseat, .svseat, .srvseat) {width: 20px;height: 40px;cursor: pointer;}#seatLayoutToggle .bus-seat-layout .vseat {background-position: -124px 0;}#seatLayoutToggle .bus-seat-layout .bvseat {background-position: -166px 0;cursor: default;}#seatLayoutToggle .bus-seat-layout .rvseat {background-position: -145px -40px;}#seatLayoutToggle .bus-seat-layout .svseat {background-position: -187px 0;}#seatLayoutToggle .bus-seat-layout .srvseat {background-position: -187px -40px;}#seatLayoutToggle .bus-seat-layout .busSeatlft :is(.lower, .upper) {position: relative;width: 15px;height: 60px;margin: 0 auto;cursor: default;background-image: url("../../img/transparent-bus-seatlayout.gif");background-repeat: no-repeat;}#seatLayoutToggle .bus-seat-layout .busSeatlft .lower {background-position: -38px -83px;}#seatLayoutToggle .bus-seat-layout .busSeatlft .upper {background-position: -69px -83px;}#seatLayoutToggle .bus-seat-layout img {max-width: 100%;}#seatLayoutToggle .bus-seat-legend {display: flex;flex-wrap: wrap;align-items: center;gap: 12px 20px;margin-top: 20px;padding: 15px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--white);}#seatLayoutToggle .bus-legend-item {display: inline-flex;align-items: center;gap: 8px;color: var(--text);font-size: 12px;font-weight: 500;}#seatLayoutToggle .bus-legend-seat {display: inline-block;flex: 0 0 20px;width: 20px;height: 20px;background-image: url("../../img/transparent-bus-seatlayout.gif");background-repeat: no-repeat;}#seatLayoutToggle .bus-legend-seat.wd1 {background-position: 0 0;}#seatLayoutToggle .bus-legend-seat.wd2 {background-position: -20px -20px;}#seatLayoutToggle .bus-legend-seat.wd3 {background-position: 0 -60px;}#seatLayoutToggle .bus-legend-seat.wd4 {background-position: 0 -40px;}#seatLayoutToggle .bus-booking-summary {position: sticky;top: 15px;padding: 22px;}#seatLayoutToggle .bus-summary-header {display: flex;align-items: flex-start;gap: 12px;padding-bottom: 15px;border-bottom: 1px solid var(--border);}#seatLayoutToggle .bus-summary-operator {width: 100%;min-width: 0;}#seatLayoutToggle .bus-summary-operator>span {display: inline-block;margin-bottom: 9px;color: var(--secondary-dark);font-size: 10px;font-weight: 700;letter-spacing: 1.2px;}#seatLayoutToggle .bus-summary-operator h5 {margin: 0;color: var(--heading);font-size: 15px;font-weight: 700;line-height: 1.6;overflow-wrap: anywhere;}#seatLayoutToggle .bus-summary-operator p {display: flex;align-items: center;gap: 8px;margin: 11px 0 0;color: var(--text-light);font-size: 12px;}#seatLayoutToggle .bus-summary-operator p i {color: var(--secondary-dark);}#seatLayoutToggle .bus-form-group {margin-top: 15px;}#seatLayoutToggle .bus-form-group label {display: flex;align-items: center;gap: 8px;margin-bottom: 9px;color: var(--heading);font-size: 12px;font-weight: 700;}#seatLayoutToggle .bus-form-group label i {color: var(--secondary-dark);font-size: 14px;}#seatLayoutToggle .bus-form-group .form-select {width: 100%;min-height: 46px;padding: 11px 38px 11px 13px;border: 1px solid var(--border);border-radius: var(--radius-sm);background-color: var(--white);color: var(--text);font-size: 12px;box-shadow: none;transition: var(--transition);}#seatLayoutToggle .bus-form-group .form-select:focus {border-color: var(--primary-light);box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-light) 10%, transparent);}#seatLayoutToggle .bus-form-error {display: block;margin-top: 5px;color: var(--danger);font-size: 11px;}#seatLayoutToggle .bus-selected-seats {margin-top: 15px;padding: 15px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--bg);}#seatLayoutToggle .bus-selected-seats-heading {display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 8px;margin-bottom: 12px;}#seatLayoutToggle .bus-selected-seats-heading>span:first-child {display: inline-flex;align-items: center;gap: 8px;color: var(--heading);font-size: 12px;font-weight: 700;}#seatLayoutToggle .bus-selected-seats-heading>span:first-child i {color: var(--secondary-dark);}#seatLayoutToggle .bus-selection-badge {display: inline-flex;align-items: center;padding: 5px 9px;border-radius: var(--radius-pill);background: var(--bg-light);color: var(--text-light);font-size: 10px;font-weight: 600;}#seatLayoutToggle .bus-selected-seat-value {min-height: 34px;color: var(--heading);font-size: 13px;font-weight: 600;overflow-wrap: anywhere;}#seatLayoutToggle .bus-price-summary {display: flex;align-items: center;justify-content: space-between;gap: 12px;margin-top: 15px;padding: 15px 0;border-top: 1px dashed var(--border);border-bottom: 1px dashed var(--border);}#seatLayoutToggle .bus-price-label {display: block;color: var(--heading);font-size: 13px;font-weight: 700;}#seatLayoutToggle .bus-price-summary small {display: block;margin-top: 5px;color: var(--text-light);font-size: 10px;line-height: 1.5;}#seatLayoutToggle .bus-total-price {display: flex;align-items: baseline;gap: 3px;color: var(--primary);white-space: nowrap;}#seatLayoutToggle .bus-total-price span {font-size: 15px;font-weight: 600;}#seatLayoutToggle .bus-total-price strong {font-size: 25px;font-weight: 700;}#seatLayoutToggle .bus-continue-btn {display: flex;align-items: center;justify-content: center;gap: 12px;width: 100%;min-height: 49px;margin-top: 15px;padding: 13px 18px;border: 1px solid var(--primary);border-radius: var(--radius-sm);background: var(--primary);color: var(--white);font-size: 13px;font-weight: 700;cursor: pointer;transition: var(--transition);}#seatLayoutToggle .bus-continue-btn i {font-size: 14px;transition: var(--transition);}#seatLayoutToggle .bus-continue-btn:hover {border-color: var(--primary-dark);background: var(--primary-dark);box-shadow: var(--shadow-sm);}#seatLayoutToggle .bus-continue-btn:hover i {transform: translateX(4px);}#seatLayoutToggle .bus-continue-btn:focus-visible {outline: 3px solid var(--secondary-light);outline-offset: 3px;}#seatLayoutToggle .bus-secure-note {display: flex;align-items: flex-start;justify-content: center;gap: 7px;margin: 14px 0 0;color: var(--text-light);font-size: 10px;line-height: 1.6;text-align: center;}#seatLayoutToggle .bus-secure-note i {flex-shrink: 0;margin-top: 2px;color: var(--success);}#seatLayoutToggle .bus-points-row {width: 100%;}#seatLayoutToggle .bus-points-card {overflow: hidden;}#seatLayoutToggle .bus-points-heading {display: flex;align-items: center;gap: 14px;padding: 22px;border-bottom: 1px solid var(--border);background: var(--white);}#seatLayoutToggle .bus-points-icon {display: flex;flex: 0 0 44px;align-items: center;justify-content: center;width: 44px;height: 44px;border-radius: var(--radius);background: var(--bg-light);color: var(--primary);font-size: 18px;}#seatLayoutToggle .bus-points-heading h6 {margin: 0;color: var(--heading);font-size: 16px;font-weight: 700;}#seatLayoutToggle .bus-points-heading p {margin: 5px 0 0;color: var(--text-light);font-size: 12px;line-height: 1.5;}#seatLayoutToggle .bus-points-card .table-responsive {width: 100%;}#seatLayoutToggle .bus-points-table {width: 100%;min-width: 650px;margin: 0;border-collapse: separate;border-spacing: 0;color: var(--text);font-size: 12px;}#seatLayoutToggle .bus-points-table thead th {padding: 15px 18px;border-bottom: 1px solid var(--border);background: var(--bg);color: var(--heading);font-size: 11px;font-weight: 700;white-space: nowrap;}#seatLayoutToggle .bus-points-table tbody td {padding: 17px 18px;border-bottom: 1px solid var(--border);background: var(--white);color: var(--text);line-height: 1.6;vertical-align: middle;}#seatLayoutToggle .bus-points-table tbody tr:last-child td {border-bottom: 0;}#seatLayoutToggle .bus-points-table tbody tr:hover td {background: var(--bg);}#seatLayoutToggle .bus-point-time {display: inline-flex;align-items: center;justify-content: center;padding: 6px 10px;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--bg);color: var(--primary);font-size: 11px;font-weight: 700;white-space: nowrap;}@media (max-width: 991.98px) {#seatLayoutToggle .modal-dialog {max-width: 760px;}#seatLayoutToggle .bus-main {padding: 15px;}#seatLayoutToggle .bus-seat-main-row {--bs-gutter-y: 20px;}#seatLayoutToggle .bus-booking-summary {position: static;}#seatLayoutToggle .bus-seat-panel {padding: 18px;}#seatLayoutToggle .bus-modal-header {padding: 15px;}}@media (max-width: 575.98px) {#seatLayoutToggle .modal-dialog {width: calc(100% - 16px);height: 94dvh;max-height: 94dvh;margin: 3dvh auto;}#seatLayoutToggle .bus-custom-modal {border-radius: var(--radius);}#seatLayoutToggle .bus-modal-header {gap: 12px;padding: 15px;}#seatLayoutToggle .modal-title {font-size: 16px;}#seatLayoutToggle .bus-modal-subtitle {font-size: 12px;}#seatLayoutToggle .bus-main {padding: 10px 12px 14px;}#seatLayoutToggle .bus-booking-tabs {gap: 5px;margin-bottom: 16px;padding: 4px;}#seatLayoutToggle .bus-booking-tabs .nav-item {flex: 1 1 100%;}#seatLayoutToggle .bus-booking-tabs .nav-link {justify-content: flex-start;min-height: 42px;padding: 10px 12px;font-size: 12px;}#seatLayoutToggle .bus-seat-panel, #seatLayoutToggle .bus-booking-summary {padding: 15px;}#seatLayoutToggle .bus-panel-heading h6 {font-size: 15px;}#seatLayoutToggle .bus-seat-layout-wrapper {padding: 8px;}#seatLayoutToggle .bus-seat-legend {gap: 12px;padding: 12px;}#seatLayoutToggle .bus-legend-item {font-size: 11px;}#seatLayoutToggle .bus-points-heading {padding: 16px;}#seatLayoutToggle .bus-points-table {min-width: 600px;}#seatLayoutToggle .bus-total-price strong {font-size: 22px;}}@media (prefers-reduced-motion: reduce) {#seatLayoutToggle *, #seatLayoutToggle *::before, #seatLayoutToggle *::after {scroll-behavior: auto !important;animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;}}.bus-checkout-page {padding: 40px 0 70px;color: var(--text);}.bus-checkout-page h4, .bus-checkout-page h5, .bus-checkout-page h6 {margin: 0;color: var(--heading);}.bus-checkout-page p {margin: 0;}.bus-checkout-page .checkout-page-heading {display: flex;align-items: center;gap: 16px;margin-bottom: 28px;}.bus-checkout-page .checkout-heading-icon {width: 56px;height: 56px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;font-size: 22px;color: var(--white);background: linear-gradient(135deg, var(--primary), var(--primary-light));border-radius: var(--radius);box-shadow: var(--shadow);}.bus-checkout-page .checkout-page-heading h4 {font-size: 22px;font-weight: 700;line-height: 1.2;}.bus-checkout-page .checkout-page-heading p {margin-top: 4px;font-size: 14px;color: var(--text-light);}.bus-checkout-page .bus-checkout-card {background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-lg);box-shadow: var(--shadow-sm);margin-bottom: 24px;overflow: hidden;transition: var(--transition);}.bus-checkout-page .bus-checkout-card:hover {box-shadow: var(--shadow);}.bus-checkout-page .bus-checkout-card .card-header {padding: 18px 24px;background: var(--surface);border-bottom: 1px solid var(--border);}.bus-checkout-page .bus-checkout-card .card-body {padding: 24px;}.bus-checkout-page .checkout-section-title {display: flex;align-items: center;gap: 14px;}.bus-checkout-page .checkout-section-icon {width: 42px;height: 42px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;font-size: 16px;color: var(--primary);background: color-mix(in srgb, var(--primary) 15%, transparent);border-radius: var(--radius-sm);}.bus-checkout-page .checkout-section-title h6 {font-size: 17px;font-weight: 700;}.bus-checkout-page .checkout-section-title p {margin-top: 2px;font-size: 13px;color: var(--text-light);}.bus-checkout-page .journey-summary-card {border-top: 4px solid var(--secondary);}.bus-checkout-page .journey-route {display: flex;align-items: center;justify-content: space-between;gap: 24px;}.bus-checkout-page .journey-location {flex: 1;min-width: 0;}.bus-checkout-page .journey-destination {text-align: right;}.bus-checkout-page .journey-label {display: inline-block;padding: 3px 10px;margin-bottom: 8px;font-size: 11px;font-weight: 700;letter-spacing: 1px;color: var(--primary);background: var(--bg-light);border-radius: var(--radius-pill);}.bus-checkout-page .journey-location h5 {font-size: 18px;font-weight: 700;line-height: 1.3;word-break: break-word;}.bus-checkout-page .journey-date {display: flex;align-items: center;gap: 8px;margin-top: 8px;font-size: 14px;color: var(--text-light);}.bus-checkout-page .journey-destination .journey-date {justify-content: flex-end;}.bus-checkout-page .journey-time {margin-top: 6px;font-size: 18px;font-weight: 700;line-height: 1;color: var(--heading);}.bus-checkout-page .journey-duration {flex: 0 0 auto;display: flex;align-items: center;gap: 10px;min-width: 190px;font-size: 13px;font-weight: 600;color: var(--text-light);}.bus-checkout-page .journey-duration i {width: 38px;height: 38px;display: flex;align-items: center;justify-content: center;font-size: 15px;color: var(--white);background: var(--primary);border-radius: 50%;box-shadow: 0 0 0 5px color-mix(in srgb, var(--primary) 20%, transparent);}.bus-checkout-page .journey-duration-line {flex: 1;height: 0;border-top: 2px dashed var(--border);}.bus-checkout-page .journey-divider {height: 1px;margin: 24px 0;background: var(--border);}.bus-checkout-page .journey-meta-grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: 16px;}.bus-checkout-page .journey-meta-item {display: flex;align-items: flex-start;gap: 12px;padding: 14px;background: var(--bg);border: 1px solid var(--border);border-radius: var(--radius);}.bus-checkout-page .journey-meta-icon {width: 38px;height: 38px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;font-size: 14px;color: var(--white);background: var(--primary);border-radius: var(--radius-sm);}.bus-checkout-page .journey-meta-label {display: block;margin-bottom: 2px;font-size: 12px;color: var(--text-muted);text-transform: uppercase;letter-spacing: 0.5px;}.bus-checkout-page .journey-meta-item strong {display: block;font-size: 13px;font-weight: 600;color: var(--heading);word-break: break-word;}.bus-checkout-page .journey-meta-item small {display: block;margin-top: 2px;font-size: 12px;color: var(--text-light);}.bus-checkout-page .passenger-list {display: flex;flex-direction: column;gap: 20px;}.bus-checkout-page .passenger-card {border: 1px solid var(--border);border-radius: var(--radius);background: var(--surface);overflow: hidden;transition: var(--transition);}.bus-checkout-page .passenger-card:hover, .bus-checkout-page .passenger-card:focus-within {border-color: var(--secondary);box-shadow: var(--shadow-sm);}.bus-checkout-page .passenger-card-header {display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 14px 20px;background: var(--bg);border-bottom: 1px solid var(--border);}.bus-checkout-page .passenger-heading {display: flex;align-items: center;gap: 12px;}.bus-checkout-page .passenger-number {width: 36px;height: 36px;display: flex;align-items: center;justify-content: center;font-size: 15px;font-weight: 700;color: var(--white);background: var(--primary);border: 1px solid var(--border);border-radius: 50%;}.bus-checkout-page .passenger-heading h6 {font-size: 15px;font-weight: 700;}.bus-checkout-page .passenger-heading div>span {font-size: 12px;color: var(--text-light);}.bus-checkout-page .passenger-seat {display: inline-flex;align-items: center;gap: 8px;padding: 6px 14px;font-size: 13px;font-weight: 600;color: var(--white);background: var(--primary);border-radius: var(--radius-pill);}.bus-checkout-page .passenger-card-body {padding: 20px;}.bus-checkout-page .form-label {display: flex;align-items: center;gap: 8px;margin-bottom: 6px;font-size: 13px;font-weight: 600;color: var(--heading);}.bus-checkout-page .optional-label {padding: 1px 8px;font-size: 10px;font-weight: 600;color: var(--text-light);background: var(--bg-light);border-radius: var(--radius-pill);text-transform: uppercase;letter-spacing: 0.4px;}.bus-checkout-page .form-control, .bus-checkout-page .form-select {height: 48px;padding: 0 14px;font-size: 14px;color: var(--heading);background-color: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-sm);box-shadow: none;transition: var(--transition);}.bus-checkout-page .form-control::placeholder {color: var(--text-muted);}.bus-checkout-page .form-control:hover, .bus-checkout-page .form-select:hover {border-color: var(--text-muted);}.bus-checkout-page .form-control:focus, .bus-checkout-page .form-select:focus {border-color: var(--secondary);box-shadow: 0 0 0 4px color-mix(in srgb, var(--secondary) 18%, transparent);outline: none;}.bus-checkout-page .has-error .form-control, .bus-checkout-page .has-error .form-select, .bus-checkout-page .form-control.error, .bus-checkout-page .form-select.error {border-color: var(--danger);background-color: color-mix(in srgb, var(--danger) 3%, transparent);}.bus-checkout-page .has-error .form-control:focus, .bus-checkout-page .has-error .form-select:focus {box-shadow: 0 0 0 4px color-mix(in srgb, var(--danger) 15%, transparent);}.bus-checkout-page .help-block.form-error, .bus-checkout-page .form-error, .bus-checkout-page span.error {display: block;margin-top: 5px;font-size: 12px;font-weight: 500;color: var(--danger);}.bus-checkout-page .has-success .form-control, .bus-checkout-page .form-control.valid {border-color: var(--success);}.bus-checkout-page .gst-card-header {display: flex;align-items: center;justify-content: space-between;gap: 16px;flex-wrap: wrap;}.bus-checkout-page .gst-toggle-btn {display: inline-flex;align-items: center;gap: 8px;padding: 9px 18px;font-size: 13px;font-weight: 600;color: var(--primary);background: transparent;border: 1.5px solid var(--primary);border-radius: var(--radius-pill);transition: var(--transition);}.bus-checkout-page .gst-toggle-btn:hover, .bus-checkout-page .gst-toggle-btn[aria-expanded="true"] {color: var(--white);background: var(--secondary);border-color: var(--secondary);}.bus-checkout-page .gst-toggle-btn i {transition: var(--transition);}.bus-checkout-page #collapse-bus-gst .card-body {border-top: 1px solid var(--border);background: var(--bg);}.bus-checkout-page .checkout-payment-action {display: flex;align-items: center;justify-content: space-between;gap: 20px;padding: 20px 24px;background: var(--surface);border: 1px solid var(--border);border-radius: var(--radius-lg);box-shadow: var(--shadow-sm);}.bus-checkout-page .checkout-secure-note {display: flex;align-items: center;gap: 10px;font-size: 14px;color: var(--text);}.bus-checkout-page .checkout-secure-note i {width: 36px;height: 36px;display: flex;align-items: center;justify-content: center;font-size: 14px;color: var(--success);background: color-mix(in srgb, var(--success) 10%, transparent);border-radius: 50%;}.bus-checkout-page .payment-btn {display: inline-flex;align-items: center;justify-content: center;gap: 10px;min-width: 220px;height: 48px;padding: 0 32px;font-size: 14px;font-weight: 700;color: var(--white);background: linear-gradient(135deg, var(--primary), var(--primary-light));border: none;border-radius: var(--radius-pill);box-shadow: 0 8px 20px color-mix(in srgb, var(--primary) 35%, transparent);cursor: pointer;transition: var(--transition);}.bus-checkout-page .payment-btn:hover {background: linear-gradient(135deg, var(--primary-dark), var(--primary));transform: translateY(-2px);box-shadow: 0 12px 26px color-mix(in srgb, var(--primary) 45%, transparent);}.bus-checkout-page .payment-btn:active {transform: translateY(0);}.bus-checkout-page .payment-btn i {transition: var(--transition);}.bus-checkout-page .payment-btn:hover i {transform: translateX(4px);}.bus-checkout-page .bus-checkout-sidebar {position: sticky;top: 120px;}.bus-checkout-page .fare-summary-card .card-header {background: linear-gradient(135deg, var(--primary), var(--primary-light));border-bottom: none;}.bus-checkout-page .fare-summary-card .checkout-section-title h6 {color: var(--white);}.bus-checkout-page .fare-summary-card .checkout-section-title p {color: color-mix(in srgb, var(--white) 70%, transparent);}.bus-checkout-page .fare-summary-card .checkout-section-icon {color: var(--primary);background: var(--bg-light);}.bus-checkout-page .fare-summary-row {display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 10px 0;font-size: 14px;border-bottom: 1px dashed var(--border);}.bus-checkout-page .fare-summary-row:last-child {border-bottom: none;}.bus-checkout-page .fare-summary-row span {color: var(--text);}.bus-checkout-page .fare-summary-row strong {font-weight: 600;color: var(--heading);white-space: nowrap;}.bus-checkout-page .fare-total-footer {padding: 18px 24px;background: color-mix(in srgb, var(--primary) 12%, transparent);border-top: 2px solid var(--primary);}.bus-checkout-page .fare-total-row {display: flex;align-items: center;justify-content: space-between;gap: 12px;}.bus-checkout-page .fare-total-label {display: block;font-size: 15px;font-weight: 700;color: var(--heading);}.bus-checkout-page .fare-total-row small {font-size: 11px;color: var(--text-light);}.bus-checkout-page .fare-total-row>strong {font-size: 22px;font-weight: 800;color: var(--primary);white-space: nowrap;}.bus-checkout-page .promo-input-group, .bus-checkout-page .promo-list .d-flex {display: flex;gap: 8px;}.bus-checkout-page .promo-input-group .form-control, .bus-checkout-page .promo-list .d-flex .form-control {flex: 1;min-width: 0;height: 44px;}.bus-checkout-page .promo-input-group .btn, .bus-checkout-page .promo-list .d-flex .btn {height: 44px;padding: 0 18px;font-size: 13px;font-weight: 700;color: var(--white);background: var(--secondary);border: none;border-radius: var(--radius-sm);transition: var(--transition);}.bus-checkout-page .promo-input-group .btn:hover, .bus-checkout-page .promo-list .d-flex .btn:hover {background: var(--secondary-dark);}.bus-checkout-page .promo-list .d-flex .removeCode {color: var(--white);background: var(--danger);}.bus-checkout-page .promo-list .d-flex .removeCode:hover {background: color-mix(in srgb, var(--danger) 85%, var(--primary-dark));}.bus-checkout-page .promo-input-group .btn:disabled, .bus-checkout-page .promo-list .d-flex .btn:disabled {opacity: 0.6;cursor: not-allowed;}.bus-checkout-page #couponMessage {display: block;margin-top: 8px;font-size: 12px;font-weight: 500;}.bus-checkout-page #couponMessage.text-success {color: var(--success) !important;}.bus-checkout-page #couponMessage.text-danger {color: var(--danger) !important;}.bus-checkout-page .available-coupons {margin-top: 20px;padding-top: 18px;border-top: 1px solid var(--border);}.bus-checkout-page .available-coupons h6 {margin-bottom: 12px;font-size: 14px;font-weight: 700;}.bus-checkout-page .promo-option {display: flex;align-items: center;gap: 12px;padding: 12px;margin-bottom: 10px;background: var(--bg);border: 1px dashed var(--border);border-radius: var(--radius);cursor: pointer;transition: var(--transition);}.bus-checkout-page .promo-option:last-child {margin-bottom: 0;}.bus-checkout-page .promo-option:hover, .bus-checkout-page .promo-option:has(input:checked) {background: color-mix(in srgb, var(--secondary) 10%, transparent);border-color: var(--secondary);}.bus-checkout-page .promo-option-icon {width: 34px;height: 34px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;font-size: 13px;color: var(--primary);background: var(--secondary-light);border-radius: var(--radius-sm);}.bus-checkout-page .promo-option-content {flex: 1;min-width: 0;}.bus-checkout-page .promo-option-content strong {display: block;font-size: 13px;font-weight: 700;letter-spacing: 0.5px;color: var(--heading);}.bus-checkout-page .promo-option-content small {display: block;margin-top: 2px;font-size: 12px;line-height: 1.4;color: var(--text-light);}.bus-checkout-page .promo-option .form-check-input {flex-shrink: 0;margin: 0;cursor: pointer;}.bus-checkout-page .promo-option .form-check-input:checked {background-color: var(--primary);border-color: var(--primary);}.bus-checkout-page .checkout-assurance {display: flex;align-items: flex-start;gap: 14px;padding: 18px;background: color-mix(in srgb, var(--accent) 7%, transparent);border: 1px solid color-mix(in srgb, var(--accent) 20%, transparent);border-radius: var(--radius-lg);}.bus-checkout-page .checkout-assurance-icon {width: 40px;height: 40px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;font-size: 16px;color: var(--white);background: var(--accent);border-radius: 50%;}.bus-checkout-page .checkout-assurance strong {display: block;font-size: 14px;color: var(--heading);}.bus-checkout-page .checkout-assurance p {margin-top: 4px;font-size: 12px;line-height: 1.5;color: var(--text-light);}#error-modal .error-modal-content {border: none;border-radius: var(--radius-lg);box-shadow: var(--shadow-lg);overflow: hidden;}#error-modal .error-modal-content .modal-header {padding: 16px 24px;background: var(--danger);border-bottom: none;}#error-modal .error-modal-content .modal-title {font-size: 17px;font-weight: 700;color: var(--white);}#error-modal .error-modal-content .btn-close {filter: invert(1) grayscale(1) brightness(2);opacity: 0.9;}#error-modal .error-modal-content .modal-body {padding: 28px 24px;}#error-modal .error-modal-message {display: flex;align-items: center;gap: 14px;}#error-modal .error-modal-icon {width: 46px;height: 46px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;font-size: 20px;color: var(--danger);background: color-mix(in srgb, var(--danger) 10%, transparent);border-radius: 50%;}#error-modal .error-modal-message strong {font-size: 15px;font-weight: 600;line-height: 1.5;color: var(--heading);}@media (max-width: 991.98px) {.bus-checkout-page .bus-checkout-sidebar {position: static;}.bus-checkout-page .journey-meta-grid {grid-template-columns: repeat(3, 1fr);}}@media (max-width: 767.98px) {.bus-checkout-page {padding: 24px 0 50px;}.bus-checkout-page .journey-meta-grid {grid-template-columns: 1fr;}.bus-checkout-page .checkout-heading-icon{display: none;}.bus-checkout-page .checkout-page-heading h4 {font-size: 18px;}.bus-checkout-page .bus-checkout-card .card-header, .bus-checkout-page .bus-checkout-card .card-body {padding: 16px;}.bus-checkout-page .journey-route {flex-direction: column;align-items: stretch;gap: 16px;}.bus-checkout-page .journey-destination {text-align: left;}.bus-checkout-page .journey-destination .journey-date {justify-content: flex-start;}.bus-checkout-page .journey-duration {min-width: 0;justify-content: center;}.bus-checkout-page .journey-meta-grid {grid-template-columns: 1fr;}.bus-checkout-page .passenger-card-header {flex-wrap: wrap;padding: 12px 16px;}.bus-checkout-page .passenger-card-body {padding: 16px;}.bus-checkout-page .checkout-payment-action {flex-direction: column;align-items: stretch;padding: 16px;text-align: center;}.bus-checkout-page .checkout-secure-note {justify-content: center;}.bus-checkout-page .payment-btn {width: 100%;min-width: 0;}}