html{scroll-behavior:smooth}.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.panel-backdrop{opacity:0;transition:opacity .3s ease;pointer-events:none}.panel-backdrop.active{opacity:1;pointer-events:auto}@media (max-width:1023px){.booking-panel{transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);border-radius:1.5rem 1.5rem 0 0;max-height:92vh}.booking-panel.active{transform:translateY(0)}.booking-panel.half{transform:translateY(50%)}}@media (min-width:1024px){.booking-panel{transform:translateX(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);border-radius:0;box-shadow:-8px 0 32px rgba(0,0,0,.15)}.booking-panel.active{transform:translateX(0)}}.drag-handle{width:36px;height:5px;background:#d1d5db;border-radius:3px;margin:8px auto 16px}.vehicle-card{transition:transform .2s ease,box-shadow .2s ease}.vehicle-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px rgba(0,0,0,.15)}.vehicle-card:active{transform:scale(.98)}.vehicle-card.active,.vehicle-card.selected{ring:2px;ring-color:#E63312;box-shadow:0 0 0 3px rgba(230,51,18,.3)}@media (hover:none){.vehicle-card:active{transform:scale(.97);opacity:.9}}.ribbon-badge{position:absolute;top:10px;left:10px;padding:4px 10px;background:linear-gradient(135deg,#16a34a 0,#15803d 100%);color:#fff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.15);z-index:10}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.spec-box{background:#f9fafb}.spec-box-value{font-size:14px;font-weight:700;color:#1b2b3a;line-height:1.2}.spec-box-unit{font-size:11px;font-weight:500;color:#6b7280}.spec-box-label{font-size:9px;color:#9ca3af;text-transform:uppercase;letter-spacing:.3px;margin-top:1px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.price-badge{position:absolute;bottom:8px;right:8px;background:rgba(255,255,255,.95);backdrop-filter:blur(4px);padding:4px 10px;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:10}.price-badge-prefix{font-size:10px;color:#6b7280}.price-badge-value{font-size:14px;font-weight:700;color:#e63312;margin-left:2px}#vehicle-cards-container>*{flex:1 1 calc(25% - 1.5rem);min-width:240px}#vehicle-cards-container{transition:opacity .3s ease,max-height .4s ease}#vehicle-cards-container.hidden-for-detail{opacity:0;max-height:0;overflow:hidden;pointer-events:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.vehicle-detail-section{max-height:0;overflow:hidden;transition:max-height .5s ease-out,opacity .3s ease;opacity:0}.vehicle-detail-section.open{max-height:none;opacity:1}.detail-back-link{display:inline-flex;align-items:center;gap:.5rem;color:#6b7280;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;margin-bottom:1rem;text-decoration:none}.detail-back-link:hover{color:#111827;transform:translateX(-4px)}.specs-table{display:grid;gap:0}.specs-table .spec-row{display:flex;justify-content:space-between;padding:.625rem 0;border-bottom:1px solid #e5e7eb}.specs-table .spec-row:last-child{border-bottom:none}.specs-table .spec-label{color:#6b7280;font-size:.875rem}.specs-table .spec-value{font-weight:600;color:#111827}.lang-de,.lang-en{color:#9ca3af}.lang-de:hover,.lang-en:hover{color:#374151}html:not([lang=en]) .lang-de,html[lang=de] .lang-de{color:#dc2626;font-weight:600}html[lang=en] .lang-en{color:#dc2626;font-weight:600}html[lang=en] .lang-de{color:#9ca3af;font-weight:500}#calendar-days button{transition:all .15s ease}#timeslots-container button{transition:all .15s ease}#timeslots-container button:hover{border-color:#e63312;background-color:rgba(230,51,18,.05)}#panel-content::-webkit-scrollbar{width:6px}#panel-content::-webkit-scrollbar-track{background:0 0}#panel-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}#panel-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.animate-pulse{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}