.social-proof{position:fixed;left:0;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:47;width:var(--proof-width,170px);display:grid;gap:8px;pointer-events:none}
.social-proof[hidden],.social-proof [hidden]{display:none!important}
.sp-card{box-sizing:border-box;width:100%;border:1px solid rgba(226,199,108,.4);border-left:0;border-radius:0 12px 12px 0;padding:9px 12px;background:rgba(19,19,25,.97);color:#fff;box-shadow:0 6px 20px #0005;font-family:Arial,sans-serif;font-size:11px;line-height:1.3;text-align:left;pointer-events:auto}
.sp-review{cursor:pointer;display:flex;align-items:center;gap:8px;min-height:44px;background:#e2c76c;color:#17171b}
.sp-review:focus-visible{outline:2px solid white;outline-offset:3px}
.sp-brand{flex:0 0 22px;width:22px;height:22px;display:grid;place-items:center;background:#fff;border-radius:50%;font:bold 16px Arial;color:#4285f4}
.sp-brand[data-platform=planity]{background:#17171b;color:white;font-size:13px}
.sp-review-copy{min-width:0;display:grid;gap:1px}.sp-review-copy strong{font-size:12px}.sp-review-copy small{font-size:10px;opacity:.8}
.sp-rating{display:flex;flex-wrap:wrap;align-items:center;gap:2px 5px;margin:2px 0}.sp-rating-stars{display:inline-flex;gap:1px;line-height:1}.sp-rating-star{display:block;width:13px;height:13px;flex:none}.sp-rating-number{font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}
.sp-booking{display:grid;gap:2px}.sp-booking strong{color:#e2c76c;font-size:11px;font-weight:600}.sp-booking time{color:#c9c5bc;font-size:10px}
.sp-service{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px}
.sp-booking.is-fading-out{animation:sp-booking-out .25s ease-in both}.sp-booking.is-fading-in{animation:sp-booking-in .3s ease-out both}
@keyframes sp-booking-out{from{opacity:1}to{opacity:0}}@keyframes sp-booking-in{from{opacity:0}to{opacity:1}}
.sp-review.is-exiting{animation:sp-exit .28s ease-in both;pointer-events:none}.sp-review.is-entering{animation:sp-enter .32s ease-out both;pointer-events:none}
@keyframes sp-exit{from{transform:translateX(0)}to{transform:translateX(calc(-100% - 24px))}}@keyframes sp-enter{from{transform:translateX(calc(-100% - 24px))}to{transform:translateX(0)}}
html.nav-locked .social-proof{visibility:hidden}
.sp-modal{box-sizing:border-box;width:min(680px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #5c5137;border-radius:16px;background:#131319;color:#eee9de;box-shadow:0 20px 70px #0009;overflow:auto;font-family:Arial,sans-serif}
.sp-modal::backdrop{background:#060609c9;backdrop-filter:blur(4px)}
.sp-modal-head{position:sticky;top:0;z-index:1;background:#131319;padding:20px 20px 14px;border-bottom:1px solid #333;display:flex;gap:14px;align-items:flex-start;justify-content:space-between}
.sp-modal-head h2{font-family:Arial,sans-serif;font-size:20px;line-height:1.25;letter-spacing:0;margin:0;color:#e2c76c}.sp-modal-head p{font-size:12px;line-height:1.5;margin:5px 0 0;color:#b9b4aa}
.sp-close{flex:none;width:40px;height:40px;border:1px solid #555;border-radius:50%;background:#24242e;color:white;font:24px Arial;cursor:pointer}
.sp-review-list{padding:0 20px;margin:0;list-style:none}.sp-review-item{padding:19px 0;border-bottom:1px solid #333}.sp-review-item:last-child{border:0}
.sp-item-head{display:flex;gap:10px;align-items:center;justify-content:space-between}.sp-item-head strong{font-size:14px;color:#f5f0e5}.sp-stars{color:#e2c76c;font-size:14px;white-space:nowrap}
.sp-item-meta{display:flex;flex-wrap:wrap;gap:5px 10px;color:#aaa69d;font-size:11px;margin:6px 0 10px}.sp-review-text{font-family:Arial,sans-serif;font-size:14px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere;margin:0;color:#eee9de}
.sp-original{display:inline-block;color:#e2c76c;font-size:11px;margin-top:10px;text-decoration:underline}.sp-salon-links{display:flex;flex-wrap:wrap;gap:10px;padding:15px 20px 22px;border-top:1px solid #333}.sp-salon-links a{color:#e2c76c;font-size:12px;text-decoration:underline}
@media(max-width:360px){.sp-review{gap:6px;padding-left:8px;padding-right:8px}.sp-brand{width:18px;height:18px;flex-basis:18px}.sp-review-copy strong{font-size:11px}.sp-rating-star{width:12px;height:12px}}
@media(min-width:1001px){.social-proof{gap:10px}.sp-card{padding:12px 16px}.sp-review-copy strong{font-size:14px}.sp-rating-star{width:16px;height:16px}.sp-rating-number,.sp-review-copy small{font-size:11px}.sp-booking strong,.sp-service{font-size:12px}.sp-booking time{font-size:11px}}
@media(prefers-reduced-motion:reduce){.sp-review.is-entering,.sp-review.is-exiting,.sp-booking.is-fading-out,.sp-booking.is-fading-in{animation:none}}
