.xwander-reviews{display:flex;flex-direction:column;gap:1.5rem}
.xwander-review-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.xwander-review-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.75rem}
.xwander-review-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}
.xwander-review-meta{display:flex;flex-direction:column;gap:2px}
.xwander-review-meta > *{line-height:1}
.xwander-review-rating{margin-bottom:4px}
a.xwander-review-author{font-weight:600;color:#333;font-size:1rem;text-decoration:none}
a.xwander-review-author:hover{text-decoration:underline}
.xwander-review-rating .star{color:#fbbc05;font-size:1rem}
.xwander-review-date{color:#666;font-size:0.85rem}
a.xwander-review-text{display:block;color:#3c3c3c;line-height:1.6;margin-bottom:1rem;font-size:0.95rem;text-decoration:none}
a.xwander-review-text:hover{color:#333}
.xwander-review-photos{display:flex;gap:0.5rem;flex-wrap:wrap}
.xwander-review-photos > a{width:calc(33.333% - 0.35rem);display:block;-webkit-tap-highlight-color:transparent}
.xwander-review-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}
@media(max-width:600px){.xwander-review-photos > a{width:calc(50% - 0.25rem)}}

/* Carousel mode */
.xwander-review-photos.is-carousel{
    flex-wrap:nowrap;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding-bottom:4px;
}
.xwander-review-photos.is-carousel::-webkit-scrollbar{display:none}
.xwander-review-photos.is-carousel{cursor:grab}
.xwander-review-photos.is-carousel.grabbing{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.xwander-review-photos.is-carousel > a{
    flex:0 0 calc(33.333% - 0.35rem);
    scroll-snap-align:start;
}
@media(max-width:768px){
    .xwander-review-photos.is-carousel > a{flex:0 0 calc(50% - 0.25rem)}
}
@media(max-width:480px){
    .xwander-review-photos.is-carousel > a{flex:0 0 calc(80% - 0.25rem)}
}

/* Dots */
.xwander-slider-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin-top:10px;
}
.xwander-slider-dots .dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background-color:#ddd;
    cursor:pointer;
    transition:background-color 0.2s ease;
}
.xwander-slider-dots .dot.active{background-color:#0082cb}

/* Multi-column layouts */
.xwander-reviews.columns-2,.xwander-reviews.columns-3{flex-direction:row;flex-wrap:wrap}
.xwander-reviews.columns-2 .xwander-review-card{width:calc(50% - 0.75rem)}
.xwander-reviews.columns-3 .xwander-review-card{width:calc(33.333% - 1rem)}

/* Scaled down elements for multi-column */
.xwander-reviews.columns-2 .xwander-review-card{padding:1rem}
.xwander-reviews.columns-2 .xwander-review-avatar{width:40px;height:40px}
.xwander-reviews.columns-2 .xwander-review-author{font-size:0.9rem}
.xwander-reviews.columns-2 .xwander-review-rating .star{font-size:0.9rem}
.xwander-reviews.columns-2 .xwander-review-date{font-size:0.8rem}
.xwander-reviews.columns-2 .xwander-review-text{font-size:0.875rem;line-height:1.5}
.xwander-reviews.columns-2 .xwander-review-photos > a{width:calc(50% - 0.25rem)}
.xwander-reviews.columns-2 .xwander-review-photos.is-carousel > a{flex:0 0 calc(50% - 0.25rem)}

.xwander-reviews.columns-3 .xwander-review-card{padding:0.875rem}
.xwander-reviews.columns-3 .xwander-review-avatar{width:36px;height:36px}
.xwander-reviews.columns-3 .xwander-review-author{font-size:0.85rem}
.xwander-reviews.columns-3 .xwander-review-rating .star{font-size:0.85rem}
.xwander-reviews.columns-3 .xwander-review-date{font-size:0.75rem}
.xwander-reviews.columns-3 .xwander-review-text{font-size:0.8rem;line-height:1.45}
.xwander-reviews.columns-3 .xwander-review-photos > a{width:calc(50% - 0.2rem)}
.xwander-reviews.columns-3 .xwander-review-photos.is-carousel > a{flex:0 0 calc(50% - 0.2rem)}
.xwander-reviews.columns-3 .xwander-slider-dots .dot{width:6px;height:6px}

/* Responsive: collapse to fewer columns */
@media(max-width:900px){
    .xwander-reviews.columns-3 .xwander-review-card{width:calc(50% - 0.75rem)}
}
@media(max-width:600px){
    .xwander-reviews.columns-2 .xwander-review-card,
    .xwander-reviews.columns-3 .xwander-review-card{width:100%}
}
