.v150-toolbar{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin:16px 0}.v150-toolbar .segmented{flex-wrap:wrap}.v150-event{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--border)}.v150-event small{display:block;color:var(--muted);font-size:13px;margin:5px 0}.v150-event>div:last-child{display:grid;gap:8px;justify-items:end}.v150-notices{margin-bottom:18px}.v150-notice{justify-content:space-between}.v150-notice>div{flex:1}.notice-close{flex:0 0 44px;width:44px;height:44px;background:transparent;border:0;border-radius:12px;color:var(--text);font-size:26px}.notice-close:hover{background:var(--surface-3)}.notice-link{display:block;margin-top:8px;background:transparent;border:0;color:var(--accent);font-size:14px;text-decoration:underline}.save-failure{padding:18px;margin-bottom:16px;border:2px solid var(--danger);border-radius:16px;background:var(--surface);color:var(--text)}.save-failure>span{display:block;margin:8px 0}.calendar-toolbar{display:flex;gap:16px;justify-content:center;align-items:center;margin:18px 0}.calendar-scroll{overflow-x:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));min-width:720px;gap:5px}.calendar-day{min-height:120px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.calendar-day.today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.weekday{text-align:center;color:var(--muted);padding:8px}.calendar-event{display:block;width:100%;border:0;border-left:3px solid var(--accent);border-radius:5px;background:var(--surface-2);color:var(--text);text-align:left;padding:6px;margin-top:6px;font-size:13px;overflow-wrap:anywhere}.calendar-event small{display:block;font-size:12px;color:var(--muted)}.calendar-event.overdue{border-color:var(--danger)}.calendar-event.completed{border-color:var(--success)}.calendar-event.cancelled{opacity:.65;text-decoration:line-through}#plan-body .loan-line{margin:10px 0}#plan-body .warn{color:var(--danger)}#plan-body .card>summary{cursor:pointer;font-weight:700;font-size:16px}#plan-body .attention-banner{margin:14px 0}button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:760px){.v150-toolbar .segmented{width:100%}.v150-toolbar .segmented button{flex:1;padding:10px 8px;font-size:14px}.v150-event{gap:10px}.v150-event>div:first-child{min-width:0;overflow-wrap:anywhere}.v150-event>div:last-child{max-width:46%}.notice-close{min-width:44px}}
.v150-version{margin:28px 0 8px;text-align:center;color:var(--muted);font-size:13px}.v150-version .notice-link{margin:8px auto}

/* 1.5.1: card width, not viewport width, controls the legend layout. */
.card:has(>.donut-row){container-type:inline-size}.donut-row{flex-direction:column;align-items:center;gap:22px}.donut-row .donut{width:min(220px,100%);align-self:center}.donut-row .legend-list{width:100%;min-width:0}.donut-row .legend-item{grid-template-columns:10px 26px minmax(0,1fr) auto;gap:10px;padding:12px 0;font-size:14px;border-radius:0;border-bottom:1px solid var(--border)}.donut-row .legend-copy b{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.4}.donut-row .legend-amount{text-align:right;font-variant-numeric:tabular-nums}.donut-row .legend-amount small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:4px}.donut-row .donut-center b{font-size:20px}.donut-row .donut-center small{font-size:12px}.category-scope{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:12px 0;padding:12px;background:var(--surface-2);border-radius:12px}.event-kind{display:inline-block;border:1px solid var(--border);padding:3px 8px;border-radius:7px;font-size:12px;color:var(--muted);margin-bottom:7px}.notice-snooze{flex:0 0 auto;max-width:130px;min-height:44px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--surface);padding:8px;font-size:13px}.push-status{padding:12px 0;font-weight:600}@container(min-width:620px){.donut-row{flex-direction:row}.donut-row .legend-list{flex:1}}

/* 1.5.3: equal dashboard cards on desktop; phone layout remains unchanged. */
.dashboard-charts{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.dashboard-charts>.span-2{grid-column:auto}.dashboard-charts>.card{min-height:390px}.category-chart-card{container-name:category-chart;container-type:inline-size}.category-chart-card .card-title{align-items:flex-start}.category-card-controls{display:flex;align-items:flex-end;gap:8px;flex-direction:column;color:var(--muted);font-size:13px}.category-card-controls>b{color:var(--text);white-space:nowrap}.category-chart-card .donut-row{gap:18px}.category-chart-card .donut{width:180px}.category-chart-card .legend-item{grid-template-columns:8px 24px minmax(76px,1fr) auto 16px;gap:8px;padding:7px 2px}.legend-arrow{font-size:22px;color:var(--muted);line-height:1}.category-chart-card .legend-item:hover .legend-arrow{color:var(--accent);transform:translateX(2px)}.category-scope>span{font-weight:700}.category-scope [data-back-category]{order:-1}@container category-chart (min-width:470px){.category-chart-card .donut-row{flex-direction:row;align-items:center}.category-chart-card .legend-list{flex:1}}@media(min-width:1181px){.dashboard-charts>.flow-chart-card{display:flex;flex-direction:column}.dashboard-charts>.flow-chart-card .bar-chart{height:auto;min-height:270px;flex:1}}@media(max-width:1180px){.dashboard-charts{grid-template-columns:1fr}.dashboard-charts>.card{min-height:0}}@media(max-width:760px){.category-card-controls{width:100%;align-items:stretch}.category-chart-card .card-title{flex-direction:column}.category-chart-card .donut{width:180px}.category-chart-card .legend-item{grid-template-columns:8px 24px minmax(0,1fr) auto 14px;padding:9px 2px}.category-scope{align-items:stretch;flex-direction:column}.category-scope [data-back-category]{width:100%}}
