/* Nova Ice performance views: calm surfaces and clear, tabular values. */
.positive{color:var(--positive)!important}.negative{color:var(--error)!important}
.progress-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin-bottom:24px}.performance-panel,.objectives-panel{min-width:0}.performance-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.performance-heading .eyebrow{margin-bottom:5px}.performance-heading h2{font-size:1.2rem}.projection-badge{border:1px solid #405572;border-radius:5px;color:var(--muted);font-size:.7rem;letter-spacing:.04em;padding:4px 8px}.performance-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:22px 0}.segmented{display:flex;gap:3px;flex-wrap:wrap;border-radius:7px;background:var(--bg);padding:4px}.segmented button{border:0;background:none;color:var(--muted);padding:5px 10px;font-size:.75rem;min-height:30px}.segmented button[aria-pressed=true]{color:var(--accent);background:var(--tint)}.performance-values{display:flex;flex-wrap:wrap;gap:16px 30px;margin-bottom:21px}.performance-values>div{min-width:0}.performance-values span{display:block;font-size:.75rem;color:var(--muted)}.performance-values strong{font:500 clamp(1.2rem,1.7vw,1.8rem)/1.5 'Space Grotesk',sans-serif;letter-spacing:-.025em;color:var(--number);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.performance-values>div:first-child strong{font-size:clamp(1.6rem,2.4vw,2.2rem)}.performance-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:.7rem;color:var(--muted);margin-bottom:12px}.performance-legend span{display:flex;gap:6px;align-items:center}.performance-legend i{width:16px;border-top:2px solid var(--accent)}.performance-legend .working{border-color:var(--account-b);border-top-style:dashed}.performance-legend .target{border-color:var(--alt);border-top-style:dashed}.performance-chart{min-width:0}.performance-chart svg{display:block;width:100%;height:auto;overflow:visible}.performance-chart text{font-family:Inter,sans-serif;font-size:11px;fill:var(--muted)}.performance-chart .chart-grid{stroke:var(--line);stroke-dasharray:3 5;stroke-width:.8}.performance-chart .wealth-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round}.performance-chart .working-line{fill:none;stroke:var(--account-b);stroke-width:1.7;stroke-dasharray:5 4}.performance-chart .chart-target{stroke:var(--alt);stroke-width:1;stroke-dasharray:7 5;opacity:.8}.performance-chart .today-line{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 5}.performance-chart .inspect-line{stroke:var(--accent);stroke-width:1;opacity:.6}.performance-chart .inspect-point{fill:var(--panel);stroke:var(--accent);stroke-width:2}.chart-interaction{cursor:crosshair}.chart-target-note{font-size:.7rem;margin:3px 0 10px;color:var(--alt)}.performance-scrubber{display:flex;align-items:center;gap:12px;padding-top:14px;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}.performance-scrubber input{flex:1;min-width:60px;accent-color:var(--accent)}.performance-scrubber output{color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums}.performance-note{font-size:.75rem;line-height:1.7;color:var(--muted);margin:12px 0 0}.objective-count{font:500 1.1rem 'Space Grotesk',sans-serif;background:var(--tint);color:var(--accent);border-radius:7px;padding:6px 10px}.objective{padding:20px 0;border-bottom:1px solid var(--line)}.objective-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.875rem}.objective-heading>span{display:flex;align-items:center;gap:9px}.objective-heading>strong{font-size:.8rem;font-weight:500;color:var(--text)}.account-dot{border-radius:5px;display:grid;place-items:center;width:25px;height:25px;font-size:.75rem;background:var(--tint);font-weight:500}.account-0{color:var(--accent)}.account-1{color:var(--account-b)}.account-2{color:var(--account-c)}.objective-amount{margin-top:12px;font-size:.875rem;font-variant-numeric:tabular-nums}.objective-amount strong{font:500 1.05rem 'Space Grotesk',sans-serif;color:var(--number)}.objective-amount span{color:var(--muted);font-size:.75rem}.objective .progress{height:5px;border-radius:4px;margin:12px 0 10px}.account-fill-0{background:var(--accent)}.account-fill-1{background:var(--account-b)}.account-fill-2{background:var(--account-c)}.objective-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;font-size:.7rem;color:var(--muted)}.objective-footer{font-size:.75rem;color:var(--muted);margin-top:17px}
.calendar-layout{grid-template-columns:minmax(0,1fr) 330px;gap:22px}.calendar-main{min-width:0}.calendar-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.calendar-panel-heading .eyebrow{margin-bottom:5px}.calendar-panel-heading p{font-size:.75rem;margin:8px 0 0}.calendar-panel-heading button{font-size:.75rem;padding:7px 12px}.month-panel{padding:22px}.month-heading{margin:24px 0 18px}.month-navigation{display:flex;align-items:center;gap:14px}.month-navigation h3{font-size:1.05rem}.month-heading>span{font-size:.75rem;color:var(--muted)}.month-summary{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px;margin-bottom:22px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.month-summary>div>span{font-size:.7rem;color:var(--muted);display:block}.month-summary strong{display:block;font:500 1.35rem/1.5 'Space Grotesk',sans-serif;margin-top:5px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.month-summary strong small{font:400 .875rem Inter,sans-serif;color:var(--muted)}.month-scroll{overflow-x:auto;border-radius:7px;scrollbar-width:thin;scrollbar-color:var(--line) var(--bg)}.month-grid{grid-template-columns:repeat(7,minmax(74px,1fr)) minmax(80px,.95fr);gap:5px;min-width:650px}.week-label{font-size:.7rem;padding-bottom:9px}.calendar-day{height:110px;padding:10px 7px;gap:3px;align-items:flex-start;justify-content:flex-start;border:1px solid var(--line);background:var(--bg);border-radius:6px;font-size:.75rem;overflow:hidden}.calendar-day .day-number{width:100%;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.75rem}.day-number i{font-size:.55rem;color:var(--accent);font-style:normal}.calendar-day strong{font:500 .875rem/1.4 'Space Grotesk',sans-serif;margin-top:5px;white-space:nowrap}.calendar-day small{font-size:.6rem;color:var(--muted)}.calendar-day .day-actions{font-size:.6rem;color:var(--muted);margin-top:auto;white-space:nowrap}.calendar-day.gain-day{background:#10292b;border-color:#20413f}.calendar-day.gain-day strong{color:var(--positive)}.calendar-day.loss-day{background:#302330;border-color:#5a3549}.calendar-day.loss-day strong{color:var(--error)}.calendar-day.flat-day strong{color:var(--text)}.calendar-day.future-day{border-style:dashed}.calendar-day.current-day{border:1px solid var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.calendar-day[aria-pressed=true]{box-shadow:inset 0 -3px var(--accent);border-color:var(--accent);background:var(--tint)}.calendar-day.has-overdue .day-actions{color:var(--warning)}.calendar-day.non-working{background:transparent;border-color:#1b2a40}.calendar-day:hover{border-color:var(--accent);filter:brightness(1.13)}.week-total{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:9px;padding:10px 7px;border-radius:6px;background:var(--raised);min-width:0;text-align:right}.week-total span{font-size:.65rem;color:var(--muted)}.week-total strong{font:500 .875rem 'Space Grotesk',sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}.week-total small{font-size:.6rem;color:var(--muted)}.month-key{justify-content:flex-start;gap:10px 18px;font-size:.65rem;margin-bottom:8px}.month-key span{display:flex;align-items:center;gap:6px}.month-key i{width:7px;height:7px;border-radius:2px}.key-positive{background:var(--positive)}.key-negative{background:var(--error)}.key-overdue{background:var(--warning)}.month-panel .note{font-size:.7rem;margin-bottom:0}.mobile-calendar-hint{display:none;font-size:.75rem}.reminder-settings{margin-top:18px}.agenda-panel{scroll-margin-top:20px}.agenda-tabs{gap:2px;margin-bottom:15px}.agenda-tabs button{font-size:.75rem;padding:8px}.agenda-title{margin-top:19px}.agenda-title h2{font-size:1.1rem}.agenda-title>span{font-size:.7rem}.task-list{grid-template-columns:1fr}.task-card{padding:16px}.task-heading{font-size:.7rem}.task-card h3{font-size:.95rem}.task-amount{font-size:1.35rem}.task-amount>span{display:block;margin:3px 0 0;font-size:.7rem}.task-card p{font-size:.75rem;line-height:1.7}.task-footer{flex-wrap:wrap}.task-footer>span,.task-complete{font-size:.7rem}.selected-day-summary{background:var(--tint);border:1px solid #2d515d;border-radius:9px;padding:15px}.selected-day-summary>span{color:var(--accent);font-size:.75rem}.selected-day-summary>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:13px 0}.selected-day-summary>div>span{font-size:.7rem;color:var(--muted)}.selected-day-summary strong{display:block;font:500 1.1rem/1.6 'Space Grotesk',sans-serif;color:var(--number);overflow-wrap:anywhere}.selected-day-summary button{font-size:.7rem;padding:7px 10px}.today-stats{gap:15px}.today-stats button{border-left:2px solid var(--accent)}.today-stats button:nth-child(2){border-left-color:var(--warning)}.today-stats button:nth-child(3){border-left-color:var(--alt)}
@media(max-width:1450px){.calendar-layout{grid-template-columns:1fr}.agenda-panel .task-list{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-day-summary>div{max-width:500px}.agenda-tabs button{font-size:.875rem}.calendar-main{display:contents}.calendar-main .reminder-settings{grid-row:3}.progress-dashboard{grid-template-columns:minmax(0,1fr) 260px}.performance-panel,.objectives-panel{padding:20px}.performance-toolbar{gap:9px}.performance-values{gap:12px 20px}}
@media(max-width:1100px){.progress-dashboard{grid-template-columns:1fr}.objectives-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}.objectives-panel>.performance-heading,.objectives-panel>.performance-note,.objective-footer{grid-column:1/-1}.objective{padding:16px 0}.performance-values{justify-content:space-between}.performance-values strong{font-size:1.6rem}}
@media(max-width:760px){.month-panel{padding:17px}.month-grid{min-width:690px}.mobile-calendar-hint{display:block}.month-summary{gap:10px}.month-summary strong{font-size:1.2rem}.month-heading>span{display:none}.progress-dashboard{gap:16px}.performance-scrubber{flex-wrap:wrap}.performance-scrubber output{flex-basis:100%;text-align:right}.performance-values>div:first-child{flex-basis:100%}.performance-values{justify-content:flex-start;gap:12px 30px}.objectives-panel{display:block}.objective-caption{font-size:.75rem}.objective-amount strong{font-size:1.15rem}.agenda-panel .task-list{grid-template-columns:1fr}.calendar-layout{gap:18px}.calendar-panel-heading h2{font-size:1.1rem}.month-summary>div>span{font-size:.7rem}.today-heading h2{font-size:1.4rem}.performance-panel{padding:17px}.performance-toolbar{margin:18px 0}.performance-heading{align-items:flex-start}.segmented button{min-height:36px}.task-card h3{font-size:1rem}.task-card p,.task-footer>span,.task-complete{font-size:.8rem}}
@media(pointer:coarse){.segmented button{min-height:44px}.task-complete{min-height:44px}.calendar-day{min-height:110px}}
@media(max-width:480px){.month-summary{grid-template-columns:1fr 1fr}.month-summary>div:first-child{grid-column:1/-1}.performance-legend{gap:10px}.performance-values strong{font-size:1.4rem}}
.forecast-control{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-6px 0 22px}.expected-toggle{border-color:var(--accent);color:var(--accent);font-size:.875rem;min-height:42px}.expected-toggle[aria-pressed=true]{background:var(--tint)}.forecast-control>span{color:var(--muted);font-size:.75rem}.performance-values small{display:block;color:var(--muted);font-size:.75rem}.performance-legend .forecast{border-color:var(--alt);border-top-style:dashed}.performance-chart .forecast-line{fill:none;stroke:var(--alt);stroke-width:2;stroke-dasharray:6 5}.performance-chart .current-balance-point{fill:var(--accent);stroke:var(--panel);stroke-width:2}.current-balance-label rect{fill:var(--tint);stroke:var(--accent);stroke-width:1}.performance-chart .current-balance-label text{fill:var(--number);font-size:12px;font-weight:500}
/* Day color represents completion, independently of projected profit. */
.calendar-day.pending-day,.calendar-day.pending-day:hover,.calendar-day.pending-day[aria-pressed=true]{background:var(--bg);border-color:var(--text);color:var(--text)}.calendar-day.pending-day strong,.calendar-day.pending-day small,.calendar-day.pending-day .day-number,.calendar-day.pending-day .day-number i,.calendar-day.pending-day .day-actions{color:var(--text)}.calendar-day.pending-day.current-day{box-shadow:inset 0 0 0 1px var(--text)}.calendar-day.pending-day[aria-pressed=true]{box-shadow:inset 0 -3px var(--text)}
.calendar-day.completed-day,.calendar-day.completed-day:hover,.calendar-day.completed-day[aria-pressed=true]{background:#10292b;border-color:var(--positive);color:var(--positive)}.calendar-day.completed-day strong,.calendar-day.completed-day small,.calendar-day.completed-day .day-number,.calendar-day.completed-day .day-number i,.calendar-day.completed-day .day-actions{color:var(--positive)}.calendar-day.completed-day.current-day{box-shadow:inset 0 0 0 1px var(--positive)}.calendar-day.completed-day[aria-pressed=true]{box-shadow:inset 0 -3px var(--positive)}.key-pending{background:var(--text)}
.weekly-horizon{display:flex;flex-direction:column;justify-content:center;text-align:right;gap:3px}.weekly-horizon strong{font-size:.875rem;font-weight:500;color:var(--accent)}.weekly-horizon span{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.weekly-explanation{font-size:.875rem;line-height:1.65;margin:15px 0 0;color:var(--text)}
