/* PrefabPoint Google Reviews - Frontend */
.ppgr-badge, .ppgr-reviews { font-family: inherit; }

.ppgr-badge{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    padding:.35rem .6rem;
    border:1px solid rgba(0,0,0,.10);
    border-radius:.6rem;
    background:#fff;
    white-space:nowrap;
    line-height:1.1;
    text-decoration:none !important;
}
.ppgr-badge__label{ font-weight:600; }
.ppgr-badge__rating{ font-weight:600; }
.ppgr-badge__count{ opacity:.75; font-size:.92em; }

.ppgr-badge--wide{ padding:.45rem .8rem; gap:.6rem; }

.ppgr-stars{
    position:relative;
    display:inline-block;
    line-height:1;
    font-size:1em;
    letter-spacing:.06em;
}
.ppgr-stars__bg{ opacity:.25; }
.ppgr-stars__fg{
    position:absolute;
    left:0; top:0;
    overflow:hidden;
    white-space:nowrap;
}

.ppgr-is-stale{ opacity:.92; }

.ppgr-reviews{
    border:1px solid rgba(0,0,0,.08);
    border-radius:.9rem;
    padding:1rem;
    background:#fff;
}
.ppgr-reviews__header{ margin:0 0 .75rem 0; }
.ppgr-reviews__heading{ margin:0; font-size:1.1em; }

.ppgr-reviews__list{
    display:grid;
    gap:.75rem;
}
.ppgr-reviews--grid .ppgr-reviews__list{
    grid-template-columns: repeat( auto-fit, minmax(220px, 1fr) );
}
.ppgr-reviews--list .ppgr-reviews__list{
    grid-template-columns: 1fr;
}

.ppgr-card{
    border:1px solid rgba(0,0,0,.08);
    border-radius:.75rem;
    padding:.85rem;
    background:#fff;
}
.ppgr-card__top{
    display:flex;
    align-items:flex-start;
    gap:.6rem;
    justify-content:space-between;
}
.ppgr-card__avatar{
    flex:0 0 auto;
    border-radius:999px;
}
.ppgr-card__meta{
    flex:1 1 auto;
    min-width:0;
}
.ppgr-card__author{
    font-weight:600;
    text-decoration:none;
}
.ppgr-card__time{
    opacity:.75;
    font-size:.9em;
}
.ppgr-card__rating{
    flex:0 0 auto;
    margin-left:.5rem;
}
.ppgr-card__text{
    margin-top:.6rem;
    white-space:pre-wrap;
}
.ppgr-card__attr{
    margin-top:.6rem;
    opacity:.6;
    font-size:.8em;
}

.ppgr-reviews__footer{
    margin-top:.9rem;
    display:flex;
    justify-content:flex-end;
}
.ppgr-cta{
    display:inline-block;
    padding:.45rem .75rem;
    border:1px solid rgba(0,0,0,.15);
    border-radius:.6rem;
    text-decoration:none !important;
}

/* Carousel */
.ppgr-carousel{
    position:relative;
}
.ppgr-carousel__track{
    display:flex;
    gap:.75rem;
    overflow:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    padding:.25rem .25rem .5rem .25rem;
}
.ppgr-card--slide{
    flex:0 0 auto;
    width:min(360px, 85%);
    scroll-snap-align:start;
}
.ppgr-carousel__btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:34px;
    height:34px;
    border-radius:999px;
    border:1px solid rgba(0,0,0,.18);
    background:#fff;
    line-height:32px;
    text-align:center;
    cursor:pointer;
}
.ppgr-carousel__btn--prev{ left:-10px; }
.ppgr-carousel__btn--next{ right:-10px; }

@media (max-width: 480px){
    .ppgr-carousel__btn{ display:none; }
}
