.catalog-sort-select{padding:8px 16px;font-size:.9rem;background:var(--background-card);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--border-radius);cursor:pointer;min-width:180px;outline:none;transition:all .3s ease}.catalog-sort-select:hover{border-color:var(--text-accent);box-shadow:0 2px 8px rgba(0,0,0,.2)}.catalog-sort-select:focus{border-color:var(--text-accent);box-shadow:0 0 0 2px rgba(0,191,255,.2)}.catalog-sort-select option{background:var(--background-card);color:var(--text-primary);padding:8px}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:30px;margin-bottom:40px}.catalog-grid-item{display:flex;flex-direction:column}.vehicle-count{background:linear-gradient(135deg,rgba(76,161,175,.1),rgba(196,224,229,.1));border:1px solid rgba(76,161,175,.2);border-radius:12px;padding:16px 20px;margin-bottom:24px;color:#cccccc}.vehicle-count strong{color:#4ca1af;font-weight:700}.catalog-loading{text-align:center;padding:60px 20px;color:#cccccc}.catalog-loading .spinner-border{width:3rem;height:3rem;border-color:#4ca1af transparent #4ca1af #4ca1af}.catalog-error{background:linear-gradient(135deg,rgba(220,53,69,.1),rgba(220,53,69,.05));border:1px solid rgba(220,53,69,.3);border-radius:16px;padding:32px;text-align:center;color:#dc3545}.location-search-modal{position:fixed!important;top:0!important;left:0!important;width:100%!important;height:100%!important;background:rgba(0,0,0,.75)!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;z-index:9999!important;backdrop-filter:blur(4px)!important;padding-top:40px!important;overflow-y:auto!important}.location-search-modal .modal-dialog{max-width:800px;width:90%;margin:0;position:relative}.location-search-modal .modal-content{background:linear-gradient(135deg,#1e1e1e,#2a2a2a);border:none;border-radius:16px;color:#ffffff;box-shadow:0 20px 40px rgba(0,0,0,.4);position:relative;overflow:visible;min-height:400px}.location-modal-header{padding:24px 32px 16px;border-bottom:1px solid #333333;background:transparent}.modal-header-content{display:flex;align-items:center;gap:16px;flex:1}.modal-icon-container{width:48px;height:48px;background:linear-gradient(135deg,#4ca1af,#2c5f6f);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#ffffff;box-shadow:0 4px 12px rgba(76,161,175,.3)}.modal-title-section{flex:1}.modal-title{font-size:24px;font-weight:600;color:#ffffff;margin:0;line-height:1.2}.modal-subtitle{font-size:14px;color:#b0b0b0;margin-top:4px}.location-modal-body{padding:24px 32px;overflow:visible;position:relative;z-index:1;min-height:300px}.location-modal-footer{padding:16px 32px 24px;border-top:1px solid #333333;background:transparent}.modal-footer-content{display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px}.selection-summary{flex:1}.selected-locations{display:flex;flex-direction:column;gap:4px}.selected-pickup,.selected-return{font-size:14px;color:#b0b0b0}.selected-pickup strong,.selected-return strong{color:#ffffff;margin-right:8px}.modal-actions{display:flex;gap:12px;align-items:center}@media (max-width:768px){.location-search-modal .modal-dialog{margin:1rem;max-width:none}.location-modal-header{padding:20px 24px 16px}.modal-title{font-size:20px}.location-modal-body{padding:20px 24px;max-height:50vh}.location-modal-footer{padding:16px 24px 20px}.modal-footer-content{flex-direction:column;align-items:stretch;gap:16px}.modal-actions{justify-content:center}}@media (max-width:480px){.location-search-modal .modal-dialog{margin:.5rem}.location-modal-header{padding:16px 20px 12px}.modal-icon-container{width:40px;height:40px;font-size:18px}.modal-title{font-size:18px}.location-modal-body{padding:16px 20px}.location-modal-footer{padding:12px 20px 16px}}.catalog-error h4{color:#dc3545;margin-bottom:16px}.catalog-error .btn{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:8px;padding:12px 24px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease}.catalog-error .btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(220,53,69,.3)}.no-vehicles-found{background:linear-gradient(135deg,rgba(76,161,175,.1),rgba(196,224,229,.05));border:1px solid rgba(76,161,175,.2);border-radius:16px;padding:40px;text-align:center;color:#4ca1af}.no-vehicles-found h4{color:#4ca1af;margin-bottom:16px;font-weight:700}.no-vehicles-found p{color:#cccccc;margin-bottom:24px;line-height:1.6}.no-vehicles-found .btn{background:linear-gradient(135deg,#4ca1af,#5bc6d5);border:none;border-radius:8px;padding:12px 24px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease}.no-vehicles-found .btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(76,161,175,.3)}@media (max-width:992px){.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:30px}.vehicle-count{padding:14px 18px;font-size:.95rem;margin-bottom:20px}}@media (max-width:768px){.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;padding:0 10px}.vehicle-count{padding:12px 16px;font-size:.9rem;margin-bottom:18px}.mobile-filter-button{width:100%;margin-bottom:15px;padding:12px 20px;font-size:16px;border-radius:10px}.mobile-sort-container{margin-bottom:20px;padding:0 10px}.mobile-sort-container select{width:100%;padding:12px 16px;font-size:16px;border-radius:8px}}@media (max-width:576px){.catalog-grid{grid-template-columns:1fr;gap:16px;padding:0 5px}.vehicle-count{padding:10px 14px;font-size:.85rem;margin-bottom:16px;text-align:center}.catalog-loading{padding:40px 16px}.catalog-loading .spinner-border{width:2.5rem;height:2.5rem}.catalog-error,.no-vehicles-found{padding:20px 16px;margin:0 5px}.catalog-error h4,.no-vehicles-found h4{font-size:1.2rem}.catalog-error p,.no-vehicles-found p{font-size:.9rem}}@media (max-width:480px){.catalog-grid{gap:14px;padding:0}.vehicle-count{padding:8px 12px;font-size:.8rem;margin-bottom:14px}.catalog-loading{padding:30px 12px}.catalog-error,.no-vehicles-found{padding:16px 12px;margin:0}}@media (max-width:360px){.catalog-grid{gap:12px}.vehicle-count{padding:6px 10px;font-size:.75rem}.catalog-loading{padding:25px 10px}.catalog-loading .spinner-border{width:2rem;height:2rem}}