/* Compact daily monitor. Animation represents real activity, never simulated progress. */
.daily-progress{background:var(--fx-paper);border:1px solid var(--fx-line);border-radius:14px;padding:12px 14px;margin:0 0 12px;color:var(--fx-ink);font-variant-numeric:tabular-nums}
.dp-top{display:flex;align-items:center;gap:13px}.dp-ring{width:70px;height:70px;position:relative;flex:0 0 70px}.dp-ring svg{width:70px;height:70px;transform:rotate(-90deg)}.dp-ring circle{fill:none;stroke-width:5}.dp-track{stroke:var(--fx-soft)}.dp-fill{stroke:var(--fx-green);stroke-linecap:round;transition:stroke-dashoffset .5s ease}.dp-ring>span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.dp-ring b{font-size:20px;line-height:1.2;letter-spacing:-.05em}.dp-ring small{font-size:9px;color:var(--fx-muted);margin-top:2px}
.dp-summary{flex:1;min-width:0}.dp-title{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}.dp-title>span{font-size:9px;background:var(--fx-soft);padding:2px 6px;border-radius:5px;color:var(--fx-green)}.dp-summary p{font-size:11px;margin:4px 0!important;color:var(--fx-muted);line-height:1.5}.dp-summary p b{color:var(--fx-ink);font-size:13px}.dp-summary>small{font-size:9px;display:block;color:var(--fx-muted);margin-top:5px;line-height:1.4}
.dp-blocks{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:3px;height:8px}.dp-blocks>i{position:relative;background:var(--fx-soft);border-radius:2px;overflow:hidden}.dp-blocks>i>span{display:block;background:var(--fx-green);width:var(--fill,0%);height:100%;transition:width .6s ease}
.dp-route{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:11px 0 0!important;padding:0;gap:5px}.dp-route li{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 3px;border:1px solid var(--fx-line);border-radius:7px;font-size:10px;line-height:1.35;min-width:0}.dp-route .dp-step-number{font-size:8px;color:var(--fx-muted)}.dp-route strong{font-size:10px}.dp-route small{font-size:9px;color:var(--fx-muted)}.dp-route .is-current{background:var(--fx-soft);border-color:var(--fx-green);color:var(--fx-green)}.dp-step-dot{position:absolute;width:4px;height:4px;bottom:-2px;border-radius:50%;background:var(--fx-green);display:none}.dp-route .is-current .dp-step-dot{display:block}.daily-progress[data-running=true] .dp-route .is-current .dp-step-dot{animation:dp-travel 2.4s ease-in-out infinite}.daily-progress[data-running=true] .dp-blocks>.is-current{animation:dp-glow 1.8s ease-in-out infinite}
.dp-now{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:var(--fx-muted);margin-top:8px}.dp-now>b{font-weight:600;color:var(--fx-green);white-space:nowrap}.dp-details{margin-top:5px;font-size:10px}.dp-details>summary{cursor:pointer;color:var(--fx-muted);padding:5px 0;min-height:28px}.dp-detail-body{padding-top:12px;border-top:1px solid var(--fx-line);margin-top:6px}.dp-chart-heading{display:flex;justify-content:space-between;font-size:11px;gap:8px}.dp-chart-heading>span{font-size:9px;color:var(--fx-muted)}
.dp-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:13px 0 12px}.dp-week button{display:flex;align-items:center;flex-direction:column;font-size:10px;padding:4px 0;border-radius:8px;min-width:0;min-height:110px;border:1px solid transparent;color:var(--fx-muted)}.dp-week button[aria-pressed=true]{background:var(--fx-soft);border-color:var(--fx-green)}.dp-day-minutes{font-size:9px}.dp-day-column{display:flex;align-items:flex-end;height:60px;width:18px;margin:6px 0}.dp-day-column i{height:var(--height,0);width:100%;border-radius:4px;background:var(--fx-green);opacity:.5;transition:height .5s}.dp-week .is-today .dp-day-column i{opacity:1}.dp-day-detail{border:1px solid var(--fx-line);border-radius:9px;padding:12px;font-size:11px;line-height:1.7}.dp-day-detail>strong,.dp-day-detail>span{display:block}.dp-day-detail>span,.dp-day-detail small{font-size:10px;color:var(--fx-muted)}.dp-day-detail p{margin:4px 0!important;font-size:10px}
.dp-goal-change{font-size:10px!important;color:var(--fx-muted);margin:10px 0!important}.dp-rules{padding:14px;border-radius:10px;background:var(--fx-soft);font-size:12px}.dp-rules>p{font-size:11px;line-height:1.7;margin:8px 0!important}.dp-rules ol{padding-left:18px;font-size:11px;line-height:1.9;margin:8px 0}.dp-rules button{margin-top:8px;min-height:40px;font-size:11px}.dp-footnote{font-size:9px!important;color:var(--fx-muted);line-height:1.7;margin:10px 0 0!important}
.daily-progress.is-history{padding:20px}.is-history .dp-ring,.is-history .dp-ring svg{width:92px;height:92px}.is-history .dp-ring{flex-basis:92px}.is-history .dp-ring b{font-size:27px}.is-history .dp-title{font-size:16px}.is-history .dp-summary p b{font-size:17px}.is-history .dp-day-column{height:95px;width:28px}.is-history .dp-week button{font-size:12px}.is-history .dp-route li{padding:12px 6px}.is-history .dp-route strong{font-size:12px}
@keyframes dp-travel{0%,100%{transform:translateX(-14px);opacity:.4}50%{transform:translateX(14px);opacity:1}}@keyframes dp-glow{50%{box-shadow:inset 0 0 0 1px var(--fx-green)}}
@media(max-width:360px){.daily-progress{padding:11px 10px}.dp-top{gap:10px}.dp-ring,.dp-ring svg{width:62px;height:62px}.dp-ring{flex-basis:62px}.dp-ring b{font-size:18px}.dp-summary p b{font-size:11px}.dp-summary p{font-size:9px}.dp-blocks{gap:2px}.dp-route .dp-step-number{display:none}.dp-route li{gap:3px}.dp-route strong{font-size:9px}.dp-route small{font-size:8px}.dp-now{font-size:8px}.daily-progress.is-history{padding:12px}.is-history .dp-day-column{width:20px}}
@media(prefers-reduced-motion:reduce){.daily-progress *{animation:none!important;transition:none!important}}
@media print{.daily-progress details{display:none}.daily-progress{break-inside:avoid}}
.dp-time-totals{display:flex;justify-content:space-between;gap:10px;margin-top:10px;font-size:10px;color:var(--fx-muted);padding-top:8px;border-top:1px solid var(--fx-line);flex-wrap:wrap}.dp-time-totals b{color:var(--fx-ink);font-size:11px;margin-left:3px;font-weight:700}
.dp-focus{margin:9px 0 6px;border-radius:9px;padding:9px 10px;background:var(--fx-soft)}.dp-focus-main{display:flex;justify-content:space-between;align-items:center;gap:12px}.dp-focus-main>div{display:flex;align-items:center;gap:9px;min-width:0}.dp-focus-main>div>span{font-size:9px;color:var(--fx-muted);max-width:95px;line-height:1.5}.dp-focus-clock{font-size:22px;line-height:1.2;letter-spacing:.01em;font-weight:750;color:var(--fx-green);font-variant-numeric:tabular-nums}.dp-focus button{border:1px solid var(--fx-line);border-radius:7px;min-height:34px;padding:6px 9px;font-size:10px}.dp-focus button.dp-focus-primary{background:var(--fx-green);color:var(--fx-paper);border-color:var(--fx-green);white-space:nowrap;min-height:36px}.dp-focus button[hidden]{display:none!important}.dp-focus button:focus-visible{outline:2px solid var(--fx-green);outline-offset:2px}.dp-focus-track{height:3px;overflow:hidden;background:var(--fx-line);border-radius:2px;margin-top:8px}.dp-focus-track i{display:block;background:var(--fx-green);height:100%;width:0;transition:width .4s linear}.dp-focus-options{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-top:4px}.dp-focus-settings{flex:1;min-width:0}.dp-focus-settings>summary{font-size:9px;color:var(--fx-muted);cursor:pointer;padding:6px 0;min-height:27px}.dp-focus-setting-body{padding:6px 0}.dp-focus-choices{display:flex;gap:5px;margin-bottom:6px}.dp-focus-choices button{flex:1;background:var(--fx-paper);color:var(--fx-ink)}.dp-focus-choices button[aria-pressed=true]{color:var(--fx-green);border-color:var(--fx-green);font-weight:700}.dp-focus-choices button:disabled{opacity:.5;cursor:default}.dp-focus-setting-body>small{font-size:9px;line-height:1.5;display:block;color:var(--fx-muted)}.dp-focus-options>[data-fx-action=focusExit]{font-size:9px;border:0;background:transparent;color:var(--fx-muted);min-height:28px;padding:4px}.dp-focus-notice{margin:1px 0 0!important;font-size:9px!important;line-height:1.5;color:var(--fx-muted)}[data-focus-status=complete] .dp-focus{border:1px solid var(--fx-green)}
.dp-time-block-section{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--fx-line)}.dp-block-caption{display:flex;align-items:center;justify-content:space-between;font-size:10px!important;gap:10px;margin:12px 0 5px!important}.dp-block-caption>span{color:var(--fx-muted);font-size:9px}.dp-ten-blocks{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;margin-bottom:6px}.dp-ten-blocks>i{height:17px;border-radius:3px;background:var(--fx-soft);overflow:hidden;border:1px solid var(--fx-line)}.dp-ten-blocks>i>span{display:block;background:var(--fx-green);height:100%;width:var(--fill,0%);transition:width .65s ease}.dp-time-block-section>small{color:var(--fx-muted);font-size:9px;line-height:1.6;display:block}.dp-focus-stats{font-size:10px!important;color:var(--fx-green);margin:12px 0 5px!important}.daily-progress[data-running=true] .dp-ten-blocks>.is-filling{animation:dp-glow 1.8s ease-in-out infinite}.is-history .dp-focus-main>div>span{font-size:11px;max-width:none}.is-history .dp-focus-clock{font-size:28px}.is-history .dp-time-totals b{font-size:14px}.is-history .dp-ten-blocks>i{height:24px}
@media(max-width:360px){.dp-focus{padding:8px}.dp-focus-main{gap:7px}.dp-focus-main>div{gap:6px}.dp-focus-clock{font-size:20px}.dp-focus-main>div>span{font-size:8px;max-width:72px}.dp-focus button.dp-focus-primary{padding:6px;font-size:9px}.is-history .dp-focus-main>div>span{font-size:9px;max-width:74px}.is-history .dp-focus-clock{font-size:22px}.dp-time-totals{font-size:9px;gap:5px}.dp-time-totals b{font-size:10px}.is-history .dp-time-totals b{font-size:12px}}

/* Keep the card first: details remain available without competing with the prompt. */
.daily-progress:not(.is-history){padding:10px 12px;margin-bottom:10px}
.daily-progress:not(.is-history) .dp-top{gap:10px}
.daily-progress:not(.is-history) .dp-ring,.daily-progress:not(.is-history) .dp-ring svg{width:58px;height:58px}
.daily-progress:not(.is-history) .dp-ring{flex-basis:58px}
.daily-progress:not(.is-history) .dp-ring b{font-size:18px}
.daily-progress:not(.is-history) .dp-time-totals{margin-top:7px;padding-top:6px}
.daily-progress:not(.is-history) .dp-focus{margin:7px 0 0;padding:7px 9px}
.daily-progress:not(.is-history) .dp-focus-main{gap:8px}
.daily-progress:not(.is-history) .dp-focus-clock{font-size:21px}
.daily-progress:not(.is-history) .dp-focus-main>div>span{max-width:110px;font-size:9px}
.daily-progress:not(.is-history) .dp-focus button.dp-focus-primary{min-height:34px}
.daily-progress:not(.is-history) .dp-focus-track{margin-top:5px}
.daily-progress:not(.is-history) .dp-focus-options{margin-top:1px}
.daily-progress:not(.is-history) .dp-focus-settings>summary{padding:5px 0;min-height:26px}
.daily-progress:not(.is-history) .dp-details{margin-top:3px}
.daily-progress:not(.is-history) .dp-details>summary{padding:7px 0 2px;min-height:28px}
.dp-detail-clock{margin:10px 0 15px!important;font-size:10px!important;line-height:1.6;color:var(--fx-muted)}
.dp-detail-body>.dp-route{margin-top:0!important}
.dp-coach{font-size:10px!important;color:var(--fx-muted);margin:7px 0 0!important;line-height:1.5}
.dp-coach-detail{padding:10px 12px;margin:0 0 16px;border:1px solid var(--fx-line);border-radius:9px;font-size:11px;line-height:1.7}
.dp-coach-detail p{font-size:10px!important;color:var(--fx-muted);margin:4px 0 0!important;overflow-wrap:anywhere}
.daily-progress [hidden]{display:none!important}
@media(max-width:360px){.daily-progress:not(.is-history){padding:9px 10px}.daily-progress:not(.is-history) .dp-focus{padding:7px}.daily-progress:not(.is-history) .dp-focus-main>div{gap:5px}.daily-progress:not(.is-history) .dp-focus-main>div>span{max-width:82px;font-size:8px}.daily-progress:not(.is-history) .dp-focus-clock{font-size:19px}.daily-progress:not(.is-history) .dp-time-totals b{font-size:10px}}
/* A timer is one value; never split mm:ss in the narrower history column. */
.dp-focus-clock{white-space:nowrap;flex-shrink:0}
.is-history .dp-focus-main>div{flex-direction:column;align-items:flex-start;gap:3px}
.is-history .dp-focus-main>div>span{max-width:none}
