.ripple-mig{gap:var(--s-xl);grid-template-columns:1fr 1fr;align-items:start;display:grid}@media (width<=900px){.ripple-mig{grid-template-columns:1fr}}.ripple-mig-none{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.ripple-mig-left,.ripple-mig-right{gap:var(--s-md);flex-direction:column;min-width:0;display:flex}.ripple-mig-code{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-default);overflow:hidden}.ripple-mig-code-bar{justify-content:space-between;align-items:center;gap:var(--s-2);padding:9px var(--s-2);border-bottom:1px solid var(--line);background:var(--surface-elevated);display:flex}.ripple-mig-code-file{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--fs-xs);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ripple-mig-code-tag{font-size:var(--fs-2xs);color:var(--text-muted);flex:none;font-style:italic}.ripple-mig-code-body{padding:var(--s-2) 0;flex-direction:column;display:flex}.ripple-mig-code-row{padding:2px var(--s-md);background:color-mix(in oklab, var(--insight) 7%, transparent);align-items:flex-start;gap:10px;display:flex}.ripple-mig-code-gutter{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--fs-sm);color:var(--insight);-webkit-user-select:none;user-select:none;flex:none;line-height:1.7}.ripple-mig-code-line{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--fs-sm);color:var(--text-primary);white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;line-height:1.7}.ripple-mig-stats{gap:var(--s-2);grid-template-columns:1fr 1fr;display:grid}.ripple-mig-stat{padding:var(--s-md);border:1px solid color-mix(in oklab, var(--danger) 30%, transparent);border-radius:var(--r-md);background:color-mix(in oklab, var(--danger) 9%, transparent);flex-direction:column;gap:4px;min-width:0;display:flex}.ripple-mig-stat-num{font-size:var(--fs-2xl);letter-spacing:-.01em;color:var(--danger);overflow-wrap:anywhere;font-weight:700;line-height:1.15}.ripple-mig-stat-label{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.ripple-mig-explain{padding:var(--s-md);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-elevated);flex-direction:column;gap:9px;display:flex}.ripple-mig-explain-body{font-size:var(--fs-sm);color:var(--text-primary);text-wrap:pretty;margin:0;line-height:1.55}.ripple-mig-inline{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--fs-xs);color:var(--danger);background:color-mix(in oklab, var(--danger) 12%, transparent);border-radius:var(--r-sm);white-space:nowrap;padding:1px 6px}.ripple-mig-steps{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ripple-mig-step{gap:var(--s-2);min-width:0;display:flex}.ripple-mig-step-rail{flex:none;justify-content:center;width:13px;display:flex;position:relative}.ripple-mig-step-rail:before{content:"";background:color-mix(in oklab, var(--insight) 40%, transparent);width:1.5px;position:absolute;top:7px;bottom:0}.ripple-mig-step:last-child .ripple-mig-step-rail:before{display:none}.ripple-mig-step-dot{z-index:1;background:var(--insight);width:11px;height:11px;box-shadow:0 0 0 4px color-mix(in oklab, var(--insight) 18%, transparent);border-radius:50%;margin-top:4px;position:relative}.ripple-mig-step-body{padding-bottom:var(--s-md);flex-direction:column;gap:3px;min-width:0;display:flex}.ripple-mig-step:last-child .ripple-mig-step-body{padding-bottom:0}.ripple-mig-step-title{font-size:var(--fs-md);color:var(--text-primary);text-wrap:pretty;font-weight:600;line-height:1.3}.ripple-mig-step-detail{font-size:var(--fs-sm);color:var(--text-secondary);text-wrap:pretty;line-height:1.5}.ripple-mig-tell{margin-top:var(--s-2);padding:var(--s-2) var(--s-md);border:1px solid var(--line);border-left:2px solid color-mix(in oklab, var(--warning) 50%, transparent);border-radius:var(--r-sm);background:color-mix(in oklab, var(--warning) 7%, transparent);align-items:flex-start;gap:10px;display:flex}.ripple-mig-tell-dot{background:var(--warning);border-radius:50%;flex:none;width:7px;height:7px;margin-top:6px}.ripple-mig-tell-body{flex-direction:column;gap:3px;min-width:0;display:flex}.ripple-mig-tell-label{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--warning);font-weight:600}.ripple-mig-tell-text{font-size:var(--fs-sm);color:var(--text-secondary);text-wrap:pretty;line-height:1.5}
