/* --- LAYOUT CONTROLLERS --- */
.bike-inventory-container .rental-controls { margin-bottom: 30px; }
.bike-inventory-container .filter-row { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; }
.bike-inventory-container .layout-switcher { display: flex; gap: 10px; }
.bike-inventory-container .view-btn { background: #fff; border: 1px solid #ddd; padding: 8px; cursor: pointer; border-radius: 4px; display: flex; align-items: center; }
.bike-inventory-container .view-btn.active { background: #000; color: #fff; border-color: #000; }

/* --- GRID VIEW (2 Spalten standardmäßig) --- */
.bike-inventory-grid.view-grid-active {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important; /* 2 Spalten */
    gap: 20px !important;
}

/* --- LIST VIEW --- */
.bike-inventory-grid.view-list-active {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
}

.bike-inventory-grid.view-list-active .bike-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 25px !important;
    padding: 15px !important;
}

.bike-inventory-grid.view-list-active .bike-img {
    width: 200px !important; /* Kleineres Bild in Liste */
    flex-shrink: 0 !important;
}

.bike-inventory-grid.view-list-active .bike-info {
    flex-grow: 1 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important; /* Info rechts aufteilen */
    align-items: center !important;
}

/* --- RESPONSIVE FIX --- */
@media (max-width: 768px) {
    .bike-inventory-grid.view-grid-active { grid-template-columns: 1fr !important; }
    .bike-inventory-grid.view-list-active .bike-item { flex-direction: column !important; }
}

/* --- STYLE BASICS --- */
.bike-inventory-container .bike-item { border: 1px solid #eee; border-radius: 10px; background: #fff; padding: 20px; transition: 0.3s; }
.bike-inventory-container .bike-img { position: relative; overflow: hidden; border-radius: 8px; }
.bike-inventory-container .bike-img img { width: 100%; transition: 0.5s; }
.bike-inventory-container .bike-item:hover .bike-img img { transform: scale(1.08); }

.bike-inventory-container .availability-badge { font-size: 10px; font-weight: bold; padding: 4px 10px; border-radius: 20px; color: #fff; margin-bottom: 8px; display: inline-block; }
.bike-inventory-container .status-available { background: #2ecc71; }
.bike-inventory-container .status-booked { background: #e74c3c; }

.bike-inventory-container .ajax_add_to_cart_rental { background: #1b85be; color: #fff; border: none; padding: 12px; border-radius: 4px; font-weight: bold; cursor: pointer; width: 100%; }
.bike-inventory-container .rental-dates { display: flex; gap: 5px; margin-bottom: 10px; }
.bike-inventory-container .rental-dates input { width: 50%; padding: 8px; border: 1px solid #ddd; border-radius: 4px; font-size: 12px; }