#view-tasks{flex-direction:column!important}#view-tasks>#sidebar,#view-tasks>#resizer,#view-tasks>.mobile-task-picker,#view-tasks>.mobile-day-strip,#view-tasks>.mobile-drawer-backdrop{display:none!important}
.calendar-toolbar{padding:22px 32px 0;flex-shrink:0}.calendar-actions{display:flex;align-items:center;gap:10px}.calendar-actions button{min-height:44px;border:1px solid var(--theme-border,#3d424a);background:var(--bg-nav);color:var(--text-main);border-radius:13px;padding:10px 16px;font:inherit;font-size:14px;cursor:pointer}.calendar-actions #calendarOpen{display:flex;align-items:center;gap:10px;margin-right:auto;text-align:left}.calendar-actions svg{width:21px;height:21px;color:var(--accent-color);flex-shrink:0}.calendar-actions b{font-size:17px;color:var(--text-secondary)}
.calendar-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;max-width:720px;margin:17px 0 0}.calendar-week-strip button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 3px 6px;background:var(--bg-card);color:var(--text-main);border:1px solid var(--theme-border,#3d424a);border-radius:13px;cursor:pointer}.calendar-week-strip button>span{font-size:12px;color:var(--text-secondary)}.calendar-week-strip strong{font-size:19px;font-variant-numeric:tabular-nums}.calendar-week-strip button.selected{border-color:var(--accent-color);box-shadow:inset 0 0 0 1px var(--accent-color)}.calendar-week-strip i{width:4px;height:4px;border-radius:50%;background:transparent}.calendar-week-strip .has-plan i{background:var(--accent-color)}
#view-tasks>.main-content{min-height:0;width:100%;padding-top:24px}.calendar-panel{width:min(520px,100%);max-height:calc(100dvh - 40px);overflow:auto;background:var(--bg-modal);color:var(--text-main);border:1px solid var(--theme-border,#444);border-radius:24px;padding:24px;box-shadow:0 24px 80px #0006}.calendar-panel header{display:flex;align-items:center;justify-content:space-between;gap:14px}.calendar-panel small{font-size:10px;letter-spacing:.17em;color:var(--accent-color)}.calendar-panel h2{font-size:25px;margin:5px 0}.calendar-panel header button{border:0;background:var(--bg-card);color:var(--text-main);font-size:26px;width:44px;height:44px;border-radius:12px;cursor:pointer}#calendarHint{font-size:13px;line-height:1.6;color:var(--text-secondary);margin:12px 0 18px}.calendar-modes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:12px 0 18px}.calendar-modes[hidden]{display:none}.calendar-modes button{border:1px solid var(--theme-border,#444);background:var(--bg-card);color:var(--text-main);border-radius:10px;min-height:40px;font:inherit;font-size:13px;cursor:pointer}.calendar-modes button[aria-pressed=true]{border-color:var(--accent-color);box-shadow:inset 0 0 0 1px var(--accent-color)}
.calendar-month-controls{display:grid;grid-template-columns:40px 1fr 90px 40px;gap:8px;align-items:center;margin-bottom:18px}.calendar-month-controls button,.calendar-month-controls input,.calendar-month-controls select{width:100%;min-width:0;height:42px;border:1px solid var(--theme-border,#444);border-radius:10px;background:var(--bg-card);color:var(--text-main);font:inherit;font-size:16px;padding:6px}.calendar-month-controls button{font-size:25px;cursor:pointer}.calendar-month-controls label{min-width:0}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays span{text-align:center;color:var(--text-secondary);font-size:12px;padding:5px 0 10px}.calendar-day{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;min-height:49px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text-main);cursor:pointer;font:inherit;font-variant-numeric:tabular-nums}.calendar-day>span{font-size:16px}.calendar-day small{height:12px;line-height:12px;letter-spacing:0;font-size:10px;color:var(--accent-color)}.calendar-day.outside{color:var(--text-secondary)}.calendar-day.today{border-color:var(--theme-border,#555)}.calendar-day.today>span{font-weight:800}.calendar-day[aria-pressed=true]{background:var(--theme-soft,var(--bg-card));border-color:var(--accent-color);box-shadow:inset 0 0 0 1px var(--accent-color)}.calendar-day:hover{background:var(--bg-card)}.calendar-panel button:focus-visible,.calendar-toolbar button:focus-visible{outline:3px solid var(--accent-color);outline-offset:2px}.calendar-legend{display:flex;align-items:center;gap:7px;color:var(--text-secondary);font-size:11px;margin:12px 0}.calendar-legend i{width:5px;height:5px;background:var(--accent-color);border-radius:50%}#calendarSelection{font-size:14px;margin:14px 0}#calendarError{color:var(--status-missed);font-size:13px}.calendar-panel footer{display:flex;gap:10px;margin-top:18px}.calendar-panel footer button{min-height:46px;border:1px solid var(--theme-border,#555);background:var(--bg-card);color:var(--text-main);border-radius:12px;padding:10px 16px;font:inherit;font-size:14px;cursor:pointer}.calendar-panel #calendarConfirm{margin-left:auto;background:var(--accent-color);color:var(--theme-on-accent,#fff);font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Status remains obvious without tinting the whole task or fading its contents. */
html #view-tasks .task-card.completed,html #view-tasks .task-card.missed{background:var(--bg-card);border-top-color:var(--theme-border,#3d424a);border-right-color:var(--theme-border,#3d424a);border-bottom-color:var(--theme-border,#3d424a);box-shadow:0 6px 20px #0000000b}
html #view-tasks .task-card:is(.completed,.missed) :is(.task-title,.task-desc){opacity:1;text-decoration:none;color:var(--text-main)}html #view-tasks .task-desc{line-height:1.65}html #view-tasks .task-card.completed{border-left:4px solid var(--status-done)}html #view-tasks .task-card.missed{border-left:4px solid var(--status-missed)}
.home-status-done{color:var(--status-done)}.home-status-missed{color:var(--status-missed)}
@media(max-width:760px){.calendar-toolbar{padding:12px 16px 0}.calendar-actions{gap:7px;flex-wrap:wrap}.calendar-actions button{font-size:12px;padding:9px 11px;min-height:44px}.calendar-actions #calendarOpen{flex:1 1 160px}.calendar-actions #calendarOpen span{line-height:1.45}.calendar-actions #calendarSummary{margin-left:auto}.calendar-week-strip{gap:5px;margin-top:12px}.calendar-week-strip button{border-radius:11px}.calendar-week-strip button>span{font-size:11px}.calendar-week-strip strong{font-size:18px}#calendarModal{padding:12px}.calendar-panel{padding:20px 16px;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.calendar-panel h2{font-size:23px}.calendar-month-controls{grid-template-columns:36px 1fr 76px 36px;gap:6px}.calendar-day{min-height:44px}.calendar-grid,.calendar-weekdays{gap:3px}#view-tasks>.main-content{padding:22px 16px 28px!important}}

/* Count-based heat stays readable in light and dark themes. Selection uses its own outline. */
.calendar-day,.calendar-week-strip button{position:relative}
.calendar-day[data-heat="1"],.calendar-week-strip [data-heat="1"],.calendar-scale [data-heat="1"]{--calendar-green:#17382d}
.calendar-day[data-heat="2"],.calendar-week-strip [data-heat="2"],.calendar-scale [data-heat="2"]{--calendar-green:#1b4835}
.calendar-day[data-heat="3"],.calendar-week-strip [data-heat="3"],.calendar-scale [data-heat="3"]{--calendar-green:#1f5940}
.calendar-day[data-heat="4"],.calendar-week-strip [data-heat="4"],.calendar-scale [data-heat="4"]{--calendar-green:#226b46}
.calendar-day[data-heat="5"],.calendar-week-strip [data-heat="5"],.calendar-scale [data-heat="5"]{--calendar-green:#267c4d}
.calendar-grid .calendar-day:not([data-heat="0"]),.calendar-week-strip button:not([data-heat="0"]){background:var(--calendar-green);color:#f4fff8;box-shadow:0 2px 10px #28b46a18}
.calendar-grid .calendar-day:not([data-heat="0"]) small,.calendar-week-strip button:not([data-heat="0"])>span{color:#e1f9ea}
.calendar-grid .calendar-day[aria-pressed="true"],.calendar-week-strip button.selected{outline:2px solid var(--accent-color);outline-offset:1px}
.calendar-tick{position:absolute;top:2px;right:3px;font:700 10px/1.1 system-ui;color:#d6ffe4}
.calendar-grid .calendar-day.day-complete>span{font-weight:750}
.calendar-legend{align-items:flex-start;line-height:1.5}.calendar-scale{display:flex;gap:2px;flex-shrink:0;padding-top:3px}.calendar-scale i{width:9px;height:9px;border-radius:2px;background:var(--calendar-green)}
/* Neighbouring-month numbers are gently muted; surfaces and counts stay intact. */
.calendar-grid .calendar-day.outside>span{opacity:.72}
