.mm-personalizer .mm-personalizer__progress{display:block;position:relative;overflow:hidden;margin-top:20px;padding:22px;border:1px solid #e8d9cd;border-radius:20px;background:linear-gradient(135deg,#fff8ef,#faeee9 55%,#edf4eb);box-shadow:0 10px 30px rgb(49 29 44 / .06)}
.mm-progress__top{display:flex;align-items:center;gap:12px}
.mm-progress__top>div{flex:1;min-width:0}
.mm-progress__top strong{display:block;font-size:.95rem;line-height:1.4}
.mm-personalizer .mm-progress__stage{display:block;font-size:.8rem;line-height:1.5;margin-top:5px;min-height:2.9em;color:#665b61}
.mm-progress__art{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:15px;color:#a24f35;background:#fff8;font-size:30px;animation:mm-progress-float 2.8s ease-in-out infinite}
.mm-progress__top .mm-progress__percent{font-size:1.5rem;font-variant-numeric:tabular-nums;min-width:3.2em;text-align:right}
.mm-progress__track{height:10px;overflow:hidden;background:rgb(49 29 44 / .09);border-radius:20px;margin:20px 0 12px}
.mm-progress__track>span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d98569,#b7614b,#e9b18c);position:relative;transition:width .4s linear}
.mm-progress__track>span::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent,#fff9,transparent);transform:translateX(-100%);animation:mm-progress-shine 1.8s infinite}
.mm-progress__dots{display:flex;justify-content:center;gap:5px;height:10px}
.mm-progress__dots i{width:5px;height:5px;border-radius:50%;background:#af6953;animation:mm-progress-dot 1.4s infinite}
.mm-progress__dots i:nth-child(2){animation-delay:.2s}.mm-progress__dots i:nth-child(3){animation-delay:.4s}
.mm-personalizer .mm-progress__note{font-size:.75rem;line-height:1.5;color:#665b61;margin:8px 0 0}
.mm-personalizer__progress.is-complete{background:#edf4eb;border-color:#bad2ba}
.is-complete .mm-progress__track>span{background:#53865c}.is-complete .mm-progress__dots{display:none}
.is-complete .mm-progress__art,.is-complete .mm-progress__track>span::after{animation:none}
@keyframes mm-progress-float{50%{transform:rotate(18deg) scale(1.12)}}
@keyframes mm-progress-shine{to{transform:translateX(100%)}}
@keyframes mm-progress-dot{50%{opacity:.3;transform:translateY(-3px)}}
@media(max-width:480px){.mm-personalizer .mm-personalizer__progress{padding:16px}.mm-progress__top{gap:8px}.mm-progress__art{flex-basis:32px;height:36px;font-size:24px}.mm-progress__top .mm-progress__percent{font-size:1.25rem;min-width:2.7em}}
@media(prefers-reduced-motion:reduce){.mm-progress__art,.mm-progress__dots i,.mm-progress__track>span::after{animation:none}.mm-progress__track>span{transition:none}}
