/* Minimal toast system */
:root {
  --toast-z: 1080;
  --toast-gap: 10px;
  --toast-radius: 12px;
  --toast-shadow: 0 6px 24px rgba(0,0,0,.12);
  --toast-bg: #1f2937;        /* slate-800 */
  --toast-fg: #fff;
  --toast-success: #16a34a;   /* green-600 */
  --toast-error:   #dc2626;   /* red-600 */
  --toast-info:    #2563eb;   /* blue-600 */
  --toast-warn:    #d97706;   /* amber-600 */
}
.cp-toasts {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: var(--toast-z);
  display: flex;
  flex-direction: column;
  gap: var(--toast-gap);
  pointer-events: none; /* clicks pass through except on toasts */
}
.cp-toast {
  pointer-events: auto;
  min-width: 260px;
  max-width: 420px;
  color: var(--toast-fg);
  background: var(--toast-bg);
  border-radius: var(--toast-radius);
  box-shadow: var(--toast-shadow);
  padding: 12px 14px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease;
  font-size: 14px;
  line-height: 1.35;
}
.cp-toast.show {
  opacity: 1; transform: translateY(0);
}
.cp-toast .cp-icon { font-size: 16px; line-height: 1; opacity:.9; }
.cp-toast .cp-msg  { flex: 1; }
.cp-toast .cp-close {
  margin-left: 6px;
  border: 0; background: transparent; color: inherit; opacity:.7;
  cursor: pointer; font-size: 16px; line-height: 1;
}
.cp-toast.success { background: var(--toast-success); }
.cp-toast.error   { background: var(--toast-error);   }
.cp-toast.info    { background: var(--toast-info);    }
.cp-toast.warn    { background: var(--toast-warn);    }

/* Optional: top-right position */
/* .cp-toasts { top:16px; bottom:auto; } */
