.transportation-booking-page{max-width:900px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}.step-header{text-align:center;margin-bottom:30px}.step-header h2{font-size:28px;font-weight:600;color:#1a1a1a;margin-bottom:10px}.step-description{color:#666;font-size:16px;margin:0}.trip-details-form{background:#fff;border-radius:12px;box-shadow:0 2px 20px rgb(0 0 0 / .08);padding:30px}.form-row{margin-bottom:20px}.form-row-half{display:flex;gap:20px}.form-row-half .form-group{flex:1}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:500;color:#333;margin-bottom:8px;font-size:14px;display:flex;align-items:center;gap:8px}.field-icon{font-size:16px}.form-group input,.form-group select{padding:12px 15px;border:1px solid #ddd;border-radius:8px;font-size:15px;transition:border-color 0.2s,box-shadow 0.2s;width:100%;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:#446084;box-shadow:0 0 0 3px rgb(68 96 132 / .1)}.form-group input::placeholder{color:#999}.form-actions{margin-top:30px;display:flex;justify-content:center;gap:15px}.btn-search-vehicles{background:#446084;color:#fff;border:none;padding:15px 40px;font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background 0.2s,transform 0.2s}.btn-search-vehicles:hover{background:#354a66;transform:translateY(-1px)}.btn-back{background:#f5f5f5;color:#333;border:1px solid #ddd;padding:12px 25px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background 0.2s}.btn-back:hover{background:#eee}.btn-arrow{font-size:18px}.trip-summary{background:#f8f9fa;border-radius:10px;padding:20px;margin-top:20px;text-align:left;display:flex;flex-wrap:wrap;gap:15px}.trip-summary-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#555}.trip-summary-item strong{color:#1a1a1a}.trip-summary-item .icon{font-size:16px}.vehicles-loading{text-align:center;padding:60px 20px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #446084;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.vehicles-loading p{color:#666;font-size:16px}.vehicles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px}.vehicle-card{background:#fff;border-radius:12px;box-shadow:0 2px 15px rgb(0 0 0 / .08);overflow:hidden;transition:transform 0.2s,box-shadow 0.2s;cursor:pointer}.vehicle-card:hover{transform:translateY(-3px);box-shadow:0 5px 25px rgb(0 0 0 / .12)}.vehicle-card.selected{border:2px solid #446084}.vehicle-image{width:100%;height:180px;object-fit:cover;background:#f5f5f5}.vehicle-info{padding:20px}.vehicle-name{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 10px}.vehicle-specs{display:flex;gap:15px;margin-bottom:15px}.vehicle-spec{display:flex;align-items:center;gap:5px;font-size:13px;color:#666}.vehicle-spec .icon{font-size:14px}.vehicle-description{font-size:13px;color:#777;margin-bottom:15px;line-height:1.4}.vehicle-price{font-size:24px;font-weight:700;color:#446084;margin-bottom:15px}.btn-select-vehicle{width:100%;background:#446084;color:#fff;border:none;padding:12px 20px;font-size:15px;font-weight:600;border-radius:8px;cursor:pointer;transition:background 0.2s}.btn-select-vehicle:hover{background:#354a66}.btn-select-vehicle.loading{opacity:.7;cursor:wait}.no-vehicles-message{text-align:center;padding:40px;background:#f8f9fa;border-radius:12px;color:#666}.no-vehicles-message .icon{font-size:48px;margin-bottom:15px}.no-vehicles-message h3{margin:0 0 10px;color:#333}@media (max-width:768px){.transportation-booking-page{padding:15px}.trip-details-form{padding:20px}.form-row-half{flex-direction:column;gap:15px}.step-header h2{font-size:24px}.vehicles-grid{grid-template-columns:1fr}.trip-summary{flex-direction:column}.btn-search-vehicles{width:100%;justify-content:center}}.booking-step{animation:fadeIn 0.3s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}