/* Study progress: a calm overview, followed by actionable detail. */
.progress-dashboard{padding-top:44px!important;padding-bottom:64px!important}.progress-heading{margin-bottom:36px}.progress-heading .eyebrow{margin-bottom:14px}.progress-heading h1{font-size:clamp(42px,6vw,68px);margin:0 0 16px;letter-spacing:-.055em}.progress-heading h1>span{color:var(--blue)}.progress-heading>p{font-size:16px;line-height:1.65;margin:0;max-width:580px}.progress-overview{display:grid;grid-template-columns:170px minmax(0,1fr) 245px;align-items:center;gap:32px;padding:36px;border:1px solid color-mix(in srgb,var(--blue) 16%,var(--line));border-radius:30px;background:radial-gradient(ellipse at top left,#7ab5ff20,transparent 65%),linear-gradient(140deg,color-mix(in srgb,var(--paper) 88%,transparent),color-mix(in srgb,var(--soft) 65%,var(--paper)));box-shadow:inset 0 1px #ffffff70,0 16px 50px #093d7310;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.progress-ring{width:164px;height:164px;border-radius:50%;padding:9px;background:conic-gradient(from -90deg,var(--blue) var(--completion),var(--line) 0);transform:rotate(0deg)}.progress-ring>div{height:100%;border-radius:50%;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 20px #0969e505}.progress-ring strong{font-size:43px;letter-spacing:-.06em;line-height:1.15;font-variant-numeric:tabular-nums}.progress-ring strong span{font-size:20px;margin-left:3px;color:var(--muted)}.progress-ring small{font-size:11px;color:var(--muted);margin-top:5px}.progress-overview-copy .eyebrow{font-size:9px;color:var(--blue);margin-bottom:12px;letter-spacing:.12em}.progress-overview h2{font-size:clamp(25px,3vw,33px);margin-bottom:14px;line-height:1.15}.progress-overview-copy p{font-size:13px;max-width:370px;margin:0;line-height:1.75}.progress-next{border-left:1px solid var(--line);padding:8px 0 8px 27px}.progress-label{font-size:10px;color:var(--muted);letter-spacing:.025em}.progress-next>.progress-label{font-size:9px;letter-spacing:.13em}.progress-next>strong{display:block;font-size:18px;line-height:1.3;letter-spacing:-.03em;margin-top:12px}.progress-next>p{font-size:11px;margin:6px 0 19px}.progress-next .btn{font-size:11px;padding:11px 17px;gap:12px}.progress-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 36px}.progress-stats article{position:relative;border-radius:23px;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 88%,transparent);padding:26px 28px;box-shadow:inset 0 1px #ffffff30}.metric-icon{position:absolute;right:22px;top:23px;font-size:10px;color:var(--blue);background:var(--soft);border:1px solid color-mix(in srgb,var(--blue) 15%,transparent);border-radius:50%;width:30px;height:30px;display:grid;place-items:center}.progress-stats strong{display:block;font-size:42px;line-height:1.2;font-weight:650;letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin-bottom:16px}.progress-stats h2{font-size:15px;letter-spacing:-.02em;margin:0 0 6px}.progress-stats p{font-size:11px;line-height:1.6;margin:0}.progress-detail-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:24px;align-items:start}.progress-panel{min-width:0;border:1px solid var(--line);border-radius:26px;background:color-mix(in srgb,var(--paper) 92%,transparent);padding:30px}.progress-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:28px}.progress-panel-heading .eyebrow{font-size:9px;margin-bottom:9px;letter-spacing:.12em}.progress-panel-heading h2{font-size:27px;margin:0}.progress-panel-heading>.progress-label{font-size:9px;text-align:right}.progress-area{margin:0 0 22px}.progress-area:last-child{margin-bottom:0}.progress-area>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:9px;font-size:12px}.progress-area strong{font-weight:550}.progress-area>div>span{font-variant-numeric:tabular-nums;font-weight:600}.progress-area small{color:var(--muted);font-weight:400}.area-track{height:5px;border-radius:99px;background:var(--soft);overflow:hidden}.area-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#55a3ff,var(--blue));transition:width .35s ease}.progress-activity{display:flex;gap:15px;padding:20px 0;border-bottom:1px solid var(--line)}.progress-activity:first-child{padding-top:0}.activity-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--soft);color:var(--blue);flex-shrink:0}.progress-activity h3{font-size:14px;line-height:1.4;letter-spacing:-.02em;margin:0 0 5px}.progress-activity p{font-size:11px;margin:0 0 10px}.activity-meta{display:flex;gap:12px;align-items:center;font-size:9px;color:var(--muted)}.activity-status{padding:3px 8px;background:color-mix(in srgb,#258c74 12%,transparent);color:#21816d;border-radius:6px}.activity-status.timed{background:color-mix(in srgb,#c88e30 12%,transparent);color:#906010}.dark .activity-status{color:#75d9bc}.dark .activity-status.timed{color:#edc373}.progress-history-cta{display:flex;justify-content:space-between;text-decoration:none;color:var(--blue);font-size:12px;font-weight:550;margin-top:22px}.progress-empty{text-align:center;padding:24px 18px 32px}.empty-orbit{width:96px;height:96px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;margin:0 auto 25px;box-shadow:0 0 0 12px color-mix(in srgb,var(--soft) 40%,transparent)}.empty-orbit>span{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;font-size:30px;background:var(--soft);color:var(--blue)}.progress-empty h3{font-size:25px;line-height:1.18;margin:0 0 13px}.progress-empty p{font-size:12px;line-height:1.7;max-width:245px;margin:0 auto 24px}.progress-empty .btn{font-size:11px;padding:11px 19px}.progress-settings{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);margin-top:36px;padding-top:25px}.progress-settings strong{font-size:11px;font-weight:550}.progress-settings p{font-size:10px;max-width:610px;line-height:1.7;margin:5px 0 0}.progress-settings button{flex-shrink:0;font-size:11px}.dark .progress-overview{box-shadow:inset 0 1px #ffffff0c,0 18px 50px #00000015}
@media(max-width:1000px){.progress-overview{grid-template-columns:140px 1fr;gap:24px;padding:28px}.progress-ring{width:140px;height:140px}.progress-next{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:22px 0 0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 20px}.progress-next>.progress-label,.progress-next>strong,.progress-next>p{grid-column:1}.progress-next>.btn{grid-column:2;grid-row:1/4}.progress-next>strong{margin-top:7px}.progress-next>p{margin:5px 0 0}.progress-detail-grid{gap:16px}.progress-panel{padding:25px}}
@media(max-width:650px){.progress-dashboard{padding-top:26px!important}.progress-heading{margin-bottom:26px}.progress-heading>p{font-size:13px}.progress-overview{padding:25px 21px;border-radius:25px;grid-template-columns:90px 1fr;gap:20px 16px}.progress-ring{width:90px;height:90px;padding:6px}.progress-ring strong{font-size:29px}.progress-ring strong span{font-size:14px}.progress-ring small{font-size:8px}.progress-overview-copy .eyebrow{font-size:7px;line-height:1.6;margin-bottom:7px}.progress-overview h2{font-size:20px;margin-bottom:0}.progress-overview-copy>p{grid-column:1/-1;font-size:11px;margin-top:11px}.progress-next{display:block;padding-top:19px}.progress-next .btn{margin-top:16px;width:100%;font-size:12px}.progress-next>strong{font-size:18px}.progress-stats{gap:9px;margin:12px 0 24px}.progress-stats article{padding:18px 12px;border-radius:18px}.metric-icon{display:none}.progress-stats strong{font-size:30px;margin-bottom:12px}.progress-stats h2{font-size:11px;line-height:1.4}.progress-stats p{font-size:9px;line-height:1.5}.progress-detail-grid{grid-template-columns:1fr}.progress-panel{padding:25px 22px;border-radius:23px}.progress-settings{display:block;margin-top:26px}.progress-settings button{padding-left:0;margin-top:15px}.progress-panel-heading h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.area-track>span{transition:none}}
