.impact-simulator { background: linear-gradient(135deg, #f7f5ff, #fff); border: 1px solid #ddd6fe; border-radius: 18px; }
.impact-metric { background: #fff; border: 1px solid #e7e2f9; border-radius: 12px; padding: .8rem; }
.impact-timeline { display: grid; gap: .6rem; grid-template-columns: repeat(12, minmax(86px, 1fr)); overflow-x: auto; padding-bottom: .35rem; }
.impact-cycle { background: #f8fafc; border: 1px solid #e4eaf2; border-radius: 12px; min-width: 86px; overflow: hidden; padding: .55rem; }
.impact-cycle.overloaded { border-color: #f3aaaa; background: #fff6f6; }
.impact-cycle-label { color: #64748b; font-size: .68rem; font-weight: 700; line-height: 1.1; min-height: 30px; text-transform: uppercase; }
.impact-stack { background: #e8edf4; border-radius: 5px; height: 76px; margin: .5rem 0; overflow: hidden; position: relative; }
.impact-existing { background: #7c6ee6; bottom: 0; left: 0; position: absolute; width: 100%; }
.impact-new { background: #eb9d42; left: 0; position: absolute; width: 100%; }
.impact-cycle.overloaded .impact-new { background: #df5a5a; }
.impact-percent { font-size: .78rem; font-weight: 800; }
.impact-cycle-value { color: #475569; font-size: .68rem; white-space: nowrap; }
