* { margin:0; padding:0; box-sizing:border-box; }
body.listpage-body { font-family: Arial, sans-serif; background:#f9f9f9; color:#333; overflow-x:hidden; }
.list-header { display:flex; align-items:center; padding:15px; }
.list-header img { width:24px; height:24px; margin-right:10px; cursor:pointer; }
.list-header span { font-size:16px; }
.applied-filters { margin:20px 20px; }
.filter-tag { display:inline-block; border: solid 1px #ff6600; background:#fff; color:#333; padding:5px 10px; margin:0 5px 5px 0; border-radius:3px; font-size:14px; cursor:pointer; }
.list-container { max-width:100%; }
.list-container h2 { margin-bottom:10px; font-size:18px; font-weight:normal; }
.activity-card { margin-bottom:7px; padding:10px; }
.activity-card a { display:flex; justify-content:space-between; align-items:center; background:#fff; border-radius:8px; box-shadow:0 4px 11px rgba(0,0,0,0.1); padding:15px; text-decoration:none; color:inherit; width:100%; }
.activity-card a img { width:220px; height:120px; object-fit:cover; border-radius:8px; margin-right:15px; }
.activity-content { flex:1; margin-right:15px; }
.activity-title-list { font-size:20px; margin:0 0 5px 0; font-weight:bold; }
.activity-content p { margin:3px 0; font-size:16px; color:#555; }
.activity-price-list { display:flex; flex-direction:column; align-items:flex-end; justify-content:flex-start; }
.activity-price-list button { background:#ff6600; color:#fff; border:none; padding:10px 20px; border-radius:5px; font-size:14px; cursor:pointer; transition:box-shadow 0.3s; }
.activity-price-list button:hover { box-shadow:0 4px 8px rgba(255,69,0,0.5), 0 4px 8px rgba(255,165,0,0.5); }
.activity-price-list .price { font-size:18px; font-weight:bold; margin-top:5px; padding-left:10px; padding-right:10px; }
.activity-price-list .offers { margin-top:10px; font-size:14px; color:#555; }
.activity-price-list .free-cancellation { display:flex; align-items:center; margin-top:5px; font-size:14px; color:#28a745; }
.activity-price-list .free-cancellation .check-icon { width:15px; height:15px; background:#28a745; color:#fff; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:12px; margin-right:5px; padding:8px; }
.load-more { display:flex; justify-content:center; margin:20px 0px; }
.load-more button { background:#ff6600; color:#fff; border:none; padding:10px 20px; border-radius:5px; font-size:16px; cursor:pointer; }
.load-more button:hover { background:#cc5200; }
.filter-overlay { position:fixed; top:-30px; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); display:none; z-index:999; }
.filter-overlay.active { display:block; }
.filter-overlay-h3 {
font-size: 1.17em;
font-weight: bold;
margin-top: 1em;
margin-bottom: 1em;
font-family: inherit;
line-height: 1.2;
color: inherit;
}
.filter-overlay-h4 {
font-size: 1em;
font-weight: bold;
margin-top: 1.33em;
margin-bottom: 1.33em;
font-family: inherit;
line-height: 1.2;
color: inherit;
}
.filter-sidebar { top:-30px; left:0; width:300px; height:100%; background:#fff; padding:20px; box-sizing:border-box; overflow-y:auto; }
.filter-sidebar::-webkit-scrollbar { width:8px; }
.filter-sidebar::-webkit-scrollbar-track { background:#fff; }
.filter-sidebar::-webkit-scrollbar-thumb { background-color:#ff6600; border-radius:4px; }
.filter-sidebar { scrollbar-width:thin; scrollbar-color:#ff6600 #fff; }
.close-sidebar { background:#ff6600; color:#fff; font-size:30px; cursor:pointer; float:right; width:30px; height:30px; display:flex; align-items:center; justify-content:center;  transition:box-shadow 0.3s; }
.close-sidebar:hover { box-shadow:0 0 8px 2px rgba(255,102,0,0.6); background:#ff6600; }
.filter-content { margin-top:50px; }
.filter-content h3 { margin-bottom:10px; font-size:16px; font-weight:bold; }
.filter-group { margin-bottom:20px; border-bottom:1px solid #ccc; padding-bottom:20px; position:relative; }
.filter-group h4 { margin:0 0 10px 0; font-size:15px; font-weight:bold; }
.filter-group label { display:block; margin-bottom:8px; font-size:14px; cursor:pointer; }
.filter-group input[type="checkbox"] {
appearance:none; width:20px; height:20px; margin-right:8px; cursor:pointer;
border:2px solid #ff6600; border-radius:4px; position:relative; top:4px;
}
.filter-group input[type="checkbox"]:checked { background:#ff6600; }
.filter-group label:nth-of-type(n+6) { display:none; }
.filter-group.show-all label { display:block; }
.show-more-link { display:inline-block; margin-top:5px; color:#ff6600; text-decoration:underline; font-size:14px; cursor:pointer; }
.progress-bar-container {
text-align: center;
margin: 10px auto;
width: 30%; }
.progress-counter {
display: block;
font-size: 14px;
margin-bottom: 5px;
font-weight: bold;
color: #ff6600;
}
.progress-bar-background {
background: #ccc;
height: 4px;
border-radius: 2px;
width: 100%;
position: relative;
}
.progress-bar-fill {
background: #ff6600;
height: 100%;
border-radius: 2px;
width: 0%; }
@media (max-width:768px){
.filter-sidebar { width:100%; }
.activity-card a { flex-direction:column; align-items:flex-start; padding:15px; max-width:100%; }
.activity-card a img { width:100%; height:auto; margin-bottom:10px; margin-right:0; }
.activity-content { margin-right:0; margin-bottom:10px; }
.activity-price-list { align-items:flex-start; margin-top:10px; width:100%; }
.activity-price-list button { width:100%; }
.progress-bar-container { width: 60%; }
}