/* Profile progress — scoped styling for the weekly score and monthly comparison. */
.progress-root{padding:20px 16px 0;color:#111827}
.progress-profile-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.profile-nameplate{display:flex;align-items:center;gap:11px}
.profile-mark{height:30px;width:7px;background:#badd66;transform:skew(-12deg);border-radius:2px;box-shadow:5px 0 0 #e1edc6}
.progress-profile-heading h1{margin:0}
.progress-settings{display:grid;place-items:center;width:37px;height:37px;border:1px solid #dce2e9;border-radius:11px;background:#fff;color:#526174}
.progress-settings svg{width:20px;height:20px}
.progress-hero{padding:18px;background:#111827;color:#fff;border:1px solid #202b3d;border-radius:18px;box-shadow:0 8px 22px #11182712}
.progress-hero-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.progress-hero-top h2{margin:0;font-size:13px;font-weight:800;letter-spacing:-.15px}
.progress-week-range{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:3px 5px;font-size:10px;color:#c3cfdf;text-align:right;line-height:1.5}
.progress-week-range>span{white-space:nowrap}
.progress-score-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:16px 0 17px}
.progress-score{display:flex;align-items:baseline;gap:9px;flex:0 0 auto;font-variant-numeric:tabular-nums}
.progress-score>strong{font-size:57px;font-weight:900;letter-spacing:-2.8px;line-height:1}
.progress-score>span{font-size:23px;font-weight:650;letter-spacing:-.7px;color:#cad3df;white-space:nowrap}
.progress-streak{display:flex;align-items:center;gap:6px;flex:0 0 auto;color:#c8f060}
.progress-flame{display:block;width:21px;height:30px;flex:0 0 auto}
.progress-streak>span{font-size:10px;font-weight:650;white-space:nowrap}
.progress-streak strong{font-size:14px;font-weight:850;font-variant-numeric:tabular-nums}
.progress-meter{height:10px;overflow:hidden;border-radius:10px;background:#ffffff19}
.progress-meter>span{display:block;height:100%;border-radius:10px;background:#c8f060;transition:width .25s ease}
.progress-hero-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}
.progress-info-button{min-height:32px;padding:7px 10px;white-space:nowrap;border:1px solid #425067;border-radius:8px;color:#ecf1f7;background:#ffffff06;font-size:9px;font-weight:750}
.progress-info-button:hover{background:#ffffff0d;border-color:#627188}
.progress-month-wrap{padding:18px 16px 0}
.progress-month{padding:16px;background:#fff;border:1px solid #e1e6ed;border-radius:16px;color:#111827}
.progress-month>h2{margin:0;font-size:16px;font-weight:850;letter-spacing:-.4px}
.progress-month-nav{display:grid;grid-template-columns:66px minmax(0,1fr) 66px;align-items:center;gap:8px;margin:15px 0}
.progress-month-nav h3{text-align:center;font-size:12px;letter-spacing:-.2px;line-height:1.3;margin:0}
.progress-nav-button{border:1px solid #dce2e9;border-radius:8px;background:#fff;min-height:34px;padding:7px 5px;font-size:9px;font-weight:750;color:#4b596d}
.progress-nav-button:disabled{background:#f6f8fa;color:#aeb7c3;opacity:1;cursor:default}
.progress-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.progress-person{padding:13px;border:1px solid #e1e7ee;border-radius:12px;background:#f9fafc}
.progress-person-active{background:#f2f7e8;border-color:#dce8c6}
.progress-person-label{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:14px}
.progress-person-label>span{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:800}
.progress-person-label>span>small{background:#f0f3f7;padding:2px 5px;color:#7d8794;font-size:8px;font-weight:650;border-radius:4px}
.progress-person-label>strong{font-size:29px;font-weight:900;line-height:1;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.progress-person-label>strong>small{font-size:9px;font-weight:650;letter-spacing:0;color:#748194;margin-left:4px}
.progress-person-active .progress-person-label>span>small{background:#e7f2d2;color:#50651e}
.progress-rules{display:grid;gap:15px}
.progress-rule{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:start}
.progress-rule>strong{display:flex;align-items:baseline;justify-content:center;gap:2px;font-size:23px;letter-spacing:-1px;font-weight:900;background:#eff5e3;color:#34451d;padding:7px 3px;border-radius:11px}
.progress-rule>strong>span{font-size:8px;letter-spacing:0}
.progress-rule h3,.progress-rules-note h3{font-size:12px;letter-spacing:-.15px;margin:0 0 4px}
.progress-rule p,.progress-rules-note p{margin:0;font-size:11px!important;line-height:1.6}
.progress-rules-note{border-top:1px solid #e7ecf1;padding-top:15px}
.progress-rules-note p+p{margin-top:10px}
@media(max-width:350px){.progress-root{padding-left:12px;padding-right:12px}.progress-hero{padding:15px}.progress-hero-top>span{font-size:9px}.progress-score-row{gap:6px}.progress-score{gap:6px}.progress-score>strong{font-size:49px;letter-spacing:-2.5px}.progress-score>span{font-size:20px}.progress-streak{gap:4px}.progress-streak>span{font-size:9px}.progress-flame{width:18px;height:27px}.progress-streak strong{font-size:12px}.progress-month-wrap{padding-left:12px;padding-right:12px}.progress-month{padding:14px}.progress-month-nav{grid-template-columns:58px minmax(0,1fr) 58px;gap:5px}.progress-month-nav h3{font-size:11px}}
@media(prefers-reduced-motion:reduce){.progress-meter>span{transition:none}}
