.phone .bubble.weekly-report { white-space:normal; padding:16px; }
.weekly-report-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.weekly-report-heading h3 { margin:0; font-size:16px; font-weight:600; }
.weekly-report-metrics { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:8px; margin:20px 0 24px; }
.weekly-report-metrics > div { display:flex; flex-direction:column; gap:6px; min-width:0; }
.weekly-report-metrics span { font-size:12px; color:#7b8094; }
.weekly-report-metrics strong { font-size:23px; font-weight:600; line-height:1.25; letter-spacing:-.5px; white-space:nowrap; }
.weekly-report-metrics small { font-size:12px; font-weight:400; margin:0 2px; }
.weekly-chart-heading { display:flex; justify-content:space-between; font-size:13px; }
.weekly-chart-heading span { color:#8a8fa5; font-size:11px; }
.weekly-income-chart { --plot-height:149px; display:flex; height:174px; gap:8px; margin:14px 0 22px; }
.weekly-chart-axis { width:32px; flex:none; position:relative; font-size:10px; color:#9297aa; }
.weekly-chart-axis span { position:absolute; right:0; width:100%; text-align:right; line-height:1; transform:translateY(-50%); }
.weekly-chart-axis span:nth-child(1) { top:.5px; }
.weekly-chart-axis span:nth-child(2) { top:calc(var(--plot-height) / 2 + .5px); }
.weekly-chart-axis span:nth-child(3) { top:calc(var(--plot-height) + .5px); }
.weekly-chart-bars { position:relative; display:flex; flex:1; min-width:0; gap:8px; }
.weekly-chart-column { flex:1; min-width:0; display:flex; flex-direction:column; gap:8px; text-align:center; font-size:10px; color:#8a8fa5; }
.weekly-chart-track { height:var(--plot-height); position:relative; }
.weekly-chart-bar { position:absolute; bottom:0; width:72%; left:14%; background:var(--ai-brand); border-radius:5px 5px 0 0; }
.weekly-chart-bar b { position:absolute; bottom:calc(100% + 5px); left:50%; transform:translateX(-50%); font-size:9px; color:#777d96; font-weight:400; white-space:nowrap; }
.weekly-report-advice { margin:0; padding-top:16px; border-top:1px solid #eef0f7; font-size:14px; line-height:1.8; }
.weekly-report-advice strong { color:var(--ai-ink); font-weight:500; }

.weekly-chart-bars::after { content:""; position:absolute; top:var(--plot-height); left:0; right:0; height:1px; background:#d9ddeb; pointer-events:none; }

.weekly-chart-bars::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:#eef0f7; box-shadow:0 calc(var(--plot-height) / 2) 0 #eef0f7; pointer-events:none; }
