.chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}
.chart-card{min-height:210px}
.donut-wrap{display:flex;align-items:center;gap:20px;min-height:145px}
.donut-svg{flex:0 0 auto}
.donut-legend{display:flex;flex-direction:column;gap:9px;min-width:150px}
.legend-item{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}
.legend-item:hover{opacity:.75}
.legend-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.legend-label{color:var(--muted)}
.legend-value{margin-left:auto;font:700 12px var(--mono)}
.histogram{display:block;padding:4px 0 0}
.hist-svg{width:100%;height:auto;display:block}
.hist-col{cursor:pointer;transition:opacity .15s}
.hist-col:hover{opacity:1}
.hist-summary{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.hist-pill{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:650;background:var(--surface2);border-radius:999px;padding:6px 12px}
.hist-pill i{width:9px;height:9px;border-radius:50%;display:inline-block;flex:0 0 auto}
.hist-pill.stay i{background:#168a57}
.hist-pill.churn i{background:#c83b45}
.hist-hint{margin-top:9px;font-size:11.5px;color:var(--muted);line-height:1.5}
.card-note{display:block;font-size:11.5px;color:var(--muted);font-weight:500;margin-top:3px;letter-spacing:0;text-transform:none}
.bar-list{display:flex;flex-direction:column;gap:12px}
.bar-item{cursor:pointer}
.bar-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:5px;font-size:12px}
.bar-label span:first-child{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bar-label span:last-child{font:700 12px var(--mono)}
.bar-track{height:9px;background:#eaf0f4;border-radius:99px;overflow:hidden}
.bar-fill{height:100%;background:var(--accent);border-radius:99px;transition:width .45s}
.bar-fill.up{background:linear-gradient(90deg,#e08a90,#c83b45)}
.bar-fill.down{background:linear-gradient(90deg,#7cc3a1,#168a57)}
.dir{font-weight:800;font-size:10.5px;white-space:nowrap}
.dir.up{color:var(--red)}
.dir.down{color:var(--green)}
.dir.flat{color:var(--muted)}
.driver-impact{font:700 12px var(--mono);color:var(--accent)}
.driver-legend{margin-top:4px;font-size:11.5px;color:var(--muted)}
.wide-card{grid-column:1/-1}
.dataset-meta{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:16px}
.dataset-meta>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.dataset-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eyebrow{display:block;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;margin-bottom:7px}.data-source-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:40px;padding:18px 20px;margin-bottom:16px;background:linear-gradient(105deg,#fff,#f1faf7)}.data-source-card h3{font-size:15px;margin:0 0 5px}.data-source-card p{margin:0;color:var(--muted);font-size:12px}.data-source-card>div:not(:first-child){display:grid;gap:4px;font-size:12px}.data-source-card strong{font-size:13px}.high-risk-card{padding:0;overflow:hidden;margin-bottom:16px}.high-risk-card .card-title{padding:18px 20px;margin:0;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.text-action{background:transparent;border:0;color:var(--accent);font:700 12px var(--font);cursor:pointer}.text-action:hover{text-decoration:underline}.table-wrap{overflow:auto}.insight-table{width:100%;border-collapse:collapse;min-width:500px}.insight-table th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:11px 20px;background:#fafcfd}.insight-table td{padding:13px 20px;border-top:1px solid var(--border);font-size:13px}.insight-table tr:hover td{background:#fbfefd}
@media(max-width:1050px){.chart-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.chart-grid{grid-template-columns:1fr}.dataset-meta{grid-template-columns:1fr 1fr}.data-source-card{grid-template-columns:1fr;gap:14px}}
