.phuyu-gr-wrap{
    --phuyu-star:#fbbc04;
    --phuyu-card:#fff;
    --phuyu-text:#1f2937;
    --phuyu-border:#e5e7eb;
    --phuyu-radius:16px;
    width:100%;
    box-sizing:border-box;
    color:var(--phuyu-text);
    font-family:inherit;
}
.phuyu-gr-wrap *{box-sizing:border-box}
.phuyu-gr-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:22px;
}
.phuyu-gr-header-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.phuyu-gr-title{
    font-size:clamp(22px,3vw,30px);
    font-weight:700;
    line-height:1.2;
    color:var(--phuyu-text);
    margin-bottom:7px;
}
.phuyu-gr-summary{
    display:flex;
    align-items:center;
    gap:9px;
    flex-wrap:wrap;
}
.phuyu-gr-summary strong{font-size:18px;color:var(--phuyu-text)}
.phuyu-gr-count{font-size:14px;opacity:.72}
.phuyu-gr-google-attribution{
    font-family:Roboto,Arial,Sans-Serif;
    font-style:normal;
    font-weight:400;
    font-size:14px;
    letter-spacing:normal;
    white-space:nowrap;
    color:#5e5e5e;
}
.phuyu-gr-google-attribution-card{
    font-size:12px;
    margin-left:auto;
}
.phuyu-gr-google-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:10px 15px;
    border:1px solid var(--phuyu-border);
    border-radius:10px;
    text-decoration:none!important;
    color:var(--phuyu-text)!important;
    background:#fff;
    font-weight:600;
    transition:.2s ease;
}
.phuyu-gr-google-link:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.07)}
.phuyu-gr-stars{display:inline-flex;gap:2px;line-height:1;font-size:19px}
.phuyu-gr-stars span{color:#d1d5db}
.phuyu-gr-stars .is-filled{color:var(--phuyu-star)}
.phuyu-gr-grid{
    display:grid;
    grid-template-columns:repeat(var(--phuyu-cols-desktop),minmax(0,1fr));
    gap:18px;
}
.phuyu-gr-card{
    background:var(--phuyu-card);
    border:1px solid var(--phuyu-border);
    border-radius:var(--phuyu-radius);
    padding:20px;
    min-width:0;
    color:var(--phuyu-text);
    box-shadow:0 6px 22px rgba(0,0,0,.045);
}
.phuyu-gr-card-top{display:flex;align-items:center;gap:12px}
.phuyu-gr-author-avatar-link{display:block;flex:0 0 44px;text-decoration:none!important}
.phuyu-gr-avatar{
    width:44px;
    height:44px;
    flex:0 0 44px;
    border-radius:50%;
    object-fit:cover;
    display:block;
}
.phuyu-gr-avatar-fallback{
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f3f4f6;
    color:#374151;
    font-weight:700;
}
.phuyu-gr-person{flex:1;min-width:0}
.phuyu-gr-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--phuyu-text)}
.phuyu-gr-name a{color:inherit!important;text-decoration:none!important}
.phuyu-gr-name a:hover{text-decoration:underline!important}
.phuyu-gr-date{font-size:12px;margin-top:3px;opacity:.65}
.phuyu-gr-card-stars{margin:14px 0 11px}
.phuyu-gr-comment{font-size:15px;line-height:1.65;color:var(--phuyu-text);opacity:.9}
.phuyu-gr-comment p{margin:0}
.phuyu-gr-source-link{
    display:inline-block;
    margin-top:14px;
    font-size:13px;
    font-weight:600;
    text-decoration:none!important;
    color:var(--phuyu-text)!important;
    border-bottom:1px solid currentColor;
}
.phuyu-gr-disclosure{
    margin-top:14px;
    font-size:12px;
    line-height:1.5;
    color:#5e5e5e;
}
.phuyu-gr-empty{
    padding:20px;
    border:1px dashed var(--phuyu-border);
    border-radius:var(--phuyu-radius);
    color:var(--phuyu-text);
    opacity:.7;
}
.phuyu-gr-google-attribution-bottom{margin-top:10px}
.phuyu-gr-admin-error{
    padding:12px 14px;
    border:1px solid #d63638;
    background:#fff;
    color:#b32d2e;
    border-radius:8px;
}

/* Carrusel */
.phuyu-gr-carousel{position:relative;padding:0 46px}
.phuyu-gr-track{
    display:flex;
    gap:18px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    -ms-overflow-style:none;
}
.phuyu-gr-track::-webkit-scrollbar{display:none}
.phuyu-gr-layout-carousel .phuyu-gr-card{
    flex:0 0 calc((100% - (18px * (var(--phuyu-cols-desktop) - 1))) / var(--phuyu-cols-desktop));
    scroll-snap-align:start;
}
.phuyu-gr-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:38px;
    height:38px;
    border-radius:50%;
    border:1px solid var(--phuyu-border);
    background:#fff;
    color:#222;
    cursor:pointer;
    z-index:2;
    font-size:28px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 14px rgba(0,0,0,.08);
}
.phuyu-gr-nav:hover{transform:translateY(-50%) scale(1.04)}
.phuyu-gr-prev{left:0}.phuyu-gr-next{right:0}

@media(max-width:900px){
    .phuyu-gr-grid{grid-template-columns:repeat(var(--phuyu-cols-tablet),minmax(0,1fr))}
    .phuyu-gr-layout-carousel .phuyu-gr-card{
        flex-basis:calc((100% - (18px * (var(--phuyu-cols-tablet) - 1))) / var(--phuyu-cols-tablet));
    }
}
@media(max-width:640px){
    .phuyu-gr-header{align-items:flex-start;flex-direction:column}
    .phuyu-gr-header-actions{justify-content:flex-start}
    .phuyu-gr-grid{grid-template-columns:1fr}
    .phuyu-gr-carousel{padding:0}
    .phuyu-gr-layout-carousel .phuyu-gr-card{flex-basis:90%}
    .phuyu-gr-nav{display:none}
    .phuyu-gr-google-attribution-card{font-size:11px}
}
