.task-dashboard{flex-shrink:0;margin:0 0 10px}
.task-dashboard[hidden]{display:none}
.dashboard-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dashboard-count{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0;min-height:54px;padding:10px 12px;border:1px solid transparent;border-radius:16px;text-align:left;color:#484057;transition:transform .18s ease,background .18s ease}
.dashboard-count span{font-size:12px;font-weight:500}.dashboard-count strong{font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
.dashboard-today{background:#eee9fb}.dashboard-critical{background:#fff0d8}.dashboard-overdue{background:#fbe6e7}
.dashboard-count[aria-pressed=true]{border-color:#6958f5;box-shadow:inset 0 0 0 1px #6958f5}.dashboard-count:active{transform:scale(.97)}
.dashboard-count:focus-visible,.dashboard-filter button:focus-visible{outline:3px solid #6958f5;outline-offset:2px}
.dashboard-filter{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;font-size:11px;color:#6a6178}
.dashboard-filter button{min-height:32px;padding:4px 9px;border:0;background:#eee9fb;color:#5141b2;border-radius:12px;font-size:11px}
@media(max-width:360px){.dashboard-count{padding:9px 8px;gap:3px}.dashboard-count span{font-size:11px}.dashboard-count strong{font-size:20px}.dashboard-counts{gap:5px}}
@media(prefers-reduced-motion:reduce){.dashboard-count{transition:none}.dashboard-count:active{transform:none}}
.dashboard-details{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.dashboard-details section{min-width:0;padding:10px;background:#f5f2fa;border-radius:16px}
.dashboard-details h2{display:flex;justify-content:space-between;align-items:center;gap:4px;margin:0 0 7px;font-size:12px;font-weight:600;color:#484057}
.dashboard-details h2 small{font-size:10px;font-weight:400;white-space:nowrap;color:#776a8b}
.dashboard-upnext button{display:block;width:100%;min-width:0;min-height:32px;padding:3px 0;border:0;border-radius:5px;background:transparent;text-align:left}
.dashboard-upnext button span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#40384e}
.dashboard-upnext button small{display:block;font-size:9px;color:#776a8b}
.dashboard-upnext button:focus-visible{outline:2px solid #6958f5;outline-offset:2px}
.dashboard-upnext p{font-size:11px;color:#776a8b;margin:12px 0}
.dashboard-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;align-items:end}
.dashboard-bar-day{text-align:center;min-width:0;font-size:9px;color:#776a8b}
.dashboard-bar-day>span{display:block;line-height:14px;font-variant-numeric:tabular-nums}
.dashboard-bar-track{height:58px;display:flex;align-items:flex-end;justify-content:center;background:#ece6f5;border-radius:5px;overflow:hidden}
.dashboard-bar-track i{display:block;width:100%;background:#b7a6ec;border-radius:5px;transition:height .2s ease}
.dashboard-bar-day.is-today .dashboard-bar-track i{background:#6958f5}
.dashboard-bar-day small{display:block;font-size:8px;margin-top:4px;overflow:hidden}
.dashboard-bar-day.is-today small{color:#5141b2;font-weight:600}
@media(max-height:650px){.dashboard-details{max-height:130px;overflow-y:auto}.dashboard-bar-track{height:40px}}
@media(prefers-reduced-motion:reduce){.dashboard-bar-track i{transition:none}}

.dashboard-details[hidden]{display:none}
.dashboard-details-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:32px;margin:4px 0 0;padding:4px 6px;border:0;border-radius:9px;background:transparent;color:#776a8b;font-size:11px;text-align:left}
.dashboard-details-toggle:hover{background:#f1ecf8}.dashboard-details-toggle:focus-visible{outline:2px solid #6958f5;outline-offset:2px}

.dashboard-details-toggle{min-height:42px;padding:5px 7px 5px 12px;margin-top:7px;background:#eee8f8;color:#574774;font-size:12px;font-weight:500;border:1px solid #dfd5ee;border-radius:13px}
.dashboard-details-toggle:hover{background:#e7def5}
.dashboard-collapse-icon{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:10px;background:#dcd0f2;color:#5942aa}
.dashboard-collapse-icon svg{width:22px;height:22px}
/* Compact dashboard: lighter hierarchy and 15% less vertical space. */
.dashboard-counts{gap:7px}
.dashboard-count{min-height:46px;padding:8px 11px;border-radius:14px}
.dashboard-count span{font-size:11px}.dashboard-count strong{font-size:20px}
.dashboard-details-toggle{min-height:35px;margin-top:6px;padding:3px 5px 3px 10px;border:0;border-radius:11px;background:#eee9f6;font-size:11px;font-weight:400}
.dashboard-collapse-icon{width:26px;height:26px;border-radius:8px;background:#e0d6f4}
.dashboard-collapse-icon svg{width:19px;height:19px}
.dashboard-details{gap:0;margin-top:5px;border-radius:12px;background:#f5f2fa;overflow:hidden}
.dashboard-details section{padding:8px 9px;background:transparent;border-radius:0}
.dashboard-details section+section{border-left:1px solid #e9e2f1}
.dashboard-details h2{font-size:11px;margin-bottom:5px}.dashboard-details h2 small{font-size:9px}
.dashboard-upnext button{min-height:28px;padding:2px 0}.dashboard-upnext button span{font-size:10px}.dashboard-upnext button small{font-size:9px}
.dashboard-bar-track{height:49px;border-radius:4px;background:#ebe5f3}.dashboard-bar-track i{border-radius:4px}
.dashboard-bar-day>span{line-height:12px;font-size:8px}.dashboard-bar-day small{margin-top:3px}
.task-dashboard{margin-bottom:8px}
@media(max-width:360px){.dashboard-count{min-height:46px;padding:8px}.dashboard-count strong{font-size:19px}}
@media(max-height:650px){.dashboard-bar-track{height:34px}.dashboard-details{max-height:112px}}
/* Weekly outcome card: scheduled work, rather than an unexplained activity graph. */
.dashboard-details .dashboard-week{padding:0;background:linear-gradient(135deg,#eee8ff,#f8f5ff);}
.week-progress-card{display:block;width:100%;height:100%;padding:11px 12px;border:0;border-radius:12px;background:transparent;text-align:left;color:#40345f;cursor:pointer;transition:background .2s,transform .2s}
.week-progress-card:hover{background:#eae2fa}.week-progress-card:active{transform:scale(.985)}
.week-progress-card:focus-visible{outline:2px solid #7152eb;outline-offset:-3px}
.week-progress-heading{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600}
.week-progress-heading>span{color:#8262ce;font-size:17px;line-height:1}
.week-progress-main{display:flex;align-items:center;gap:12px;margin:9px 0}
.week-progress-ring{display:grid;place-items:center;flex-shrink:0;width:57px;height:57px;border-radius:50%;background:conic-gradient(#7958ed var(--progress),#ddd3f3 0);position:relative}
.week-progress-ring:before{content:'';position:absolute;inset:5px;background:#f5f0ff;border-radius:50%}
.week-progress-ring strong{position:relative;font-size:18px;font-variant-numeric:tabular-nums}.week-progress-ring strong small{font-size:10px}
.week-progress-copy>strong{display:block;font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}.week-progress-copy>strong>span{font-size:13px;color:#8b7caa;font-weight:500}
.week-progress-copy>small{font-size:9px;color:#7b6b98}
.week-progress-track{display:block;height:5px;border-radius:5px;background:#ddd3f3;overflow:hidden}.week-progress-track i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#a185f5,#7050df);transition:width .35s ease}
.week-progress-footer{display:flex;justify-content:space-between;gap:5px;margin-top:7px;font-size:9px;color:#7b6b98}.week-progress-footer .has-overdue{color:#b65565;font-weight:600}
.week-progress-empty{display:block;margin-top:5px;font-size:9px;color:#7b6b98}
@media(max-width:360px){.week-progress-card{padding:9px}.week-progress-main{gap:7px}.week-progress-ring{width:48px;height:48px}.week-progress-copy>strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){.week-progress-card,.week-progress-track i{transition:none}}
/* Show weekly progress before Up next in both dashboard layouts. */
.dashboard-details .dashboard-week{order:-1;border-left:0}
.dashboard-details .dashboard-upnext{border-left:1px solid #e9e2f1}
