
/* O&M — bloodstream */
.clarity-om-vein {
  position: fixed; left: 0; right: 0; bottom: 0; height: 2px; z-index: 99950;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(180, 40, 70, 0.35), transparent);
  background-size: 200% 100%;
  animation: om-flow 8s linear infinite;
  opacity: 0.55;
}
@keyframes om-flow {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}
.clarity-om-modal {
  position: fixed; inset: 0; z-index: 100095;
  display: none; align-items: center; justify-content: center; padding: 1rem;
}
.clarity-om-modal.show { display: flex !important; }
.com-backdrop {
  position: absolute; inset: 0; background: rgba(24, 6, 12, 0.84); backdrop-filter: blur(10px);
}
.com-panel {
  position: relative; z-index: 1; max-width: 420px; width: 100%; max-height: 90vh; overflow: auto;
  background: linear-gradient(165deg, #f8eef0, #f0e4e8); color: #2a1418;
  border-radius: 14px; border: 2px solid #6a3040;
  box-shadow: 0 20px 50px rgba(0,0,0,.45); padding: 1.1rem 1.15rem;
}
html[data-theme="dark"] .com-panel {
  background: linear-gradient(165deg, #241018, #1a0e12); color: #f0e0e4;
}
.com-x {
  position: absolute; top: .4rem; right: .5rem; border: none; background: transparent;
  font-size: 1.35rem; cursor: pointer; color: inherit;
}
.com-stamp {
  display: inline-block; font-size: .62rem; font-weight: 800; letter-spacing: .14em;
  padding: .2rem .5rem; border: 2px solid #a04060; color: #8a2840;
  transform: rotate(-5deg); margin-bottom: .35rem; background: rgba(160,64,96,.12);
}
.com-lead { font-size: .82rem; opacity: .88; line-height: 1.4; margin: .35rem 0 .75rem; }
.com-crew { margin: .4rem 0; padding-left: 1.1rem; font-size: .8rem; line-height: 1.45; }
.com-crew li { margin: 0.35rem 0; }
.com-foot { font-size: .68rem; opacity: .7; margin-top: .75rem; }
.com-actions { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .75rem; }
.cnp-om-btn {
  background: linear-gradient(155deg, rgba(100,30,50,.92), rgba(212,180,90,.28)) !important;
}
