.product-review-container{margin:0 auto;max-width:900px}.product-detail-ratings,.product-review-form{border-radius:8px}.review-slide-indicator{margin-bottom:10px}.review-slide-indicator .indicator{background-color:#dee2e6;border-radius:50%;height:10px;transition:all .3s ease;width:10px}.review-slide-indicator .indicator.active{background:linear-gradient(45deg,#f5d486,#e55e0e);transform:scale(1.2)}.review-suggester .btn{font-size:.9rem;margin-bottom:.5rem;margin-right:.5rem;text-align:left;white-space:normal}.level-1-suggestions .btn{font-weight:600}.level-2-suggestions,.level-3-suggestions,.level-4-suggestions,.level-5-suggestions{border-left:3px solid #efefef;padding-left:1rem}.star-container{align-items:center;cursor:pointer;display:flex;height:31px;justify-content:center;position:relative;width:31px}.star-container img{height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.star-container:focus,.star-container:hover{transform:scale(1.1);transition:transform .2s}.product-image{border:1px solid #eee;border-radius:6px;margin-left:20px}.loading-spinner{align-items:center;display:flex;justify-content:center;min-height:300px}.is-invalid~.invalid-feedback{display:block}@media (max-width:768px){.product-detail-ratings,.product-review-form{min-height:auto;padding:1rem}.review-suggester .btn{font-size:.8rem}.star-container{height:30px;width:30px}}.simplified-progress-container{background-color:#fff;border-top:1px solid #efefef;bottom:0;box-shadow:0 -2px 10px #0000001a;left:0;padding:15px 20px;position:fixed;width:100%;z-index:1000}.simplified-progress-content{margin:0 auto;max-width:800px;position:relative}.progress-header{align-items:center;display:flex;margin-bottom:12px}.emoji-container{align-items:center;background-color:#fff9eb;border-radius:12px;display:flex;flex-shrink:0;height:56px;justify-content:center;margin-right:16px;position:relative;width:56px}.emoji-icon{font-size:28px}.progress-title{flex-grow:1}.progress-title h3{color:#333;font-size:18px;font-weight:600;margin:0 0 4px}.progress-title p{color:#666;font-size:14px;margin:0}.progress-bar-container{background-color:#f5f5f5;border-radius:30px;height:24px;margin-bottom:10px;overflow:hidden;position:relative}.progress-bar-fill{background:linear-gradient(226deg,#1e3d87 25%,#3a69b7);border-radius:30px;height:100%;position:relative;transition:width .5s ease}.progress-bar-fill:after{background-color:#1e3d87;content:"";right:0;top:0}.progress-points-indicator{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:500;height:100%;justify-content:space-between;left:0;padding:0 16px;pointer-events:none;position:absolute;top:0;width:100%}.points-left{color:#e55e0e}.next-step-hint{color:#555;font-size:14px;margin-top:12px}.next-step-hint p{margin:0}.completed-message{color:#28a745;font-weight:600}@keyframes emojiPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.emoji-icon.animate{animation:emojiPulse .5s ease}.power-up-animation{background:#ffffffe6;border-radius:20px;box-shadow:0 2px 8px #0003;color:#28a745;font-size:16px;font-weight:700;min-width:90px;padding:4px 10px;pointer-events:none;position:absolute;text-align:center;text-shadow:0 0 5px hsla(0,0%,100%,.7);white-space:nowrap;width:auto;z-index:100}.power-up-animation,.power-up-animation.position-0{animation:powerUpAnimation 2s ease-out forwards;left:50%;top:-30px;transform:translate(-50%)}.power-up-animation.position-1{animation:powerUpAnimationRight 2s ease-out forwards;left:70%;top:-20px;transform:translate(-50%)}.power-up-animation.position-2{animation:powerUpAnimationLeft 2s ease-out forwards;left:30%;top:-20px;transform:translate(-50%)}@keyframes powerUpAnimationRight{0%{opacity:0;transform:translate(-50%) rotate(5deg)}20%{opacity:1;transform:translate(-40%,-20px) rotate(5deg)}80%{opacity:1;transform:translate(-30%,-40px) rotate(5deg)}to{opacity:0;transform:translate(-20%,-60px) rotate(5deg)}}@keyframes powerUpAnimationLeft{0%{opacity:0;transform:translate(-50%) rotate(-5deg)}20%{opacity:1;transform:translate(-60%,-20px) rotate(-5deg)}80%{opacity:1;transform:translate(-70%,-40px) rotate(-5deg)}to{opacity:0;transform:translate(-80%,-60px) rotate(-5deg)}}@keyframes powerUpAnimation{0%{opacity:0;transform:translate(-50%)}20%{opacity:1;transform:translate(-50%,-20px)}80%{opacity:1;transform:translate(-50%,-40px)}to{opacity:0;transform:translate(-50%,-60px)}}.product-review-container{padding-bottom:140px}@media (max-width:576px){.simplified-progress-container{padding:12px}.simplified-progress-content{display:flex;flex-direction:column}.progress-title,.progress-title h3,.progress-title p{display:none}.mobile-progress-row{align-items:center;display:flex;flex-direction:row;gap:8px}.emoji-container{border-radius:8px;height:40px;margin-right:0;min-width:32px;width:40px}.emoji-icon{font-size:23px}.progress-bar-container{flex-grow:1;height:32px;margin-bottom:0}.points-earned,.points-left,.progress-points-indicator{font-size:11px}.next-step-hint{font-size:12px;margin-top:4px}.power-up-animation{font-size:14px}}.points-earned-container,.points-left-container{position:relative;transition:color .3s ease,text-shadow .3s ease;z-index:2}.points-earned,.points-left{position:relative}.points-earned-container.difficult-readability,.points-left-container.difficult-readability{background-color:#0006;border-radius:10px;padding:2px 6px}@media (max-width:576px){.points-earned-container,.points-left-container{font-weight:600}}.simplified-progress-container.celebrating{box-shadow:0 -2px 20px #ffb100;transition:all .3s ease}.confetti-container{height:calc(100% + 100px);left:0;overflow:hidden;pointer-events:none;position:absolute;top:-100px;width:100%;z-index:10}.confetti{animation:confettiFall 3s ease-out var(--delay) forwards;background-color:var(--bg-color);height:20px;left:var(--left);opacity:0;position:absolute;top:-10px;transform:rotate(var(--rotation));width:10px}@keyframes confettiFall{0%{opacity:1;top:-10px;transform:translateY(0) rotate(var(--rotation))}to{opacity:0;top:100%;transform:translateY(0) rotate(calc(var(--rotation) + 1turn))}}.completion-banner{align-items:center;animation:bannerAppear .5s ease-out forwards;background-color:#fff9eb;border:2px solid #e55e0e;border-radius:12px;box-shadow:0 4px 12px #ffb100 (142,68,173,.15);display:flex;margin-bottom:15px;opacity:0;padding:12px;transform:translateY(-10px)}@keyframes bannerAppear{to{opacity:1;transform:translateY(0)}}.completion-trophy{animation:trophyBounce 1s cubic-bezier(.28,.84,.42,1) forwards;font-size:40px;margin-right:15px;transform:scale(0)}@keyframes trophyBounce{0%{transform:scale(0)}60%{transform:scale(1.2)}80%{transform:scale(.9)}to{transform:scale(1)}}.completion-message{flex:1}.completion-title{color:#e55e0e;font-size:16px;font-weight:700;margin-bottom:4px}.completion-product{color:#666;font-size:14px;margin-bottom:4px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.completion-points{animation:pointsPulse 1s ease infinite;color:#28a745;font-size:15px;font-weight:700}@keyframes pointsPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.progress-bar-fill.pulse{animation:progressPulse 1s ease-in-out}@keyframes progressPulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}@media (max-width:576px){.completion-banner{padding:8px}.completion-trophy{font-size:30px;margin-right:10px}.completion-title{font-size:14px}.completion-product{font-size:12px;max-width:180px}.completion-points{font-size:13px}}
