.alshulah-rating-box{
    margin:28px 0 0;
    padding:22px;
    border:1px solid rgba(15,103,194,.12);
    border-radius:22px;
    background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(241,249,252,.96));
    box-shadow:0 14px 34px rgba(15,39,80,.07);
}
.alshulah-rating-summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px;
}
.alshulah-rating-summary .rating-label{
    display:block;
    color:#5d6f86;
    font-size:14px;
    margin-bottom:4px;
}
.alshulah-rating-summary .rating-average{
    font-size:34px;
    color:var(--blue,#0b68c2);
    line-height:1;
}
.alshulah-rating-summary .rating-out{
    color:#718399;
    font-weight:700;
}
.rating-stars-wrap{
    text-align:left;
}
.alshulah-rating-stars{
    display:block;
    color:#d6dee8;
    letter-spacing:1px;
    font-size:22px;
    line-height:1.2;
}
.alshulah-rating-stars .is-filled{
    color:#f6b73c;
}
.rating-count{
    display:block;
    margin-top:5px;
    color:#718399;
}
.rating-choice{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:12px;
}
.rating-choice label{
    cursor:pointer;
}
.rating-choice input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.rating-choice span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:58px;
    padding:9px 12px;
    border-radius:999px;
    border:1px solid rgba(15,103,194,.16);
    background:#fff;
    color:#516579;
    font-weight:800;
    transition:.18s ease;
}
.rating-choice input:checked + span,
.rating-choice label:hover span{
    background:var(--blue,#0b68c2);
    color:#fff;
    border-color:var(--blue,#0b68c2);
}
.rating-choice input:disabled + span{
    cursor:not-allowed;
    opacity:.78;
}
.rating-submit{
    border:0;
    border-radius:999px;
    padding:10px 18px;
    background:var(--sky,#16a3b8);
    color:#fff;
    font-weight:800;
    cursor:pointer;
}
.rating-submit:disabled{
    cursor:not-allowed;
    opacity:.78;
}
.rating-message{
    margin:10px 0 0;
    color:#516579;
    font-size:14px;
}
@media (max-width:640px){
    .alshulah-rating-summary{align-items:flex-start;flex-direction:column;}
    .rating-stars-wrap{text-align:right;}
    .rating-choice span{min-width:52px;padding:8px 10px;}
}
