/* insights.css - Progress-tab sections. Prefix ins-. Colors from core variables (dark and light). */
.ins-card .ins-h{margin:0 0 8px}
.ins-empty{margin:4px 0}
.ins-sub{font-size:.95rem;margin:16px 0 6px;color:var(--text-dim);font-weight:650}
.ins-cap{margin:10px 0 2px}

.ins-select{width:100%;min-height:48px;background:var(--bg);border:1px solid var(--border);border-radius:10px;
  color:var(--text);padding:8px 10px;font-size:1rem}
.ins-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}

.ins-chart{width:100%;height:auto;display:block}
.ins-grid{stroke:var(--border);stroke-width:1}
.ins-axis{fill:var(--text-dim);font-size:10px}
.ins-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.ins-dot{fill:var(--bg-elev);stroke:var(--accent);stroke-width:2}
.ins-dot.now{fill:var(--accent)}
.ins-val{fill:var(--text);font-size:10px;font-weight:650}
.ins-bar{fill:var(--text-faint)}
.ins-bar.now{fill:var(--accent)}
.ins-bar.zero{fill:var(--border)}
.ins-goal{stroke:var(--s-lA);stroke-width:1.5;stroke-dasharray:4 4}

.ins-sug{border-radius:var(--radius-sm);padding:10px 12px;margin:12px 0 0;background:var(--bg-elev-2);
  border:1px solid var(--border);border-left:4px solid var(--accent)}
.ins-sug-t{font-weight:650}
.ins-sess{display:flex;gap:12px;align-items:baseline;padding:8px 0;border-top:1px solid var(--border);min-height:44px}
.ins-sess-d{flex:none;width:92px;font-size:.85rem;color:var(--text-dim)}
.ins-sess-s{flex:1;min-width:0;font-variant-numeric:tabular-nums;line-height:1.5;overflow-wrap:anywhere;word-spacing:.3em}

.ins-pr{display:grid;grid-template-columns:1fr auto;column-gap:10px;padding:10px 0;border-top:1px solid var(--border);min-height:48px}
.ins-pr:first-of-type{border-top:0}
.ins-pr-n{font-weight:600;min-width:0;overflow-wrap:anywhere}
.ins-pr-v{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.ins-pr-s{grid-column:1 / -1}

.ins-mrow{padding:9px 0;border-top:1px solid var(--border)}
.ins-mhead{display:flex;justify-content:space-between;gap:10px;margin-bottom:5px}
.ins-mname{font-weight:600;text-transform:capitalize}
.ins-mnum{font-variant-numeric:tabular-nums;color:var(--text-dim);font-size:.9rem}
.ins-track{position:relative;height:14px;border-radius:99px;background:var(--bg-elev-2);border:1px solid var(--border);overflow:hidden}
.ins-band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--text-dim) 28%,transparent)}
.ins-fill{position:absolute;left:0;top:3px;bottom:3px;border-radius:99px}
.ins-fill.under{background:var(--s-lA)}
.ins-fill.in{background:var(--ok)}
.ins-fill.over{background:var(--danger)}
.ins-mstat{font-size:.78rem;margin-top:4px;color:var(--text-dim)}
.ins-mstat.in{color:var(--ok)}
.ins-mstat.over{color:var(--danger)}

.ins-alert{border-radius:var(--radius-sm);padding:10px 12px;margin:8px 0;font-size:.92rem;line-height:1.4;
  background:var(--bg-elev-2);border:1px solid var(--border);border-left:4px solid var(--danger)}
.ins-stall{padding:10px 0;border-top:1px solid var(--border)}
.ins-stall-n{font-weight:650}
.ins-stall-a{margin-top:4px;font-size:.92rem}
