/* BQS public alert component — base + variants */

.bqs-alert {
  padding: 12px 14px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.5;
  border: 1px solid transparent;
}

.bqs-alert--success,
.bqs-alert-success {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #065f46;
}

.bqs-alert--error,
.bqs-alert-error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

.bqs-alert--warning,
.bqs-alert-warning {
  background: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}

.bqs-alert--info,
.bqs-alert-info {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1e40af;
}

/* Auth page semantic states */
.auth-success,
.auth-warning,
.auth-info,
.auth-error {
  padding: 12px 14px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.5;
  border: 1px solid transparent;
}

.auth-success {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #065f46;
}

.auth-error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

.auth-warning {
  background: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}

.auth-info {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1e40af;
}

/* Portal page semantic aliases */
.portal-alert {
  padding: 12px 14px;
  border-radius: 12px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.5;
  border: 1px solid transparent;
}

.portal-alert.success,
.portal-alert.portal-alert--success {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #065f46;
}

.portal-alert.danger,
.portal-alert.portal-alert--error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

.portal-alert.warning,
.portal-alert.portal-alert--warning {
  background: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}

.portal-alert.info,
.portal-alert.portal-alert--info {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1e40af;
}

/* Document/catalog flash aliases */
.doc-flash {
  padding: 12px 14px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.5;
  border: 1px solid transparent;
}

.doc-flash-success,
.doc-flash.doc-flash--success {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #065f46;
}

.doc-flash-error,
.doc-flash.doc-flash--error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

/* Cart flash aliases */
.cart-flash {
  padding: 12px 14px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.5;
  border: 1px solid transparent;
}

.cart-flash-success {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #065f46;
}

.cart-flash-error {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}
